Получение смысловой основы для слов nltk semcor corpus
Я пробовал semcor corpus в nltk.
Я нашел здесь этот код :
>>> list(map(str, semcor.tagged_chunks(tag='both')[:3]))
['(DT The)', "(Lemma('group.n.01.group') (NE (NNP Fulton County Grand Jury)))", "(Lemma('state.v.01.say') (VB said))"]
Я пробовал то же самое на colab (проверьте последнюю ячейку в этой записной книжке):
>>> list(map(str, semcor.tagged_chunks(tag='both')[:3]))
['(DT The)',
'(group.n.01 (NE (NNP Fulton County Grand Jury)))',
'(say.v.01 (VB said))']
Вот скриншот из colab:
Эта проблема
Обратите внимание, что на странице nltk для
Fulton County Grand Jury
вывод дается как
Lemma('group.n.01.group')
, но на колабе я получаю. Итак, я не понимаю лемму о смысле / синсете.
- В
- во-первых, это «основа для смыслового слова»
- последний - "основа для ввода"
- В
- (первый и единственный)
group
"стержень для ввода" - не возвращается «основа для смыслового слова»
- (первый и единственный)
Странно то, что вчера он давал мне правильный результат. Этот блокнот развеет сомнения, поскольку он имеет одни и те же две строки, выполненные сегодня и вчера. Вчера (09.02.2021) я получал теги в формате
group.n.01.group
, но сегодня я получаю теги в
group.n.01
формат ( УВЕДОМЛЕНИЕ КРАСНЫЙ И СИНИЙ КОММЕНТАРИИ ):
Что мне здесь не хватает?
1 ответ
Я знал, что использует чувства для обозначения подмножества
brown
корпус. Но я не знал, что API-интерфейсы могут работать как с предварительно загруженными, так и без них, и они будут выдавать теги в другом формате в этих разных сценариях. Я честно чувствую, по крайней мере
semcor
В документации по API следует упомянуть об этом.
Таким образом, без предзагрузки он не возвращает смысловые основы:
С участием
wordnet
предварительно загруженный, он действительно возвращает смысловые основы: