阿拉伯语词义化和斯坦福NLP

Ria*_*bir 5 nlp stemming lexical-analysis lemmatization stanford-nlp

我尝试进行词形还原,即识别引理和可能的动词的阿拉伯词根,例如:يتصل==> lemma(动词的不定式)==>اتصل==> root(triliteral root/Jidr thoulathi)== >وصل

你认为斯坦福NLP能做到吗?

最好的祝福,

fut*_*lus 10

斯坦福阿拉伯语分段符不能做真正的词形还原.但是,有可能训练一个新的模型来做类似于词干的事情:

  • تكتبون←ت+كتب+ون
  • يتصل←ي+تصل

如果输出是真正的阿拉伯语词汇非常重要("تصل"不是真正的引理),那么使用像MADAMIRA(http://nlp.ldeo.columbia.edu/madamira/)这样的工具可能会更好.

详细说明:斯坦福阿拉伯语分段器仅使用这些操作(实现edu.stanford.nlp.international.arabic.process.IOBUtils)逐个字符地生成输出:

  • 在两个字符之间拆分一个字
  • 将lil-(لل)转换为li + al-(ل+ال)
  • 将ta(Ê)或ha(ه)转换为ta marbuta(É)
  • 将ya(ي)或alif(ا)变换为alif maqsura(ى)
  • 将alif maqsura(ى)转换为ya(ي)

因此,将يتصل解释为ي+اتصل需要实现一个额外的规则,即在ya或ta之后插入alif.某些不规则形式的词形还原是完全不可能的(例如,نساء←امرأة).

可供下载的斯坦福分段器的版本也只是断开代词和粒子:

وسيكتشفونه←و+س+يكتشفون+ه

但是,如果您可以访问LDC阿拉伯语树库或类似的丰富的阿拉伯语文本来源并注释形态分割,则可以训练您自己的模型以删除所有形态词缀,这更接近词形还原:

وسيكتشفونه←و+س+ي+كتشف+ون+ه

请注意,"كتشف"不是真正的阿拉伯语单词,但是分段器应该至少始终为تكتشفين,أكتشف,يكتشف等生成"كتشف".如果这是可以接受的,则需要更改ATB预处理脚本而不是使用形态分割注释.你可以通过用这样parse_integrated的修改版本替换调用的脚本来做到这一点:https://gist.github.com/futurulus/38307d98992e7fdeec0d

然后按照自述文件中的"培训SEGMENTER"说明进行操作.