为什么pythonnltk在西班牙语中没有正确标记?

2024-05-16 00:06:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下代码:

import nltk

sent='El gato está bajo la mesa de cristal.'
nltk.pos_tag(word_tokenize(sent), lang='spa')

但输出一点也不准确:

^{pr2}$

例如,es应该归类为动词。在

如果我用英语短语做同样的尝试:

import nltk

sent='The cat is under the cristal table.'
nltk.pos_tag(word_tokenize(sent), lang='spa')

工作正常:

[('The', 'DT'),
 ('cat', 'NN'),
 ('is', 'VBZ'),
 ('under', 'IN'),
 ('the', 'DT'),
 ('cristal', 'NN'),
 ('table', 'NN'),
 ('.', '.')]

请注意,我已经下载了所有的nltk资源。你能告诉我我在这里遗漏了什么,所以这个单词标签在西班牙语中不起作用吗?在


Tags: theposimportlangistagnncat
1条回答
网友
1楼 · 发布于 2024-05-16 00:06:53

我找到了the following solution

from nltk.tag import StanfordPOSTagger
jar = 'D:/Downloads/stanford-postagger-full-2018-10-16/stanford-postagger-3.9.2.jar'
model = 'D:/Downloads/stanford-postagger-full-2018-10-16/models/spanish.tagger'

import os
java_path = "C:/Program Files/Java/jre1.8.0_191/bin/java.exe"
os.environ['JAVAHOME'] = java_path

pos_tagger = StanfordPOSTagger(model, jar, encoding='utf8' )
pos_tagger.tag('El gato está bajo la mesa de cristal'.split())

结果:

^{pr2}$

相关问题 更多 >