যদি কোনও তত্ত্বাবধানে থাকা মেশিন লার্নিং মডেলটি অত্যধিক মানানসই বা না হয় তবে কীভাবে বিচার করবেন?


27

কেউ যদি আমাকে বলতে পারেন যে কোনও তত্ত্বাবধায়ক মেশিন লার্নিং মডেল অত্যধিক মানানসই বা না থাকে তবে কীভাবে বিচার করবেন? যদি আমার কাছে কোনও বাহ্যিক বৈধতা ডেটাसेट না থাকে তবে আমি জানতে চাই যে আমি ওভারফিটিংয়ের ব্যাখ্যা দিতে 10 গুণ ক্রস বৈধকরণের আরওসি ব্যবহার করতে পারি কিনা। আমার যদি একটি বাহ্যিক বৈধতা ডেটাসেট থাকে তবে আমার আর কী করা উচিত?

উত্তর:


29

সংক্ষেপে: আপনার মডেলটি যাচাই করে। বৈধতার মূল কারণটি হ'ল কোনও ওভারফিট হয় না এবং সাধারণীকরণ করা মডেলটির কার্যকারিতা অনুমান করা।

Overfit

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

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

ডেটাসেট বিভক্ত

সাধারণীকরণের পারফরম্যান্স অনুমানের সবচেয়ে সহজ পদ্ধিতি হ'ল ডেটাसेटকে তিন ভাগে বিভক্ত করা, একটি প্রশিক্ষণ সেট, একটি বৈধতা সেট এবং একটি পরীক্ষা সেট। মডেলটিকে ডেটা ফিট করার জন্য প্রশিক্ষণের জন্য ব্যবহার করা হয়, সেরাটি নির্বাচন করার জন্য মডেলগুলির মধ্যে পারফরম্যান্সের পার্থক্য পরিমাপের জন্য বৈধতা সেটটি ব্যবহার করা হয় এবং পরীক্ষার সেটটি মডেল নির্বাচন প্রক্রিয়াটি প্রথমটির চেয়ে বেশি মানায় না বলে জোর দেয় দুই সেট.

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

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

ক্রস বৈধতা

বৈধতা এবং পরীক্ষার জন্য ডেটার একটি বড় অংশকে নষ্ট করার এক উপায় হ'ল ক্রস-ভ্যালিডেশন (সিভি) ব্যবহার করা যা মডেলটিকে প্রশিক্ষণের জন্য ব্যবহৃত একই ডেটা ব্যবহার করে সাধারণ সম্পাদনাকে নির্ধারণ করে। ক্রস-বৈধকরণের পিছনে ধারণাটি হ'ল ডেটাসেটকে নির্দিষ্ট সংখ্যক সাবটেটে বিভক্ত করা, এবং তারপরে মডেলটিকে প্রশিক্ষণ দেওয়ার জন্য বাকী ডেটা ব্যবহার করার সময় এই সাবসেটগুলির প্রতিটি পরিবর্তে পরীক্ষার সেটগুলি হিসাবে ব্যবহার করুন। সমস্ত ভাঁজ ধরে মেট্রিকের গড় গড়ে তোলা আপনাকে মডেলটির পারফরম্যান্সের একটি অনুমান দেবে। চূড়ান্ত মডেলটি সাধারণত সমস্ত ডেটা ব্যবহার করে প্রশিক্ষিত হয়।

তবে সিভি অনুমানটি পক্ষপাতহীন নয়। তবে যত বেশি ভাঁজ আপনি তত ছোট পক্ষপাত ব্যবহার করেন তবে তার পরিবর্তে আপনি আরও বৃহত্তর বৈকল্পিক পান।

ডেটাসেট বিভাজনের মতো আমরা মডেল পারফরম্যান্সের একটি অনুমান পাই এবং আপনার প্রশিক্ষণের সেটটিতে মেট্রিকগুলি মূল্যায়ন করা থেকে আপনার সিভি থেকে মেট্রিকগুলি তুলনা করে আপনি কেবলমাত্র আপনার সিভি থেকে মেট্রিকগুলি তুলনা করুন।

বুটস্ট্র্যাপ

বুটস্ট্র্যাপের পিছনে ধারণাটি সিভির অনুরূপ তবে ডেটাসেটটি অংশগুলিতে বিভক্ত করার পরিবর্তে আমরা পুরো ডেটাসেট থেকে বারবার প্রতিস্থাপনের সাথে প্রশিক্ষণ সেটগুলি আঁকিয়ে এবং এই প্রতিটি বুটস্ট্র্যাপের নমুনায় পূর্ণ প্রশিক্ষণ পর্ব সম্পাদন করে প্রশিক্ষণে এলোমেলোতা উপস্থাপন করি।

বুটস্ট্র্যাপ বৈধতার সহজতম রূপটি কেবল প্রশিক্ষণ সংস্থায় পাওয়া নমুনাগুলির মেট্রিকগুলি (যেমন বাদ পড়েছে) এবং সমস্ত পুনরাবৃত্তির গড় গড়ে মূল্যায়ন করে।

এই পদ্ধতিটি আপনাকে মডেল পারফরম্যান্সের একটি প্রাক্কলন দেবে যা বেশিরভাগ ক্ষেত্রে সিভির চেয়ে কম পক্ষপাতদুষ্ট। আবার এটিকে আপনার প্রশিক্ষণের সেট পারফরম্যান্সের সাথে তুলনা করুন এবং আপনি ওভারফিট পাবেন।

