在Python中使用Xgboost预测权重的频率

时间:2020-05-08 19:51:34

标签: python frequency xgboost

我有一个数据集,其中包含特征,索赔数量和风险敞口(即权重)-因此,运行一年的策略的风险敞口为1,半年的策略的风险敞口为0.5。我想预测理赔频率,即理赔次数/风险。

我的问题:

1)我在xg_reg.fit语句中传递了Exposure as Weight,这是正确的做法吗?如果我在data_dmatrix语句中将其作为weight = weight_train传递,则与根本没有weight语句相比,它不会改变我的结果。

2)XGBRegressor和Objective ='reg:squarederror'是要使用的正确语句吗?我认为也许应该与泊松有关

3)我的预测应该乘以最后的测试数据集曝光,对吗?

weight_train = df_train['Exposure']

data_dmatrix = xgb.DMatrix(data=X_train,label=y_train)


xg_reg =xgb.XGBRegressor(dtrain=data_dmatrix,
                         max_depth = 6, eta = 1, nthread = 2, nrounds = 2,
                         objective ='reg:squarederror', colsample_bytree = .25, learning_rate = .3, alpha = 6)

xg_reg.fit(X_train,y_train, sample_weight = weight_train)
preds = xg_reg.predict(X_test)

0 个答案:

没有答案