2016-05-27 8 views
1

Angenommen, ich habe einen Eintrag Pepe Jeans in der Website. Der Benutzer sucht nach Pepejeans. Ich verwende derzeit tf-idf und Cosinus-Ähnlichkeit, um die wichtigsten Ergebnisse zurückzugeben, aber ich habe die Speichernutzung so klein wie möglich gehalten, weil der Inhalt groß ist. Also, was kann ich verwenden, um mit diesem Problem umzugehen? Eine Lösung besteht darin, den Datensatz mit Platz und ohne Leerzeichen aller Inhalte des Inhalts zu speichern.Wie man mit Suchanfragen, die Räume an der falschen Stelle haben, beim Bilden einer Suchmaschine einer E-Commerce-Website beschäftigt?

Ein anderes Beispiel - Wenn der Benutzer nach Nikeshoes sucht. Jetzt ist Nike eine Marke, aber Nikeshoes ist keine Marke. Es war die Suchanfrage war Nike Schuhe, dann wäre es zurückgekommen Nike als Marke. Der Inhalt bezieht sich hier auf Markennamen. Ich versuche, den Markennamen aus der Abfrage zu identifizieren

+0

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

Antwort

0

Die typische Lösung besteht darin, eine Abfrage neu zu schreiben, bevor Sie die Abfrage ausführen. Während des Umschreibens der Abfrage können Sie die Abfrage, die der Benutzer gab, in ein Formular umwandeln, das besser für Ihr Retrieval-System funktioniert. Dies kann Tokenisierung, Stemming, Rechtschreibprüfung und andere Arten von Umschreibungen beinhalten.

Eine Übersicht finden Sie in diesem Blog-Post https://hughewilliams.com/2012/03/19/query-rewriting-in-search-engines/