假设我有label = ['Male', 'Female', 'Undefined']. 如果我将其标记为:
[[1, 0, 0], [0, 1, 0], [0, 0, 1]]
与将其标记为
[0, 1, 2]然后稍后对数据进行规范化?
关于这个话题,如果我有另一个特征age,当然只有1的长度。如果我选择一种热编码,我将如何输入Age和Gender,因为现在Gender的长度变成了3?我正在使用 Keras。
假设我有label = ['Male', 'Female', 'Undefined']. 如果我将其标记为:
[[1, 0, 0], [0, 1, 0], [0, 0, 1]]
与将其标记为
[0, 1, 2]然后稍后对数据进行规范化?
关于这个话题,如果我有另一个特征age,当然只有1的长度。如果我选择一种热编码,我将如何输入Age和Gender,因为现在Gender的长度变成了3?我正在使用 Keras。
第二个选项是错误的。如果您标记Male, Female,Undefined因为[0, 1, 2]您将类别视为数字。这是不正确的。网络以这种方式会学到一些东西,比如Undefined > Female,这是没有意义的。
您需要一种热编码来处理这些变量:它们不是可以放在刻度上的数值。
关于这个Age问题:如果这是一个数值变量(我猜是用年表示?),那么您可以毫无问题地将其直接输入神经网络。