সাধারণীকরণ: ওভারফিটিং এর বিপদ

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

  • নীল বিন্দু অসুস্থ গাছের প্রতিনিধিত্ব করে।
  • কমলা বিন্দু স্বাস্থ্যকর গাছের প্রতিনিধিত্ব করে।

এটি মাথায় রেখে, চিত্র 1 এ একবার দেখুন।

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

চিত্র 1. অসুস্থ (নীল) এবং সুস্থ (কমলা) গাছ।

আপনি কি পরবর্তী অসুস্থ বা সুস্থ গাছের ভবিষ্যদ্বাণী করার জন্য একটি ভাল মডেল কল্পনা করতে পারেন? মানসিকভাবে একটি চাপ আঁকতে একটু সময় নিন যা কমলা থেকে ব্লুজকে বিভক্ত করে, অথবা মানসিকভাবে কমলা বা ব্লুজের একটি ব্যাচ লাসো। তারপরে, চিত্র 2 দেখুন, যা দেখায় কিভাবে একটি নির্দিষ্ট মেশিন লার্নিং মডেল অসুস্থ গাছকে সুস্থ গাছ থেকে আলাদা করেছে। মনে রাখবেন যে এই মডেলটি খুব কম ক্ষতি করেছে।

কম ক্ষতি, কিন্তু এখনও একটি খারাপ মডেল?

চিত্র 3 দেখায় যে আমরা মডেলটিতে নতুন ডেটা যুক্ত করার সময় কী ঘটেছিল। এটি প্রমাণিত হয়েছে যে মডেলটি নতুন ডেটার সাথে খুব খারাপভাবে মানিয়ে নিয়েছে। লক্ষ্য করুন যে মডেলটি নতুন ডেটার অনেকটাই ভুল শ্রেণিবদ্ধ করেছে৷

চিত্র 2 এর মতো একই চিত্র, প্রায় 100টি বিন্দু যোগ করা ছাড়া। নতুন বিন্দুগুলির অনেকগুলি পূর্বাভাসিত মডেলের বাইরে ভালভাবে পড়ে।

চিত্র 3. মডেলটি নতুন ডেটা ভবিষ্যদ্বাণী করে একটি খারাপ কাজ করেছে৷

চিত্র 2 এবং 3-এ দেখানো মডেলটি যে ডেটাতে প্রশিক্ষিত হয়েছে তার বিশেষত্বকে ওভারফিট করে। একটি ওভারফিট মডেল প্রশিক্ষণের সময় কম ক্ষতি পায় কিন্তু নতুন ডেটার ভবিষ্যদ্বাণী একটি খারাপ কাজ করে। যদি একটি মডেল বর্তমান নমুনার সাথে ভালভাবে ফিট করে তবে আমরা কীভাবে বিশ্বাস করতে পারি যে এটি নতুন ডেটাতে ভাল ভবিষ্যদ্বাণী করবে? আপনি পরে দেখতে পাবেন, ওভারফিটিং একটি মডেলকে প্রয়োজনের চেয়ে জটিল করে তোলে। মেশিন লার্নিং এর মৌলিক টান হল আমাদের ডেটা ভালভাবে ফিট করা, কিন্তু যতটা সম্ভব সহজভাবে ডেটা ফিট করা।

মেশিন লার্নিং এর লক্ষ্য হল একটি (লুকানো) সত্যিকারের সম্ভাব্যতা বন্টন থেকে প্রাপ্ত নতুন ডেটার উপর ভালভাবে ভবিষ্যদ্বাণী করা। দুর্ভাগ্যবশত, মডেল পুরো সত্য দেখতে পারে না; মডেলটি শুধুমাত্র একটি প্রশিক্ষণ ডেটা সেট থেকে নমুনা করতে পারে। যদি একটি মডেল বর্তমান উদাহরণগুলির সাথে ভালভাবে ফিট করে, তাহলে আপনি কীভাবে বিশ্বাস করতে পারেন যে মডেলটি পূর্বে দেখা উদাহরণগুলিতেও ভাল ভবিষ্যদ্বাণী করবে?

William of ওকহ্যাম, 14 শতকের একজন ভদ্র এবং দার্শনিক, সরলতা পছন্দ করতেন। তিনি বিশ্বাস করতেন যে বিজ্ঞানীদের আরও জটিল সূত্রের চেয়ে সহজ সূত্র বা তত্ত্ব পছন্দ করা উচিত। ওকহামের রেজারকে মেশিন লার্নিং পদে রাখতে:

