Yandex est un moteur de recherche puissant en termes d'intelligence artificielle et d'apprentissage machine. Il tente encore de le démontrer en annonçant Korolev, un nouvel algorithme de compréhension sémantique. Avec Korolev, Yandex va pouvoir mieux analyser les vecteurs sémantiques qui relient des requêtes de recherche et des entités présentes dans l'index du moteur de recherche.
Comment fonctionne la recherche sémantique sur Yandex ?
À l'heure d'écrire ces lignes, Yandex nous a expliqué comment fonctionne sa méthode de recherche sémantique et c'est plutôt intéressant. Plusieurs algorithmes entrent en compte au fur et à mesure du travail.
L'algorithme Matrixnet (peut-être remplacé par CatBoost) est un équivalent du RankBrain de Google, il est introduit dans l'algorithme de classement pour faire du machine learning et organiser les résultats le plus logiquement possible. Toutefois, il ne peut se suffire à lui-même, il nécessite un travail préalable d'analyse sémantique pour optimiser le chargement des résultats et les relations entre vecteurs sémantiques.
Yandex a donc besoin au préalable de listes de pages "pré-appropriées" qui répondent aux mots présents dans les requêtes. Ici, c'est l'algorithme Palekh qui entre en jeu actuellement. Introduit en 2016, l'algorithme utilise des réseaux de neurones pour mieux comprendre les résultats. Toutefois, l'algorithme ne fait que convertir en direct les requêtes de recherche et les titres de pages en nombre (valeurs des vecteurs sémantiques). Ensuite, Matrixnet n'a donc plus qu'à comparer les entités pour offrir un classement approprié.
Quel est l'intérêt de l'algorithme Korolev ?
Korolev est un Palekh largement boosté et amélioré. Première différence, le nouvel algorithme analyse les pages entièrement, et pas seulement les titres. Par conséquent, tous les contenus sont transformés en vecteurs sémantiques selon ce que reconnaît le système (des expressions, des formes...). La problématique de Korolev est le nombre de ressources nécessaires pour transformer la totalité des contenus en vecteur sémantique. En effet, les réseaux neuronaux ainsi que l'apprentissage machine impliquent une certaine latence pour comprendre toutes les entités d'un texte. En contrepartie, Palekh est bien moins puissant mais plus rapide puisqu'il n'analyse que les titres en profondeur.
L'analyse sémantique constitue une des premières étapes de la restitution des résultats. En effet, il convient d'abord d'analyser les mots, expressions et vecteurs pour savoir quelles pages peuvent prétendre à l'affichage final dans les SERP. Palekh agit en direct et analyse en moyenne seulement 150 ressources afin de ne pas utiliser trop de ressources. Cela signifie que les algorithmes de classement utilisent Palekh que pour une infime quantité de pages et de requêtes, comme dans les débuts de Google RankBrain (seulement 15% des requêtes à l'origine, mais 100% maintenant).
L'algorithme Korolev collecte des statistiques comportementales en fonction de ce que les utilisateurs ont recherché dans une page (requête d'origine), le temps passé sur la page, le taux de rebond, etc. Ainsi, Korolev peut déterminer si une page répond mieux à une requête qu'une autre. Par exemple, si un utilisateur passe plusieurs minutes sur une page après avoir tapé une requête en particulier, il semble que la page répondre à la demande.
La force de Korolev est donc de convertir la totalité des contenus mais aussi des comportements humains relatifs aux pages web. Et l'algorithme le fait pour plus de 200000 ressources, bien loin des 150 documents analysés par Palekh. Cependant, comme l'usage des réseaux neuronaux est encore consommateur en ressources, Korolev s'applique en amont des recherches, lors de l'indexation. La comparaison des vecteurs sémantiques se fait donc à partir d'entités déjà connues, et non plus en temps réel. D'où l'importance de bien comprendre les requêtes et de connaître un maximum de connexions sémantiques à l'avance.
Conclusion sur la recherche sémantique
Après les conversions en vecteur, Matrixnet (ou Matriksnet) peut alors restituer les résultats dans l'ordre le plus approprié. Toutefois, Yandex a besoin aussi des retours des utilisateurs pour vérifier la qualité et la pertinence des résultats. Yandex possède déjà des évaluateurs internes mais a besoin des utilisateurs pour accélérer le processus d'analyse des requêtes. Ainsi, nous pouvons tous être évaluateurs Yandex afin d'aider les algorithmes à progresser dans la recherche sémantique. Yandex a donc lancé Toloka, un service qui rémunère les usagers en fonction des évaluations proposées dans les recherches.