提问者:小点点

Scikit学习:预测分类特征


我正试图找出最好的一般方法来预测分类特征,并希望得到一些建议。特别是,我可以做一个决策树,它可以很好地处理分类数据,但是我想尝试一些其他的多分类模型。我可以使用one-Hot方法将分类特征转化为大量的二进制特征。

示例培训集:

Age| Color  | City     | Freq
35 |'Orange'|'Seattle' | '<30'
55 |'Black' |'Portland'| '>30'
75 |'Red'   |'Seattle' | 'Never'

可轻松更改为:

Age| Color |City | Freq
35 | 1 0 0 | 1 0 | 1 0 0
55 | 0 1 0 | 0 1 | 0 1 0
75 | 0 0 1 | 1 0 | 0 0 1

我可以把它分成数据目标对:

X= Age| Color |City
   35 | 1 0 0 | 1 0
   55 | 0 1 0 | 0 1
   75 | 0 0 1 | 1 0

y= Freq
   1 0 0
   0 1 0
   0 0 1

然后我可以用各种SK-Learn分类模型来处理这个问题,但我不清楚这三个“Freq”特征是否相互排斥。因此,我的问题是:

除了决策树之外,还有可能用广义分类例程预测分类特征吗?

如何确保一组二进制特性保持相互排斥?

此外,是否有可能以智能地将三个二进制特征连接起来的度量来呈现结果?

谢谢你的帮助!


共1个答案

匿名用户

是的,有可能。只是不要“一热”你的输出向量。把它转换成一个数字。

如Freq:

'<30' = 0
'>30' = 1
'Never' = 2

如果你这样做,任何回归算法都应该有效。然后可以为每个输出类设置阈值。

另一个选择是有3个二元分类模型,每个模型针对每个类进行训练。

另外,看看Softmax回归。