Python-NLTK中的德语词干分析

2024-05-19 08:12:27 发布

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

我最近开始研究德语文本的情感分析项目,并计划使用词干分析器来改进结果。在

NLTK配备了一个德国雪球茎杆,我已经试过用过了,但我不确定结果如何。也许应该是这样,但作为一个计算机科学家而不是语言学家,我对词干不同的词干变化动词形式有一个问题。在

以单词“suchen”(搜索)为例,第一人称单数词源为“suchen”,第三人称单数词源为“sucht”。在

我知道也有柠檬化,但据我所知,还没有一个德国柠檬化器集成到NLTK中。有日耳曼网,但他们的NLTK整合似乎已经中止。在

重点:我希望屈折动词形式的词干与词干相同,至少对于同一时态的普通动词来说。如果这不是我的目标有用的要求,请告诉我原因。如果是的话,你知道有什么额外的资源可以帮助我实现这个目标吗?在

编辑:我忘了提,任何软件都应该免费用于教育和研究目的。在


Tags: 项目文本分析器目标动词形式计划情感
2条回答

一个好而简单的解决方案是使用TreeTagger。首先,您必须手动安装treetagge(这基本上是在您的计算机上的某个地方解压缩正确的zip文件)。您将在这里找到二进制分布:http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/

然后您需要安装一个包装器来从Python调用它。在

下面的代码将安装包装器并将标记化的句子分为两部分:

import treetaggerwrapper

tagger = treetaggerwrapper.TreeTagger(TAGLANG='de')

tags = tagger.tag_text(tokenized_sent,tagonly=True) #don't use the TreeTagger's tokenization!

pprint.pprint(tags)

您还可以使用treetaggerwrapper中的方法从Treetagges输出中生成漂亮的对象:

^{pr2}$

仅此而已。在

作为一个计算机科学家,你肯定是朝着正确的方向去解决这个语言问题;)。词干挖掘通常比较简单,用于信息检索任务,试图缩小词汇量,但通常不足以进行更复杂的语言分析。词缀化在一定程度上与词干分析的用例重叠,但包括将动词的词形变化改写为相同的词根形式(词缀),以及区分名词的“work”和动词的“work”(尽管这有点取决于lemmatiser的实现和质量)。为此,它通常需要更多的信息(如POS标记、语法树),因此需要相当长的时间,使得它不太适合IR任务,通常需要处理大量的数据。在

除了GermaNet(不知道它被中止了,但从未真正尝试过,因为它是免费的,但是你必须签署一个协议才能访问它),还有一个SpaCy,你可以看看:https://spacy.io/docs/usage/

非常容易安装和使用。请参阅网站上的安装说明,然后使用以下工具下载德语资料:

python -m spacy download de

然后:

^{pr2}$

正如您所看到的,不幸的是,它在您的特定示例(suchen)上做得不太好,而且我不确定这个数字代表什么(即,必须是引理id,但不确定可以从中获得哪些其他信息),但也许您可以试一试,看看它是否对您有帮助。在

相关问题 更多 >

    热门问题