Я делаю пользовательскую модель, используя только пакет 'stanford-ner' , чтобы пометить ввод только предоставленным набором тегов.До сих пор я могу успешно создать модель с пробелами в «сущности», однако мой ввод токенизируется и не идентифицируется как один термин
Мои данные сущности выглядят следующим образом:
-DOCSTART- 0
stACkOverflOW BRAND
questions CATCHWORD
top votes CATEGORY
downvoted OFFENSIVE
Мой файл свойств такой,
trainFile = training_files/tags_data.tsv
serializeTo = ner-model-stackoverflow.ser.gz
wordFunction = edu.stanford.nlp.process.LowercaseFunction
map = word=0,answer=1
Модель и сервер *
java -cp "stanford-ner-2018-02-27/stanford-ner.jar:stanford-ner-2018-02-27/lib/*" -mx2g edu.stanford.nlp.ie.crf.CRFClassifier -prop training_files/prop.txt
cp stanford-ner-2018-02-27/stanford-ner.jar stanford-ner-with-classifier.jar
jar -uf stanford-ner-with-classifier.jar ner-model-stackoverflow.ser.gz
java -mx100m -cp stanford-ner-with-classifier.jar edu.stanford.nlp.ie.NERServer -port 9191 -loadClassifier ner-model-stackoverflow.ser.gz &
Тест
telnet localhost 9191
stackoverflow | helps you //with questions, *helpful answers have top votes and less downvoted
Вывод выглядит следующим образом
stackoverflow/BRAND |/O helps/O you/O //O //O with/O questions/CATCHWORD ,/O */O helpful/O answers/O have/O top/O votes/O and/O less/O downvoted/OFFENSIVE
Как я могу обработать ввод, чтобы «лучшие голоса» рассматривались как единое целое.Как проверить, что в моей модели «лучшие голоса» помечены как объекты или пропущены из-за проблем с вкладками?Нужны ли мне дополнительные пакеты?
Я прошел через ' Stanford NLP назвал сущности более чем одного токена ', но это использует Java.Я использую PHP Socket Connection для подключения к серверу NER и получения ответа.