2

我正在使用来自https://github.com/facebookresearch/fastText/blob/master/pretrained-vectors.md的德语预训练词向量

我遇到了以下问题:

  1. 为了提取单词的向量,我首先在wiki.de.vec文本文件中搜索相应的单词。但是,wiki.de.vec文本文件中的向量与print-word-vectors函数输出的向量不同(例如,文件中的“affe”向量表示“monkey”与wiki.de.vec“affe”的输出不同print-word-vectors)。这是什么原因?我认为发生这种情况是因为单词的向量是通过在 Bojanowski 等人的模型中添加其字符nwiki.de.vec -gram 向量的总和来计算的,但是文本文件中“affe”的向量反映了什么?是不是也出现在诸如“karaffe”之类的其他词中的n- gram 'affe' 的向量。因此,是否应该始终使用该print-word-vectors功能(即-gram 向量)在使用这些向量时,而不是简单地从文本文件中提取向量?
  2. 一些真正的德语单词(例如 knatschen、resonieren)接收一个空向量(即使使用print-word-vectors函数)。如果这种子词方法的主要优点是计算词汇外词的向量,这怎么可能呢?
  3. 最近邻函数 ( ./fasttext nn) 输出具有余弦距离的单词的最近邻。但是,这个值与我通过获取单个单词的向量print-word-vectors并在 Matlab 中使用pdist2(wordVector1, wordVector2, 'cosine'). 为什么会这样?这是获取两个词向量之间的余弦距离的错误方法吗?

提前感谢您的帮助和建议!

4

0 回答 0