0
클래스 WordnetSynonymParser 어떻게 databse wordnet에 동의어의지도를 가져올 수 있습니까? WordNetSynonimParser 클래스를 보았지만 WordNet의 동의어를 통해 쿼리를 확장하는 것이 내 용도에 적합한 지 여부는 알 수 없습니다.Lucene의 SynonimMap에서 wordnet 데이터베이스를 전달하는 방법은 무엇입니까?
클래스 WordnetSynonymParser 어떻게 databse wordnet에 동의어의지도를 가져올 수 있습니까? WordNetSynonimParser 클래스를 보았지만 WordNet의 동의어를 통해 쿼리를 확장하는 것이 내 용도에 적합한 지 여부는 알 수 없습니다.Lucene의 SynonimMap에서 wordnet 데이터베이스를 전달하는 방법은 무엇입니까?
WordnetSynonymParser
은 SynonymMap.Builder
입니다. 적절한 Reader
을 파서에 추가하면 build()
을 호출하여 SynonymMap
을 가져오고 SynonymnFilter
의 생성자로 전달됩니다. 이 필터는 Analyzer documentation의 예와 비슷하게 Analyzer
의 일부로 정의해야합니다.
뭔가 같은 :
Analyzer analyzer = new Analyzer() {
@Override
protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
Tokenizer source = new FooTokenizer(reader);
TokenStream filter = new FooFilter(source);
//etc...
WordnetSynonymParser parser = new WordnetSynonymParser(true, false, analyzer);
parser.add(wordnetReader);
filter = new SynonymFilter(filter, parser.build(), true);
return new TokenStreamComponents(source, filter);
}
};