คำถามติดแท็ก random-forest

ฟอเรสต์แบบสุ่มเป็นวิธีการเรียนรู้ด้วยเครื่องจักรโดยใช้การผสมผสานเอาท์พุทของต้นไม้ตัดสินใจจำนวนมาก

1
ทำไมผลลัพธ์ฟอเรสต์แบบสุ่มของฉันจึงแปรผัน
ฉันพยายามทดสอบความสามารถของฟอเรสต์แบบสุ่มเพื่อจำแนกตัวอย่างระหว่าง 2 กลุ่ม; มีตัวอย่าง 54 ตัวและตัวแปรต่าง ๆ ที่ใช้สำหรับการจำแนกประเภท ฉันสงสัยว่าทำไมประมาณการนอกถุง (OOB) สามารถเปลี่ยนแปลงได้มากถึง 5% จากกันแม้ว่าฉันจะใช้ต้น 50k? นี่เป็นสิ่งที่ bootstrapping สามารถช่วยได้หรือไม่?

1
การถดถอยป่าแบบสุ่มสำหรับการทำนายอนุกรมเวลา
ฉันพยายามใช้การถดถอยแบบ RF เพื่อคาดการณ์ประสิทธิภาพของโรงสีกระดาษ ฉันมีข้อมูลแบบนาทีต่อนาทีสำหรับอินพุต (อัตราและปริมาณของเยื่อไม้ที่เข้ามาใน ฯลฯ .. ) รวมถึงประสิทธิภาพของเครื่อง (กระดาษที่ผลิตพลังงานจากเครื่อง) และกำลังคาดการณ์ 10 นาที ล่วงหน้าเกี่ยวกับตัวแปรประสิทธิภาพ ฉันมีข้อมูล 12 เดือนดังนั้นได้แยกเป็นชุดฝึกอบรม 11 เดือนและเดือนสุดท้ายสำหรับการทดสอบ จนถึงตอนนี้ฉันได้สร้างคุณสมบัติใหม่ 10 รายการซึ่งมีค่าความล่าช้า 1-10 นาทีสำหรับตัวแปรประสิทธิภาพแต่ละตัวและใช้สิ่งเหล่านี้รวมทั้งอินพุตเพื่อทำการคาดการณ์ ประสิทธิภาพของชุดทดสอบค่อนข้างดี (ระบบสามารถคาดเดาได้ค่อนข้างมาก) แต่ฉันกังวลว่าฉันขาดอะไรบางอย่างในการเข้าใกล้ ตัวอย่างเช่นในบทความนี้ผู้เขียนระบุวิธีการของพวกเขาในการทดสอบความสามารถในการทำนายของรูปแบบป่าสุ่ม การจำลองดำเนินการโดยเพิ่มสัปดาห์ใหม่ของข้อมูลฝึกอบรมโมเดลใหม่โดยใช้ข้อมูลที่อัปเดตและคาดการณ์จำนวนการระบาดของสัปดาห์ถัดไป สิ่งนี้แตกต่างจากการใช้ข้อมูล 'ภายหลัง' ในอนุกรมเวลาเป็นการทดสอบอย่างไร ฉันควรตรวจสอบความถูกต้องของแบบจำลองการถดถอย RF ด้วยวิธีนี้เช่นเดียวกับชุดข้อมูลการทดสอบหรือไม่ นอกจากนี้วิธีการ 'autoregressive' แบบสุ่มเพื่อการถดถอยป่าแบบนี้ใช้ได้กับอนุกรมเวลาและฉันจำเป็นต้องสร้างตัวแปรที่ล้าหลังจำนวนมากหรือไม่ถ้าฉันสนใจการทำนาย 10 นาทีในอนาคต?

