本文整理汇总了Java中org.apache.lucene.search.similarities.IBSimilarity类的典型用法代码示例。如果您正苦于以下问题:Java IBSimilarity类的具体用法?Java IBSimilarity怎么用?Java IBSimilarity使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
IBSimilarity类属于org.apache.lucene.search.similarities包,在下文中一共展示了IBSimilarity类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: IBSimilarityProvider
import org.apache.lucene.search.similarities.IBSimilarity; //导入依赖的package包/类
public IBSimilarityProvider(String name, Settings settings, Settings indexSettings) {
super(name);
Distribution distribution = parseDistribution(settings);
Lambda lambda = parseLambda(settings);
Normalization normalization = parseNormalization(settings);
this.similarity = new IBSimilarity(distribution, lambda, normalization);
}
示例2: setupIndex
import org.apache.lucene.search.similarities.IBSimilarity; //导入依赖的package包/类
@Before
public void setupIndex() throws IOException {
dirUnderTest = newDirectory();
List<Similarity> sims = Arrays.asList(
new ClassicSimilarity(),
new SweetSpotSimilarity(), // extends Classic
new BM25Similarity(),
new LMDirichletSimilarity(),
new BooleanSimilarity(),
new LMJelinekMercerSimilarity(0.2F),
new AxiomaticF3LOG(0.5F, 10),
new DFISimilarity(new IndependenceChiSquared()),
new DFRSimilarity(new BasicModelBE(), new AfterEffectB(), new NormalizationH1()),
new IBSimilarity(new DistributionLL(), new LambdaDF(), new NormalizationH3())
);
similarity = sims.get(random().nextInt(sims.size()));
indexWriterUnderTest = new RandomIndexWriter(random(), dirUnderTest, newIndexWriterConfig().setSimilarity(similarity));
for (int i = 0; i < docs.length; i++) {
Document doc = new Document();
doc.add(newStringField("id", "" + i, Field.Store.YES));
doc.add(newField("field", docs[i], Store.YES));
indexWriterUnderTest.addDocument(doc);
}
indexWriterUnderTest.commit();
indexWriterUnderTest.forceMerge(1);
indexWriterUnderTest.flush();
indexReaderUnderTest = indexWriterUnderTest.getReader();
searcherUnderTest = newSearcher(indexReaderUnderTest);
searcherUnderTest.setSimilarity(similarity);
}
示例3: test
import org.apache.lucene.search.similarities.IBSimilarity; //导入依赖的package包/类
/** spl/df/h2 with default parameters */
public void test() throws Exception {
Similarity sim = getSimilarity("text");
assertEquals(IBSimilarity.class, sim.getClass());
IBSimilarity ib = (IBSimilarity) sim;
assertEquals(DistributionSPL.class, ib.getDistribution().getClass());
assertEquals(LambdaDF.class, ib.getLambda().getClass());
assertEquals(NormalizationH2.class, ib.getNormalization().getClass());
}
示例4: testParameters
import org.apache.lucene.search.similarities.IBSimilarity; //导入依赖的package包/类
/** ll/ttf/h3 with parameterized normalization */
public void testParameters() throws Exception {
Similarity sim = getSimilarity("text_params");
assertEquals(IBSimilarity.class, sim.getClass());
IBSimilarity ib = (IBSimilarity) sim;
assertEquals(DistributionLL.class, ib.getDistribution().getClass());
assertEquals(LambdaTTF.class, ib.getLambda().getClass());
assertEquals(NormalizationH3.class, ib.getNormalization().getClass());
NormalizationH3 norm = (NormalizationH3) ib.getNormalization();
assertEquals(900f, norm.getMu(), 0.01f);
}
示例5: getSimilarity
import org.apache.lucene.search.similarities.IBSimilarity; //导入依赖的package包/类
@Override
public Similarity getSimilarity() {
IBSimilarity sim = new IBSimilarity(distribution, lambda, normalization);
sim.setDiscountOverlaps(discountOverlaps);
return sim;
}