通过阅读LightGBM文档,应该可以在Dataset方法中定义分类功能。所以我有以下代码:
cats=['C1', 'C2']
d_train = lgb.Dataset(X, label=y, categorical_feature=cats)
但是,我收到以下错误消息:
/app/anaconda3/anaconda3/lib/python3.7/site-packages/lightgbm/basic.py:1243:UserWarning:在数据集中使用categorical_feature。warnings.warn(“在数据集中使用categorical_feature。”)
为什么收到警告消息?
我认为您在致电时会收到此警告lgb.train
。此函数还具有参数categorical_feature
,其默认值为'auto'
,这意味着从pandas.DataFrame
(documentation)中获取分类列。在此行发出的警告表明,尽管lgb.train
要求自动识别类别特征,LightGBM仍将使用数据集中指定的特征。
为了避免该警告,可以给同样的论点categorical_feature
既lgb.Dataset
和lgb.train
。或者,您可以使用构造数据集,categorical_feature=None
并仅在中指定类别特征lgb.train
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句