使用CatBoost和NODE建模表格数据对比测试( 三 )
分类变量处理与CatBoost不同 , NODE不支持分类变量 , 因此您必须自己将它们准备成数字格式 。 我们使用来自category_encoders库的LeaveOneOutEncoder , 与节点作者使用相同的方法对成人人口普查数据集执行此操作 。 在这里 , 出于方便 , 我们使用常规的训练/测试分割 , 而不是5倍CV , 因为训练NODE需要很长时间(特别是在超参数优化时) 。
from category_encoders import LeaveOneOutEncoderimport numpy as npimport pandas as pdfrom sklearn.model_selection import train_test_splitdf = pd.read_csv('' +'?id=10eFO2rVlsQBUffn0b7UCAp28n0mkLCy7我一定会尝试许多其他数据集!)
CatBoost与NODE的优点:
1. 快得多
1. 少需要超参数优化
1. 没有GPU运行良好
1. 支持分类变量
实际项目会用哪一个?也许CatBoost仍将是我的首选工具 , 但如果是kaggle这种线上的比赛NODE是一个不错的尝试
同样重要的是要认识到性能是依赖于数据的 , 成人人口普查收入数据集并不能代表所有场景 。 或许更重要的是 , 分类特征的预处理在NODE中也是相当重要的一个问题 。
作者:Mikael Huss
【使用CatBoost和NODE建模表格数据对比测试】deephub翻译组
- 系统性学习Node.js(5)—手写 fs 核心方法
- 使用半监督学习从研究到产品化的3个教训
- 企业建站使用服务器好还是虚拟主机好?
- 如何使用 lshw 查看 Linux 设备信息
- 低调使用!超级好用的ePub阅读工具!|PC软件
- 世界上第一台计算机是什么?为什么使用二进制而不是十进制?
- 网络安全:如何使用MSFPC半自动化生成强大的木码?「下集」
- 使用手机,体现着一个人的修养涵养
- 亲自使用一周,华为Mate20 Pro是否值得入手?
- ipad一直插电使用好吗?