capreolus.searcher.anserini

Module Contents

Classes

AnseriniSearcherMixIn

MixIn for searchers that use Anserini’s SearchCollection script

PostprocessMixin

BM25

Anserini BM25. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

BM25Grid

Deprecated. BM25 with a grid search for k1 and b. Search is from 0.1 to bmax/k1max in 0.1 increments

BM25RM3

Anserini BM25 with RM3 expansion. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

BM25PostProcess

Anserini BM25. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

StaticBM25RM3Rob04Yang19

Tuned BM25+RM3 run used by Yang et al. in [1]. This should be used only with a benchmark using the same folds and queries.

BM25PRF

Anserini BM25 PRF. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

AxiomaticSemanticMatching

Anserini BM25 with Axiomatic query expansion. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

DirichletQL

Anserini QL with Dirichlet smoothing. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

QLJM

Anserini QL with Jelinek-Mercer smoothing. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

INL2

Anserini I(n)L2 scoring model. This searcher does not support list parameters.

SPL

Anserini SPL scoring model. This searcher does not support list parameters.

F2Exp

F2Exp scoring model. This searcher does not support list parameters.

F2Log

F2Log scoring model. This searcher does not support list parameters.

SDM

Anserini BM25 with the Sequential Dependency Model. This searcher supports list parameters for only k1 and b.

Functions

list2str(l, delimiter='-')

capreolus.searcher.anserini.logger[source]
capreolus.searcher.anserini.MAX_THREADS[source]
capreolus.searcher.anserini.list2str(l, delimiter='-')[source]
class capreolus.searcher.anserini.AnseriniSearcherMixIn[source]

MixIn for searchers that use Anserini’s SearchCollection script

class capreolus.searcher.anserini.PostprocessMixin[source]
filter(self, run_dir, docs_to_remove=None, docs_to_keep=None, topn=None)[source]
dedup(self, run_dir, topn=None)[source]
class capreolus.searcher.anserini.BM25(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini BM25. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = BM25[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.BM25Grid(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Deprecated. BM25 with a grid search for k1 and b. Search is from 0.1 to bmax/k1max in 0.1 increments

module_name = BM25Grid[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.BM25RM3(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini BM25 with RM3 expansion. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = BM25RM3[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.BM25PostProcess(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.anserini.BM25, capreolus.searcher.anserini.PostprocessMixin

Anserini BM25. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = BM25Postprocess[source]
config_spec[source]
query_from_file(self, topicsfn, output_path, docs_to_remove=None)[source]
class capreolus.searcher.anserini.StaticBM25RM3Rob04Yang19(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher

Tuned BM25+RM3 run used by Yang et al. in [1]. This should be used only with a benchmark using the same folds and queries.

[1] Wei Yang, Kuang Lu, Peilin Yang, and Jimmy Lin. Critically Examining the “Neural Hype”: Weak Baselines and the Additivity of Effectiveness Gains from Neural Ranking Models. SIGIR 2019.

module_name = bm25staticrob04yang19[source]
abstract query(self, *args, **kwargs)[source]

search document based on given query, using parameters in config as default

class capreolus.searcher.anserini.BM25PRF(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini BM25 PRF. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = BM25PRF[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.AxiomaticSemanticMatching(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini BM25 with Axiomatic query expansion. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = axiomatic[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.DirichletQL(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini QL with Dirichlet smoothing. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = DirichletQL[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.QLJM(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini QL with Jelinek-Mercer smoothing. This searcher’s parameters can also be specified as lists indicating parameters to grid search (e.g., "0.4,0.6,0.8,1.0" or "0.4..1,0.2").

module_name = QLJM[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.INL2(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini I(n)L2 scoring model. This searcher does not support list parameters.

module_name = INL2[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.SPL(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini SPL scoring model. This searcher does not support list parameters.

module_name = SPL[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.F2Exp(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

F2Exp scoring model. This searcher does not support list parameters.

module_name = F2Exp[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.F2Log(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

F2Log scoring model. This searcher does not support list parameters.

module_name = F2Log[source]
dependencies[source]
config_spec[source]
class capreolus.searcher.anserini.SDM(config=None, provide=None, share_dependency_objects=False, build=True)[source]

Bases: capreolus.searcher.Searcher, capreolus.searcher.anserini.AnseriniSearcherMixIn

Anserini BM25 with the Sequential Dependency Model. This searcher supports list parameters for only k1 and b.

module_name = SDM[source]
dependencies[source]
config_spec[source]