All Projects β†’ SeaseLtd β†’ Rated Ranking Evaluator

SeaseLtd / Rated Ranking Evaluator

Licence: apache-2.0
Search Quality Evaluation Tool for Apache Solr & Elasticsearch search-based infrastructures

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Rated Ranking Evaluator

Haystack
πŸ” Haystack is an open source NLP framework that leverages Transformer models. It enables developers to implement production-ready neural search, question answering, semantic document search and summarization for a wide range of applications.
Stars: ✭ 3,409 (+2444.03%)
Mutual labels:  search, search-engine, information-retrieval, elasticsearch
Toshi
A full-text search engine in rust
Stars: ✭ 3,373 (+2417.16%)
Mutual labels:  search, search-engine, elasticsearch
Xapiand
Xapiand: A RESTful Search Engine
Stars: ✭ 347 (+158.96%)
Mutual labels:  search, search-engine, elasticsearch
Lucene Solr
Apache Lucene and Solr open-source search software
Stars: ✭ 4,217 (+3047.01%)
Mutual labels:  search, search-engine, information-retrieval
Rusticsearch
Lightweight Elasticsearch compatible search server.
Stars: ✭ 171 (+27.61%)
Mutual labels:  search, search-engine, elasticsearch
Pisa
PISA: Performant Indexes and Search for Academia
Stars: ✭ 489 (+264.93%)
Mutual labels:  search, search-engine, information-retrieval
Sparkler
Spark-Crawler: Apache Nutch-like crawler that runs on Apache Spark.
Stars: ✭ 362 (+170.15%)
Mutual labels:  search, search-engine, information-retrieval
Flexsearch
Next-Generation full text search library for Browser and Node.js
Stars: ✭ 8,108 (+5950.75%)
Mutual labels:  search, search-engine, elasticsearch
Resin
Hardware-accelerated vector-based search engine. Available as a HTTP service or as an embedded library.
Stars: ✭ 529 (+294.78%)
Mutual labels:  search, search-engine, information-retrieval
Fess
Fess is very powerful and easily deployable Enterprise Search Server.
Stars: ✭ 561 (+318.66%)
Mutual labels:  search, search-engine, elasticsearch
Elasticsuite
Smile ElasticSuite - Magento 2 merchandising and search engine built on ElasticSearch
Stars: ✭ 647 (+382.84%)
Mutual labels:  search, search-engine, elasticsearch
Vectorsinsearch
Dice.com repo to accompany the dice.com 'Vectors in Search' talk by Simon Hughes, from the Activate 2018 search conference, and the 'Searching with Vectors' talk from Haystack 2019 (US). Builds upon my conceptual search and semantic search work from 2015
Stars: ✭ 71 (-47.01%)
Mutual labels:  search-engine, information-retrieval, elasticsearch
Thesaurus Of Job Titles
Open Source Thesaurus of Job Titles in US English
Stars: ✭ 77 (-42.54%)
Mutual labels:  search-engine, elasticsearch
Lieu
community search engine
Stars: ✭ 76 (-43.28%)
Mutual labels:  search, search-engine
Search Ui
Search UI. Libraries for the fast development of modern, engaging search experiences.
Stars: ✭ 1,294 (+865.67%)
Mutual labels:  search, elasticsearch
Simpleaudioindexer
Searching for the occurrence seconds of words/phrases or arbitrary regex patterns within audio files
Stars: ✭ 100 (-25.37%)
Mutual labels:  search, search-engine
Searx
Privacy-respecting metasearch engine
Stars: ✭ 10,074 (+7417.91%)
Mutual labels:  search, search-engine
Algoliasearch Client Android
Algolia Search API Client for Android
Stars: ✭ 92 (-31.34%)
Mutual labels:  search, search-engine
Search
PHP search-systems made possible
Stars: ✭ 101 (-24.63%)
Mutual labels:  search, elasticsearch
Ik Analyzer
ζ”―ζŒLucene5/6/7/8+η‰ˆζœ¬, ι•ΏζœŸη»΄ζŠ€γ€‚
Stars: ✭ 112 (-16.42%)
Mutual labels:  search-engine, elasticsearch
RRE

Rated Ranking Evaluator

The Rated Ranking Evaluator (RRE) is a search quality evaluation tool which, as the name suggests, evaluates the quality of results coming from a search infrastructure.

For a detailed description of the project, please visit

At the moment Apache Solr and Elasticsearch are supported (see the documentation for supported versions).

The following picture illustrates the RRE ecosystem:

RRE Ecosystem

As you can see, there are a lot modules already in place and planned (those with the dashed border)

  • a core, that is the central library which is in charge to produce the evaluation results
  • a search-platform API: for abstracting (and binding) the underlying search platform
  • a set of search-platform bindings: as said above, at the moment we have two available bindings (Apache Solr and Elasticsearch)
  • an Apache Maven plugin for each available search platform binding: which allows to inject RRE into a Maven-based build system
  • an Apache Maven reporting plugin: for producing evaluation reports in a human-readable format (e.g. PDF, excel), useful for targeting non-technical users
  • an RRE Server: a simple web-based control panel where evaluation results are updated in realtime after each build cycle.

RRE Console

The whole system has been built as a framework where metrics can be configured/activated and even plugged-in (of course, this option requires some development) The metrics that are part of the current RRE release are:

  • Precision: the fraction of retrieved documents that are relevant.
  • Recall: the fraction of relevant documents that are retrieved.
  • Precision at 1: this metric indicates if the first top result in the list is relevant or not.
  • Precision at 2: same as above but it consider the first two results.
  • Precision at 3: same as above but it consider the first three results.
  • Precision at 10: this metric measures the number of relevant results in the top 10 search results.
  • Reciprocal Rank: it is the multiplicative inverse of the rank of the first "correct" answer: 1 for first place, 1/2 for second place, 1/3 for third and so on.
  • Expected Reciprocal Rank (ERR) An extension of Reciprocal Rank with graded relevance, measures the expected reciprocal length of time that the user will take to find a relevant document.
  • Average Precision: the area under the precision-recall curve.
  • NDCG at 10: Normalized Discounted Cumulative Gain at 10; see: https://en.wikipedia.org/w/index.php?title=Discounted_cumulative_gain&section=4#Normalized_DCG
  • F-Measure: it measures the effectiveness of retrieval with respect to a user who attaches Ξ² times as much importance to recall as precision. RRE provides the three most popular F-Measure instances: F0.5, F1 and F2

On top of those "leaf" metrics, which are computed at query level, RRE provides a rich nested data model, where the same metric can be aggregated at several levels. For example, queries are grouped in Query Groups and Query Groups are grouped in Topics. That means the same metrics listed above are also available at upper levels using the arithmetic mean as aggregation criteria. As a consequence of that, RRE provides also the following metrics:

  • Mean Average Precision: the mean of the average precisions computed at query level.
  • Mean Reciprocal Rank: the average of the reciprocal ranks computed at query level.
  • all other metrics listed above aggregated by their arithmetic mean.

One the most important things you can see in the screenshot above is that RRE is able to keep track (and to make comparisons) between several versions of the system under evaluation.

It encourages an incremental/iterative/immutable approach when developing and evolving a search system: assuming you're starting from version 1.0, when you apply some relevant change to your configuration, instead of changing that version, is better to clone it and apply the changes to the new version (let's call it 1.1).

In this way, when the system build happens, RRE will compute everything explained above (i.e. the metrics) for each available version.

In addition, it will provide the delta/trend between subsequent versions, so you can immediately get the overall direction where the system is going, in terms of relevance improvements.

delta

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].