首先让我解释一下我使用的数据集。
我有三套。
-
-
评估集形状为(174927),目标出现的时间约为11.5%
-
这个集合也使用时间片构建。列车组是最古老的数据。最新数据。评估集在中间。
模型1:
# Initialize CatBoostClassifier
model = CatBoostClassifier(
# custom_loss=['Accuracy'],
depth=9,
random_seed=42,
l2_leaf_reg=1,
# has_time= True,
iterations=300,
learning_rate=0.05,
loss_function='Logloss',
logging_level='Verbose',
)
## Fitting catboost model
model.fit(
train_set.values, Y_train.values,
cat_features=categorical_features_indices,
eval_set=(test_set.values, Y_test)
# logging_level='Verbose' # you can uncomment this for text output
)
型号2:
model = CatBoostClassifier(
# custom_loss=['Accuracy'],
depth=9,
random_seed=42,
l2_leaf_reg=1,
# has_time= True,
iterations= 'bestIteration from model1',
learning_rate=0.05,
loss_function='Logloss',
logging_level='Verbose',
)
## Fitting catboost model
model.fit(
train.values, Y.values,
cat_features=categorical_features_indices,
# logging_level='Verbose' # you can uncomment this for text output
)
但是,当我比较功能重要性时。看起来有很大的不同。
Feature Score_m1 Score_m2 delta
0 x0 3.612309 2.013193 -1.399116
1 x1 3.390630 3.121273 -0.269357
2 x2 2.762750 1.822564 -0.940186
3 x3 2.553052 NaN NaN
4 x4 2.400786 0.329625 -2.071161
关于这种情况,我有以下问题。
-
-
在这个模型中是否有这样一个特征,就是没有给出太多关于模型结果的信息,并且有随机的变化,它正在造成分裂。如果发生这种情况,如何检查这种情况?
-
这个catboost是适合这种情况的模型吗?
任何关于这个问题的帮助都将不胜感激