Zing calcule les scores des documents à l’aide de trois composants
Le moteur de recherche Zing calcule les scores des documents en fonction de la fréquence, de l’ordre et de la pondération des termes recherchés dans le document.
Scores des documents
- Fréquence : fréquence à laquelle les termes de recherche apparaissent dans le document.
- Séquence : fréquence à laquelle les termes de recherche apparaissent dans le même ordre que la requête de recherche.
- Poids : pondération du champ source dans lequel les termes de recherche apparaissent.
Points de fréquence
Zing attribue un point chaque fois qu’un terme de recherche apparaît n’importe où dans le document. Par exemple, lors d’une recherche de serveur de base de données distribué, un document qui contient distribué trois fois, base de données cinq fois et serveur 17 fois aurait 25 points de fréquence.
Pour augmenter les scores des résultats de recherche des termes recherchés qui apparaissent plus fréquemment dans un document, mais moins fréquemment dans un ensemble de documents, vous pouvez Termes de recherche de score par fréquence de document inversée (IDF). Lorsque TF-IDF est activé, les scores de terme de recherche sont calculés en multipliant le score de fréquence de terme par le score de fréquence de document inverse. Étant donné que l’activation de TF-IDF augmente le poids des termes de recherche moins courants, les résultats de recherche de cette table sont plus susceptibles d’être pertinents. Par exemple, lors de la recherche d’un serveur de base de données distribué, le terme distribué peut recevoir un score plus élevé que serveur s’il apparaît fréquemment dans un document mais moins fréquemment dans l’ensemble du document.
Zing applique un multiplicateur aux points de fréquence en fonction de la valeur de l’attribut ts_weight pour le champ dans lequel le terme recherché s’affiche. Un champ avec un poids de notation de recherche de texte de 30 (ts_weight=30) ajouterait 30 points pour chaque inclusion d’un terme de recherche.
Points de séquence
Zing attribue plus de points à un document lorsqu’il contient les termes de recherche dans l’ordre dans lequel ils ont été saisis. Plus il y a de termes de recherche en séquence, plus le score devient exponentiellement élevé. Zing attribue des points de séquence sous la forme de 10^x, où x est le nombre de termes de recherche qui apparaissent dans l’ordre.
Dans l’exemple de recherche du serveur de base de données distribué , Zing attribue à un document 100 (10^2) points de séquence pour chaque fois qu’il inclut le serveur de base de données à chaîne à deux termes. De même, Zing attribue à un document 1000 (10^3) points de séquence chaque fois qu’il inclut le serveur de base de données distribué à chaîne à trois termes.
Zing applique un multiplicateur aux points de séquence en fonction de la valeur de l’attribut ts_weight pour le champ dans lequel la séquence apparaît. Les points de séquence utilisent le calcul (10^x * attribut de champ ts_weight ).
Poids des scores des champs
- kb_knowledge.number = 50
- kb_knowledge.short_description = 10
- kb_knowledge.meta = 10
- task.number = 50
- task.short_description = 10
Tous les autres champs ont un attribut par défaut ts_weight de 1. La valeur maximale de poids possible est de 255.