নিউরাল নেটওয়ার্ক: খেলার মাঠের ব্যায়াম

একটি প্রথম নিউরাল নেটওয়ার্ক

এই অনুশীলনে, আমরা আমাদের প্রথম ছোট নিউরাল নেট প্রশিক্ষণ দেব। নিউরাল নেট আমাদের সুস্পষ্ট বৈশিষ্ট্য ক্রস ব্যবহার না করে অরৈখিক মডেল শেখার একটি উপায় দেবে।

টাস্ক 1: প্রদত্ত মডেলটি আমাদের দুটি ইনপুট বৈশিষ্ট্যকে একক নিউরনে একত্রিত করে। এই মডেল কোন অরৈখিকতা শিখতে হবে? আপনার অনুমান নিশ্চিত করতে এটি চালান.

টাস্ক 2: লুকানো স্তরে নিউরনের সংখ্যা 1 থেকে 2 পর্যন্ত বাড়ানোর চেষ্টা করুন এবং একটি লিনিয়ার অ্যাক্টিভেশন থেকে ReLU-এর মতো ননলাইনার অ্যাক্টিভেশনে পরিবর্তন করার চেষ্টা করুন। আপনি কি এমন একটি মডেল তৈরি করতে পারেন যা অরৈখিকতা শিখতে পারে? এটি কার্যকরভাবে ডেটা মডেল করতে পারে?

টাস্ক 3: লুকানো স্তরে নিউরনের সংখ্যা 2 থেকে 3 বাড়ানোর চেষ্টা করুন, ReLU এর মতো একটি ননলাইনার অ্যাক্টিভেশন ব্যবহার করে। এটি কার্যকরভাবে ডেটা মডেল করতে পারে? কিভাবে মডেল গুণমান রান থেকে রান পরিবর্তিত হয়?

টাস্ক 4: প্রতি স্তরে লুকানো স্তর এবং নিউরন যোগ বা মুছে পরীক্ষা চালিয়ে যান। এছাড়াও শেখার হার, নিয়মিতকরণ এবং অন্যান্য শেখার সেটিংস পরিবর্তন করতে দ্বিধা বোধ করুন। আপনি ব্যবহার করতে পারেন এমন নিউরন এবং স্তরগুলির ক্ষুদ্রতম সংখ্যা কী যা 0.177 বা তার কম পরীক্ষা ক্ষতি দেয়?

মডেলের আকার বাড়ানো কি ফিট উন্নত করে, বা এটি কত দ্রুত একত্রিত হয়? এটি কি পরিবর্তন করে কত ঘন ঘন এটি একটি ভাল মডেলে রূপান্তরিত হয়? উদাহরণস্বরূপ, নিম্নলিখিত আর্কিটেকচার চেষ্টা করুন:

  • 3টি নিউরন সহ প্রথম লুকানো স্তর।
  • 3টি নিউরন সহ দ্বিতীয় লুকানো স্তর।
  • ২টি নিউরন সহ তৃতীয় লুকানো স্তর।

(উত্তরগুলি অনুশীলনের ঠিক নীচে প্রদর্শিত হবে।)



নিউরাল নেট ইনিশিয়ালাইজেশন

এই ব্যায়ামটি আবার XOR ডেটা ব্যবহার করে, কিন্তু নিউরাল নেট প্রশিক্ষণের পুনরাবৃত্তিযোগ্যতা এবং প্রাথমিককরণের গুরুত্বের দিকে নজর দেয়।

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

টাস্ক 2: একটি স্তর এবং কয়েকটি অতিরিক্ত নোড যোগ করে মডেলটিকে আরও জটিল করার চেষ্টা করুন। টাস্ক 1 থেকে ট্রায়ালগুলি পুনরাবৃত্তি করুন। এটি কি ফলাফলগুলিতে কোনও অতিরিক্ত স্থিতিশীলতা যোগ করে?

(উত্তরগুলি অনুশীলনের ঠিক নীচে প্রদর্শিত হবে।)



নিউরাল নেট স্পাইরাল

এই ডেটা সেটটি একটি গোলমাল সর্পিল। স্পষ্টতই, একটি রৈখিক মডেল এখানে ব্যর্থ হবে, কিন্তু এমনকি ম্যানুয়ালি সংজ্ঞায়িত বৈশিষ্ট্য ক্রস নির্মাণ করা কঠিন হতে পারে।

টাস্ক 1: শুধুমাত্র X 1 এবং X 2 ব্যবহার করে আপনি যে সেরা মডেলটি করতে পারেন তা প্রশিক্ষণ দিন৷ স্তর এবং নিউরন যোগ করতে বা অপসারণ করতে নির্দ্বিধায়, শেখার হার, নিয়মিতকরণের হার এবং ব্যাচের আকারের মতো শেখার সেটিংস পরিবর্তন করুন। আপনি পেতে পারেন সেরা পরীক্ষা ক্ষতি কি? মডেল আউটপুট পৃষ্ঠ কতটা মসৃণ?

টাস্ক 2: এমনকি নিউরাল নেটগুলির সাথেও, সেরা পারফরম্যান্স অর্জনের জন্য প্রায়শই কিছু পরিমাণ ফিচার ইঞ্জিনিয়ারিং প্রয়োজন হয়। অতিরিক্ত ক্রস পণ্য বৈশিষ্ট্য বা অন্যান্য রূপান্তর যেমন sin(X 1 ) এবং sin(X 2 ) যোগ করার চেষ্টা করুন। আপনি একটি ভাল মডেল পেতে? মডেল আউটপুট পৃষ্ঠ কোন মসৃণ?

(উত্তরগুলি অনুশীলনের ঠিক নীচে প্রদর্শিত হবে।)