Próbuję tokenize ciągi w ngrams. O dziwo w dokumentacji dla NGramTokenizer nie widzę metody, która zwróci pojedyncze ngramy, które zostały zgeometryzowane. W rzeczywistości widzę tylko dwie metody w klasie NGramTokenizer, które zwracają obiekty typu String.Java Lucene NGramTokenizer
Oto kod, który mam:
Reader reader = new StringReader("This is a test string");
NGramTokenizer gramTokenizer = new NGramTokenizer(reader, 1, 3);
- Gdzie są ngrams które tokenized?
- Jak uzyskać dane wyjściowe w łańcuchach/słowach?
Chcę, aby moje wyniki były jak: To, jest, a, test, ciąg, To jest, jest, test, ciąg testowy, To jest, jest test, ciąg testowy.
Co mogę zrobić z ciągami znaków zamiast pod względem atrybutów? Tak więc moje wyniki mogłyby wyglądać następująco: This, is, a, test, string, This is, is, test, ... ciąg testowy. – CodeKingPlusPlus
Okay, to nie jest to, do czego służy sterownik NGramToken. Myślę, że to, czego będziesz chciał użyć, to ShingleFilter w połączeniu z StandardTokenizer. Zaktualizuję moją odpowiedź, łatwiej ją wyrazić ... – femtoRgon
Czy znasz jakieś filtry słów przystankowych, których mogę użyć w procesie tokjonowania? – CodeKingPlusPlus