[kaggle] 为什么交叉特征能起到作用?
长期以来,自己在做特征的时候,为啥要做交叉特征,已经为什么交叉特征能够起到作用比较迷糊,偶然在kaggle上看见一个例子,完美的解答了这个问题。
数据如下:
数据ID | 类别ID | X | GroupX(交叉特征) | Label |
---|---|---|---|---|
A | 1 | 1 | 0.75 | 1 |
B | 1 | 0 | 0.75 | 1 |
C | 1 | 1 | 0.75 | 1 |
D | 1 | 1 | 0.75 | 1 |
E | 2 | 0 | 0.33 | 0 |
F | 2 | 0 | 0.33 | 0 |
G | 2 | 1 | 0.33 | 0 |
H | 3 | 1 | 0.66 | 1 |
I | 3 | 1 | 0.66 | 1 |
J | 3 | 0 | 0.66 | 1 |
以决策树为模型,现在如果只使用特征X作为去预测Label,如图所示,那么只有70%的准确率。

现在利用类别ID和特征X做交叉特征,利用类别ID进行groupBy,将sum值除以类别组内基数,得到交叉特征GroupX,再利用交叉特征去预测Label,如图,准确率为100%。

总结
做交叉特征的目的在于,帮助模型去进一步的学习数据,特别是树模型这种无法知道特征与特征之间交互信息的模型。
参考文献
https://www.kaggle.com/c/ieee-fraud-detection/discussion/111453
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!