uk.ac.gla.dcs.renaissance.mg4j.scorers
Class HiemstraLMScorer
java.lang.Object
it.unimi.dsi.fastutil.ints.AbstractIntIterator
it.unimi.dsi.mg4j.search.score.AbstractScorer
it.unimi.dsi.mg4j.search.score.AbstractIndexScorer
it.unimi.dsi.mg4j.search.score.AbstractWeightedScorer
uk.ac.gla.dcs.renaissance.mg4j.scorers.HiemstraLMScorer
- All Implemented Interfaces:
- it.unimi.dsi.fastutil.ints.IntIterator, it.unimi.dsi.lang.FlyweightPrototype<it.unimi.dsi.mg4j.search.score.Scorer>, it.unimi.dsi.mg4j.search.score.DelegatingScorer, it.unimi.dsi.mg4j.search.score.Scorer, Iterator<Integer>
public class HiemstraLMScorer
- extends it.unimi.dsi.mg4j.search.score.AbstractWeightedScorer
- implements it.unimi.dsi.mg4j.search.score.DelegatingScorer
A scorer implementing the Hiemstra Language Modelling Approach. See Hiemstra,
Djord. Using Language Models for Information Retrieval. PhD Thesis, 2001,
chapters 4+5.
Currently it only supports the variant with document frequencies and document
length normalisation.
- Author:
- Ingo Frommholz
| Fields inherited from class it.unimi.dsi.mg4j.search.score.AbstractWeightedScorer |
currWeight, index2Weight |
| Fields inherited from class it.unimi.dsi.mg4j.search.score.AbstractIndexScorer |
currIndex, n |
| Fields inherited from class it.unimi.dsi.mg4j.search.score.AbstractScorer |
documentIterator |
| Methods inherited from class it.unimi.dsi.mg4j.search.score.AbstractWeightedScorer |
getWeights, setWeights |
| Methods inherited from class it.unimi.dsi.mg4j.search.score.AbstractScorer |
hasNext, nextDocument, nextInt, skip |
| Methods inherited from class it.unimi.dsi.fastutil.ints.AbstractIntIterator |
next, remove |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface it.unimi.dsi.mg4j.search.score.Scorer |
getWeights, nextDocument, nextInt, setWeights |
| Methods inherited from interface it.unimi.dsi.fastutil.ints.IntIterator |
skip |
HiemstraLMScorer
public HiemstraLMScorer(double lambda,
boolean collFreqBackgroundModel,
IndexConfiguration[] indexConfs)
- Constructor. Besides setting the lambda parameter, there is also the
choice if the background model P(t_i|M_c) should be based on the
collection frequency (number of times a term appears in the collection)
or document frequency (number of documents a term appears in).
NOTE: Collection frequency is not supported yet!
- Parameters:
lambda - the lambda value to usecollFreqBackgroundModel - true if the collection frequency should be used to
calculate the background model P(t_i|M_d), false if
the document frequency should be used for this model.indexConfs - the index configurations. This must go along with the
indexes we get from the term iterator!
HiemstraLMScorer
public HiemstraLMScorer(IndexConfiguration[] indexConfs)
- Constructor. Uses default lambda value and the document frequency for the
background model P(t_i|M_d)
- Parameters:
indexConfs - the index configurations. This must go along with the
indexes we get from the term iterator!
HiemstraLMScorer
public HiemstraLMScorer()
- Constructor. Uses default lambda value and the document frequency for the
background model P(t_i|M_d). You MUST add an indexConfiguration later
with
setIndexConfiguration(uk.ac.gla.dcs.renaissance.iqir.config.IndexConfiguration[])!
setIndexConfiguration
public void setIndexConfiguration(IndexConfiguration[] indexConfs)
- This may be our only chance to set the index configurations
- Parameters:
indexConfs - the index configurations. This must go along with the indexes
we get from the term iterator!
score
public double score()
throws IOException
- Specified by:
score in interface it.unimi.dsi.mg4j.search.score.Scorer- Overrides:
score in class it.unimi.dsi.mg4j.search.score.AbstractWeightedScorer
- Throws:
IOException
score
public double score(it.unimi.dsi.mg4j.index.Index index)
throws IOException
- Specified by:
score in interface it.unimi.dsi.mg4j.search.score.Scorer
- Throws:
IOException
usesIntervals
public boolean usesIntervals()
- Specified by:
usesIntervals in interface it.unimi.dsi.mg4j.search.score.Scorer
copy
public it.unimi.dsi.mg4j.search.score.Scorer copy()
- Specified by:
copy in interface it.unimi.dsi.lang.FlyweightPrototype<it.unimi.dsi.mg4j.search.score.Scorer>- Specified by:
copy in interface it.unimi.dsi.mg4j.search.score.Scorer
wrap
public void wrap(it.unimi.dsi.mg4j.search.DocumentIterator d)
throws IOException
- Specified by:
wrap in interface it.unimi.dsi.mg4j.search.score.Scorer- Overrides:
wrap in class it.unimi.dsi.mg4j.search.score.AbstractWeightedScorer
- Throws:
IOException
Copyright © 2011. All Rights Reserved.