2016-05-27 5 views
1

Supposons que j'ai une entrée jeans sur le site. L'utilisateur recherche pepejeans. J'utilise actuellement tf-idf et la similarité de cosinus pour retourner les résultats les plus significatifs, mais j'ai gardé l'utilisation de mémoire aussi petite que possible parce que le contenu est grand. Alors, que puis-je utiliser pour faire face à ce problème? Une solution consiste à conserver l'enregistrement avec espace et sans espace de tous les ngrams du contenu. Un autre exemple- Si l'utilisateur recherche nikeshoes. Maintenant nike est une marque mais nikeshoes n'est pas une marque. Si la requête de recherche était nike chaussures alors il aurait renvoyé nike comme marque. Le contenu ici fait référence aux noms de marque. J'essaie d'identifier le nom de marque de la requêteComment traiter les requêtes de recherche qui ont des espaces au mauvais endroit en faisant un moteur de recherche d'un site de commerce électronique?

+0

http://algorithms.tutorialhorizon.com/the-word-break-problem/ –

Répondre

0

La solution typique consiste à effectuer une réécriture de requête avant d'exécuter la requête. Pendant la réécriture de la requête, vous pouvez transformer la requête donnée par l'utilisateur en une forme qui fonctionne mieux pour votre système de récupération. Cela peut impliquer une tokenisation, un stemming, une vérification orthographique et d'autres types de réécritures.

Pour un aperçu, voir ce billet de blog https://hughewilliams.com/2012/03/19/query-rewriting-in-search-engines/