ওভারফিটিং: সিলভার বুলেট নেই?


21

আমার বোঝার এমনকি যখন সঠিক ক্রস বৈধতা এবং মডেল নির্বাচন পদ্ধতি অনুসরণ overfitting হয় হবে একটি মডেল জন্য এক যদি অনুসন্ধানসমূহ ঘটতে হার্ড যথেষ্ট , যদি না মডেল জটিলতা, কাল এক চাপিয়ে সীমাবদ্ধতা। অধিকন্তু, প্রায়শই লোকেরা ডেটা থেকে মডেল জটিলতায় জরিমানা শেখার চেষ্টা করে যা তারা সরবরাহ করতে পারে এমন সুরক্ষাকে ক্ষুন্ন করে।

আমার প্রশ্ন: উপরের বিবৃতিতে কতটা সত্যতা আছে?

আমি প্রায়ই শুনতে এমএল practicioners বলি: " আমার কোম্পানী / ল্যাব এ, আমরা সবসময় (যেমন লাইব্রেরি থেকে যেমন প্রত্যেক মডেল প্রাপ্তিসাধ্য চেষ্টা ক্যারেট বা scikit-শিখতে ) কোনটা সর্বোত্তম কাজ দেখতে "। আমি প্রায়শই যুক্তি দিই যে এই ক্রসটি বৈধতা যাচাইয়ের বিষয়ে গুরুতর এবং এমনকি তারা যেভাবে চান সেগুলি ধরে রাখার পরেও এই পদ্ধতিকে সহজেই উপকার করতে পারে । তবুও তারা যতই তত সন্ধান করবে তত বেশি তারা মাপসই করবে। অন্য কথায়, ওভার-অপটিমাইজেশন একটি আসল সমস্যা এবং এমন কোনও হিউরিস্টিক্স নেই যা এর বিরুদ্ধে লড়াই করতে আপনাকে নিয়মিতভাবে সহায়তা করতে পারে। আমি কি এইভাবে ভাবতে ভুল করছি?


আপনি কি এমএল সম্পর্কে বিশেষত জিজ্ঞাসা করছেন বা সাধারণভাবে মাল্টিভারিয়েট মডেল?
রমটস্কো


1
ধন্যবাদ @CagdasOzgenc: "বৃহত্তর অনুসন্ধান স্থান (মডেল বিবেচিত), দরিদ্র RESULT" । আপনি এখানে কোন স্তরের অ্যাবস্ট্রাকশন "অনুসন্ধানের স্থান" উল্লেখ করছেন তা নিশ্চিত নয়, তবে "যথেষ্ট চেষ্টা করে" বলতে অবশ্যই আমার অর্থ আরও বেশি সংখ্যক মডেল অনুসন্ধান করা, এবং এইভাবে "মেটা-মডেল" এর জটিলতা / অনুসন্ধানের স্থান বৃদ্ধি করা (আপনি যদি চান) যে আমরা ফিট করার চেষ্টা করছি।
আমেলিও ওয়াজকেজ-রেইনা

উত্তর:


8

পুরো উত্তর নয়, তবে এই আলোচনায় লোকেরা যে বিষয়টিকে অগ্রাহ্য করে তা হ'ল ক্রস-বৈধকরণ (উদাহরণস্বরূপ) এর অর্থ কী, আপনি কেন এটি ব্যবহার করেন এবং এটি কী আবরণ করে?

খুব বেশি অনুসন্ধান করার সাথে আমি যে সমস্যাটি দেখি তা হ'ল লোকেরা যে সিভি করছে তা প্রায়শই একটি একক মডেলের মধ্যে থাকে। folds=মডেল ফিটিং পদ্ধতির একটি যুক্তি সেট করে করা সহজ । আপনি যখন একাধিক মডেল এবং একাধিক মডেল তৈরির জন্য একাধিক পদ্ধতিতে যান তখন আপনি অন্য একটি স্তর বা দুটি যুক্ত করেন যা আপনি সিভিতে আবৃত করেননি।

সুতরাং তাদের নেস্টেড সিভি ব্যবহার করা উচিত। এবং তাদের উপর নির্ভরশীল এবং স্বতন্ত্র ভেরিয়েবলের মধ্যে সম্পর্ককে ভেঙে ফেললে তাদের পদ্ধতিটি কতটা ভাল হবে তা দেখার জন্য তাদের পুরো প্রক্রিয়াটি জড়িত "টার্গেট শফলিং" (পুনরায় মডেলিং / ক্রমুয়েশন টেস্টিং) ব্যবহার করা উচিত - যেমন আপনি এলোমেলো চেয়ে আরও কত ভাল করছেন see আপনার পুরো প্রক্রিয়া বিবেচনা?


