Хорошо, у меня есть следующий код для обучения идентификатора NER из OpenNLP
FileReader fileReader = new FileReader("train.txt");
ObjectStream fileStream = new PlainTextByLineStream(fileReader);
ObjectStream sampleStream = new NameSampleDataStream(fileStream);
TokenNameFinderModel model = NameFinderME.train("pt-br", "train", sampleStream, Collections.<String, Object>emptyMap());
nfm = new NameFinderME(model);
Я не знаю, делаю ли я что-то не так, если чего-то не хватает, но классификация не работает. Я предполагаю, что файл train.txt неверен.
Возникающая ошибка заключается в том, что все токены относятся только к одному типу.
Мои данные train.txt похожи на следующий пример, но с намного больше вариаций и количества записей. Другое дело, что я классифицирую слово за словом из текста за раз, а не все токены.
<START:distance> 8000m <END>
<START:temperature> 100ºC <END>
<START:weight> 50kg <END>
<START:name> Renato <END>
Кто-нибудь может показать, что я делаю не так?