দুটি ভিন্ন র্যান্ডম ফরেস্ট মডেল থেকে আর-স্কোয়ারের তুলনা করুন


10

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

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

আমি পরীক্ষা করে দেখছি যে মডেলটি এখানে পোস্ট হওয়া পদ্ধতির ব্যবহার করে, কোনও সংরক্ষিত পরীক্ষার সেটটির প্রকৃত ফলাফল সম্পর্কে কতটা ভাল ভবিষ্যদ্বাণী করে ,

... বা আর তে:

1 - sum((y-predicted)^2)/sum((y-mean(y))^2)

তবে এখন আমার কাছে অতিরিক্ত ~ 25 প্রেডিকটার ভেরিয়েবল রয়েছে যা আমি যুক্ত করতে পারি। 100 ডলার পূর্বাভাসকারীদের সেটটি ব্যবহার করার সময়, R² বেশি হয়। আমি এই পরিসংখ্যানগতভাবে পরীক্ষা করতে চাই, অন্য কথায়, ~ 100 পূর্বাভাসকারীদের সেটটি ব্যবহার করার সময়, ~ 75 ভবিষ্যদ্বাণীকারীদের ব্যবহার করে মডেল ফিটের চেয়ে ডেটা পরীক্ষায় উল্লেখযোগ্যভাবে কী মডেল পরীক্ষা হয় ? অর্থাৎ, হ্রাসকৃত ডেটাসেটে আরএফ মডেলটি পরীক্ষা করা থেকে আরএফের তুলনায় আরএফের তুলনায় উল্লেখযোগ্যভাবে পূর্ণ ডেটাসেটের ফিট ফিট থেকে আর ²

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

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

উত্তর:


8

ক্রস-যাচাই করুন! আপনার 2 মডেল ফিট করতে ক্যারেটে ট্রেন ফাংশনটি ব্যবহার করুন । ম্যাটরির একটি মান (উভয় মডেলের জন্য একই) ব্যবহার করুন। ক্যারেট আরএমএসই এবং এর পুনরায় স্যাম্পলড প্রাক্কলনটি ফিরিয়ে দেবে ।R2

ক্যারেট ভিগনেটের পৃষ্ঠা 3 দেখুন ( সম্পূর্ণ রেফারেন্স ম্যানুয়ালটিতেও )


আমি আপনার বাদ দেওয়া ব্যতীত একমত যে ওপিতে আর-স্কোয়ার্ড অ্যাডজাস্টেড ব্যবহার করা উচিত, এটি এটির জন্য ডিজাইন করা হয়েছে। মডেলগুলির একই ওয়াই কিন্তু বিভিন্ন ভবিষ্যদ্বাণীকারী সেট রয়েছে, তাই স্বাধীনতা / মডেল জটিলতার ব্যয় করা ডিগ্রিগুলির পার্থক্যের জন্য শাস্তি দেওয়ার জন্য আর-স্কোয়ার সমন্বিত প্রয়োজন। অন্য যে সমস্যাটি আমি দেখছি তা হ'ল সম্ভাব্য একটি নমুনা আকারের সমস্যা; যে কোনও ধরণের আসল আশা রাখতে ওপি-র জন্য একটি প্রচুর পরিমাণে নমুনা আকারের প্রয়োজন হবে এটি এমনকি সিভিও নয় over
LSC

@ এলএসসি আমি বলব যে যদি কোনও অতিরিক্ত ডেটাসেট ধরে রাখে (নির্বাচনের জন্য ব্যবহৃত হয় না) তবে তারা কেবল ঠিক করা আরএমএসই হিসাবে আর 2 বিন্যাস ছাড়াই ব্যবহার করতে পারে। আমি সম্মত হয়েছি যে এটি করার জন্য তাদের একটি সুন্দর বড় ডেটাসেট দরকার।
জ্যাচ

নতুন ডেটা বা পুরানো, অন্য সব ধ্রুবক, ২৫ টি প্রিভিডাক্টর মডেলের তুলনায় আর-স্কোয়ারের তুলনায় 25 টি বনাম 25 মডেলের 100 টি শর্তাবলী রাখলে উচ্চতর অযৌক্তিক আর-স্কোয়ার থাকবে। দুটির মধ্যে স্কোয়ার ত্রুটির যোগফলের গণনা করার সময় এটি সহজেই দেখা যায় (আরও শর্তগুলি কম এসএসই, অন্য সবগুলি একই)। আমি মনে করি লোকেরা প্রায়শই ভুলে যায় যে আরও শর্তাবলী আর-স্কোয়ারটি কখনই হ্রাস পাবে না, তবে তারা যদি তাদের মানের তুলনায় দুর্গন্ধ হয় তবে তারা সামঞ্জস্য হওয়া আর-স্কোয়ার হ্রাস করতে পারে যা বাক্সের জন্য ব্যাংকে দেখার জন্য আরও ভাল ব্যবস্থা measure
এলএসসি

"আরও শর্তাবলী আর-স্কোয়ার কখনই হ্রাস পাবে না" <- নমুনার বাইরে আর 2 গণনা করার সময় এই বিবৃতিটি মিথ্যা।
Zach

যেমনটি আমি উল্লেখ করেছি, আমি এটিকে নির্দেশ করছি কারণ এই প্রশ্নগুলি জিজ্ঞাসা করা অনেক লোক এই ধারণাটি প্রথম স্থানে মনে রাখে না। আমি কেন নমুনায় এটি সত্য এবং এটি নতুন ডেটা ধরে রাখতে পারে না তা বোঝার জন্য মূল সমীকরণে কোনটি কী এবং কীভাবে অনুকূলিত হয়েছে তা বোঝা গুরুত্বপূর্ণ I
এলএসসি

4

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

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


জোড়যুক্ত পরীক্ষার জন্য, আমি ধরে নিই যে দুটি মডেল একই ভাঁজগুলিতে ফিট? যাতে ম্যাট্রিক্সের কে সারিগুলি ভাঁজ এবং দুটি কলাম মডেল 1 এবং মডেল 2?
বি_মিনার

@ বি_মিনার যথাযথভাবে।

1

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


1

একটি বিকল্প হবে গড় স্কোয়ার ত্রুটির জন্য একটি আত্মবিশ্বাসের ব্যবধান তৈরি করা। আমি পরিবর্তে গড় স্কোয়ার ত্রুটিটি ব্যবহার করব কারণ উভয় মডেলের জন্য ডিনোমিনেটর সমান। ডুডোইট এবং ভ্যান ডার লান ( নিবন্ধ এবং কার্যকরী কাগজ ) এর কাগজটি কোনও ঝুঁকির অনুমানকারীদের জন্য একটি আস্থা অন্তর নির্মাণের জন্য একটি সাধারণ উপপাদ্য সরবরাহ করে। আইরিস ডেটা থেকে উদাহরণটি ব্যবহার করে, এখানে কিছু আর কোড পদ্ধতিটি ব্যবহার করে একটি 95% আত্মবিশ্বাসের ব্যবধান তৈরি করছে:R2

library(randomForest)
data(iris)
set.seed(42)

# split the data into training and testing sets
index <- 1:nrow(iris)
trainindex <- sample(index, trunc(length(index)/2))
trainset <- iris[trainindex, ]
testset <- iris[-trainindex, ]

# with species
model1 <- randomForest(Sepal.Length ~ Sepal.Width + Petal.Length +
   Petal.Width + Species, data = trainset)
# without species
model2 <- randomForest(Sepal.Length ~ Sepal.Width + Petal.Length + 
   Petal.Width, data = trainset)

pred1 <- predict(model1, testset[, -1])
pred2 <- predict(model2, testset[, -1])

y <- testset[, 1]
n <- length(y)

# psi is the mean squared prediction error (MSPE) estimate
# sigma2 is the estimate of the variance of the MSPE
psi1 <- mean((y - pred1)^2)
sigma21 <- 1/n * var((y - pred1)^2) 
# 95% CI:
c(psi1 - 1.96 * sqrt(sigma21), psi1, psi1 + 1.96 * sqrt(sigma21))

psi2 <- mean((y - pred2)^2)
sigma22 <- 1/n * var((y - pred2)^2) 
# 95% CI:
c(psi2 - 1.96 * sqrt(sigma22), psi2, psi2 + 1.96 * sqrt(sigma22))

পদ্ধতিটি ক্রস-বৈধকরণের মধ্যে কাজ করার জন্যও বাড়ানো যেতে পারে (উপরে বর্ণিত নমুনা-বিভক্ত নয়)।


0

যেহেতু আপনি ইতিমধ্যে randomForestক্রস-বৈধকরণের পরে ব্যবহার করছেন আপনি পূর্বাভাসক গুরুত্বের মানগুলির মধ্যে নির্বাচিত ফিটের গণনা নির্গত করতে পারেন।

> require(randomForest)
> rf.fit = randomForest(Species~.,data=iris,importance=TRUE)
> rf.fit$importance
                  setosa   versicolor   virginica MeanDecreaseAccuracy MeanDecreaseGini
Sepal.Length 0.036340893  0.021013369 0.032345037          0.030708732         9.444598
Sepal.Width  0.005399468 -0.002131412 0.007499143          0.003577089         2.046650
Petal.Length 0.319872296  0.297426025 0.290278930          0.299795555        42.494972
Petal.Width  0.343995456  0.309455331 0.277644128          0.307843300        45.286720

0

আমি দেখছি এই প্রশ্নটি অনেক আগে জিজ্ঞাসা করা হয়েছিল; যাইহোক, কোনও উত্তর এখনও প্রশ্নের উল্লেখযোগ্য ত্রুটিগুলি এবং ভুল বোঝাবুঝির দিকে ইঙ্গিত করে না।

দয়া করে নোট করুন:

  1. আপনি উল্লেখ করেছেন যে আর ^ 2 = ইএসএস / টিএসএস = 1 - আরএসএস / টিএসএস। লিনিয়ার প্রসঙ্গে এটি কেবল সত্য। সমতা টিএসএস = আরএসএস + ইএসএস কেবল বিরতি সহ লিনিয়ার রিগ্রেশনতে সত্য holds সুতরাং আপনি এই সংজ্ঞাটি এলোমেলোভাবে এলোমেলো বনগুলির জন্য ব্যবহার করতে পারবেন না। এই কারণেই আরএমএসই এবং অনুরূপ আরও সাধারণ ক্ষতি ফাংশন।

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

ব্যবহারকারী ৮৮ এর প্রতিক্রিয়া হিসাবে : উইলকক্সন পরীক্ষার সাথে ক্রস বৈধতা একটি বৈধ পন্থা। সাম্প্রতিক একটি কাগজে বিভিন্ন পদ্ধতি এবং অ্যালগরিদমের তুলনা করার জন্য উইলকক্সন স্বাক্ষরিত র‌্যাঙ্ক পরীক্ষা এবং ফ্রেডম্যান পরীক্ষা ব্যবহার করে।

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