1
無論我們選擇什麼方法('cv', 'OOB' or 'test'
),我們選擇合適的gbm對象中樹的數量始終爲3*n.trees
數據集iris
。R gbm爲什麼fit tree的長度始終是數據集iris的n.trees的3倍
是因爲iris
數據集有一個3級目標分類變量。
如果是與目標變量具有值A,B和C,爲所述第一樹,第二樹B,第三樹C和第四樹甲再次?
或者如果n.trees
設置爲100,則前100棵樹用於A,第2 100棵樹用於B,最後100棵用於C?
fit = gbm(data=iris, Species ~., shrinkage = 0.2, n.trees = 50, cv.folds = 2)
best.iter = gbm.perf(fit, method = 'cv')
fit = gbm(data=iris, Species ~., shrinkage = 0.2, n.trees = 40, train.fraction = 0.8)
best.iter = gbm.perf(fit, method = 'test')
fit = gbm(data=iris, Species ~., shrinkage = 0.2, n.trees = 50)
best.iter = gbm.perf(fit, method = 'OOB')
我還發現,如果'distribution'被選爲'伯努利',那麼它只有1 * n.trees,並且響應必須被重新編碼爲0和1。 – John