কনভোলশনাল নিউরাল নেটওয়ার্কে চূড়ান্ত সফটম্যাক্স লেয়ারের আগে অ-রৈখিকতা


12

আমি অবিচ্ছিন্ন নিউরাল নেটওয়ার্কগুলি অধ্যয়ন করছি এবং বাস্তবায়নের চেষ্টা করছি, তবে আমি মনে করি এই প্রশ্নটি সাধারণভাবে মাল্টিলেয়ার পারসেপ্ট্রনগুলির ক্ষেত্রে প্রযোজ্য।

আমার নেটওয়ার্কের আউটপুট নিউরনগুলি প্রতিটি শ্রেণীর সক্রিয়করণের প্রতিনিধিত্ব করে: সর্বাধিক সক্রিয় নিউরন একটি প্রদত্ত ইনপুটটির জন্য পূর্বাভাসীকৃত বর্গের সাথে মিল রাখে। প্রশিক্ষণের জন্য ক্রস-এনট্রপি ব্যয় বিবেচনা করার জন্য, আমি নেটওয়ার্কের শেষে একটি সফটম্যাক্স স্তর যুক্ত করছি, যাতে প্রতিটি নিউরনের অ্যাক্টিভেশন মানটিকে সম্ভাবনার মান হিসাবে ব্যাখ্যা করা হয়।

আমার প্রশ্ন হ'ল: আউটপুট স্তরের নিউরনগুলি কি ইনপুটটিতে একটি অ-লিনিয়ার ফাংশন প্রয়োগ করতে পারে? আমার অন্তর্নিহিততা এটি প্রয়োজনীয় নয়:

  • যদি -th আউটপুট নিউরনের কোনও ভেক্টর x (পূর্ববর্তী স্তর থেকে আগত) এবং সেই নিউরনের জন্য ওজন \ theta_i এর মধ্যে ডট প্রোডাক্ট হয় ,x T θ i x θ iআমিএক্সটিθআমিএক্সθআমি
  • এবং যদি আমি সিগময়েড বা আরএলইউর মতো একঘেয়েমিযুক্ত অ-লিনিয়ার ফাংশন নিযুক্ত করি
  • তারপরে বৃহত্তর অ্যাক্টিভেশন আউটপুটটি এখনও বৃহত্তম এক্সটিθআমি , সুতরাং এই দৃষ্টিকোণ থেকে অ-লিনিয়ার ফাংশন ভবিষ্যদ্বাণীটি পরিবর্তন করবে না not

এই ব্যাখ্যায় কিছু ভুল আছে? এমন কিছু প্রশিক্ষণের কারণ রয়েছে যা আমি অবহেলা করছি যা আউটপুটটিকে অ-লৈঙ্গিকতা প্রয়োজনীয় করে তোলে?

এবং আমি যদি সঠিক হয়ে থাকি তবে সিগময়েড ফাংশনটি ব্যবহার করার পরিবর্তে আমি আরএলইউ

max(0,xTθi)
ফাংশনটি ব্যবহার করি, যা কঠোরভাবে একঘেয়ে নয়?

সম্পাদনা

কারেলের উত্তরের উল্লেখ, যার উত্তরটি মূলত "এটি নির্ভর করে", এখানে আমার নেটওয়ার্ক এবং সন্দেহের আরও বিশদ বর্ণনা রয়েছে:

ধরুন আমার কাছে এন লুকানো স্তর রয়েছে এবং আমার আউটপুট স্তরটি ক্লাসের প্রতিনিধিত্বকারী নিউরনের একটি সেটের উপরে কেবলমাত্র একটি সফটম্যাক্স স্তর (যাতে আমার প্রত্যাশিত আউটপুটটি সম্ভাব্যতা যে ইনপুট ডেটা প্রতিটি শ্রেণীর অন্তর্গত)। ধরে নিলাম প্রথম এন -1 স্তরগুলিতে ননলাইনার নিউরন রয়েছে, এন-থ্রি গোপন স্তরে ননলাইনার বনাম লিনিয়ার নিউরন ব্যবহারের মধ্যে পার্থক্য কী?



স্তরগুলি কি এন -2, এন -3, .. 1 লিনিয়ার না ননলাইনার?
কারেল ম্যাসেক

1 থেকে ইনপুট (নিকটতম ইনপুট) থেকে স্তরগুলি ননলাইনার। স্তর এন হ'ল শেষ (আউটপুট এর কাছাকাছি) লুকানো স্তর। সফটম্যাক্স স্তরটি স্তর এন + 1।
রান্ড

1
সফটম্যাক্সের ঠিক আগে বিএন স্তর সম্পর্কে কী? এটা কি লিনিয়ারিটি ঠিক আছে? (এটি কি একটি অ-লিনিয়ারিটি হিসাবে গণনা করা হয়?)
চার্লি পার্কার

উত্তর:


11

সফটম্যাক্স শ্রেণিবিন্যাসের আগে আপনার শেষ স্তরের জন্য একটি অ-লিনিয়ারিটি ব্যবহার করা উচিত নয়। আরএলইউ অ-লিনিয়ারিটি (এখন প্রায় একচেটিয়াভাবে ব্যবহৃত হয়) এক্ষেত্রে কোনও অতিরিক্ত সুবিধা যুক্ত না করে কেবল তথ্য ফেলে দেবে। অনুশীলনে কী হয়েছে তার একটি রেফারেন্সের জন্য আপনি সুপরিচিত অ্যালেক্সনেটের ক্যাফে বাস্তবায়নের দিকে নজর দিতে পারেন ।


2
সফটম্যাক্সের ঠিক আগে বিএন স্তর সম্পর্কে কী? এটা কি লিনিয়ারিটি ঠিক আছে? (এটি কি একটি অ-লিনিয়ারিটি হিসাবে গণনা করা হয়?)
চার্লি পার্কার

6

কোনও ইভেন্টের সম্ভাবনা কম রয়েছে তা বোঝাতে আপনি সফটম্যাক্স ফাংশনে নেতিবাচক মান পাঠাতে চাইতে পারেন। আপনি যদি ইনপুট মানগুলি একটি রেলুতে পাস করেন তবে নেটওয়ার্কটি সেই ইউনিটগুলির মধ্যে কোনও গ্রেডিয়েন্টটি পাবে না যেখানে রেলুতে ইনপুটটি নেতিবাচক। সুতরাং সফ্টম্যাক্সের অভিব্যক্তি শক্তি পরিবর্তিত না হলেও এটি সম্ভবত শেখাটিকে আরও শক্ত করে তুলবে।


0

উত্তর হ্যাঁ বা না হয় না। এটি আপনার নেটওয়ার্ক সম্পর্কে আপনার প্রত্যাশার উপর দৃ strongly়ভাবে নির্ভর করে। আমি ধরে নিলাম যে আপনার একটি ভাল শ্রেণিবদ্ধ থাকতে চান, সম্ভবত বিভিন্ন ধরণের সমস্যার ক্ষেত্রে প্রযোজ্য। অতএব, অ-লাইনিরিটি অ-তুচ্ছ ক্লাসগুলি ক্যাপচারে সহায়ক হতে পারে। নন-লিনিয়ারিটি নরম-সর্বাধিক স্তরটির আগে শেষ স্তরে অন্তর্ভুক্ত থাকতে পারে বা এটি পূর্ববর্তী স্তরে থাকতে পারে।


আপনি আমার সম্পাদনা একবার দেখতে পারেন?
র্যান্ড করুন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.