この投稿に基づいて、私はこの解決策を提案します:
from nltk.tokenize import TreebankWordTokenizer
from nltk.wsd import lesk
from nltk.corpus import wordnet as wn
# ['als', 'arb', 'cat', 'cmn', 'dan', 'eng', 'eus', 'fas',
# 'fin', 'fra', 'fre', 'glg', 'heb', 'ind', 'ita', 'jpn', 'nno',
# 'nob', 'pol', 'por', 'spa', 'tha', 'zsm']
lang='fra'
sent = TreebankWordTokenizer().tokenize("Je voudrai essayer avec cette phrase")
synsets = [lesk(sent, w, 'n') for w in sent]
print(synsets)
for ws in sent:
for ss in [n for synset in wn.synsets(ws, lang=lang) for n in synset.lemma_names(lang)]:
print((ws, ss), '\n')
結果は次のとおりです。
[なし、なし、Synset('trier.n.02')、なし、なし、Synset('phrase.n.04')]
(「ジェ」、「ジェ」)
(「ジェ」、「モイ」)
(「ジェ」、「ヨード」)
(「ジェ」、「ジェ」)
(「ジェ」、「モイ」)
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「エッセイアー」)
('essayer', 'rendre')
(「エッセイアー」、「テンター」)
(「エッセイアー」、「エッセイアー」)
('essayer', 'goût')
('essayer', 'goûter')
(「エッセイアー」、「プライサー」)
(「エッセイアー」、「テンター」)
('essayer', 'assumer')
('essayer', 'entreprendre')
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「テンター」)
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「アスパイア」)
('essayer', 'chercher')
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「ソリシター」)
('essayer', 'tendre')
(「エッセイヤー」、「トラウバー」)
('essayer', 'entendre')
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「決定者」)
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「ジューゲ」)
('essayer', 'juger')
(「エッセイアー」、「テンター」)
('essayer', 'chercher')
(「エッセイアー」、「エフォーサー」)
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「テンター」)
(「エッセイアー」、「エッセイアー」)
(「エッセイアー」、「テスター」)
(「エッセイアー」、「検証者」)
(「フレーズ」、「コンダムナー」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「非難」)
(「フレーズ」、「信念」)
(「フレーズ」、「判断」)
(「フレーズ」、「フレーズ」)
(「句」、「文」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「接続」)
(「フレーズ」、「式」)
(「フレーズ」、「場所」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「構文」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「理論」)
(「フレーズ」、「場所」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「構文」)
(「フレーズ」、「動き」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「デライ」)
(「フレーズ」、「デュレ」)
(「フレーズ」、「フォア」)
(「フレーズ」、「判断」)
(「フレーズ」、「ロングテンポ」)
(「フレーズ」、「ペイネ」)
(「フレーズ」、「フレーズ」)
(「フレーズ」、「テンポ」)