আমি ওভারফিটিং এবং আন্ডারফিটিং সম্পর্কে কিছু গবেষণা করেছি এবং সেগুলি ঠিক কী তা আমি বুঝতে পেরেছি তবে এর কারণগুলি আমি খুঁজে পাচ্ছি না।
ওভারফিটিং এবং আন্ডারফিট করার মূল কারণগুলি কী কী?
আমরা কেন একটি মডেল প্রশিক্ষণ এই দুটি সমস্যার মুখোমুখি?
আমি ওভারফিটিং এবং আন্ডারফিটিং সম্পর্কে কিছু গবেষণা করেছি এবং সেগুলি ঠিক কী তা আমি বুঝতে পেরেছি তবে এর কারণগুলি আমি খুঁজে পাচ্ছি না।
ওভারফিটিং এবং আন্ডারফিট করার মূল কারণগুলি কী কী?
আমরা কেন একটি মডেল প্রশিক্ষণ এই দুটি সমস্যার মুখোমুখি?
উত্তর:
আমি সহজ পদ্ধতিতে উত্তর দেওয়ার চেষ্টা করব। এই সমস্যাগুলির প্রত্যেকটির নিজস্ব মূল উত্স রয়েছে:
অতিশয় সাজানো: ডেটা গোলমাল, এর অর্থ হ'ল বাস্তবতা থেকে কিছু বিচ্যুতি ঘটে (পরিমাপের ত্রুটিগুলির কারণে, প্রভাবশালীভাবে এলোমেলো কারণ, অরক্ষিত ভেরিয়েবল এবং আবর্জনা সম্পর্কিত) কারণ আমাদের ব্যাখ্যা করার কারণগুলির সাথে তাদের সত্যিকারের সম্পর্কটি দেখতে আরও কঠিন করে তোলে। এছাড়াও, এটি সাধারণত সম্পূর্ণ হয় না (আমাদের কাছে সমস্ত কিছুর উদাহরণ নেই)।
উদাহরণ হিসাবে, ধরা যাক আমি ছেলে এবং মেয়েদের তাদের উচ্চতার উপর ভিত্তি করে শ্রেণিবদ্ধ করার চেষ্টা করছি, কারণ এটি তাদের সম্পর্কে আমার কাছে কেবলমাত্র তথ্য। আমরা সকলেই জানি যে ছেলেরা মেয়েদের তুলনায় গড়পড়তা লম্বা হলেও একটি বিশাল ওভারল্যাপ অঞ্চল রয়েছে, কেবলমাত্র সেই বিট তথ্যের সাথে তাদের পুরোপুরি আলাদা করা অসম্ভব হয়ে পড়েছে। তথ্যের ঘনত্বের উপর নির্ভর করে, একটি পর্যাপ্ত জটিল মডেল প্রশিক্ষণের ক্ষেত্রে তাত্ত্বিকভাবে সম্ভবের চেয়ে এই কার্যটিতে আরও ভাল সাফল্যের হার অর্জন করতে সক্ষম হতে পারেডেটাসেট কারণ এটি এমন সীমানা আঁকতে পারে যা কিছু পয়েন্টকে নিজেরাই একা দাঁড় করতে দেয়। সুতরাং, আমাদের যদি কেবল ২.০৪ মিটার লম্বা এমন ব্যক্তি থাকে এবং তিনি একজন মহিলা হন তবে মডেলটি সেই অঞ্চলটির চারপাশে কিছুটা বৃত্ত আঁকতে পারে যার অর্থ যে ২.০৪ মিটার লম্বা এলোমেলো ব্যক্তি সম্ভবত একজন মহিলা হতে পারে।
এটির অন্তর্নিহিত কারণগুলি প্রশিক্ষণের ডেটাতে খুব বেশি বিশ্বাস করা (এবং উদাহরণস্বরূপ, মডেল বলেছে যে 2.04 উচ্চতা সহ কোনও পুরুষ নেই, তবে এটি কেবল মহিলাদের পক্ষে সম্ভব)।
আন্ডারফিটিং হ'ল বিপরীত সমস্যা, যার মধ্যে মডেলটি আমাদের ডেটাগুলির প্রকৃত জটিলতাগুলি (যেমন আমাদের ডেটাতে অ-র্যান্ডম পরিবর্তনগুলি) সনাক্ত করতে ব্যর্থ হয়। মডেল ধরে নিয়েছে যে শব্দের তুলনায় এটি তার চেয়েও বেশি এবং এটি খুব সরল আকৃতির ব্যবহার করে। সুতরাং, যদি ডেটাসেটের যে কোনও কারণেই ছেলেদের তুলনায় অনেক বেশি মেয়ে থাকে তবে মডেলটি তাদের সমস্ত মেয়েদের মতোই শ্রেণিবদ্ধ করতে পারে।
এই ক্ষেত্রে, মডেলটি ডেটাতে যথেষ্ট বিশ্বাস করে না এবং এটি কেবল ধরে নিয়েছিল যে বিচ্যুতিগুলি সমস্ত শব্দ (এবং উদাহরণস্বরূপ, মডেল ধরে নেয় যে ছেলেদের কেবল অস্তিত্ব নেই)।
নীচের লাইনটি আমরা এই সমস্যার মুখোমুখি হচ্ছি কারণ:
ওভারফিটিং হ'ল যখন কোনও মডেল আসল তথ্যগুলিতে আপনি যে মডেলটি পরিবর্তনশীল তা সঠিকভাবে নির্ধারণ করেন তবে এটি নতুন ডেটা সেট (হোল্ড আউট, ক্রস বৈধকরণ, পূর্বাভাস ইত্যাদি) সম্পর্কে ভাল অনুমান করে না। আপনার মডেলটিতে অনেকগুলি পরিবর্তনশীল বা অনুমানক রয়েছে (ডামি ভেরিয়েবলস ইত্যাদি) এবং এর ফলে আপনার মডেলটি আপনার মূল ডেটার শব্দে খুব সংবেদনশীল হয়ে পড়ে। আপনার মূল ডেটাতে গোলমালের উপর অতিরিক্ত চাপ দেওয়ার ফলে, মডেলটি খারাপভাবে ভবিষ্যদ্বাণী করেছে।
আন্ডারফিটিং হ'ল যখন কোনও মডেল মূল ডেটা বা নতুন ডেটা উভয় ক্ষেত্রে ভেরিয়েবলটি ভালভাবে অনুমান করে না। আপনার মডেলটিতে এমন কিছু পরিবর্তনশীল নেই যা আপনার নির্ভরশীল ভেরিয়েবলের আচরণের আরও ভাল অনুমান এবং পূর্বাভাস দেওয়ার জন্য প্রয়োজনীয়।
ওভার এবং আন্ডারফিটিংয়ের মধ্যে ভারসাম্য রক্ষা চ্যালেঞ্জিং এবং কখনও কখনও পরিষ্কার ফিনিস লাইন ছাড়াই। একনোমেট্রিক্স সময় সিরিজের মডেলিংয়ের ক্ষেত্রে, এই সমস্যাটি নিয়মিতকরণ মডেলগুলির সাথে খুব ভাল সমাধান করা হয়েছে (ল্যাসো, রিজ রিগ্রেশন, ইলাস্টিক-নেট) যা বিশেষত আপনার মডেলটিতে ভেরিয়েবলের সংখ্যা হ্রাস করে, গুণাগুলির সংবেদনশীলতা হ্রাস করে ওভারফিটিং হ্রাস করার জন্য বিশেষভাবে তৈরি করা হয় আপনার ডেটা বা উভয়ের সংমিশ্রণ।
সম্ভবত আপনার গবেষণার সময় আপনি নিম্নলিখিত সমীকরণটি পেরিয়ে এসেছেন:
Error = IrreducibleError + Bias² + Variance
।
আমরা কেন একটি মডেল প্রশিক্ষণ এই দুটি সমস্যার মুখোমুখি?
শেখার সমস্যাটি নিজেই মূলত পক্ষপাত এবং বৈচিত্রের মধ্যে একটি বাণিজ্য বন্ধ ।
ওভারফিটিং এবং আন্ডারফিট করার মূল কারণগুলি কী কী?
সংক্ষিপ্ত: গোলমাল।
দীর্ঘ: অদম্য ত্রুটি : পরিমাপের ত্রুটি / উপাত্তের ওঠানামার পাশাপাশি টার্গেট ফাংশনের অংশ যা মডেল দ্বারা প্রতিনিধিত্ব করা যায় না। টার্গেট ভেরিয়েবলের কথা স্মরণ করা বা হাইপোথিসিস স্পেস পরিবর্তন করা (অর্থাত্ একটি ভিন্ন মডেল নির্বাচন করা) এই উপাদানটি পরিবর্তন করে।
সম্পাদনা করুন (অন্যান্য উত্তরের সাথে লিঙ্ক করতে): জটিলতা হিসাবে মডেল সম্পাদনা বৈচিত্র্যযুক্ত:
যেখানে ত্রুটিটি হ'ল সম্পূর্ণ বিতরণ ডি-এর উপর ত্রুটি (
প্রায় সমস্ত পরিসংখ্যানগত সমস্যাগুলি নিম্নলিখিত ফর্মটিতে বর্ণিত হতে পারে:
আপনি যদি এইভাবে পরিসংখ্যানগত সমস্যাটি দেখেন তবে মডেলটিকে ফিট করা হ'ল আন্ডারফিটিং এবং অতিরিক্ত ফিটের মধ্যে একটি ভারসাম্য এবং যে কোনও সমাধান সর্বদা একটি আপস। আমরা এই সমস্যার মুখোমুখি কারণ আমাদের ডেটা এলোমেলো এবং গোলমালপূর্ণ।
ওভারফিটিং এবং আন্ডারফিটিং মূলত একটি অনুমান করা মডেল দ্বারা ডেটাগুলির অপর্যাপ্ত ব্যাখ্যা এবং তথ্যটিকে অত্যধিক বর্ণনাকারী বা উপাত্ত নির্ধারণকারী মডেল হিসাবে দেখা যায়। এটি ডেটা ব্যাখ্যা করতে ব্যবহৃত মডেল এবং ডেটা উত্পন্ন করার মডেলের মধ্যে সম্পর্ক দ্বারা তৈরি করা হয়। আমাদের ব্যাখ্যা করার প্রয়াসে আমরা অন্তর্নিহিত মডেলটি অ্যাক্সেস করতে পারি না তাই আমাদের রায় অন্য ফ্যাক্টর দ্বারা পরিচালিত: অনিশ্চয়তা বা ত্রুটি বার।
যখন সমস্ত বৈসাদৃশ্য মাপসই করার প্রয়াসে আমরা একটি মডেল ব্যবহার করি যা খুব জটিল, এটি আমাদের দ্বারা মডেল পছন্দে নিখরচায় রাজত্ব করে এবং ত্রুটি বারগুলিতে খুব বেশি গুরুত্ব অনুসারে তৈরি করা হয়েছে (বা সমস্ত পরিবর্তনশীলতা যা একই, তা ব্যাখ্যা করার চেষ্টা করছে)। যখন নিজেকে এমন একটি মডেল হিসাবে সীমাবদ্ধ রাখুন যা ডেটা বর্ণনা করা খুব সহজ, এবং ত্রুটি বারগুলিতে (বা পরিবর্তনশীলতার ব্যাখ্যা না দেওয়ার) জন্য যথেষ্ট গুরুত্ব দেওয়া না হয়, তখন আমরা সাফল্য অর্জন করছি।
কীভাবে এই দুজনকে এড়ানো যায়? তথ্য ব্যাক মডেল (তথ্য থেকে প্রাপ্ত নয় তবে সমস্যার পূর্ববর্তী জ্ঞান থেকে) এবং অর্থবহ অনিশ্চয়তা।
সংক্ষেপে, অতিরিক্ত প্রশিক্ষণ এমন নিদর্শনগুলির ফলাফল হিসাবে উপস্থিত হয় যা আপনার প্রশিক্ষণ ডেটাসেটে উপস্থিত হয় তবে পুরো জনগোষ্ঠীতে উপস্থিত হয় না (তারা ভাগ্যের বাইরে এসেছিল) যদি আপনি একটি সাধারণ মডেল ব্যবহার করেন (উদাহরণস্বরূপ রৈখিক প্রতিরোধের জন্য চিন্তা করুন), অতিরিক্ত চাপের ঝুঁকি কম, কারণ এটি সনাক্ত করতে পারে এমন সম্ভাব্য নিদর্শনগুলির সংখ্যাটি সামান্য এবং অতএব এলোমেলোভাবে নমুনায় প্রদর্শিত হওয়াগুলির মধ্যে একটির সম্ভাবনাও তত বড় নয়। যদি আপনি 100-স্বতন্ত্র নমুনা গ্রহণ করে এমন একটি জনসংখ্যার 1,000,000 ভেরিয়েবলের সাথে সম্পর্কগুলি অধ্যয়ন করার চেষ্টা করেন তবে এর উদাহরণ হতে পারে। কিছু বৈশিষ্ট্য একে অপরের থেকে সম্পূর্ণ স্বতন্ত্র থাকা সত্ত্বেও এলোমেলোভাবে একটি বিশাল নমুনা পারস্পরিক সম্পর্ক উপস্থাপন করতে পারে
ওভারফিটিংয়ের আরেকটি কারণ হ'ল পক্ষপাতমূলক নমুনা ("নমুনা জাল নমুনা" রয়েছে কারণ নমুনাটি এলোমেলো নয়) উদাহরণস্বরূপ, আপনি যদি সেখানে গিয়ে নির্দিষ্ট প্রকৃতির মাশরুমের গড় আকারটি অধ্যয়ন করতে চান তবে সেগুলি প্রকৃতির মধ্যে খুঁজে পান , আপনি এটি অত্যধিক মূল্যায়ন করতে পারেন (বড় মাশরুমগুলি খুঁজে পাওয়া সহজ)
অন্যদিকে আন্ডারফিটিং হ'ল বেশ সরল ঘটনা। এটি দুটি খুব বুনিয়াদি জিনিস বোঝাতে পারে: ক) জনসংখ্যার প্যাটার্ন বা বি শিখতে আমাদের কাছে মডেলের পক্ষে পর্যাপ্ত ডেটা নেই)) আমাদের মডেল এটি প্রতিফলিত করার মতো শক্তিশালী নয়।
সংক্ষিপ্ত উত্তর:
প্রধান কারণ overfitting একটি জটিল মডেল ব্যবহার করছে আপনি একটি ছোট ট্রেনিং সেট আছে।
আন্ডারফিট করার মূল কারণ হ'ল এমন একটি মডেল ব্যবহার করা যা খুব সাধারণ এবং প্রশিক্ষণ সেটে ভাল পারফর্ম করতে পারে না।
- উচ্চ ক্ষমতা সম্পন্ন মডেলগুলি প্রশিক্ষণ সংস্থার বৈশিষ্ট্যগুলি মুখস্থ করে ওভারফিট করতে পারে যা পরীক্ষার সেটে তাদের ভালভাবে সরবরাহ করে না।
-ডিপ লার্নিং বই, গুডফেলো এট আল।
মেশিন লার্নিংয়ের লক্ষ্য হ'ল প্রশিক্ষণের জন্য একটি মডেলকে প্রশিক্ষণ দেওয়া এই আশায় যে এটি পরীক্ষার ডেটাতে ঠিক তেমনি পারফর্ম করবে। কিন্তু প্রশিক্ষণ সেটটিতে ভাল পারফরম্যান্স পাওয়া কি সর্বদা টেস্টিং সেটে একটি ভাল পারফরম্যান্সে অনুবাদ করে? এটি হবে না, কারণ আপনার প্রশিক্ষণের ডেটা সীমিত । আপনার যদি সীমাবদ্ধ ডেটা থাকে, আপনার মডেলটি এমন কিছু নিদর্শন খুঁজে পেতে পারে যা সেই সীমিত প্রশিক্ষণের জন্য কাজ করে তবে সেই নিদর্শনগুলি অন্য ক্ষেত্রে (যেমন পরীক্ষার সেট) সাধারণ হয় না । এটি উভয় দ্বারা সমাধান করা যেতে পারে:
উ- প্রশিক্ষণে স্বেচ্ছাসেবীর ধরণ থাকার সম্ভাবনা হ্রাস করতে মডেলকে আরও বড় প্রশিক্ষণের সেট সরবরাহ করা।
বি- একটি সহজ মডেল ব্যবহার করে যাতে মডেল প্রশিক্ষণের সেটে সেই স্বেচ্ছাসেবীর নিদর্শনগুলি সন্ধান করতে না পারে। আরও জটিল মডেল আরও জটিল নিদর্শনগুলি সন্ধান করতে সক্ষম হবে, তাই আপনার প্রশিক্ষণের সেটটি স্বেচ্ছাসেবী নিদর্শনগুলি না রাখার জন্য যথেষ্ট বড় কিনা তা নিশ্চিত করতে আপনার আরও ডেটা প্রয়োজন।
(উদাঃ কল্পনা করুন যে আপনি ট্রাক থেকে জাহাজগুলি সনাক্ত করতে কোনও মডেল শিখতে চান এবং আপনার প্রতিটির 10 টি চিত্র রয়েছে your জাহাজটি কেমন দেখাচ্ছে তা শিখার পরিবর্তে। এখন আপনার কাছে যদি 10,000 টি জাহাজ এবং ট্রাকের চিত্র থাকে তবে আপনার প্রশিক্ষণ সংস্থায় বিভিন্ন ব্যাকগ্রাউন্ডে জাহাজ এবং ট্রাক রয়েছে এবং আপনার মডেল আর নীল পটভূমিতে আর নির্ভর করতে পারে না))
আন্ডারফিটিং ঘটে যখন মডেলটি প্রশিক্ষণ সেটে পর্যাপ্ত কম ত্রুটির মান অর্জন করতে সক্ষম হয় না।
স্বল্প ক্ষমতা সম্পন্ন মডেলগুলি প্রশিক্ষণের সেটটি ফিট করার জন্য সংগ্রাম করতে পারে।
-ডিপ লার্নিং বই, গুডফেলো এট আল।
আন্ডারফিটিং ঘটে যখন আপনার মডেল প্রশিক্ষণের সেটটি শিখতে যথেষ্ট ভাল না, অর্থাত আপনার মডেলটি খুব সাধারণ। যখনই আমরা কোনও সমস্যার সমাধান শুরু করি, আমরা এমন একটি মডেল চাই যা কমপক্ষে প্রশিক্ষণের সেটটিতে ভাল পারফরম্যান্স পেতে সক্ষম হয় এবং তারপরে আমরা ওভারফিটিং হ্রাস করার চিন্তাভাবনা শুরু করি। সাধারণত, আন্ডারফিট করার সমাধানটি বেশ সোজা এগিয়ে থাকে: আরও জটিল মডেল ব্যবহার করুন।
আমাদের একটি অনুমান / মডেল সমীকরণ যেখানে একটি উদাহরণ বিবেচনা করুন,
y=q*X+c,
যেখানে এক্স = বৈশিষ্ট্য তালিকা, y = লেবেল এবং q এবং সি হ'ল সহগগুলি যা আমাদের প্রশিক্ষিত করতে হবে।
যদি আমরা গুণমানের মানগুলি নিয়ে আসি যেমন এর যথেষ্ট বড় এবং বৈশিষ্ট্যগুলির মানকে (যেমন এক্স) দমন করা শুরু করে তবে আমরা কোনও এক্স মান নির্বিশেষে সর্বদা y এর স্থির মান পাই। একে উচ্চ পক্ষপাতদুষ্ট বা আন্ডারফিট মডেল বলা হয়।
আরও একটি জটিল অনুমান উদাহরণ বিবেচনা করুন,
y=q*X+r*sqr(X)+s*cube(X)+c, where q,r,s and c are the coefficients.
সেরা গুণফলের মানটি সনাক্ত করার পরে প্রশিক্ষণ ডেটার জন্য আমরা ন্যূনতম ক্ষতি পেতে পারি। এটি কেবলমাত্র আমরা আমাদের মডেলটিকে এত জটিল এবং দৃ tight়ভাবে একত্রে তৈরি করেছি যে এটি প্রশিক্ষণের ডেটার সাথে খুব ভাল আচরণ করে। অন্যদিকে অদেখা ডেটা সহ ডাব্লুউইও বেশ বিপরীত ফলাফল পেতে পারে। একে উচ্চতর রূপযুক্ত বা ওভারফিট মডেল বলা হয়।
মডেল নির্বাচনের ক্ষেত্রে পক্ষপাতদুষ্ট মডেলটির আরও জটিলতা প্রয়োজন যখন উচ্চতর বৈকল্পিক মডেলকে মডেল নির্বাচনের ক্ষেত্রে জটিলতা কমতে হবে। নিয়ন্ত্রণের কৌশলটি মডেল জটিলতার যথাযথ স্তর সনাক্তকরণে আমাদের সহায়তা করতে পারে এবং এই কৌশলটির মাধ্যমে আমরা উভয় ইস্যু দিয়েই কাটিয়ে উঠতে পারি।