কয়টি লুকানো স্তর ?
শূন্য লুকানো স্তর সহ একটি মডেল লিনিয়ারে পৃথকযোগ্য ডেটা সমাধান করবে । সুতরাং আপনি যদি না ইতিমধ্যে জানেন যে আপনার ডেটা রৈখিকভাবে পৃথকযোগ্য নয়, এটি যাচাই করতে ক্ষতি করে না - টাস্কের প্রয়োজনের চেয়ে আরও জটিল মডেল কেন ব্যবহার করবেন? যদি এটি রৈখিকভাবে পৃথকযোগ্য হয় তবে একটি সহজ কৌশল কাজ করবে, তবে একটি পারসেপ্ট্রন কাজটিও করবে।
আপনার ডেটা ধরে ধরে নেওয়ার জন্য একটি অ-লিনিয়ার কৌশল দ্বারা পৃথকীকরণ প্রয়োজন, তারপরে সর্বদা একটি লুকানো স্তর দিয়ে শুরু করুন । আপনার অবশ্যই এটি প্রায় প্রয়োজন। যদি আপনার ডেটা একটি এমএলপি ব্যবহার করে পৃথকযোগ্য হয়, তবে সেই এমএলপি সম্ভবত সম্ভবত একটি একক লুকানো স্তর প্রয়োজন। এর জন্য তাত্ত্বিক ন্যায়সঙ্গততা রয়েছে, তবে আমার কারণটি নিখুঁতভাবে অনুপ্রাণিত: অনেকগুলি কঠিন শ্রেণিবদ্ধকরণ / প্রতিরোধের সমস্যাগুলি একক-লুকানো-স্তর MLP ব্যবহার করে সমাধান করা হয়, তবুও আমি সফলভাবে ডেটা- - এমএল বুলেটিন বোর্ড, এমএল পাঠ্যপুস্তক, একাডেমিক কাগজপত্র ইত্যাদিতে সেগুলির উপস্থিতি অবশ্যই আছে তবে পরিস্থিতি যা তাদের ব্যবহারকে ন্যায়সঙ্গত করে তোলে তা অনুমিতভাবে বেশ বিরল।
লুকানো স্তরে কয়টি নোড?
এমএলপি একাডেমিক সাহিত্য থেকে। আমার নিজের অভিজ্ঞতা ইত্যাদি, আমি একত্রিত হয়েছি এবং প্রায়শই থাম্বের বেশ কয়েকটি নিয়মের উপর নির্ভর করে ( আরআরটি ), এবং যা আমি নির্ভরযোগ্য গাইড হিসাবেও পেয়েছি (যেমন, দিকনির্দেশটি সঠিক ছিল, এমনকি যখন এটি ছিল না তখনও) পরবর্তী সময়ে কী করবেন তা সাধারণত পরিষ্কার ছিল:
পচা অভিসৃতি উন্নত উপর ভিত্তি করে:
আপনি যখন মডেল বিল্ডিং শুরু করবেন, তখন লুকানো স্তরের আরও নোডের পাশে ভুল করুন r
কেন? প্রথমত, লুকানো স্তরে কয়েকটি অতিরিক্ত নোড সম্ভবত কোনও ক্ষতি করতে পারে না - আপনার এমএলপি এখনও রূপান্তরিত হবে। অন্যদিকে, লুকানো স্তরের খুব কম নোড একত্রিত হওয়া রোধ করতে পারে। এইভাবে চিন্তা করুন, অতিরিক্ত নোডগুলি কিছু অতিরিক্ত ক্ষমতা সরবরাহ করে - পুনরাবৃত্তির সময় (ট্রেনিং, বা মডেল বিল্ডিং) নেটওয়ার্কে অতিরিক্ত ওজন সংরক্ষণ / প্রকাশের জন্য অতিরিক্ত ওজন। দ্বিতীয়ত, আপনি যদি নিজের গোপন স্তরের অতিরিক্ত নোড দিয়ে শুরু করেন, তবে পরে তাদের ছাঁটাই করা সহজ (পুনরাবৃত্তির অগ্রগতির সময়)। এটি সাধারণ এবং আপনাকে সহায়তা করার জন্য ডায়াগনস্টিক কৌশল রয়েছে (উদাঃ, হিন্টন ডায়াগ্রাম, যা ওজন ম্যাট্রিক্সের কেবলমাত্র ভিজ্যুয়াল চিত্র, ওজনের মানগুলির একটি 'হিট ম্যাপ')।
ইনপুট স্তরের আকার এবং আউটপুট স্তরের আকারের উপর ভিত্তি করে RoTs :
থাম্বের একটি নিয়ম এই [লুকানো] স্তরটির আকারের জন্য ইনপুট স্তরের আকারের ... এবং আউটপুট স্তরের আকারের ....
লুকানো নোডের সংখ্যা গণনা করতে আমরা এর একটি সাধারণ নিয়ম ব্যবহার করি: (ইনপুট + আউটপুট সংখ্যা) x 2/3
প্রধান উপাদানগুলির উপর ভিত্তি করে আরওটি :
সাধারণত, আমরা ইনপুট ডেটা সেটের বৈকল্পিকতার 70-90% ক্যাপচারের জন্য প্রয়োজনীয় [মূল উপাদানগুলি] হিসাবে অনেকগুলি লুকানো নোডগুলি নির্দিষ্ট করি ।
এবং এখনও এনএন এফএকিউ লেখক এই বিধিগুলিকে "ননসেন্স" (আক্ষরিকভাবে) বলেছেন কারণ তারা: প্রশিক্ষণের উদাহরণগুলির সংখ্যা, লক্ষ্যগুলিতে গোলমাল (প্রতিক্রিয়া ভেরিয়েবলের মান) এবং বৈশিষ্ট্যের জায়গার জটিলতা উপেক্ষা করে।
তার দৃষ্টিতে (এবং সর্বদা এটি আমার কাছে মনে হয়েছিল যে তিনি কী বিষয়ে কথা বলছেন) তিনি জানেন যে আপনার এমএলপিকে নিয়মিতকরণের কোনও ফর্ম অন্তর্ভুক্ত রয়েছে, বা তাড়াতাড়ি থামানো উচিত তার উপর ভিত্তি করে লুকানো স্তরে নিউরনের সংখ্যা চয়ন করুন ।
হিডেন লেয়ারে নিউরনের সংখ্যা অনুকূলকরণের একমাত্র বৈধ কৌশল:
আপনার মডেল বিল্ডিংয়ের সময়, নিবিড়ভাবে পরীক্ষা করুন; পরীক্ষাটি "ভুল" নেটওয়ার্ক আর্কিটেকচারের স্বাক্ষর প্রকাশ করবে। উদাহরণস্বরূপ, যদি আপনি কোনও এমএলপি দিয়ে শুরু করেন তবে একটি সংক্ষিপ্ত সংখ্যক নোডের সমন্বয়ে একটি গোপন স্তর থাকে (যা পরীক্ষার ফলাফলের উপর ভিত্তি করে আপনি ধীরে ধীরে বৃদ্ধি করবেন) আপনার প্রশিক্ষণ এবং জেনারালাইজেশন ত্রুটি উভয় পক্ষপাত এবং আন্ডারফাইটিংয়ের কারণে বেশি হবে।
তারপরে অতিমাত্রায় এবং উচ্চতর বৈকল্পের কারণে, এই সময়ে সাধারণকরণের ত্রুটি বৃদ্ধি পেতে শুরু হওয়া অবধি লুকানো স্তরে নোডের সংখ্যা একবারে বাড়িয়ে নিন।
অনুশীলনে, আমি এটি এইভাবে করি:
ইনপুট স্তর : বায়াস নোডের জন্য আমার ডেটা ভ্যাক্টরের আকার (আমার মডেলের বৈশিষ্ট্যগুলির সংখ্যা) + 1 এবং অবশ্যই প্রতিক্রিয়ার ভেরিয়েবল সহ নয়
আউটপুট স্তর : সোলে আমার মডেল দ্বারা নির্ধারিত: রিগ্রেশন (একটি নোড) বনাম শ্রেণিবদ্ধকরণ (ক্লাসের সংখ্যার সমান নোডের সংখ্যা, সফটম্যাক্স ধরে ধরে)
লুকানো স্তর : শুরু করার জন্য , একটি লুকানো স্তরইনপুট স্তরের আকারের সমান নোড সহ। "আদর্শ" আকারটি আরও ছোট হওয়ার সম্ভাবনা বেশি থাকে (অর্থাত্ ইনপুট স্তরের সংখ্যা এবং আউটপুট স্তরের সংখ্যার মধ্যে কয়েকটি নোড) বড় হওয়ার পরিবর্তে - আবার এটি কেবল একটি অভিজ্ঞতা অভিজ্ঞতা এবং প্রচুর পরিমাণে এই পর্যবেক্ষণ আমার নিজের অভিজ্ঞতা। যদি প্রকল্পটি অতিরিক্ত অতিরিক্ত সময়ের জন্য ন্যায়সঙ্গত হয়, তবে আমি খুব কম সংখ্যক নোড সমন্বিত একটি গোপন স্তর দিয়ে শুরু করি, তারপরে (আমি ঠিক উপরে বর্ণিত হিসাবে) আমি সাধারণকরণের গণনা করার সময় হিডে লেয়ারটিতে নোড যুক্ত করি one ত্রুটি, প্রশিক্ষণ ত্রুটি, পক্ষপাত, এবং বৈকল্পিক। যখন সাধারণীকরণের ত্রুটি ডুবে যায় এবং এটি আবার বাড়তে শুরু করার ঠিক আগে, তখন সেই নোডের সংখ্যাটি আমার পছন্দ। নীচে চিত্র দেখুন।