同義詞和反義詞

同義詞和反義詞作為wordnet的一部分提供,wordnet是英語的辭彙資料庫。 它作為nltk corpora訪問的一部分提供。 在wordnet中同義詞是表示相同概念並且在許多上下文中可互換的單詞,因此它們被分組為無序集(synsets)。 我們使用這些同義詞來導出同義詞和反義詞,如下面的程式所示。

from nltk.corpus import wordnet

synonyms = []

for syn in wordnet.synsets("Soil"):
    for lm in syn.lemmas():
             synonyms.append(lm.name())
print (set(synonyms))

當運行上面的程式時,我們得到以下輸出 -

set([grease', filth', dirt', begrime', soil',
grime', land', bemire', dirty', grunge',
stain', territory', colly', ground'])

為了獲得反義詞,只使用反義詞函數。

from nltk.corpus import wordnet
antonyms = []

for syn in wordnet.synsets("ahead"):
    for lm in syn.lemmas():
        if lm.antonyms():
            antonyms.append(lm.antonyms()[0].name())

print(set(antonyms))

當運行上面的程式時,我們得到以下輸出 -

set([backward', back'])

上一篇: 刪除停用詞 下一篇: 文本翻譯