【发布时间】:2020-03-02 09:23:59
【问题描述】:
我有以下代码:
import nltk
exampleArray = ['The dog barking']
def processLanguage():
for item in exampleArray:
tokenized = nltk.word_tokenize(item)
tagged = nltk.pos_tag(tokenized)
print(tagged)
processLanguage()
上述代码的输出是标记化的单词及其对应的词性。示例:
[('The', 'DT'), ('dog', 'NN'), ('barking', 'NN'), ('.', '.')]
DT = determiner
NN = noun
文本应该是
The dog is barking
并且应该有 POS 序列
DT -> NN -> VBZ -> VBG
VBZ = verb, present tense, 3rd person singular
VBG = verb, present participle or gerund
如何让程序在句子中定位到缺失单词的位置?
【问题讨论】:
-
我不清楚您要做什么。如果您将错误的句子传递给 POS 标注器,很可能会返回错误的标签。
-
@BramVanroy -> 也许正确的问题是识别错误的句子语法?
-
我担心 NLTK 不是适合这项工作的工具。要做到这一点,您可能需要查看 aclweb.org/anthology/W19-4426 之类的内容
-
我会尝试 LanguageTool java 应用程序语法检查器,您可以在本地运行它并通过 http 从任何语言连接。不完全符合您的要求,但可能有助于解决您遇到的实际问题
标签: python nlp nltk pos-tagger part-of-speech