【发布时间】:2018-08-19 19:07:00
【问题描述】:
在我看来,从文档来看,它使用嵌入矩阵将单热编码(如稀疏输入向量)转换为密集向量。但这与仅使用全连接层有何不同?
【问题讨论】:
-
我认为它们与 Dense 层的区别可以用效率来概括:它们更快(因为查找而不是矩阵乘法)并且数据效率更高(如果使用索引向量而不是一个-热向量)。
标签: tensorflow machine-learning embedding
在我看来,从文档来看,它使用嵌入矩阵将单热编码(如稀疏输入向量)转换为密集向量。但这与仅使用全连接层有何不同?
【问题讨论】:
标签: tensorflow machine-learning embedding
从 cmets 到这里总结答案。 主要区别在于效率。使用 embedding_column 无需在这些非常长的 one hot 向量中编码数据点并进行矩阵乘法,您可以使用索引向量并进行矩阵查找。
【讨论】:
表示类别。
one-hot encoding 和 embedding 列都是表示分类特征的选项。
one-hot 编码的一个问题是它不编码类别之间的任何关系。它们是完全独立的,所以神经网络无法知道哪些是相似的。
这个问题可以通过使用嵌入来表示分类特征来解决 柱子。这个想法是每个类别都有一个较小的向量。这些值是权重,类似于用于神经网络中基本特征的权重。
更多:
https://developers.googleblog.com/2017/11/introducing-tensorflow-feature-columns.html
【讨论】: