葉編碼使用方式
您好,
一、
# 梯度提升樹調整參數並擬合後, 再將葉編碼 (*.apply) 結果做獨熱 / 邏輯斯迴歸
gdbt = GradientBoostingClassifier(subsample=0.93, n_estimators=320, min_samples_split=0.1,
min_samples_leaf=0.3, max_features=4, max_depth=4, learning_rate=0.16)
onehot = OneHotEncoder()
lr = LogisticRegression(solver='lbfgs', max_iter=1000)
gdbt.fit(train_X, train_Y)
onehot.fit(gdbt.apply(train_X)[:, :, 0]) ---->此處有兩個問題請教1.apply(train_X)即是葉編碼嗎?
2.[:, :, 0]是什麼意思呢?(我有自己print來看
,但看不懂。
lr.fit(onehot.transform(gdbt.apply(val_X)[:, :, 0]), val_Y)
二、
DAY_030 HW中提到,
「隨機森林的葉編碼(.apply)不需要加上[:, :, 0], 直接用rf.apply()調用即可」
,為什麼隨機森林不需要加[:, :, 0]呢?
謝謝幫忙!