3
กรณีการใช้ RBF SVM (เทียบกับการถดถอยโลจิสติกและฟอเรสต์แบบสุ่ม)
สนับสนุนเครื่องเวกเตอร์ที่มีเคอร์เนลฟังก์ชั่นพื้นฐานเป็นตัวจําแนกภายใต้การดูแลทั่วไป ในขณะที่ฉันรู้พื้นฐานทางทฤษฎีสำหรับ SVM เหล่านี้และจุดแข็งของพวกเขาฉันไม่ทราบถึงกรณีที่พวกเขาเป็นวิธีที่ต้องการ ดังนั้นจึงมีปัญหาหลายระดับที่ RBF SVMs เหนือกว่าเทคนิค ML อื่น ๆ หรือไม่? (ทั้งในแง่ของคะแนนหรืออื่น ๆ - เช่นความแข็งแกร่งความง่ายในการเริ่มต้นการตีความ ฯลฯ ) ฉันถามว่าเนื่องจากวิธีการเริ่มต้นของฉันอยู่ที่การถดถอยแบบโลจิสติกส์ (อาจมีการโต้ตอบ) ป่าสุ่มและเครือข่ายประสาท ไม่มีเพื่อนของฉันที่ทำ ML (บางคนเป็นผู้ชนะ Kaggle) เป็นผู้ใช้ SVM (แต่อาจเป็นสิ่งประดิษฐ์ของชุมชนของฉันหรือปัญหาที่พวกเขาทำ)

1
การสร้างแบบจำลองด้วยป่าสุ่มต้องมีการตรวจสอบข้ามหรือไม่?
เท่าที่ฉันเคยเห็นความคิดเห็นมีแนวโน้มที่จะแตกต่างกันเกี่ยวกับเรื่องนี้ แนวปฏิบัติที่ดีที่สุดจะใช้การตรวจสอบข้าม (โดยเฉพาะอย่างยิ่งหากเปรียบเทียบ RF กับอัลกอริธึมอื่น ๆ ในชุดข้อมูลเดียวกัน) แหล่งที่มาดั้งเดิมระบุว่ามีการคำนวณข้อผิดพลาด OOB ข้อเท็จจริงระหว่างการฝึกอบรมแบบจำลองเพียงพอที่จะเป็นตัวบ่งชี้ประสิทธิภาพของชุดทดสอบ แม้แต่ Trevor Hastie ในการพูดคุยเมื่อไม่นานมานี้กล่าวว่า "Random Forest ให้การตรวจสอบข้ามฟรี" โดยสัญชาตญาณสิ่งนี้สมเหตุสมผลสำหรับฉันหากการฝึกอบรมและพยายามปรับปรุงโมเดล RF-based บนหนึ่งชุดข้อมูล ความคิดเห็นของคุณเกี่ยวกับเรื่องนี้คืออะไร?

1
ป่าสุ่มเทียบ Adaboost
ในส่วนที่ 7 ของกระดาษป่าสุ่ม (Breiman, 1999) ผู้เขียนระบุการคาดเดาต่อไปนี้: "Adaboost เป็นป่าสุ่ม" มีใครพิสูจน์หรือหักล้างสิ่งนี้หรือไม่? สิ่งที่ทำเพื่อพิสูจน์หรือหักล้างโพสต์นี้ 1999?

1
การทำนายความน่าจะเป็นป่าแบบสุ่มเทียบกับคะแนนโหวตส่วนใหญ่
Scikit เรียนรู้ดูเหมือนว่าจะใช้การทำนายความน่าจะเป็นแทนการลงคะแนนเสียงข้างมากสำหรับเทคนิคการรวมตัวแบบโดยไม่มีการอธิบายว่าทำไม (1.9.2.1. ป่าสุ่ม) มีคำอธิบายที่ชัดเจนว่าเพราะเหตุใด นอกจากนี้ยังมีบทความหรือบทความทบทวนที่ดีสำหรับเทคนิคการรวมตัวแบบต่างๆที่สามารถนำมาใช้สำหรับการบรรจุถุงแบบฟอเรสต์? ขอบคุณ!

1
ป่าสุ่มไม่สามารถทนได้?
ฉันได้อ่านวรรณกรรมแล้วว่าป่าสุ่มไม่เหมาะสม ในขณะที่ฟังดูดี แต่มันก็ดีเกินกว่าที่จะเป็นจริงได้ เป็นไปได้หรือไม่ที่ rf จะมีน้ำหนักเกิน?

