একটি র্যান্ডমফোরস্টের জন্য সঠিক স্যাম্পসাইজ নির্ধারণের জন্য কি কোনও সূত্র বা নিয়ম রয়েছে?


13

আমি একটি র্যান্ডমফোরস্টের সাথে খেলছি এবং দেখেছি যে সাধারণত স্যাম্পসাইজ বাড়ানো আরও ভাল পারফরম্যান্সের দিকে নিয়ে যায়। কোনও নিয়ম / সূত্র / ইত্যাদি রয়েছে যা ইঙ্গিত দেয় যে সর্বোত্তম স্যাম্পসাইজটি কী হওয়া উচিত বা এটি একটি ট্রায়াল এবং ত্রুটিযুক্ত জিনিস? আমি অনুমান করি এটির অন্যরকম উপায়; একটি সাম্পসাইজ খুব ছোট বা খুব বড় (ওভারফিটিং?) এর আমার ঝুঁকিগুলি কী?


এই প্রশ্নটি randomForestপ্যাকেজে এলোমেলোভাবে বন নির্ধারণের কথা উল্লেখ করছে । ফাংশনটির randomForestএকটি পরামিতি রয়েছে sampSizeযা ডকুমেন্টেশনে বর্ণিত রয়েছে

অঙ্কনের জন্য নমুনার আকার (গুলি)। শ্রেণিবিন্যাসের জন্য, যদি স্যাম্পসাইজগুলি স্তরের সংখ্যাটির দৈর্ঘ্যের একটি ভেক্টর হয়, তবে নমুনাটি স্তর দ্বারা স্তরিত হয় এবং স্যাম্পসাইজগুলির উপাদানগুলি স্তর থেকে অঙ্কিত হওয়া সংখ্যাগুলি নির্দেশ করে।

উত্তর:


21

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

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


2

আমি কিছু এলোমেলো প্যারামিটার-সেটিংস সহ রাত জুড়ে 4500 এলোমেলো বন দৌড়েছি:

রিগ্রেশন সমস্যা Ysignal = x1^2+sin(x2*pi) + x3 * x4 + x5 যেখানে কোনও xসাধারণ বন্টন, এসডি = 1, অর্থ = 1 থেকে স্বতন্ত্র নমুনাযুক্ত থাকে

Ytotal = Ysignal + Yerror

কোথায় Yerror = rnorm(n.observations,sd=sd(Ysignal))*noise.factor

theoretical.explainable.variance"TEV" = var(Ysignal= / var(Ytotal)

randomForest.performance = explained.variance(OOB cross-validation) / TEV

রিগ্রেশন সমস্যা থেকে ডেটাসেটের নমুনা তৈরি করা হয়েছিল এবং যোগ করা শব্দটি 1 থেকে 20 এর n.obsমধ্যে 1000 এবং 5000 এর n.extra.dummy.variablesমধ্যে একটি এলোমেলো সংখ্যা ছিল

ntree সর্বদা 1000

sample_replacement সর্বদা true

mtry5 থেকে 25, n.obs noise.factor0 এবং 9 এর মধ্যে সীমাবদ্ধ

samplesize.ratio 10% এবং 100% এর মধ্যে একটি এলোমেলো সংখ্যা, প্রতিটি বুটস্ট্র্যাপের অনুপাতের আকার

সমস্ত মডেল মত প্রশিক্ষিত ছিল rfo = randomForest(x=X, y=Ytotal, <more args>)

randomForest.performance, সর্বোচ্চ ভগ্নাংশ ব্যাখ্যা করার ক্ষমতা TEVসাধারণ বৃদ্ধির যখন samplesizeযখন পরিধেয় TEVকম 50% এবং হ্রাস যখন TEV50% বেশী।

সুতরাং, যদি আপনার randomForest-modelfitপ্রতিবেদনগুলি উদাহরণস্বরূপ 15% ওওবি-সিভি দ্বারা বৈকল্পিক ব্যাখ্যা করেছে, এবং এটি আপনার জন্য একটি গ্রহণযোগ্য মডেল-নির্ভুলতা, তবে আপনি সম্ভবত sampsizeপর্যবেক্ষণের একটি তৃতীয়াংশকে নীচে রেখে পারফরম্যান্সটিকে কিছুটা উচ্চতর করতে পারেন ntree > 1000

মনোবল : সর্বাধিক শোরগোলের তথ্যের জন্য সর্বাধিক আকারের গাছ বাড়িয়ে পক্ষপাত হ্রাস করার চেয়ে গাছগুলিকে ডি-কোলেলেটেটেড করা ভাল।


1

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


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