আর / ক্যারেট: ট্রেন এবং পরীক্ষা সেট বনাম ক্রস-বৈধতা?


9

এটি সম্ভবত একটি নির্বোধ প্রশ্ন হতে পারে, তবে ক্যারেটের সাথে একটি মডেল তৈরি করার সময় এবং এর মতো কিছু LOOCVবা (এমনকি আরও বেশি কিছু) ব্যবহার করার সময় LGOCV, ট্রেন এবং পরীক্ষার সেটগুলিতে ডেটা বিভক্ত করার কী সুবিধা যদি এটি মূলত ক্রস-বৈধকরণের পদক্ষেপের হয় তবে যাইহোক না?

আমি সম্পর্কিত কিছু প্রশ্ন পড়েছি এবং তারা পরামর্শ দিয়েছে যে ক্রস-বৈধকরণের কিছু পদ্ধতি (যেমন ক্যারেট সাইটে এখানে বর্ণিত রয়েছে ) বৈশিষ্ট্য নির্বাচনের উদ্দেশ্যে । তবে আমার ক্ষেত্রে, আমি randomForest( method = "rf") এবং kernlab( method = svmRadial) ব্যবহার করছি , যা গোষ্ঠীটিতে তালিকাভুক্ত নয় যা ভবিষ্যদ্বাণীকারীদের শুদ্ধ করার চেষ্টা করে।

সুতরাং, আমার প্রশ্নটি হ'ল আমি যদি এর মতো কিছু ব্যবহার করি তবে আমার cross_val <- trainControl(method = "LGOCV", p = 0.8)80% ডেটা সম্পর্কে প্রশিক্ষণ দেওয়া, ফলাফল 20 শতাংশের ফলাফলের মডেলটি পরীক্ষা করা এবং সেই বিষয়টি আরও ভালভাবে ধারণা পাওয়ার জন্য বারবার করা কাজ করছেন মডেল?

যদি তা হয় তবে ট্রেন / পরীক্ষার সেটে আমার ডেটা বিভক্ত করার কোনও দরকার আছে কি?

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

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


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

এরপরে আমরা রিওলজি, আণবিক ওজন, পেইন্টের আবরণের কঠোরতা, জলের প্রতিরোধ ইত্যাদি পরিমাপ করতে পারি

আমাদের বেশ কয়েকটি ভেরিয়েবলের শালিক প্রতিলিপি রয়েছে, তবে প্রতিটি ডিওই লেভেল হুবহু এক রকমের এই অর্থে কয়েকটি সত্য প্রতিলিপি রয়েছে। মোট ডেটা সেট ~ 80 টি পর্যবেক্ষণ এবং সম্ভবত 4-5 হুবহু পুনরাবৃত্তি হয়। আমরা 15 টি পৃথক পরীক্ষা করেছি, এবং এর মধ্যে সম্ভবত 5-6 টি প্রতিটি একক পর্যবেক্ষণের জন্য করা হয়েছে। কিছু প্রতিক্রিয়া ডেটা 25-50% জন্য উপস্থিত।

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

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


বৈধতা সেট এবং পরীক্ষা সেট দুটি ভিন্ন জিনিস! দেখুন stats.stackexchange.com/questions/19048/... এবং en.wikipedia.org/wiki/Test_set
sashkello

@ সাশকেলো এর জন্য ধন্যবাদ এটি সম্ভবত নকল হিসাবে বন্ধ করা যেতে পারে, এবং কোনওভাবে আমি এই প্রশ্নটি পুরোপুরি মিস করেছি। একটি অনুপস্থিত বিট হতে পারে: আমি যদি প্রশিক্ষণ দিয়ে data_set1থাকি তবে LGOCVক্রস-বৈধকরণের দ্বারা গৃহীত পদক্ষেপটি আমি কী বিবেচনা করব ? আমার পড়া থেকে আমি ধরে নিচ্ছি) 1 টি caretটিউনিং পরামিতিগুলি data_set1পুনরায় এবং তারপরে 2 ) পুনরাবৃত্তি করে those) সেইগুলি প্যারামগুলি স্থির করে এবং 3) প্রতিটি p = 0.8নমুনার জন্য # 1 থেকে প্যারাম ব্যবহার করে একটি "সাব মডেল" তৈরি data_set1করে এবং অবশিষ্ট 0.2 থেকে गेজ যথার্থতার জন্য ভবিষ্যদ্বাণীগুলি পরীক্ষা করে । এটি কি যুক্তিসঙ্গত সংক্ষিপ্তসার?
হেন্ডি

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

আরও ভাল অনুসন্ধান কৌশল সহ, এটি হ'ল anoter সহায়ক: stats.stackexchange.com/questions/9357/… । বিশেষত এটি "আমি মনে করব যে এখানে একটি সীমাবদ্ধ ফ্যাক্টর হ'ল আপনার কাছে কতটা ডেটা রয়েছে Most বেশিরভাগ সময়, আমরা এমনকি ডেটা কোনও নির্দিষ্ট পার্টিশনে বিভক্ত করতে চাই না, তাই সিভি।" আমি মনে করি এটি আমার প্রশ্নে এসেছে (যা সম্ভবত আমার ডেটাগুলির সীমাবদ্ধ প্রকৃতির সাথে সুনির্দিষ্ট (কেবলমাত্র 80 টি পর্যবেক্ষণ) cases এই ক্ষেত্রে বিভক্ত না হওয়ার জন্য ভোট বলে মনে হচ্ছে?
হেন্ডি

উত্তর:


7

আমার সাধারণ চিন্তা:

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

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

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

আমি দ্বিতীয় শিবিরে পড়ি কিন্তু প্রথমটি মোটেও ভুল নয়।

আপনার যদি এক টন ডেটা থাকে তবে তা আসলে খুব বেশি গুরুত্ব দেয় না (যদি না আপনি একটি ছোট ইভেন্টের হারকে না ফেলে)।

তোমার জন্য:

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

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

ম্যাক্স


আমি উপরে আপনার জন্য একটি আপডেট যুক্ত করেছি। আমি খুব সুন্দর বক্ররেখা ছিল (আমি অনুমান যে বিষয়গত) method = "svmRadial"। আমি আশা করি যে method = neuralnetআমি চেষ্টা করেছি স্নাতক নেটওয়ার্কটি past set.seed () এর প্রতি খুব সংবেদনশীল পেয়েছি যদিও এর সাথে আরও কিছুকে মূল্যায়ন করব । সংক্ষেপে, আমরা 1) ইনপুট / একাধিক প্রতিক্রিয়া এবং 2 এর মধ্যে সম্পর্ককে আরও ভালভাবে বোঝার চেষ্টা করছি)) কাঙ্ক্ষিত বৈশিষ্ট্য অর্জনের জন্য সর্বাধিক সম্ভাব্য ডিজাইনের জায়গাগুলিতে সেরা অনুমান করা যাতে আমরা নতুন, আরও ফোকাসড ডিওএ বনাম আরও সাধারণ চালাতে পারি চেষ্টা করার জন্য ইনপুট নূন্যতম / সর্বোচ্চ স্তরের ক্ষেত্রে বিস্তৃত / শটগান পদ্ধতির।
হেন্ডি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.