使用 NLTK 对 POS 标记词进行词形还原?
我用 nltk.pos_tag() 标记了一些单词,因此它们被赋予了树库标签。我想使用已知的 POS 标签对这些单词进行词形还原,但我不知道如何做。我正在查看 Wordnet 词形还原器,但我不确定如何将树库 POS 标签转换为词形还原器接受的标签。我如何简单地执行此转换,或者是否有使用树库标签的词形还原器?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
正如 @engineercoding 在对 @rmalouf 的回答的评论中指出的那样,与 WordNet 相比,Treebank 中的标签要多得多,请参阅 此处了解详细信息。
下面的映射覆盖了尽可能多的碱基,它还明确定义了 WordNet 中不匹配的 POS 标签:
As @engineercoding pointed out in the comments to @rmalouf's answer, there are quite a lot more tags in Treebank compared to WordNet, see here for details.
The following mapping covers as large number of bases as possible, it also explicitly defines POS tags without matches in WordNet:
wordnet 词形还原器只知道四个词性(ADJ、ADV、名词和动词),并且只有名词和动词规则可以做一些特别有趣的事情。树库标签集中的名词词性均以 NN 开头,动词标签均以 VB 开头,形容词标签以 JJ 开头,副词标签以 RB 开头。因此,从一组标签转换为另一组标签非常简单,例如:
The wordnet lemmatizer only knows four parts of speech (ADJ, ADV, NOUN, and VERB) and only the NOUN and VERB rules do anything especially interesting. The noun parts of speech in the treebank tagset all start with NN, the verb tags all start with VB, the adjective tags start with JJ, and the adverb tags start with RB. So, converting from one set of labels to the other is pretty easy, something like: