类org.apache.lucene.search.similarities.DFISimilarity源码实例Demo

下面列出了怎么用org.apache.lucene.search.similarities.DFISimilarity的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: Elasticsearch   文件: DFISimilarityProvider.java
@Inject
public DFISimilarityProvider(@Assisted String name, @Assisted Settings settings) {
    super(name);
    boolean discountOverlaps = settings.getAsBoolean("discount_overlaps", true);
    Independence measure = parseIndependence(settings);
    this.similarity = new DFISimilarity(measure);
    this.similarity.setDiscountOverlaps(discountOverlaps);
}
 
源代码2 项目: lucene-solr   文件: TestDFISimilarityFactory.java
/**
 * dfi with no parameters
 */
public void test() throws Exception {
  Similarity sim = getSimilarity("text");
  assertEquals(DFISimilarity.class, sim.getClass());
  DFISimilarity dfi = (DFISimilarity) sim;
  assertTrue(dfi.getDiscountOverlaps());
  assertTrue(dfi.getIndependence() instanceof IndependenceChiSquared);
}
 
源代码3 项目: lucene-solr   文件: TestDFISimilarityFactory.java
/**
 * dfi with discountOverlaps parameter set to false
 */
public void testParameters() throws Exception {
  Similarity sim = getSimilarity("text_params");
  assertEquals(DFISimilarity.class, sim.getClass());
  DFISimilarity dfr = (DFISimilarity) sim;
  assertFalse(dfr.getDiscountOverlaps());
}
 
@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 BasicModelG(), 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);
}
 
源代码5 项目: lucene-solr   文件: DFISimilarityFactory.java
@Override
public Similarity getSimilarity() {
  DFISimilarity sim = new DFISimilarity(independenceMeasure);
  sim.setDiscountOverlaps(discountOverlaps);
  return sim;
}
 
 类所在包
 同包方法