- নিউরাল নেটওয়ার্কগুলিতে বায়াস নোড কেন ব্যবহার করা হয়?
- আপনার কতগুলি ব্যবহার করা উচিত?
- কোন স্তরগুলিতে আপনার সেগুলি ব্যবহার করা উচিত: সমস্ত লুকানো স্তর এবং আউটপুট স্তর?
উত্তর:
নিউরাল নেটওয়ার্কের বায়াস নোড একটি নোড যা সর্বদা 'চালু থাকে'। অর্থাত, প্রদত্ত প্যাটার্নে ডেটা বিবেচনা না করে এর মান সেট করা আছে । এটি একটি রিগ্রেশন মডেলের ইন্টারসেপ্টের সাথে সাদৃশ্যপূর্ণ এবং একই ফাংশনটি সরবরাহ করে। যদি কোনও নিউরাল নেটওয়ার্কের একটি প্রদত্ত স্তরে বায়াস নোড না থাকে তবে এটি পরবর্তী স্তরটিতে আউটপুট উত্পাদন করতে সক্ষম হবে না যা 0 থেকে আলাদা হয় (লিনিয়ার স্কেলে, অথবা যে মানটি 0 এর রূপান্তরের সাথে মিলে যায় যখন পাস করা হয়) অ্যাক্টিভেশন ফাংশন) যখন বৈশিষ্ট্যের মান 0 হয় ।
একটি সাধারণ উদাহরণ বিবেচনা করুন: আপনার কাছে 2 ইনপুট নোড x 1 এবং x 2 , এবং 1 আউটপুট নোড y সহ ফিড ফরোয়ার্ড পার্সেপেট্রন রয়েছে । এক্স 1 এবং এক্স 2 বাইনারি বৈশিষ্ট্য এবং তাদের রেফারেন্স স্তরে সেট করা হয়, x 1 = । গুন যারা 2 0 ', যাই হোক না কেন ওজন আপনার মত দ্বারা গুলি W 1 এবং W 2 , পণ্য যোগফল এবং যাই হোক না কেন অ্যাক্টিভেশন ফাংশন আপনি পছন্দ মাধ্যমে এটি পাস। বায়াস নোড ছাড়া, কেবলএকটি oneআউটপুট মান সম্ভব, যা খুব খারাপ ফিট অর্জন করতে পারে। উদাহরণস্বরূপ, একটি লজিস্টিক অ্যাক্টিভেশন ফাংশন ব্যবহার করে, অবশ্যই 5 .5 হওয়া উচিত যা বিরল ইভেন্টগুলিকে শ্রেণিবদ্ধ করার জন্য ভয়াবহ হবে।
একটি বায়াস নোড নিউরাল নেটওয়ার্ক মডেলটিতে যথেষ্ট নমনীয়তা সরবরাহ করে। উপরের উদাহরণে উদাহরণ হিসাবে, বায়াস নোড ছাড়া সম্ভাব্য একমাত্র অনুমানের পরিমাণটি ছিল , তবে বায়াস নোডের সাথে, ( 0 , 1 ) এর যে কোনও অনুপাত x 1 = x 2 = 0 এর নিদর্শনগুলির জন্য উপযুক্ত হতে পারে । প্রতিটি স্তর জন্য, জে , যা একটি পক্ষপাত নোড যোগ করা হয়, পক্ষপাত নোড যোগ হবে অতিরিক্তি প্যারামিটার / ওজন আনুমানিক করা (যেখানে এন ঞ + + 1 স্তরে নোড সংখ্যা ঞ )। আরও পরামিতি লাগানো মানে নিউরাল নেটওয়ার্ক প্রশিক্ষণের জন্য আনুপাতিকভাবে বেশি সময় লাগবে। এটি ওভারফিট করার সম্ভাবনাও বাড়িয়ে তোলে, যদি আপনার শেখা ওজনের চেয়ে যথেষ্ট পরিমাণে ডেটা না থাকে।
এই বোঝার বিষয়টি মাথায় রেখে আমরা আপনার স্পষ্ট প্রশ্নের উত্তর দিতে পারি:
সহজ, সংক্ষিপ্ত উত্তর:
আমার মাস্টার্স থিসিসের কয়েকটি পরীক্ষায় (উদাহরণস্বরূপ পৃষ্ঠা 59), আমি খুঁজে পেয়েছি যে পক্ষপাত প্রথম স্তর (গুলি) এর জন্য গুরুত্বপূর্ণ হতে পারে তবে বিশেষত সম্পূর্ণরূপে সংযুক্ত স্তরগুলিতে এটি কোনও বড় ভূমিকা পালন করবে না বলে মনে হয়। অতএব তাদের প্রথম কয়েকটি স্তরে থাকতে পারে এবং শেষেরগুলিতে নয়। কেবল কোনও নেটওয়ার্ককে প্রশিক্ষণ দিন, বায়াস নোডগুলির ওজন বিতরণের প্লট করুন এবং ওজনগুলি শূন্যের খুব কাছাকাছি মনে হয় তবে এগুলি ছাঁটাই করুন।
এটি নেটওয়ার্ক আর্কিটেকচার / ডেটাসেটের উপর নির্ভরশীল হতে পারে।
1
পূর্ববর্তী স্তরে ধ্রুবক মান এবং পরবর্তী প্রতিটি স্তরীয় নিউরনের জন্য একটি ওজন (একটি পক্ষপাত মান)।
নিউরাল নেটওয়ার্কগুলির প্রসঙ্গে, ব্যাচ নরমালাইজেশন হ'ল স্মার্ট "বায়াস নোডস" তৈরির জন্য সোনার মান। একটি নিউরনের পক্ষপাতিত্ব মান চাপড়ানোর পরিবর্তে, আপনি পরিবর্তে নিউরনের ইনপুট এর covariance জন্য সামঞ্জস্য করুন। সুতরাং একটি সিএনএন-তে আপনি কনভ্যুশনাল স্তর এবং পরবর্তী সম্পূর্ণ সংযুক্ত স্তরের (বলতে গেলে, রিলাস) মাঝামাঝি ব্যাচের সাধারণকরণ প্রয়োগ করবেন। তত্ত্ব অনুসারে, সমস্ত সম্পূর্ণ সংযুক্ত স্তরগুলি ব্যাচ নরমালাইজেশন থেকে উপকৃত হতে পারে তবে বাস্তবে এটি প্রয়োগ করা খুব ব্যয়বহুল হয়ে যায় কারণ প্রতিটি ব্যাচের সাধারণীকরণের নিজস্ব প্যারামিটার থাকে।
কেন সম্পর্কিত, ইতিমধ্যে বেশিরভাগ উত্তর ইতিমধ্যে ব্যাখ্যা করেছে যে, বিশেষত, নিউরনগুলি স্যাচুরেটেড গ্রেডিয়েন্টগুলির পক্ষে সংবেদনশীল যখন ইনপুটটি সক্রিয়করণটিকে চূড়ান্ত দিকে ঠেলে দেয়। রেলুর ক্ষেত্রে এটি 0 এর গ্রেডিয়েন্ট দিয়ে বাম দিকে ঠেলাঠেলি করা হবে general সাধারণভাবে, আপনি যখন কোনও মডেলকে প্রশিক্ষণ দেন, আপনি প্রথমে নিউরাল নেটওয়ার্কে ইনপুটগুলিকে স্বাভাবিক করেন। ব্যাচ স্বাভাবিক ইনপুট স্বাভাবিক একটি উপায় ভিতরে স্নায়ুর নেটওয়ার্ক, স্তর মধ্যে।