자바 애플리케이션에서 인도네시아어 텍스트를 처리 중이므로이를 줄여야합니다.인도네시아어 언어 스머머를 찾고 있습니다.
현재 내가 루씬 인도네시아어 형태소 분석기를 사용하고 있습니다. org.apache.lucene.analysis.id.IndonesianAnalyzer;
그러나 결과는 만족스럽지 않습니다.
사람은 나에게 다른 형태소 분석기를 제안 할 수 있을까요?
자바 애플리케이션에서 인도네시아어 텍스트를 처리 중이므로이를 줄여야합니다.인도네시아어 언어 스머머를 찾고 있습니다.
현재 내가 루씬 인도네시아어 형태소 분석기를 사용하고 있습니다. org.apache.lucene.analysis.id.IndonesianAnalyzer;
그러나 결과는 만족스럽지 않습니다.
사람은 나에게 다른 형태소 분석기를 제안 할 수 있을까요?
"enang는"줄기입니다. 줄기는 실제 단어 일 필요는 없습니다. 예를 들어, 영어에서는 "논쟁"하고 "논쟁하다"는 줄기 "argu"로 줄입니다. "argu"는 영어 단어가 아니지만 의미있는 줄기입니다. 이것은 형태소 분석기가 작동하는 방식입니다. 스 트리머를 인덱싱 된 데이터와 쿼리에 동일한 방식으로 적용하는 한 잘 작동합니다. 당신이 그런 행동을하지 않을 경우
, 그것은 전혀 형태소 분석기를 사용하는 이해가되지 않습니다. 이외에도 형태소 분석기에서
는 IndonesianAnalyzer은 비교적 쉽게 복제됩니다. 그것은 다른 구성 요소 그냥StandardTokenizer
,
StandardFilter
,
LowercaseAnalyzer
및
StopFilter
을 포함합니다. 당신이 바로 아래로에 도착하면 즉, 단지 인도네시아 스톱 워드 세트와
StandardAnalyzer
, 그래서 당신은 단순히 형태소 분석기없이 Indonesiananalyzer를 만들 수 있습니다 : 당신이 문제에 실행 것인지 확실하지 않다
//If you are using the default stopword location defined in the IndonesianAnalyzer you could load them like this.
CharArraySet defaultStopSet = StopwordAnalyzerBaseloadStopwordSet(false, IndonesianAnalyzer.class, IndonesianAnalyzer.DEFAULT_STOPWORD_FILE, "#");
Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_43, defaultStopSet);
단지 판독기를 기본 중지 단어 파일로 StandardAnalyzer 생성자로 전달합니다.
'IndonesianAnalyzer'는 명백한 올바른 선택처럼 보입니다. 왜 만족스럽지 않은지 설명해 주시겠습니까? – femtoRgon
그것도 인도네시아 사전에 존재하지 않는 단어를 제공. "berenang"과 "pemenang"과 같이 "enang"은 둘 다 존재하지 않습니다 (google translate에 의해 확인 됨). –