2014-11-26 4 views
1

Я переучиваю систему Stanford NER для извлечения названий технологий и имен организаций из текста.Переподготовка stanford ner - новые сущности и многозначные сущности

Если я хочу, чтобы переучить модель нер Стэнфорд, мы должны дать обучающие данные в формате:

She  O 
works O 
on O 
C#  TECHNOLOGY 
at O 
New ORGANIZATION 
York ORGANIZATION 
TImes ORGANIZATION 
and O 
Microsoft ORGANIZATION 
in O 
New  LOCATION 
York  LOCATION 

Достаточно ли просто указать названные объекты в этом порядке? Нужно ли указывать часть речевой информации в некотором формате, когда мы переучиваем модель? Кроме того, если у нас есть сущности, которые являются многословными, то это правильный способ их аннотировать?

Это подход, которым я придерживался: правильный подход?

  1. Сформировать подготовки данных
  2. Добавить новое название модели и расположение в файле свойств
  3. Используется эту команду из часто задаваемых Стэнфордского нер:

    java -cp stanford-ner.jar edu.stanford.nlp.ie.crf.CRFClassifier -prop austen.prop 
    

ответ

1

Да, достаточно как показано на рисунке. Stanford NER также поддерживает классификаторы обучения, которые используют информацию POS во время классификации, но она добавляет очень мало точности, когда используются другие методы, такие как кластеры сходства распределения. В моделях, которые мы распространяем, мы не используем информацию POS для простоты (и поэтому NER можно запускать самостоятельно без тегов POS).

Для аннотирования нескольких объектов слов существует несколько стратегий. Вышеупомянутая кодировка иногда называется «IO» (внутри снаружи). Он имеет преимущества простой интерпретации и быстрой работы, но недостаток, заключающийся в том, что нельзя выделить два смежных объекта одного и того же класса, - вы должны предположить, что запуск слов одной и той же категории состоит из одного большого объекта. Мы используем его по умолчанию, потому что это просто и быстро, несмотря на этот недостаток. (Смежные объекты той же категории встречаются очень редко для человека/организации/местоположения, но они могут быть гораздо более распространены в некоторых других областях.)

Но вы также можете комментировать данные и обучать модель, используя другие схемы кодирования, такие как IOB, который имеет противоположные свойства (более сложный, теггер работает медленнее, может представлять смежные объекты той же категории). См. this SO question.