如何POS_TAG法语句子?

sah*_*oun 5 nltk pos-tagger python-3.x french

我正在寻找pos_tag法语句子的方法,如下面的代码用于英语句子:

def pos_tagging(sentence):
    var = sentence
    exampleArray = [var]
    for item in exampleArray:
        tokenized = nltk.word_tokenize(item)
        tagged = nltk.pos_tag(tokenized)
        return tagged
Run Code Online (Sandbox Code Playgroud)

sah*_*oun 13

这里是完整的代码源它很好用于Standford NLP的下载链接https://nlp.stanford.edu/software/tagger.shtml#About

from nltk.tag import StanfordPOSTagger
jar = 'C:/Users/m.ferhat/Desktop/stanford-postagger-full-2016-10-31/stanford-postagger-3.7.0.jar'
model = 'C:/Users/m.ferhat/Desktop/stanford-postagger-full-2016-10-31/models/french.tagger'
import os
java_path = "C:/Program Files/Java/jdk1.8.0_121/bin/java.exe"
os.environ['JAVAHOME'] = java_path

pos_tagger = StanfordPOSTagger(model, jar, encoding='utf8' )
res = pos_tagger.tag('je suis libre'.split())
print (res)
Run Code Online (Sandbox Code Playgroud)


ale*_*xis 4

NLTK 不附带针对法语的预建资源。我建议使用斯坦福标记器,它附带经过训练的法国模型。这段代码显示了如何设置 nltk 以与斯坦福大学的法语词性标注器一起使用。请注意,该代码已经过时(对于 Python 2),但您可以使用它作为起点。

或者,NLTK 可以非常轻松地在标记语料库上训练您自己的词性标记器,并将其保存以供以后使用。如果您可以访问(足够大的)法语语料库,则可以按照nltk 书中的说明进行操作,只需使用您的语料库代替 Brown 语料库即可。您不太可能与斯坦福标记器的性能相匹配(除非您可以为您的特定领域训练标记器),但您不必安装任何东西。