আমি সত্যিই প্যাকেজ মত caret
ভালো জিনিসের জন্য কিন্তু দুর্ভাগ্যবশত আমি শুধু যে আপনার নির্দিষ্ট করতে পারেন না পড়া formula
মধ্যে gam
এটি জন্য ঠিক।
"আপনি যখন এই মডেলটির সাথে ট্রেন ব্যবহার করেন, আপনি (এই সময়ে) গাম সূত্রটি নির্দিষ্ট করতে পারবেন না care ক্যারেটের একটি অভ্যন্তরীণ ফাংশন রয়েছে যা প্রতিটি ভবিষ্যদ্বাণীকের কতগুলি অনন্য স্তরের উপর ভিত্তি করে একটি সূত্র নির্ধারণ করে। অন্য কথায়, ট্রেন বর্তমানে নির্ধারণ করে যে কোনটি পদগুলি মসৃণ এবং এগুলি পুরানো লিনিয়ার প্রধান প্রভাব।
উত্স: https://stackoverflow.com
তবে আপনি যদি train
মসৃণ পদগুলি নির্বাচন করতে দেন তবে এই ক্ষেত্রে এটি আপনার মডেলটিকে ঠিক তেমনই তৈরি করে। এই ক্ষেত্রে ডিফল্ট পারফরম্যান্স মেট্রিকটি আরএমএসই, তবে আপনি ফাংশনের summaryFunction
যুক্তি ব্যবহার করে এটি পরিবর্তন করতে পারেন trainControl
।
আমি মনে করি LOOCV এর অন্যতম প্রধান ত্রুটি এটি হ'ল যখন ডেটাসেটটি বড় হয়, এটি চিরকালের জন্য নেয়। যেহেতু আপনার ডেটাসেটটি ছোট এবং এটি বেশ দ্রুত কাজ করে, আমি মনে করি এটি একটি বোধগম্য বিকল্প।
আশাকরি এটা সাহায্য করবে.
library(mgcv)
library(caret)
set.seed(0)
dat <- gamSim(1, n = 400, dist = "normal", scale = 2)
b <- train(y ~ x0 + x1 + x2 + x3,
data = dat,
method = "gam",
trControl = trainControl(method = "LOOCV", number = 1, repeats = 1),
tuneGrid = data.frame(method = "GCV.Cp", select = FALSE)
)
print(b)
summary(b$finalModel)
আউটপুট:
> print(b)
Generalized Additive Model using Splines
400 samples
9 predictors
No pre-processing
Resampling:
Summary of sample sizes: 399, 399, 399, 399, 399, 399, ...
Resampling results
RMSE Rsquared
2.157964 0.7091647
Tuning parameter 'select' was held constant at a value of FALSE
Tuning parameter 'method' was held constant at a value of GCV.Cp
> summary(b$finalModel)
Family: gaussian
Link function: identity
Formula:
.outcome ~ s(x0) + s(x1) + s(x2) + s(x3)
Parametric coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 7.9150 0.1049 75.44 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Approximate significance of smooth terms:
edf Ref.df F p-value
s(x0) 5.173 6.287 4.564 0.000139 ***
s(x1) 2.357 2.927 103.089 < 2e-16 ***
s(x2) 8.517 8.931 84.308 < 2e-16 ***
s(x3) 1.000 1.000 0.441 0.506929
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
R-sq.(adj) = 0.726 Deviance explained = 73.7%
GCV = 4.611 Scale est. = 4.4029 n = 400