分类列和密集列有什么区别?

时间:2018-07-19 18:00:58

标签: tensorflow machine-learning one-hot-encoding

在Tensorflow中,有9个不同的功能列,分为三组:类别密集混合

通过阅读guide,我了解到分类列用于表示带有数字值的离散输入数据。它给出了一个名为类别标识列的类别列的示例:

ID   Represented using one-hot encoding
0    [1, 0, 0, 0]
1    [0, 1, 0, 0]
2    [0, 0, 1, 0]
3    [0, 0, 0, 1]

但是您也有一个称为 indicator 列的密集列,该列“包装”(?)分类列以产生看起来几乎相同的东西:

Category (from category column)   Represented as...
0                                 [1, 0, 0, 0]
1                                 [0, 1, 0, 0]
2                                 [0, 0, 1, 0]
3                                 [0, 0, 0, 1]

因此,“类别”列和“密集”列似乎都可以表示离散数据,并且两者都可以使用“一键编码”,因此这并不能将两者区分开。

我的问题是: 原则上 ,“分类列”和“密集列”有什么区别?

1 个答案:

答案 0 :(得分:0)

我刚刚在DataScience StackExchange上找到答案之前遇到了这个问题, 您可以找到原始答案here

如果我理解正确,答案很简单,虽然分类列确实会将数据编码为one-hot,但是indicatorcolumn会将其编码为multi-hot