2
จะเปลี่ยน threshold สำหรับการจำแนกใน R สุ่มป่าได้อย่างไร
วรรณกรรมแบบจำลองการกระจายพันธุ์ทุกชนิดชี้ให้เห็นว่าเมื่อทำนายการมีอยู่ของสายพันธุ์โดยใช้แบบจำลองที่มีความน่าจะเป็นผลลัพธ์ (เช่น RandomForests) การเลือกเกณฑ์ความน่าจะเป็นที่จะจำแนกประเภทของสิ่งมีชีวิตที่มีอยู่จริง ไม่พึ่งพาค่าเริ่มต้น 0.5 เสมอไป ฉันต้องการความช่วยเหลือในเรื่องนี้! นี่คือรหัสของฉัน: library(randomForest) library(PresenceAbsence) #build model RFfit <- randomForest(Y ~ x1 + x2 + x3 + x4 + x5, data=mydata, mytry = 2, ntrees=500) #eventually I will apply this to (predict for) new data but for first I predict back to training data …

2
Caret varImp สำหรับรุ่นสุ่มป่าไม้
ฉันมีปัญหาในการทำความเข้าใจเกี่ยวกับวิธีการvarImpทำงานของโมเดลสุ่มป่าด้วยcaretแพคเกจ ในตัวอย่างด้านล่างนี้คุณลักษณะ var3 ได้รับความสำคัญเป็นศูนย์โดยใช้varImpฟังก์ชั่นของคาเร็ต แต่โมเดลขั้นสุดท้ายแบบสุ่มพื้นฐานที่มีความสำคัญไม่เป็นศูนย์สำหรับคุณลักษณะ var3 เหตุใดจึงเป็นเช่นนี้ require(randomForest) require(caret) rf <- train(x, y, method = "rf", trControl = trainControl(method = "oob"), importance = TRUE, verbose = TRUE, tuneGrid = data.frame(mtry = num.predictors) ) fm <- rf$finalModel > varImp(f) rf variable importance Overall var1 100.00 var2 80.14 var3 0.00 > importance(fm) …
10 r  caret  random-forest 

1
ฉันจะรวมเอานวัตกรรมล้ำสมัยที่การสังเกตที่ 48 ในโมเดล ARIMA ของฉันได้อย่างไร
ฉันกำลังทำงานกับชุดข้อมูล หลังจากใช้เทคนิคการระบุตัวแบบบางอย่างฉันก็ออกมาพร้อมกับแบบจำลอง ARIMA (0,2,1) ผมใช้detectIOฟังก์ชั่นในแพคเกจTSAในการวิจัยที่จะตรวจพบนวัตกรรมขอบเขต (IO) ที่สังเกต 48th ของชุดข้อมูลเดิมของฉัน ฉันจะรวมค่าผิดปกตินี้ไว้ในแบบจำลองของฉันเพื่อที่ฉันจะสามารถใช้เพื่อวัตถุประสงค์ในการพยากรณ์ได้อย่างไร ฉันไม่ต้องการใช้แบบจำลอง ARIMAX เนื่องจากฉันอาจไม่สามารถคาดการณ์ได้จากสิ่งนั้นใน R มีวิธีอื่นที่ฉันสามารถทำได้หรือไม่ นี่คือค่านิยมของฉันตามลำดับ: VALUE <- scan() 4.6 4.5 4.4 4.5 4.4 4.6 4.7 4.6 4.7 4.7 4.7 5.0 5.0 4.9 5.1 5.0 5.4 5.6 5.8 6.1 6.1 6.5 6.8 7.3 7.8 8.3 8.7 9.0 9.4 9.5 9.5 …
10 r  time-series  arima  outliers  hypergeometric  fishers-exact  r  time-series  intraclass-correlation  r  logistic  glmm  clogit  mixed-model  spss  repeated-measures  ancova  machine-learning  python  scikit-learn  distributions  data-transformation  stochastic-processes  web  standard-deviation  r  machine-learning  spatial  similarities  spatio-temporal  binomial  sparse  poisson-process  r  regression  nonparametric  r  regression  logistic  simulation  power-analysis  r  svm  random-forest  anova  repeated-measures  manova  regression  statistical-significance  cross-validation  group-differences  model-comparison  r  spatial  model-evaluation  parallel-computing  generalized-least-squares  r  stata  fitting  mixture  hypothesis-testing  categorical-data  hypothesis-testing  anova  statistical-significance  repeated-measures  likert  wilcoxon-mann-whitney  boxplot  statistical-significance  confidence-interval  forecasting  prediction-interval  regression  categorical-data  stata  least-squares  experiment-design  skewness  reliability  cronbachs-alpha  r  regression  splines  maximum-likelihood  modeling  likelihood-ratio  profile-likelihood  nested-models 

