为什么这个基本的SpaCy示例不起作用?

时间:2018-09-23 18:20:10

标签: python nlp conda spacy

我正在测试SpaCy文档中的this basic example,并得到一些奇怪的结果。

import spacy

nlp = spacy.load('en_core_web_md')
tokens = nlp(u'dog cat banana')

for token1 in tokens:
    for token2 in tokens:
        print(token1.text, token2.text, token1.similarity(token2))

我的设置:

  • MacBook Pro
  • macOS 10.13.4
  • Conda 4.5.9
  • Python 3.5.5
  • SpaCy 2.0.12

预期结果:

dog dog 1.0
dog cat 0.80168545
dog banana 0.24327646
cat dog 0.80168545
cat cat 1.0
cat banana 0.2815437
banana dog 0.24327646
banana cat 0.2815437
banana banana 1.0

我的结果:

dog dog 1.0
dog cat 0.0
dog banana 0.0
cat dog 0.0
cat cat 1.0
cat banana -0.0446812
banana dog -7.82874e+17
banana cat -8.24222e+17
banana banana 1.0

我尝试卸载并重新安装SpaCy以及所有各种型号,甚至SpaCy本身。我还尝试了一个更简单的示例:

import spacy
nlp = spacy.load('en_core_web_md')
cat = nlp(u'cat')
dog = nlp(u'dog')
print(cat.similarity(dog)) # 0.0

1 个答案:

答案 0 :(得分:0)

我通过创建一个使用Python 3.7而不是3.6的新的Conda环境解决了这一问题。我现在看到的与SpaCy文档中的演示所产生的结果相同。

相关问题