Ok, mam następujący kod do trenowania Identifier NER z OpenNLPW jaki sposób mogę wyszkolić identyfikator nazwy rozpoznawanego podmiotu w 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);
ja nie wiem, czy robię coś źle z jeśli czegoś brakuje, ale klasyfikowanie nie działa. Przypuszczam, że plik train.txt jest nieprawidłowy.
Wystąpił błąd, który powoduje, że wszystkie tokeny są sklasyfikowane tylko dla jednego typu.
Dane mojego pliku train.txt są podobne do poniższego przykładu, ale zawierają dużo więcej zmian i ilości wpisów. Inną rzeczą jest to, że jestem klasyfikuje słowo po słowie z tekstu na czas, a nie wszystkie tokeny.
<START:distance> 8000m <END>
<START:temperature> 100ºC <END>
<START:weight> 50kg <END>
<START:name> Renato <END>
Ktoś może pokazać, co robię źle?
Czy możesz mi powiedzieć, jakiej wersji OpenNLP używasz? Ponieważ używam OpenNLP 1.5.1 i nie ma pliku modelu dla temparatue, odległości i wagi. –
@ raj.singh Nie używam OpenNLP. Piszę teraz swój własny klasyfikator do moich celów. –
hi @Renato Dinhani, mam ten sam problem, czy możesz mi pomóc, jak rozwiązać ten problem w swojej aplikacji. Mam ten błąd, gdy idę do nas mój wyjątek train.txt: java.security.NoSuchAlgorithmException –