Javadocs for the Reverted Indexing library

This code implements a framework for performing reverted indexing operations, including creating the index and running queries against it.

See:
          Description

Packages
com.fxpal.search Specifies interfaces and classes that abstract search engine querying capability.
com.fxpal.search.examples Examples and utility class.
com.fxpal.search.reverted Specifies interfaces and classes that abstract the process of creating a reverted index.
com.fxpal.search.reverted.filters Specifies interfaces and classes that can be used to construct filter chains for generating basis queries to build a reverted index.
com.fxpal.search.reverted.lucene Specifies classes that implement the reverted indexing framework using Lucene.

 

This code implements a framework for performing reverted indexing operations, including creating the index and running queries against it. It also includes an implementation of this framework using the Lucene search engine.

This code is based on our research, published in the Proceedings of CIKM 2010. The abstract of that paper follows:

Traditional interactive information retrieval systems function by creating inverted lists, or term indexes. For every term in the vocabulary, a list is created that contains the documents in which that term occurs and its relative frequency within each document. Retrieval algorithms then use these term frequencies alongside other collection statistics to identify the matching documents for a query. In this paper, we turn the process around: instead of indexing documents, we index query result sets. First, queries are run through a chosen retrieval system. For each query, the resulting document IDs are treated as terms and the score or rank of the document is used as the frequency statistic. An index of documents retrieved by basis queries is created. We call this index a reverted index. Finally, with reverted indexes, standard retrieval algorithms can retrieve the matching queries (as results) for a set of documents (used as queries). These recovered queries can then be used to identify additional documents, or to aid the user in query formulation, selection, and feedback.

For complete details on the rationale behind reverted indexing, see our paper.

@inproceedings{Pickens:2010:RIF:1871437.1871571,
   author = {Pickens, Jeremy and Cooper, Matthew and Golovchinsky, Gene},
   title = {Reverted indexing for feedback and expansion},
   booktitle = {Proceedings of the 19th ACM international conference on Information and knowledge management},
   series = {CIKM '10},
   year = {2010},
   isbn = {978-1-4503-0099-5},
   location = {Toronto, ON, Canada},
   pages = {1049--1058},
   numpages = {10},
   url = {http://doi.acm.org/10.1145/1871437.1871571},
   doi = {http://doi.acm.org/10.1145/1871437.1871571},
   acmid = {1871571},
   publisher = {ACM},
   address = {New York, NY, USA},
   keywords = {query suggestion, relevance feedback, reverted indexing},
}

If you publish research results in the preparation of which you used our code, we would appreciate a citation to the above paper. You may also include a reference to where others can download it.

Author:
Gene Golovchinsky

(c) 2011 FX Palo Alto Laboratory, Inc.