Tuesday 30th June, 2020
What is common between Solr & Elasticsearch?
When it comes to search for relevance similarity, Lucene offers a plethora of options for configuring similarity and in the same connection, Solr and Elasticsearch hold the same qualities. The base of relevancy scores like document-query similarity is accomplished by this relevancy. The key factors of relevancy account are field boosts, re-ranking, and function scoring. BM25 or the default similarity can be considered as the good beginning, however, the user may have to tweak it to ensure easy-usability. Solr consulting experts have diverse guidelines for answering a query with the content field of a register. In certain cases, term frequency and field length may vary. when one is using Apache Solr and Elasticsearch, they should know comprehensive details, differences and similarities of two open-source search engines to boost their usability and productivity.
Similar Options in Solr & Elasticsearch-
Both Solr and Elasticsearch offer the users similar programming of class/framework and influence-score calculating options. Some of the similarity classes and their options are-
Here is the breaking down of these similar options and their impact on the score-
Term Frequency * Inverse Document Frequency (TF*IDF)
Apart from being a permanent element of Lucene, TF*IDF was a default element before BM25 replaced it. This option calculates score by multiplying Term Frequency(TF) and Inverse Document Frequency(IDF). The frequency of score is determined by the number of term appearances and the system of Lucene studies the square root of the TF. On the other hand, Document Frequency implies the ratio between term-filled document numbers and the total number of index documents. In the TF*IDF, Lucene further standardizes scores by document length. At Solr support, longer documents tend to include more terms and the pure filed chance gets it a lower score.
BM25 – the New Default Search Ranking
BM is the short-form of Best Matching, and Okapi BM25 can be considered as the upgraded TF-IDF. Introduction of term frequency saturation is the chief differentiation and there are two configurable values- k1 and b. A higher k1 indicates a larger ceiling and it executes normalization of document length more vigorously to make the longer documents more penalized. As far as the document length is concerned, there are mainly two variations-
- Variation from Independence models
- Dirichlet and Jelinek-Mercer Language Models
- Standard TF-IDF and the Upgraded default BM25
- Information-based models
- Divergence from Randomness framework
The computed logarithm of IDF (of TF-IDF) multiplies the final score and aggressively decreases the average for higher-frequency terms. Want to take advantage of BM25? contact the Solr consulting service.
Divergence from Randomness (DFR) Framework
Divergence from Randomness is a framework that incorporates normalization techniques along with multiple models. They all yield the same policy of random term occurrence in the document and certain distribution rules. The higher score is manipulated by the number of documents that diverges from the configured distribution that occurs randomly. Solr support experts normalize this score according to the document length and in a configurable process. The three DFR configuration elements are- The base model (specifies the“random” distribution), An after-effect (normalizes model-based score according to term frequency) and The term frequency (used for normalizing document length by after-effect).
Divergence from Independence (DFI)
The Divergence from Independence model originates from an ingenious theory that in case of pure chance when the term occurs in a document, the variable of term frequencies and that of document IDs are statistically individualistic. In certain circumstances of term occurrence more than expected times, the assumption can be invalidated with a certain probability from independence. The higher score is produced by a higher probability and it signifies the term is extra dependent on the document, but if the contrary case of less occurrence befalls, the system counts the score as since negative scores are not accepted by Lucene.
Information-Based (IB) Models
Despite different philosophy, Information-Based models of both Solr & Elasticsearch in their functional aspects with DFR. The implementation of these models are very similar and the documented of Lucene frequently mentions that DFR and IB have high potential to get merged. Both DFR and IB feature varying base term frequency distributions such as smoothed power law (SPL) and log-logistic (LL). This similarity signifies that the curve will be smoother with natural logarithm and power-law than with log-logistic. Solr consulting operators believe that, apart from distribution, a lambda Retrieval function normalized term frequency by averaging the document information produced by the query terms. During Probability distributions, LL (log-logistic) efficiently measures the score as the natural logarithm of Lambda.
Language Models (LM)
Language models rotate across the concept of decreasing scores based on hidden information (i.e. document length). In this similarity framework, two language models (Dirichlet and Jelinek-Mercer) executed. The Dirichlet model performs Bayesian smoothing utilising Dirichlet priors and their function follows the term frequency distribution in the H3 normalization of DFR/IB that has a configurable parameter (mu) for controlling scores and smoothing values. On the other hand, the Jelinek-Mercer Smoothing method apportions the document model by the whole index figures. It also uses a 0..1 range of lambda to control the weight of document models that get multiplied by 1-lambda. The score increases with search term proportion by Dirichlet smoothing so does the lambda of Jelinek-Mercer.
- Instead of direct score-multiplication of document length, the ratio between the average length of all documents in the index and the length of the particular document gets generated.
- B parameter normalizes the length and the length matter is extended from default length to 0.75 by Higher b.