scikit-learn 对整数变量的解释

Posted

技术标签:

【中文标题】scikit-learn 对整数变量的解释【英文标题】:scikit-learn interpretation of integer variables 【发布时间】:2014-02-09 21:43:47 【问题描述】:

在使用 SAS/SPSS 产品进行多年数据挖掘后,我才刚刚开始使用 scikit-learn。 我对 scikit-learn 和 pandas 的能力感到惊讶,但是有一件事我自己无法弄清楚。 让我们假设我的训练数据是由整数组成的,其中一些对分类值进行编码。有什么方法可以控制如何通过树或任何集成树(例如:ExtraTreesClassifier)算法来解释变量? 正确的方法是将变量类型从 int 更改为 object,或者我可以学习一个常见的技巧吗?

谢谢, 好啦

【问题讨论】:

【参考方案1】:

对于低基数分类特征,使用 one-hot 编码特征扩展可能是合适的。看看:

http://scikit-learn.org/stable/modules/preprocessing.html#encoding-categorical-features http://scikit-learn.org/stable/modules/feature_extraction.html#loading-features-from-dicts

对于高基数分类特征,您可以保留 ExtraTreesClassifier 的整数编码。尽管该算法会将它们视为常规连续变量,但在实践中似乎不会对预测准确性产生太大负面影响。

编辑:在任何情况下,scikit-learn 都期望所有输入特征的同构浮点类型编码。 object dtype 永远不是有效的输入类型。

【讨论】:

以上是关于scikit-learn 对整数变量的解释的主要内容,如果未能解决你的问题,请参考以下文章

python:pip命令更新库 例命令行更新scikit-learn

给定参考值的二维矩阵,对两个变量进行 Scikit-learn 回归

为啥 scikit-learn 对不同的回归器要求不同的数据形状?

如何在 scikit-learn 的管道中对变换参数进行网格搜索

scikit-learn 中的随机森林解释

非整数类标签 Scikit-Learn