Как расширить / настроить именованный объект в NLTK / StanfordNLP / CoreNlP? - PullRequest
0 голосов
/ 04 мая 2018

Я использовал NLTK для распознавания необработанного текста и обнаружил, что предопределенный NER настолько ограничен, как:

  • за человека
  • ORG для организации

Как я могу расширить этот ограниченный NE до более полного, такого как

  • PSY для психологии
  • CHE для химии и т. Д.

В каком формате я должен записать набор данных и какой путь мне его поставить?
Заранее спасибо!

1 Ответ

0 голосов
/ 05 мая 2018

Вы можете обучить новую модель с данными обучения в этом формате.

Joe    PERSON
Smith  PERSON
went   O
to     O
France LOCATION
.

Обратите внимание, что это файл с разделителями табуляции с токеном слева, вкладкой и тегом NER справа. Вы бы заменили это своими специализированными тегами. Модели обычно обучаются на тысячах предложений.

Этот файл является хорошим примером свойств, используемых для обучения модели:

https://github.com/stanfordnlp/CoreNLP/blob/master/scripts/ner/english.all.3class.distsim.prop

Это команда для обучения модели (убедитесь, что ваш CLASSPATH установлен правильно)

java -Xmx2g edu.stanford.nlp.ie.crf.CRFClassifier -prop english.all.3class.distsim.prop
...