JLo*_*ove 5 java algorithm artificial-intelligence machine-learning
我正在尝试将线性回归模型放在一起,但我的一些特征不是数字,例如"汽车颜色",而其他则是例如"引擎尺寸".在非数字情况下,我不确定在添加输入功能时如何表示这一点.我能想到这样做的唯一方法是用不同的值表示每种颜色,例如(红色= 1,蓝色= 2,绿色= 3 ......)然而这似乎不可接受,因为这意味着绿色是"比红色更好.
任何人都可以提供帮助...我在Java中实现这一点,所以我很欣赏用这种语言表达的算法或者与语言无关.
一种方法是使用虚拟编码,另一种技术是效果编码.
请参阅这篇文章了解更多细节,我认为作者已经解释得比我在这里做的更好.
在回归模型中编码分类变量:Resmi Gupta的虚拟和效果编码
我想这个解决方案将属于您的语言独立类别;)
要对汽车颜色进行编码(我假设汽车颜色只能采用3个值:红色,蓝色,绿色)
您可以按如下方式编码:
Color Dummy_Var_One Dummy_Var_Two
Red 1 0
Blue 0 1
Green 0 0
Run Code Online (Sandbox Code Playgroud)
在上表Green中将成为参考水平.在您的情况下,如果您的颜色n取值,则需要包含n-1虚拟变量.
Java中的实现可以在Weka过滤器NominalToBinary中找到,尽管这将为类别创建n变量n.
| 归档时间: |
|
| 查看次数: |
2107 次 |
| 最近记录: |