একটি ML মডেল যত কম জটিল, একটি ভাল পরীক্ষামূলক ফলাফলের সম্ভাবনা তত বেশি নমুনার অদ্ভুততার কারণে নয়।

আধুনিক সময়ে, আমরা ওকহামের রেজারকে পরিসংখ্যানগত শিক্ষা তত্ত্ব এবং গণনামূলক শিক্ষা তত্ত্বের ক্ষেত্রে আনুষ্ঠানিকভাবে পরিণত করেছি। এই ক্ষেত্রগুলি সাধারণীকরণের সীমা তৈরি করেছে -- একটি মডেলের নতুন ডেটাতে সাধারণীকরণ করার ক্ষমতার পরিসংখ্যানগত বিবরণ যেমন কারণগুলির উপর ভিত্তি করে:

  • মডেলের জটিলতা
  • প্রশিক্ষণ ডেটাতে মডেলের কর্মক্ষমতা

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

একটি মেশিন লার্নিং মডেলের লক্ষ্য নতুন, পূর্বে অদেখা ডেটার উপর ভাল ভবিষ্যদ্বাণী করা। কিন্তু আপনি যদি আপনার ডেটা সেট থেকে একটি মডেল তৈরি করেন তবে আপনি কীভাবে পূর্বে অদেখা ডেটা পাবেন? ঠিক আছে, একটি উপায় হল আপনার ডেটা সেটটিকে দুটি উপসেটে ভাগ করা:

  • প্রশিক্ষণ সেট - একটি মডেল প্রশিক্ষণের জন্য একটি উপসেট।
  • পরীক্ষা সেট - মডেল পরীক্ষা করার জন্য একটি উপসেট।

পরীক্ষা সেটে ভাল পারফরম্যান্স হল সাধারণভাবে নতুন ডেটাতে ভাল পারফরম্যান্সের একটি দরকারী সূচক, ধরে নিই যে:

  • পরীক্ষার সেট যথেষ্ট বড়।
  • আপনি একই পরীক্ষা বারবার ব্যবহার করে প্রতারণা করবেন না।

এমএল ফাইন প্রিন্ট

নিম্নলিখিত তিনটি মৌলিক অনুমান গাইড সাধারণীকরণ:

  • আমরা ডিস্ট্রিবিউশন থেকে এলোমেলোভাবে স্বাধীনভাবে এবং অভিন্নভাবে ( iid ) উদাহরণ আঁকি। অন্য কথায়, উদাহরণ একে অপরকে প্রভাবিত করে না। (একটি বিকল্প ব্যাখ্যা: iid হল ভেরিয়েবলের এলোমেলোতা উল্লেখ করার একটি উপায়।)
  • বিতরণ স্থির ; যে ডিস্ট্রিবিউশন ডেটা সেটের মধ্যে পরিবর্তন হয় না।
  • আমরা একই বন্টন থেকে পার্টিশন থেকে উদাহরণ আঁকা.

অনুশীলনে, আমরা কখনও কখনও এই অনুমানগুলি লঙ্ঘন করি। উদাহরণ স্বরূপ:

  • এমন একটি মডেল বিবেচনা করুন যা প্রদর্শনের জন্য বিজ্ঞাপন বেছে নেয়। আইআইডি অনুমান লঙ্ঘন করা হবে যদি মডেলটি তার পছন্দের বিজ্ঞাপনের ভিত্তি করে, আংশিকভাবে, ব্যবহারকারী পূর্বে কোন বিজ্ঞাপন দেখেছে তার উপর।
  • একটি ডেটা সেট বিবেচনা করুন যাতে এক বছরের জন্য খুচরা বিক্রয় তথ্য রয়েছে। ব্যবহারকারীর ক্রয় ঋতু অনুসারে পরিবর্তিত হয়, যা স্থিরতা লঙ্ঘন করবে।

যখন আমরা জানি যে পূর্ববর্তী তিনটি মৌলিক অনুমানের মধ্যে যেকোনো একটি লঙ্ঘন করা হয়েছে, তখন আমাদের অবশ্যই মেট্রিক্সের প্রতি সতর্ক মনোযোগ দিতে হবে।