আমি যখনই এক্সজিবিস্টের সাথে কাজ করি আমি প্রায়শই আমার নিজের হোমব্রিউ প্যারামিটার অনুসন্ধান করি তবে আপনি এটি ক্যারেট প্যাকেজের পাশাপাশি ক্রিসপের মতো উল্লিখিত হিসাবেও করতে পারেন।
- কাকপদ
এক্সজিবিস্টে হাইপারপ্যারামিটার অনুসন্ধানের জন্য ক্যারেট প্যাকেজটি কীভাবে ব্যবহার করতে হয় তার বিশদ ব্যাখ্যার জন্য ক্রস ভ্যালিটেটেড এই উত্তরটি দেখুন।
এক্সজিবিস্ট গাছগুলির হাইপারপ্যারামিটারগুলি টিউন করবেন কীভাবে?
- কাস্টম গ্রিড অনুসন্ধান
আমি প্রায়শই ডেটা সায়েন্স পি। 14 এর টিপসের উপর ওভেন জাংয়ের স্লাইডগুলির উপর ভিত্তি করে কয়েকটি অনুমান দিয়ে শুরু করি
এখানে আপনি দেখতে পারেন যে আপনাকে বেশিরভাগ ক্ষেত্রে সারি স্যাম্পলিং, কলামের নমুনা এবং সম্ভবত সর্বোচ্চ গাছের গভীরতার সুর করতে হবে। আমি এই মুহুর্তে কাজ করছি এমন কোনও সমস্যার জন্য আমি কাস্টম সারি নমুনা এবং কলাম স্যাম্পলিং অনুসন্ধান করি:
searchGridSubCol <- expand.grid(subsample = c(0.5, 0.75, 1),
colsample_bytree = c(0.6, 0.8, 1))
ntrees <- 100
#Build a xgb.DMatrix object
DMMatrixTrain <- xgb.DMatrix(data = yourMatrix, label = yourTarget)
rmseErrorsHyperparameters <- apply(searchGridSubCol, 1, function(parameterList){
#Extract Parameters to test
currentSubsampleRate <- parameterList[["subsample"]]
currentColsampleRate <- parameterList[["colsample_bytree"]]
xgboostModelCV <- xgb.cv(data = DMMatrixTrain, nrounds = ntrees, nfold = 5, showsd = TRUE,
metrics = "rmse", verbose = TRUE, "eval_metric" = "rmse",
"objective" = "reg:linear", "max.depth" = 15, "eta" = 2/ntrees,
"subsample" = currentSubsampleRate, "colsample_bytree" = currentColsampleRate)
xvalidationScores <- as.data.frame(xgboostModelCV)
#Save rmse of the last iteration
rmse <- tail(xvalidationScores$test.rmse.mean, 1)
return(c(rmse, currentSubsampleRate, currentColsampleRate))
})
এবং কিছু ggplot2 ম্যাজিকের সাথে একত্রিত হয়ে সেই ফল প্রয়োগের ফলাফল ব্যবহার করে আপনি অনুসন্ধানের একটি গ্রাফিকাল উপস্থাপনা প্লট করতে পারেন।
এই প্লটে হালকা রঙগুলি নিম্ন ত্রুটির প্রতিনিধিত্ব করে এবং প্রতিটি ব্লক কলামের নমুনা এবং সারি নমুনার এক অনন্য সমন্বয় উপস্থাপন করে। সুতরাং আপনি যদি এটা (বা গাছের গভীরতা) এর অতিরিক্ত অনুসন্ধান করতে চান তবে পরীক্ষিত প্রতিটি এটা পরামিতিগুলির জন্য এই প্লটগুলির একটির সাথে আপনি সমাপ্ত হবেন।
আমি দেখতে পাচ্ছি যে আপনার একটি আলাদা মূল্যায়ন মেট্রিক (আরএমপিএসই) রয়েছে, কেবল এটি ক্রস বৈধকরণ কার্যক্রমে প্লাগ করুন এবং আপনি পছন্দসই ফলাফল পাবেন। এছাড়াও আমি অন্যান্য প্যারামিটারগুলিকে সূক্ষ্ম সুর করার বিষয়ে খুব বেশি চিন্তা করব না কারণ এটি করা পারফরম্যান্সের খুব বেশি উন্নতি করবে না, কমপক্ষে আরও বেশি সময় ইঞ্জিনিয়ারিং বৈশিষ্ট্য ব্যয় করা বা ডেটা সাফ করার তুলনায় এতটা না।
- অন্যরা
এলোমেলো অনুসন্ধান এবং বায়েশিয়ান প্যারামিটার নির্বাচন করাও সম্ভব তবে আমি সেগুলির কোনও প্রয়োগ এখনও পাইনি / পাইনি।
ক্যারেটের সর্বাধিক সৃষ্টিকর্তা হাইপারপ্রেমেটারগুলির বেইসিয়ান অপটিমাইজেশন সম্পর্কে এখানে একটি ভাল প্রাইমার is
http://blog.revolutionanalytics.com/2016/06/bayesian-optimization-of-machine-learning-models.html