1

我正在研究词嵌入,对词向量的维数有点困惑。我的意思是,以 word2vec 为例,我的问题是为什么我们应该为我们的隐藏层使用 100 个隐藏神经元?这个数字背后有什么意义或逻辑吗?或者如果它是任意的,为什么不是 300?还是10?为什么不多或少?众所周知,显示向量的最简单方法是在二维空间(只有 X 和 Y)上,为什么还要更多维呢?我阅读了一些有关它的资源,在一个示例中,他们选择了 100 个维度,在另一个示例中,他们选择了其他数字,例如 150、200、80 等。

我知道数字越大,显示单词之间关系的空间就越大,但是我们不能在二维向量空间(只有 X 和 Y)上显示关系?!为什么我们需要更大的空间?每个单词都由一个向量显示,那么当我们可以在 2 或 3 维空间上显示向量时,为什么我们必须使用高维空间呢?然后使用余弦之类的相似性技术来查找 2 或 3 维而不是 100 维(从计算时间的角度来看)的相似性更简单,对吧?

4

1 回答 1

1

好吧.. 如果只显示矢量是您的最终目标,您可以使用 2 或 3 维矢量,这样效果最好。

通常在 NLP 中,我们有明确定义的任务,例如标记、解析、理解含义等。对于所有这些目的,高维向量总是比 2-d、3-d 向量表现更好。因为它有更多的自由度来捕捉你所追求的关系。您可以通过它们包含更丰富的信息。

使用余弦之类的相似性技术来查找 2 或 3 维而不是 100 维(从计算时间的角度来看)的相似性更简单,对吧?

不。这就是说添加 2 个数字比添加 100 个数字更简单。方法(余弦距离)完全相同。

于 2017-03-21T04:19:01.557 回答