แพคเกจ GBM กับ Caret ใช้ GBM
ฉันเคยใช้การจูนโมเดลcaretแต่แล้วก็รันโมเดลอีกครั้งโดยใช้gbmแพ็คเกจ ฉันเข้าใจว่าcaretแพ็กเกจที่ใช้gbmและเอาต์พุตควรเหมือนกัน อย่างไรก็ตามการทดสอบการทำงานอย่างรวดเร็วโดยใช้data(iris)แสดงความแตกต่างในรูปแบบประมาณ 5% โดยใช้ RMSE และ R ^ 2 เป็นตัวชี้วัดการประเมินผล ฉันต้องการค้นหาประสิทธิภาพของแบบจำลองที่ดีที่สุดโดยใช้caretแต่เรียกใช้อีกครั้งgbmเพื่อใช้ประโยชน์จากแผนการพึ่งพาบางส่วน รหัสด้านล่างสำหรับการทำซ้ำ คำถามของฉันจะเป็น: 1) เหตุใดฉันจึงเห็นความแตกต่างระหว่างแพ็คเกจทั้งสองนี้ถึงแม้ว่าพวกเขาจะเหมือนกัน (ฉันเข้าใจว่าพวกมันสุ่ม แต่ 5% ค่อนข้างแตกต่างกันมากโดยเฉพาะอย่างยิ่งเมื่อฉันไม่ได้ใช้ชุดข้อมูลที่ดีirisสำหรับการสร้างแบบจำลองของฉัน) . 2) มีข้อดีหรือข้อเสียในการใช้ทั้งสองแพคเกจหรือไม่ 3) ไม่เกี่ยวข้อง: การใช้irisชุดข้อมูลที่ดีที่สุดinteraction.depthคือ 5 แต่สูงกว่าที่ฉันได้อ่านควรจะใช้สูงสุดfloor(sqrt(ncol(iris)))ซึ่งควรจะเป็น 2 นี่เป็นกฎง่ายๆหรือเข้มงวดหรือไม่? library(caret) library(gbm) library(hydroGOF) library(Metrics) data(iris) # Using caret caretGrid <- expand.grid(interaction.depth=c(1, 3, 5), n.trees = (0:50)*50, shrinkage=c(0.01, 0.001), n.minobsinnode=10) metric …