2024-05-29 02:19:20 发布
网友
https://spacy.io/models/en#en_vectors_web_lg 说这个模型有1.1米的钥匙,但是 https://nlp.stanford.edu/projects/glove/ 说明手套载体包含2.2米的声音
我能知道缺了什么人声吗?在
非常感谢。在
通过查看spaCy.vocab属性/对象,并将其与GloVe文件中的单词进行比较,您可以自己检查spaCy和GloVe模型的词汇表。首先将数据加载到两个列表中:
.vocab
import spacy nlp = spacy.load('en_vectors_web_lg') spacy_words = [word for word in nlp.vocab.strings] glove_filename = 'glove.840B.300d.txt' glove_words = [line.split()[0].decode('utf-8') for line in open(glove_filename)]
然后检查集合差,得到“缺少”的单词:
缺少220万-110万~110万字:
>>> len(set(glove_words) - set(spacy_words)) 1528158
注意nlp.vocab.strings和{}中的内容有区别。你可以用
nlp.vocab.strings
vector_words = [] for key, vector in nlp.vocab.vectors.items(): try: vector_words.append(nlp.vocab.strings[key]) except KeyError: pass
(关于try/except:我不清楚为什么vocab.strings中缺少一些密钥)
vocab.strings
有了这个列表,你可以得到:
>>> list(set(glove_words) - set(vector_words))[:10] [u'Inculcation', u'Dholes', u'6-night', u'AscensionMidkemia', u'.90.99', u'USAMol', u'USAMon', u'Connerty', u'RealLife', u'NaughtyAllie']
更新:词汇之间的差异问题已经在这里提出https://github.com/explosion/spaCy/issues/1985。在
通过查看spaCy
.vocab
属性/对象,并将其与GloVe文件中的单词进行比较,您可以自己检查spaCy和GloVe模型的词汇表。首先将数据加载到两个列表中:然后检查集合差,得到“缺少”的单词:
^{pr2}$缺少220万-110万~110万字:
注意}中的内容有区别。你可以用
nlp.vocab.strings
和{(关于try/except:我不清楚为什么
vocab.strings
中缺少一些密钥)有了这个列表,你可以得到:
更新:词汇之间的差异问题已经在这里提出https://github.com/explosion/spaCy/issues/1985。在
相关问题 更多 >
编程相关推荐