আমি আপনাকে সেই পদ্ধতিটি ব্যবহার করার পরামর্শ দিচ্ছি না। আমার সুপারিশটি হ'ল: এই প্রকল্পটি ত্যাগ করুন। শুধু হাল ছেড়ে দিয়ে চলে যাও। আপনার এই কাজের কোনও আশা নেই।
ইমেজ জন্য উত্স
স্টেপওয়াইজ সিলেকশন (সিএফ।, এখানে ) দিয়ে স্ট্যান্ডার্ড সমস্যাগুলি আলাদা করে দেওয়া , আপনার ক্ষেত্রে এমন উচ্চ মাত্রিক জায়গায় পৃথক হওয়ার কারণে আপনার নির্ভুল ভবিষ্যদ্বাণী হওয়ার সম্ভাবনা খুব বেশি।
আপনার পরিস্থিতি সম্পর্কে আমার কাছে বিশদ নেই, তবে আপনি উল্লেখ করেছেন যে আপনার কাছে "মাত্র কয়েক দশকের নমুনা" রয়েছে। আসুন দাতব্য হয়ে উঠুন এবং বলুন যে আপনার 90 আছে You আপনি আরও বলেন আপনার "কয়েক হাজার বৈশিষ্ট্য" রয়েছে। আসুন কল্পনা করুন যে আপনার 'কেবল' 2,000 আছে। সরলতার স্বার্থে, আসুন আমরা বলি যে আপনার সমস্ত বৈশিষ্ট্য বাইনারি। আপনি "বিশ্বাস করেন যে ক্লাস লেবেলটি কেবলমাত্র কয়েকটি বৈশিষ্ট্য ব্যবহার করে সঠিকভাবে পূর্বাভাস দেওয়া যেতে পারে", আসুন আমরা ধরে নিই যে আপনি সর্বোচ্চ 9 টি বৈশিষ্ট্য সন্ধান করতে পারবেন। শেষ অবধি, কল্পনা করুন যে সম্পর্কটি নির্বিচারবাদী, যাতে প্রকৃত সম্পর্কটি সর্বদা আপনার ডেটাতে পুরোপুরি উপস্থিত থাকে। (আমরা এই সংখ্যাগুলি এবং অনুমানগুলি পরিবর্তন করতে পারি, তবে এটির ফলে সমস্যাটি আরও খারাপ হওয়া উচিত)) এখন, এই (উদার) শর্তে আপনি কীভাবে সেই সম্পর্কটি পুনরুদ্ধার করতে পারবেন? এটি হ'ল কতক্ষণ সঠিক সেটটি একমাত্র সেট হতে পারে যা নিখুঁত নির্ভুলতা দেয়? অথবা, অন্য কোনও উপায়ে বলা যায়, নয়টি বৈশিষ্ট্যের কয়টি সেটও একা সুযোগের সাথে খাপ খায়?
কিছু (অতিমাত্রায়) সাধারণ গণিত এবং সিমুলেশনগুলির এই প্রশ্নের কিছু সংকেত সরবরাহ করা উচিত। প্রথমত, 9 টি ভেরিয়েবলের সাথে, যার প্রতিটি 0 বা 1 হতে পারে, পর্যবেক্ষণগুলি যে নিদর্শনগুলি দেখাতে পারে তার সংখ্যা , তবে আপনার কাছে কেবল 90 টি পর্যবেক্ষণ থাকবে। সুতরাং এটি সম্পূর্ণভাবে সম্ভব যে, 9 বাইনারি ভেরিয়েবলের প্রদত্ত সেটগুলির জন্য, প্রতিটি পর্যবেক্ষণের পূর্বাভাসক মানগুলির একটি আলাদা সেট রয়েছে — সেখানে কোনও প্রতিলিপি নেই। কারও কাছে y = 0 এবং কিছু y = 1 রয়েছে এমন একই পূর্বাভাসক মানগুলির সাথে প্রতিলিপি না থাকলে আপনার সম্পূর্ণ বিচ্ছেদ হবে এবং প্রতিটি পর্যবেক্ষণের নিখুঁত ভবিষ্যদ্বাণী করা সম্ভব হবে। 29=512
নীচে, আমার কাছে একটি সিমুলেশন রয়েছে (আর কোডে কোড করা হয়েছে) আপনি কতটা 0 এবং 1 গুলি উভয়ই x- মানগুলির কোনও ধরণ নাও পেতে পারেন তা দেখতে। এটি যেভাবে কাজ করে তা হ'ল আমি 1 থেকে 512 পর্যন্ত সংখ্যার একটি সেট পেয়েছি, যা সম্ভাব্য নিদর্শনগুলিকে উপস্থাপন করে এবং প্রথম ৪৫ (যেটি 0s হতে পারে) এর কোনও নিদর্শন দ্বিতীয় 45-তে যে কোনও প্যাটার্নের সাথে মেলে কিনা তা দেখুন (এটি 1s হতে পারে)। এটি ধরে নিয়েছে যে আপনার কাছে পুরোপুরি সুষম প্রতিক্রিয়া ডেটা রয়েছে, যা আপনাকে এই সমস্যার বিরুদ্ধে সেরা সম্ভাব্য সুরক্ষা দেয়। নোট করুন যে কয়েকটি নকল এক্স-ভেক্টর পৃথক পৃথক ওয়াই-মান সহ আপনাকে বুনো সত্য থেকে বের করে দেয় না, এর অর্থ হ'ল আপনি আপনার ডেটাসেটের প্রতিটি পর্যবেক্ষণের পুরোপুরি পূর্বাভাস দিতে সক্ষম হবেন না, এটি অত্যন্ত কঠোর মান I আমি এখানে ব্যবহার করছি।
set.seed(7938) # this makes the simulation exactly reproducible
my.fun = function(){
x = sample.int(512, size=90, replace=TRUE)
return(sum(x[1:45]%in%x[46:90])==0)
}
n.unique = replicate(10000, my.fun())
mean(n.unique) # [1] 0.0181
সিমুলেশনটি প্রস্তাব দেয় যে আপনি 9 এক্স-ভেরিয়েবলের সেটগুলির প্রায় 1.8% সেট সহ এই সমস্যাটি পাবেন। এখন, 9 টি কত সেট আছে? স্ট্রিক্টলি, যে হবে (যেহেতু আমরা কট করেছি যে সত্য 9 নির্ণায়ক কার্যকারণ ভেরিয়েবল আপনার সেট আছে)। তবে, সেগুলির অনেকগুলি ওভারল্যাপিং হবে; সেখানে থাকবে 1991 / 9 ≈ 221 আপনার ভেরিয়েবল একটি নির্দিষ্ট পার্টিশন (অনেক ধরনের সম্ভাব্য পার্টিশন সহ) মধ্যে অ ওভারল্যাপিং 9 সেট। সুতরাং, প্রদত্ত কিছু বিভাজনের মধ্যে আমরা আশা করতে পারি যে সেখানে 221 × 0.018 ≈ 4 থাকবে1991 choose 9=1.3×10241991/9≈221221×0.018≈4 9 টি এক্স-ভেরিয়েবলের সেট যা আপনার ডেটাসেটের প্রতিটি পর্যবেক্ষণের পুরোপুরি পূর্বাভাস দেবে।
মনে রাখবেন যে এই ফলাফলগুলি কেবলমাত্র সেই ক্ষেত্রে যেখানে আপনার তুলনামূলকভাবে বড় ডেটাসেট রয়েছে ("দশকের" মধ্যে), অপেক্ষাকৃত ছোট সংখ্যক ভেরিয়েবল ("হাজার" এর মধ্যে) কেবলমাত্র এমন ক্ষেত্রে সন্ধান করে যেখানে প্রতিটি পর্যবেক্ষণকে যথাযথভাবে পূর্বাভাস দেওয়া যায় ( সেখানে থাকবে অনেক বেশি সেট প্রায় নিখুঁত), ইত্যাদি আপনার প্রকৃত ক্ষেত্রে কাজ করার 'এই ভাল' সম্ভাবনা কম। তদুপরি, আমরা স্থির করেছিলাম যে সম্পর্কটি নিখুঁতভাবে নির্বিচারক is সম্পর্কের মধ্যে কিছু এলোমেলো আওয়াজ পেলে কি হবে? সেক্ষেত্রে আপনার কাছে এখনও 4 ডলার (নাল) সেট থাকবে যা আপনার ডেটা সম্পর্কে নিখুঁতভাবে পূর্বাভাস দেয় তবে ডান সেটটি তাদের মধ্যে নাও থাকতে পারে ।
টিএল, ডা , এখানে মূল কথাটি হ'ল আপনার ভেরিয়েবলগুলির সেটটি অনেক বড় / উচ্চ মাত্রিক এবং আপনার কিছু পরিমাণে সম্ভব হওয়ার জন্য ডেটা পরিমাণের পরিমাণও খুব ছোট। যদি সত্যিই সত্য হয় যে আপনার কাছে "দশক" নমুনা রয়েছে, "কয়েক হাজার" ভেরিয়েবল রয়েছে, এবং ভেরিয়েবলগুলি সঠিক হতে পারে এমন কোনও পার্থিব ধারণা নেই তবে আপনার কোনও প্রক্রিয়া নিয়ে কোথাও যাওয়ার আশা নেই। আপনার সময় সঙ্গে অন্য কিছু করতে যান।