从v2.1开始,spaCy有一个BERT风格的语言模型(LM)。它预测单词向量而不是单词,所以我将在这里互换使用“单词”和“单词向量”。你知道吗
我需要用一个单词蒙面的句子,和一个单词列表,并根据单词出现在蒙面槽中的可能性对它们进行排序。目前我使用BERT来实现这个(类似于bert-syntax)。我想看看斯帕西在这项任务上的表现是否可以接受。在this file和this one之间,我很确定构建一些东西是可能的。然而,这感觉像是深入到库的内部比我想要的更深。你知道吗
有没有一种直接的方式与spaCy的蒙面语言模型进行交互?你知道吗
Tags:
这基本上是LMAO近似的缺点。直到有人在
/r/machinelearning
子网站上向我指出这一点,我才真正意识到这一点。你知道吗因为我们在预测一个向量,我们实际上只能预测向量空间中的一个点。这与预测单词的分布是完全不同的。假设我们有一个像
The __ of corn.
这样的间隙,假设填充物的良好分布是{kernel, ear, piece}
。这些单词的向量不是特别接近,因为word2vec
算法是基于单词的所有上下文构造一个向量空间,单词只能在这个上下文中互换。在piece
的绝大多数用法中,ear
这个词是一个非常糟糕的替代词。你知道吗如果可能的填充词在向量空间中不紧密,那么LMAO模型将无法返回对应于这组单词的答案。你知道吗
如果您只需要1-最佳答案,那么
spacy pretrain
中的算法很有可能给出它。但是如果你需要分布,近似值就会分解,你应该使用BERT
。你知道吗相关问题 更多 >
编程相关推荐