ওভারফিটিং: মডেল জটিলতা

পূর্ববর্তী ইউনিট নিম্নলিখিত মডেলটি প্রবর্তন করেছে, যা পরীক্ষার সেটে প্রচুর গাছকে ভুল শ্রেণিবদ্ধ করেছে:

চিত্র 16. চিত্র 13 এর মতো একই চিত্র। এটি একটি জটিল আকৃতি যা অনেক গাছকে ভুল শ্রেণিবদ্ধ করে।
চিত্র 16. পূর্ববর্তী ইউনিট থেকে দুর্ব্যবহারকারী জটিল মডেল।

পূর্ববর্তী মডেলটিতে অনেক জটিল আকার রয়েছে। একটি সহজ মডেল নতুন ডেটা আরও ভালভাবে পরিচালনা করবে? ধরুন আপনি জটিল মডেলটিকে একটি হাস্যকরভাবে সহজ মডেল দিয়ে প্রতিস্থাপন করেছেন -- একটি সরল রেখা৷

চিত্র 17. একটি সরল রেখার মডেল যা একটি চমৎকার কাজ করে যা অসুস্থ গাছকে সুস্থ গাছ থেকে আলাদা করে।
চিত্র 17. একটি অনেক সহজ মডেল।

সাধারণ মডেলটি নতুন ডেটাতে জটিল মডেলের চেয়ে ভাল সাধারণীকরণ করে। অর্থাৎ, সাধারণ মডেল জটিল মডেলের চেয়ে পরীক্ষা সেটে ভাল ভবিষ্যদ্বাণী করেছে।

সরলতা দীর্ঘদিন ধরে জটিলতাকে হার মারে। প্রকৃতপক্ষে, সরলতার জন্য অগ্রাধিকার প্রাচীন গ্রীসে ফিরে এসেছে। কয়েক শতাব্দী পরে, ওকামের উইলিয়াম নামে একজন চতুর্দশ শতাব্দীর ফ্রিয়ার ওকামের রেজর নামে পরিচিত একটি দর্শনে সরলতার জন্য অগ্রাধিকারকে আনুষ্ঠানিক রূপ দেন। এই দর্শনটি মেশিন লার্নিং সহ অনেক বিজ্ঞানের একটি অপরিহার্য অন্তর্নিহিত নীতি হিসাবে রয়ে গেছে।

ব্যায়াম: আপনার উপলব্ধি পরীক্ষা করুন

আপনি একটি পদার্থবিজ্ঞানের সমীকরণ তৈরি করছেন। নিচের কোন সূত্রটি ওকামের রেজারের সাথে আরও ঘনিষ্ঠভাবে সামঞ্জস্যপূর্ণ?
বারোটি ভেরিয়েবল সহ একটি সূত্র।
তিনটি ভেরিয়েবল সহ একটি সূত্র।
আপনি একেবারে নতুন মেশিন লার্নিং প্রকল্পে আছেন, আপনার প্রথম বৈশিষ্ট্যগুলি নির্বাচন করতে চলেছেন৷ আপনি কত বৈশিষ্ট্য বাছাই করা উচিত?
শক্তিশালী ভবিষ্যদ্বাণী করার ক্ষমতা আছে বলে মনে হয় এমন 1-3টি বৈশিষ্ট্য বেছে নিন।
আপনি যতটা সম্ভব বৈশিষ্ট্যগুলি বেছে নিন, যাতে আপনি কোন বৈশিষ্ট্যগুলির সবচেয়ে শক্তিশালী ভবিষ্যদ্বাণী করার ক্ষমতা রয়েছে তা পর্যবেক্ষণ করা শুরু করতে পারেন৷
শক্তিশালী ভবিষ্যদ্বাণী করার ক্ষমতা আছে বলে মনে হয় এমন 4-6টি বৈশিষ্ট্য বেছে নিন।

নিয়মিতকরণ

মেশিন লার্নিং মডেলগুলিকে একই সাথে দুটি বিরোধপূর্ণ লক্ষ্য পূরণ করতে হবে:

  • ডেটা ভালভাবে ফিট করুন।
  • যতটা সম্ভব সহজভাবে ডেটা ফিট করুন।

একটি মডেলকে সরল রাখার একটি পদ্ধতি হল জটিল মডেলকে শাস্তি দেওয়া; অর্থাৎ প্রশিক্ষণের সময় মডেলটিকে আরও সহজ হতে বাধ্য করা। জটিল মডেলগুলিকে শাস্তি দেওয়া নিয়মিতকরণের এক রূপ।

ক্ষতি এবং জটিলতা

এখনও অবধি, এই কোর্সটি পরামর্শ দিয়েছে যে প্রশিক্ষণের একমাত্র লক্ষ্য ছিল ক্ষতি হ্রাস করা; সেটা হল:

minimize(loss)

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

minimize(loss + complexity)

দুর্ভাগ্যবশত, ক্ষতি এবং জটিলতা সাধারণত বিপরীতভাবে সম্পর্কিত। জটিলতা বাড়ার সাথে সাথে ক্ষতিও কমে। জটিলতা কমলে ক্ষতি বাড়ে। আপনার একটি যুক্তিসঙ্গত মধ্যম স্থল খুঁজে পাওয়া উচিত যেখানে মডেলটি প্রশিক্ষণের ডেটা এবং বাস্তব-বিশ্বের ডেটা উভয়ের উপরই ভাল ভবিষ্যদ্বাণী করে। যে, আপনার মডেল ক্ষতি এবং জটিলতার মধ্যে একটি যুক্তিসঙ্গত আপস খুঁজে পাওয়া উচিত.

জটিলতা কি?

আপনি ইতিমধ্যে ক্ষতির পরিমাণ নির্ধারণের কয়েকটি ভিন্ন উপায় দেখেছেন। আপনি কিভাবে জটিলতা পরিমাপ করবেন? নিম্নলিখিত অনুশীলনের মাধ্যমে আপনার অন্বেষণ শুরু করুন:

ব্যায়াম: আপনার অন্তর্দৃষ্টি পরীক্ষা করুন

এখন পর্যন্ত, আমরা আসলে কি জটিলতা সম্পর্কে বেশ অস্পষ্ট ছিলাম। নিম্নলিখিত ধারণাগুলির মধ্যে কোনটি আপনি যুক্তিসঙ্গত জটিলতা মেট্রিক্স বলে মনে করেন?
জটিলতা হল মডেলের ওজনের একটি ফাংশন।
জটিলতা হল মডেলের সমস্ত বৈশিষ্ট্যের পক্ষপাতের একটি ফাংশন।
জটিলতা হল মডেলের ওজনের বর্গক্ষেত্রের একটি ফাংশন।