3
จำกัด เพียงวิธีการรวมวงดนตรีที่ใช้ต้นไม้ในปัญหาเล็ก ๆ และปัญหาใหญ่ p?
วิธีการทั้งมวลของต้นไม้เช่น Random Forest และอนุพันธ์ถัดมา (เช่นป่าที่มีเงื่อนไข) ซึ่งล้วนเป็นประโยชน์ในสิ่งที่เรียกว่าปัญหา "small n , large p " เพื่อระบุความสำคัญของตัวแปรที่เกี่ยวข้อง ที่จริงเรื่องนี้ดูเหมือนจะเป็นจริง แต่คำถามของฉันคือความสามารถนี้จะนำไปได้ไกลแค่ไหน? เราสามารถมีข้อสังเกตได้ 30 ข้อและตัวแปร 100 ตัว? อะไรคือจุดแตกหักของวิธีการดังกล่าวและมีกฎที่เหมาะสมของหัวแม่มือที่มีอยู่? ฉันต้องการและจะยอมรับคำตอบที่ได้รับการสนับสนุนจากลิงก์ไปยังหลักฐานจริง (ไม่ใช่การคาดเดา) โดยใช้ชุดข้อมูลจำลองหรือชุดข้อมูลจริง ฉันไม่ได้พบมากในหลัง ( ที่นี่และที่นี่) ดังนั้นความคิด / คำแนะนำของคุณ / (ในหัวข้อ) คำแนะนำการอ้างอิงยินดีต้อนรับมากที่สุด!

1
ข้อผิดพลาดแบบสุ่มที่สำคัญและผันแปรหรือไม่
ฉันไม่ได้รับความแตกต่างระหว่างrfobject$importanceและimportance(rfobject)ในคอลัมน์ MeanDecreaseAccuracy ตัวอย่าง: > data("iris") > fit <- randomForest(Species~., data=iris, importance=TRUE) > fit$importance setosa versicolor virginica MeanDecreaseAccuracy MeanDecreaseGini Sepal.Length 0.027078501 0.019418330 0.040497602 0.02898837 9.173648 Sepal.Width 0.008553449 0.001962036 0.006951771 0.00575489 2.472105 Petal.Length 0.313303381 0.291818815 0.280981959 0.29216790 41.284869 Petal.Width 0.349686983 0.318527008 0.270975757 0.31054451 46.323415 > importance(fit) setosa versicolor virginica MeanDecreaseAccuracy MeanDecreaseGini Sepal.Length …

4
มีวิธีใช้การตรวจสอบไขว้เพื่อทำการเลือกตัวแปร / คุณสมบัติใน R หรือไม่?
ฉันมีชุดข้อมูลที่มีตัวแปรประมาณ 70 ตัวที่ฉันต้องการลด สิ่งที่ฉันต้องการทำคือใช้ CV เพื่อค้นหาตัวแปรที่มีประโยชน์มากที่สุดในรูปแบบต่อไปนี้ 1) สุ่มเลือกพูด 20 ตัวแปร 2) ใช้stepwise/ LASSO/ lars/ ฯลฯ เพื่อเลือกตัวแปรที่สำคัญที่สุด 3) ทำซ้ำ ~ 50x และดูว่าตัวแปรใดถูกเลือก (ไม่ตัดออก) บ่อยที่สุด นี่เป็นไปตามสายของสิ่งที่randomForestจะทำ แต่rfVarSelดูเหมือนว่าแพคเกจจะทำงานเฉพาะกับปัจจัย / การจัดหมวดหมู่และฉันจำเป็นต้องทำนายตัวแปรตามอย่างต่อเนื่อง ฉันกำลังใช้ R ดังนั้นคำแนะนำใด ๆ ก็จะถูกนำไปใช้อย่างเหมาะสม

