命名实体的Hunspell自定义规则

时间:2019-03-11 14:33:39

标签: named-entity-recognition hunspell ner

如何为自定义词典(.dic)和后缀(.aff)编写名为“纽约”的实体(因此属于诸如LOCATION, PERSON, ORGANIZATION等类别的单词) ”,“唐纳德·特朗普”,“梅赛德斯·奔驰”等?

当完全不使用词缀规则时,使用像这样的字典

Ferrari/X po:ORGANIZATION
New York/X po:LOCATION
Donald Trump/X po:PERSON
Mercedes-Benz/X po:po:ORGANIZATION

使用New York进行的测试将返回:

{
  index: 8,
  word: 'Ferrari',
  stems: [ 'Ferrari' ],
  suggestion: [],
  correct: true,
  analysis: [ ' st:Ferrari po:ORGANIZATION' ],
},
{ 
  word: 'York',
  stems: [],
  suggestion: [ 'New York' ],
  correct: false,
  analysis: []
}

我实际上没有定义X规则,它只是一个参考,而我正在将po(这是语音类别)用作NER类型的类别( (例如LOCATION)作为占位符,以获取分析中的类别。 至少有两个问题

  • 对于不大写的单词,即使添加规则(如p

    )也与california之类的类别不匹配
    California/SM po:LOCATION
    
  • 虽然对于像Ferrari这样的单个单词来说这是可以的,但我又回到了po中的类别,对于像New YorkDonald Trump这样的单词,让我们说The Notorious BIG,因此使用两个以上的单词将无法正常工作。在这种情况下,参考规则应类似于

    New York/X po:LOCATION
    

注意

专有名词要求带有M标志,而他的S标志则表示专有名词没有大写。

参考:Hunspell,男人:https://www.systutorials.com/docs/linux/man/4-hunspell/

0 个答案:

没有答案