বুটস্ট্র্যাপ বৈধতা উন্নত করার উপায় আছে। .632+ পদ্ধতিটি সাধারণ বিবেচিত মডেলের কর্মক্ষমতা সম্পর্কে আরও ভাল, আরও দৃ estima় প্রাক্কলন জানায়, ওভারফিটটিকে বিবেচনায় রাখে। (আপনি যদি আগ্রহী হন তবে মূল নিবন্ধটি ভালভাবে পড়া: ক্রস-বৈধকরণের উন্নতি: 63৩২+ বুটস্ট্র্যাপ পদ্ধতি )

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


2
নোট করুন যে আপনার বনাম বনাম পরীক্ষার পরিভাষা সমস্ত ক্ষেত্রে অনুসরণ করা হয় না। যেমন আমার ক্ষেত্রে (বিশ্লেষণাত্মক রসায়ন) যাচাইকরণ একটি পদ্ধতি যা মডেলটি ভালভাবে কাজ করে তা প্রমাণ করা উচিত (এবং এটি কতটা ভাল কাজ করে তা পরিমাপ করে)। এটি চূড়ান্ত মডেল দিয়ে সম্পন্ন হয় , এর পরে আর কোনও পরিবর্তন অনুমোদিত হয় না (বা, যদি আপনি এটি করেন তবে আপনাকে স্বাধীন ডেটা দিয়ে আবার যাচাই করতে হবে)। সুতরাং আমি আপনার বৈধতা সেটটিকে একটি "অভ্যন্তরীণ পরীক্ষা সেট" বা "অনুকূলিতকরণ পরীক্ষা সেট" বলব call "বহিরাগত" পরীক্ষার ডেটা অত্যধিক মানসিকতা প্রতিরোধ করে না , তবে এটি ওভারফিটিংয়ের পরিমাণ পরিমাপ করতে ব্যবহৃত হতে পারে।
ক্যাবিলাইটরা মনিকা

ঠিক আছে, আপনার ক্ষেত্রে আমার অভিজ্ঞতা নেই। স্পষ্টির জন্য ধন্যবাদ। অন্যান্য ক্ষেত্রেও সম্ভবত এটি একই রকম। আমি শেষ পর্যন্ত আমার সাথে লিঙ্কিত বইটিতে ব্যবহৃত পরিভাষাটি সহজভাবে ব্যবহার করেছি। আমি আশা করি এটি খুব বিভ্রান্তিকর নয়।
যখন

7

ওভারফিটিংয়ের সীমাটি আপনি কীভাবে অনুমান করতে পারেন তা এখানে:

  • অভ্যন্তরীণ ত্রুটির অনুমান পান। হয় পুনরায় প্রতিষ্ঠিত করুন (= প্রশিক্ষণ ডেটার পূর্বাভাস), বা যদি আপনি হাইপারপ্যারামিটারগুলি অনুকূল করতে একটি অভ্যন্তরীণ ক্রস "বৈধকরণ" করেন তবে সেই ব্যবস্থাও আগ্রহী হবে।
  • একটি স্বাধীন পরীক্ষা সেট ত্রুটির প্রাক্কলন পান Get সাধারণত, পুনরায় মডেলিংয়ের (পুনরাবৃত্ত হওয়া ক্রস বৈধকরণ বা বুটস্ট্র্যাপের বাইরে থাকা * প্রস্তাব দেওয়া হয় no তবে আপনাকে কোনও সতর্কতা অবলম্বন করা উচিত যে কোনও তথ্য ফাঁস না ঘটে e অর্থাত: পুনরায় মডেলিং লুপটি অবশ্যই একাধিক ক্ষেত্রে বিস্তৃত গণনা আছে এমন সমস্ত পদক্ষেপের পুনরায় গণনা করতে পারে That এর মধ্যে প্রাক- কেন্দ্রিককরণ, স্কেলিং ইত্যাদির মতো প্রক্রিয়াজাতকরণের পদক্ষেপগুলিও নিশ্চিত করুন যে আপনার যদি একটি "শ্রেণিবদ্ধ" ("ক্লাস্টারড" নামে পরিচিত) ডেটা কাঠামো যেমন একই রোগীর বার বার পরিমাপ (=> পুনরায় নমুনা করা রোগী ) থাকে তবে আপনি সর্বোচ্চ স্তরে বিভক্ত হয়ে পড়েছেন তা নিশ্চিত করুন )।
  • তারপরে স্বতন্ত্রটির চেয়ে "অভ্যন্তরীণ" ত্রুটির অনুমানটি আরও কত ভাল দেখায় তা তুলনা করুন।

এখানে একটি উদাহরণ রয়েছে:
overfitting
ট্রেফেরেট = হিট রেট (% সঠিক শ্রেণিবদ্ধ), ভেরিয়েবলজাহল = ভেরিয়েবলের সংখ্যা (= মডেল জটিলতা)
প্রতীক:। পুনরায় প্রতিষ্ঠিতকরণ, হাইপারপ্যারামিটার অপটিমাইজারের অভ্যন্তরীণ ছুটি-ও-আউট হিসাব, ​​রোগীর পর্যায়ে স্বতন্ত্র বাইরের ক্রস বৈধতা

এটি আরওসি, বা পারফরম্যান্সের ব্যবস্থার সাথে কাজ করে যেমন বেরিয়ারের স্কোর, সংবেদনশীলতা, নির্দিষ্টতা, ...

* আমি এখানে .632 বা .63৩২++ বুটস্ট্র্যাপের প্রস্তাব দিচ্ছি না: তারা ইতিমধ্যে পুনরায় প্রতিষ্ঠানের ত্রুটিতে মিশ্রিত হয়েছে: আপনি আপনার পুনঃস্থাপন এবং বুটস্ট্যাপের আউটপুট থেকে পরবর্তী সময়ে এগুলি গণনা করতে পারেন।


0

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.