6
เปรียบเทียบ R-squared จาก Random Forest สองรุ่นที่แตกต่างกัน
ฉันใช้แพ็คเกจสุ่มป่าไม้ใน R เพื่อพัฒนาโมเดลฟอเรสต์แบบสุ่มเพื่อพยายามอธิบายผลลัพธ์อย่างต่อเนื่องในชุดข้อมูล "กว้าง" ที่มีตัวทำนายมากกว่าตัวอย่าง โดยเฉพาะฉันเหมาะสมกับโมเดล RF หนึ่งตัวที่อนุญาตให้กระบวนการเลือกชุดตัวแปรพยากรณ์ 75 ตัวที่ฉันคิดว่าสำคัญ ฉันกำลังทดสอบว่าตัวแบบนั้นทำนายผลที่แท้จริงสำหรับชุดการทดสอบที่สงวนไว้อย่างไรโดยใช้วิธีการโพสต์ที่นี่ก่อนหน้านี้คือ ... หรือใน R: 1 - sum((y-predicted)^2)/sum((y-mean(y))^2) แต่ตอนนี้ฉันมีตัวแปรทำนายอีก 25 ตัวที่ฉันสามารถเพิ่มได้ เมื่อใช้ชุดตัวทำนาย ~ 100 ตัวR²จะสูงกว่า ฉันต้องการที่จะทดสอบทางสถิติในคำอื่น ๆ เมื่อใช้ชุดของ ~ 100 ทำนายที่จะทดสอบแบบจำลองอย่างมีนัยสำคัญที่ดีกว่าในการทดสอบข้อมูลกว่ารุ่นพอดีโดยใช้ ~ 75 พยากรณ์ นั่นคือR²จากการทดสอบโมเดล RF บนชุดข้อมูลแบบเต็มสูงกว่าR²อย่างมากจากการทดสอบโมเดล RF บนชุดข้อมูลที่ลดลง นี่เป็นสิ่งสำคัญสำหรับฉันที่จะทดสอบเพราะนี่คือข้อมูลนำร่องและการได้รับผู้ทำนายเพิ่มอีก 25 คนนั้นมีค่าใช้จ่ายสูงและฉันจำเป็นต้องรู้ว่าฉันควรจ่ายเงินเพื่อวัดผู้ทำนายเหล่านั้นในการศึกษาติดตามครั้งใหญ่กว่าหรือไม่ ฉันพยายามคิดถึงวิธี resampling / permutation บางอย่าง แต่ไม่มีสิ่งใดในใจ

1
ป่าสุ่มสามารถทำได้ดีกว่าข้อผิดพลาดการทดสอบ 2.8% ใน MNIST หรือไม่?
ฉันไม่ได้พบวรรณกรรมใด ๆ เกี่ยวกับการใช้ Random Forests กับ MNIST, CIFAR, STL-10 ฯลฯ ดังนั้นฉันจึงคิดว่าฉันจะลองใช้มันด้วยMNIST ที่ไม่เปลี่ยนแปลง ในRฉันลอง: randomForest(train$x, factor(train$y), test$x, factor(test$y), ntree=500) สิ่งนี้ใช้เวลา 2 ชั่วโมงและมีข้อผิดพลาดการทดสอบ 2.8% ฉันยังได้ลองscikit เรียนรู้ด้วย RandomForestClassifier(n_estimators=2000, max_features="auto", max_depth=None) หลังจาก 70 นาทีฉันได้รับข้อผิดพลาดการทดสอบ 2.9% แต่ด้วย n_estimators = 200 แทนฉันได้รับข้อผิดพลาดการทดสอบ 2.8% หลังจากเพียง 7 นาที ด้วยOpenCVฉันพยายาม rf.train(images.reshape(-1, 28**2), cv2.CV_ROW_SAMPLE, labels.astype('int')) การดำเนินการนี้ใช้เวลา 6.5 นาทีและrfการคาดการณ์ทำให้ข้อผิดพลาดในการทดสอบ 15% ฉันไม่ทราบว่ามีต้นไม้กี่ต้นที่ได้รับการฝึกฝนเนื่องจาก …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.