1
+1 টি। গ্রিড অনুসন্ধান (মডেল নির্বাচন) চালিত সিভি স্তরগুলির একক (বা খুব কম) স্তরগুলির সাথে মডেল নির্বাচন করা নিখুঁতভাবে অত্যধিক মানসিকতার দিকে পরিচালিত করতে পারে (আগ্রহীদের জন্য, আমি উদাহরণস্বরূপ এটি এবং এটির উত্সগুলি প্রস্তাব করি) recommend আমি "টার্গেট শিফলিং" সম্পর্কে পড়েছি (অন্যান্য পাঠকদের জন্য, আমি এই প্রকাশের প্রস্তাব দিই ), তবে আমি নিজে কখনও এটি ব্যবহার করি নি; আমি অবাক হয়েছি যদি এটিরও অপব্যবহার করা যায়, (উদাহরণস্বরূপ একাধিক পরীক্ষা করা মিথ্যা ইতিবাচক দিকে পরিচালিত করে এবং এরপরে আবার "হার্ড" (?)) অনুসন্ধান করে।
আমিলিও ওয়াজকেজ-রেইনা

7

আমার 4 বা তত বছরের অভিজ্ঞতায় আমি খুঁজে পেয়েছি যে ক্যারেটে উপলব্ধ প্রতিটি মডেল চেষ্টা করে (বা সাইকিট-শিখুন) অগত্যা অত্যধিক মানসিকতার দিকে যায় না। আমি খুঁজে পেয়েছি যে যদি আপনার পর্যাপ্ত পরিমাণে ডেটাসেট (10,000+ সারি) থাকে এবং ক্লাসের কম-বেশি এমনকি ভারসাম্য থাকে (যেমন, creditণ ঝুঁকি বা বিপণনের সমস্যাগুলির মতো কোনও শ্রেণির ভারসাম্যহীনতা) না থাকে তবে ওভারফিটিংয়ের পরিমাণ খুব কম থাকে। এটি লক্ষণীয় যে টিউনিং পরামিতিগুলিতে আমার গ্রিড অনুসন্ধান প্রতি মডেল 30-এর বেশি অনুমতি ছাড়াই প্রবণতা রাখে। চূড়ান্ত প্রান্তে, আপনি যদি প্রতি মডেল 100 বা 1,000 ক্রম ব্যবহার করেন তবে আপনি সম্ভবত উপকার পাবেন।

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

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


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

অন্য কথায়, কোনও মডেলের লক্ষ লক্ষ পর্যবেক্ষণ "মুখস্থ" করার জন্য পর্যাপ্ত স্বাধীনতার ডিগ্রি নেই।
রিকার্ডো ক্রুজ

5

এত কিছু স্কেলের উপর নির্ভর করে। আমি আশা করি @ রায়ানজোটি সাধারণত ২,০০০-৩,০০০ এর বেশি কেস থাকতে পারে; আমার খুব কমই 1/10 তম রয়েছে। "বিগ ডেটা" মেশিন লার্নিং ফোক এবং বায়োমেডিসিনের মতো ক্ষেত্রগুলিতে যারা কাজ করছেন তাদের মধ্যে দৃষ্টিভঙ্গির মধ্যে এটি একটি বড় পার্থক্য, যা আপনি এই সাইটে পাবেন এমন কিছু ভিন্ন দৃষ্টিকোণের জন্য অ্যাকাউন্ট হতে পারে।

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

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

পর্যাপ্ত পরিমাণে বড় ডেটা সেট সহ আপনি কখনই অতিরিক্ত ফিটনের কাছাকাছি আসতে পারেন না। যদি আপনার কাছে প্রতি মডেল 100 প্যারামিটার সহ 20,000 কেস এবং 20 টি বিভিন্ন মডেল থাকে তবে কার্যকর পরামিতি প্রতি আপনার 10 কেস এখনও রয়েছে বলে আপনি দণ্ড ছাড়াই ঝামেলায় পড়তে পারেন না। মডেলিং কৌশলটি কেবল 200 কেস দিয়ে চেষ্টা করবেন না।

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

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


2

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

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

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

অবশেষে, আমি মনে করি যে আমার বক্তব্যগুলি সত্য হতে পারে কেবলমাত্র আপনার শর্তেই প্রশিক্ষণে বিলিয়ন বিলিয়ন পয়েন্ট রয়েছে। স্বজ্ঞাতভাবে, ডেটা আপনার মডেলের তুলনায় অনেক জটিল তাই আপনার বেশি ফিট হবে না। বিলিয়ন সারি ডেটার জন্য, এমনকি আপনি কয়েক হাজার প্যারামিটার সহ একটি মডেল ব্যবহার করছেন, এটি ঠিক আছে। একই সময়ে আপনি মিলিয়ন ফ্রি প্যারামিটার সহ একটি মডেল তৈরির জন্য গণনা বহন করতে পারবেন না।

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


1

আমি @ রায়ান-জোটির সাথে একমত যে যথেষ্ট পরিমাণে অনুসন্ধান করা অপরিহার্যতার দিকে পরিচালিত করে না - বা কমপক্ষে কোনও পরিমাণে নয় যাতে আমরা এটিকে ওভারফিট বলি। আমাকে এই সম্পর্কে আমার দৃষ্টিভঙ্গি বলার চেষ্টা করুন:

বক্স একবার বলেছিল:

মনে রাখবেন যে সমস্ত মডেলগুলি ভুল; ব্যবহারিক প্রশ্ন হ'ল তারা কার্যকর না হওয়ার জন্য কতটা ভুল হতে পারে।

(নিখুঁত হওয়ার জন্য সমস্ত ডেটা প্রয়োজন হবে, যার ফলে প্রথমে কোনও মডেলের প্রয়োজনীয়তা দূর হবে)।

1

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


1

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