模型融合用於對多個模型進行融合以得到優於單個模型的效果。
模型融合的方法主要有:
回歸:算術平均融合,幾何平均融合
分類:投票融合
綜合:排序融合,log融合
將多個模型得到的**結果concate之後再次進行模型**
def
weighted_method
(test_pre1,test_pre2,w=[1
/2,1
/2])
: weighted_result = w[0]
*pd.series(test_pre1)
+w[1
]*pd.series(test_pre2)
return weighted_result
## init the weight
w =[
0.5,
0.5]
## 測試驗證集準確度
vala = weighted_method(val_lgb,val_xgb,w)
print
('mae of weighed:'
,mean_absolute_error(y_val,vala)
)
## starking
# 第一層
train_lgb_pred = model_lgb.predict(x_train)
train_xgb_pred = model_xgb.predict(x_train)
strak_x_train = pd.dataframe(
)strak_x_train[
'method_1'
]= train_lgb_pred
strak_x_train[
'method_2'
]= train_xgb_pred
strak_x_val = pd.dataframe(
)strak_x_val[
'method_1'
]= val_lgb
strak_x_val[
'method_2'
]= val_xgb
strak_x_test = pd.dataframe(
)strak_x_test[
'method_1'
]= suba_lgb
strak_x_test[
'method_2'
]= suba_xgb
defbuild_model_lr
(x_train,y_train)
: reg_model = linear_model.linearregression(
) reg_model.fit(x_train,y_train)
return reg_model
## level2-method
model_lr_stacking = build_model_lr(strak_x_train,y_train)
## 驗證集
val_pre_stacking = model_lr_stacking.predict(strak_x_val)
print
('mae of stacking-lr:'
,mean_absolute_error(y_val,val_pre_stacking)
)
結果:
在驗證集下的結果是用加權求和的方法更好。
TASK 5 模型融合
task 5 模型融合 總結自 datawhale 零基礎入門資料探勘 task 5 模型融合 ml67 1 stacking 是用初始訓練資料學習出若干個基學習器後,將這幾個學習器的 結果作為新的訓練集,來學習乙個新的學習器。2 結合策略 如何將個體學習器結合在一起使用的方法。分類可以使用投票法。...
task5 模型融合
內容介紹 模型融合是比賽後期上分的重要手段,特別是多人組隊學習的比賽中,將不同隊友的模型進行融合,可能會收穫意想不到的效果哦,往往模型相差越大且模型表現都不錯的前提下,模型融合後結果會有大幅提公升,以下是模型融合的方式。平均 stacking 將若干基學習器獲得的 結果,將 結果作為新的訓練集來訓練...
金融風控 Task5 模型融合
模型融合是比賽後期上分的重要手段,特別是多人組隊學習的比賽中,將不同隊友的模型進行融合,可能會收穫意想不到的效果哦,往往模型相差越大且模型表現都不錯的前提下,模型融合後結果會有大幅提公升,以下是模型融合的方式。平均 a.簡單平均法 b.加權平均法 投票 a.簡單投票法 b.加權投票法 綜合 a.排序...