我目前正在处理文档分类应用。我使用python和NLTK以及wordnet for English,这使我能够找到一个单词的类。我的问题是,我目前还没有办法用希腊语等其他语言做同样的事情。
我在http://wordnet.okfn.gr/downloads/找到了希腊语Wordnet。 我将文件夹保存在NLTK corpora文件夹中,并尝试使用以下命令加载:
from nltk.corpus import wordnet-master
但我得到了一个SyntaxError
SyntaxError: invalid syntax
如果我将名称更改为wordnet_master,则会收到ImportError
ImportError: cannot import name 'wordnet_master'
是否有关于如何导入希腊Wordnet的建议?提前致谢
答案 0 :(得分:2)
NLTK的wordnet界面默认使用英文。在拨打synsets()
时,可以使用额外的lang
参数来指定您感兴趣的语言。当与wn.lang()
中的可用语言一起使用时,它似乎正常工作。< / p>
以下是希腊语,西班牙语和意大利语的几个例子。
>>> from nltk.corpus import wordnet as wn
>>> wn.synsets('ενοχλώ', lang='ell')
[Synset('irritate.v.02'), Synset('harass.v.01'), Synset('tease.v.01')]
>>> wn.synsets('molestar', lang='spa')
[Synset('interrupt.v.02'), Synset('tease.v.02'), Synset('disturb.v.01'), Synset('faze.v.01'), Synset('annoy.v.01'), Synset('tease.v.01'), Synset('chafe.v.01'), Synset('trouble.v.02')]
>>> wn.synsets('annoiare', lang='ita')
[Synset('tire.v.02'), Synset('tire.v.01'), Synset('bore.v.01')]
a previous similar post,使用包装类来强制使用默认语言,这可能对您有用。
答案 1 :(得分:0)
谢谢大家的帮助。 最后我找到了一个解决方法。 WordNet通过omw语料库支持希腊语(开箱即用)。看起来它不起作用,但在阅读Greek encoding in PYTHON后,我使用了u前缀,问题解决了!
import nltk
from nltk.corpus import wordnet as wn
wn.synsets(u'ενοχλώ', lang='ell')
导致
[Synset('irritate.v.02'), Synset('harass.v.01'), Synset('tease.v.01')]
请在相关单词之前注明你(在这种情况下'ενοχλώ')。
与泰语相同
wn.synsets(u'หายใจ', lang='tha')
,得到
[Synset('breathe.v.01'), Synset('respire.v.02')]