public MoreLikeThis(IndexReader ir, TFIDFSimilarity sim) { this.ir = ir; this.Similarity = sim; // LUCENENET specific: Set Defaults StopWords = DEFAULT_STOP_WORDS; MinTermFreq = DEFAULT_MIN_TERM_FREQ; MinDocFreq = DEFAULT_MIN_DOC_FREQ; MaxDocFreq = DEFAULT_MAX_DOC_FREQ; ApplyBoost = DEFAULT_BOOST; FieldNames = DEFAULT_FIELD_NAMES; MaxNumTokensParsed = DEFAULT_MAX_NUM_TOKENS_PARSED; MinWordLen = DEFAULT_MIN_WORD_LENGTH; MaxWordLen = DEFAULT_MAX_WORD_LENGTH; MaxQueryTerms = DEFAULT_MAX_QUERY_TERMS; }
public override FunctionValues GetValues(IDictionary context, AtomicReaderContext readerContext) { var searcher = (IndexSearcher)context["searcher"]; TFIDFSimilarity similarity = IDFValueSource.AsTFIDF(searcher.Similarity, m_field); if (similarity == null) { throw new NotSupportedException("requires a TFIDFSimilarity (such as DefaultSimilarity)"); } NumericDocValues norms = readerContext.AtomicReader.GetNormValues(m_field); if (norms == null) { return(new ConstDoubleDocValues(0.0, this)); } return(new SingleDocValuesAnonymousInnerClassHelper(this, this, similarity, norms)); }
public void TestHyperbolicSweetSpot() { SweetSpotSimilarity ss = new HyperbolicSweetSpotSimilarityHelper(); ss.SetHyperbolicTfFactors(3.3f, 7.7f, Math.E, 5.0f); TFIDFSimilarity s = ss; for (int i = 1; i <= 1000; i++) { assertTrue("MIN tf: i=" + i + " : s=" + s.Tf(i), 3.3f <= s.Tf(i)); assertTrue("MAX tf: i=" + i + " : s=" + s.Tf(i), s.Tf(i) <= 7.7f); } assertEquals("MID tf", 3.3f + (7.7f - 3.3f) / 2.0f, s.Tf(5), 0.00001f); // stupidity assertEquals("tf zero", 0.0f, s.Tf(0), 0.0f); }
public SingleDocValuesAnonymousInnerClassHelper(NormValueSource outerInstance, NormValueSource @this, TFIDFSimilarity similarity, NumericDocValues norms) : base(@this) { this.outerInstance = outerInstance; this.similarity = similarity; this.norms = norms; }
public SingleDocValuesAnonymousInnerClassHelper(TFValueSource outerInstance, TFValueSource @this, Terms terms, TFIDFSimilarity similarity) : base(@this) { this.outerInstance = outerInstance; this.terms = terms; this.similarity = similarity; lastDocRequested = -1; Reset(); }
public SingleDocValuesAnonymousClass(NormValueSource @this, TFIDFSimilarity similarity, NumericDocValues norms) : base(@this) { this.similarity = similarity; this.norms = norms; }