Machine learning 回归分析中的分类和顺序特征数据表示?
在进行回归分析时,我试图完全理解分类数据和顺序数据之间的差异。目前,有一点是明确的: 分类功能和数据示例:Machine learning 回归分析中的分类和顺序特征数据表示?,machine-learning,regression,linear-regression,categorical-data,Machine Learning,Regression,Linear Regression,Categorical Data,在进行回归分析时,我试图完全理解分类数据和顺序数据之间的差异。目前,有一点是明确的: 分类功能和数据示例: 颜色:红、白、黑 为什么分类:red
颜色:红、白、黑
为什么分类:
red
在逻辑上不正确
顺序特征和数据示例:条件:旧的、翻新的、新的
为什么序号:
old
在逻辑上是正确的
分类到数字和顺序到数字编码方法:分类数据的一个热编码
顺序数据的任意数 分类数据到数字:
data = {'color': ['blue', 'green', 'green', 'red']}
data = {'con': ['old', 'new', 'new', 'renovated']}
一次热编码后的数字格式:
color_blue color_green color_red
0 1 0 0
1 0 1 0
2 0 1 0
3 0 0 1
从顺序数据到数字:
data = {'color': ['blue', 'green', 'green', 'red']}
data = {'con': ['old', 'new', 'new', 'renovated']}
使用映射后的数字格式:旧<翻新<新→ 0,1,2
0 0
1 2
2 2
3 1
在我的数据中,我有“颜色”功能。随着颜色从白色变为黑色,价格上涨。根据上述规则,我可能必须对分类“颜色”数据使用一种热编码。但为什么我不能使用序数表示。下面,我提供了我的问题所在的观察结果
让我首先介绍线性回归的公式:
让我们看看颜色的数据表示: 让我们使用两种数据表示形式的公式来预测第一项和第二项的价格:
一个热编码: 在这种情况下,将存在不同颜色的不同θ。我假设θ已经从回归(20、50和100)中导出。预测将是:
Price (1 item) = 0 + 20*1 + 50*0 + 100*0 = 20$ (thetas are assumed for example)
Price (2 item) = 0 + 20*0 + 50*1 + 100*0 = 50$
颜色的顺序编码:
在这种情况下,所有颜色都有一个公共θ,但我指定的乘数(10、20、30)不同:
在我的型号中,价格为白色<红色<黑色。似乎相关性是正确的,在这两种情况下都是合乎逻辑的预测。用于顺序和分类表示。所以我可以对我的回归使用任何编码,而不考虑数据类型(分类或顺序)?数据表示中的这种划分只是一个约定和面向软件的表示的问题,而不是回归逻辑本身的问题
所以我可以对我的回归使用任何编码,而不考虑数据类型(分类或顺序)?数据表示中的这种划分只是一个约定和面向软件的表示的问题,而不是回归逻辑本身的问题
你可以做任何事。问题是什么可能更有效?答案是,您应该使用表示法,该表示法包含正确的数据结构信息,而不包含错误的假设。这是什么意思
- 如果您的数据是分类的,并且您使用数字格式,则嵌入了错误结构(因为分类数据没有排序)
- 如果您的数据是原始的,并且您使用了一种hoe编码,则不会嵌入真正的结构(因为存在排序,您会忽略它)
- 如果您的数据是分类的,并且您使用数字格式,则嵌入了错误结构(因为分类数据没有排序)
- 如果您的数据是原始的,并且您使用了一种hoe编码,则不会嵌入真正的结构(因为存在排序,您会忽略它)