2009-03-23 7 views
7

Zum Beispiel, wie entscheidet StackOverflow, dass andere Fragen ähnlich sind?Durchsuchen eines Datenspeichers nach verwandten Themen nach Schlüsselwort

Als ich oben die Frage eintippte und dann zu dieser Memo-Kontrolle überging, sah ich eine Liste der vorhandenen Fragen, die die gleiche sein könnten wie die, die ich stelle.

Welche Technik wird verwendet, um ähnliche Fragen zu finden?

+0

Dies ist eine falsch formatierte Frage, aber keine Uservoice-Frage. Der Benutzer fragt nach dem Algorithmus, der mit der Programmierung zusammenhängt. – DevinB

+0

Dies ist NICHT Benutzerstimme. Ich stelle eine programmierbezogene Frage zu einem Algorithmus, weil ich etwas Ähnliches in einer WinForms-Anwendung implementieren muss. Einige Leute geben ihnen ein wenig Macht und sie werden verrückt! –

+0

mögliches Duplikat von [Stackoverflow's Verwandte Fragen] (http://stackoverflow.com/questions/393505/stackoverflows-related-questions) –

Antwort

3

bekam ich eine E-Mail von [email protected] am 20. März, das erwähnt, wie es funktioniert:

die „eine Frage stellen“ Suche ist ausschließlich auf Titel und wird nicht Spiel etwas im Körper . Es ist ein Geheimnis für mich, warum Leute denken, es ist besser.

Der letzte Satz bezieht sich auf die Suchleiste, die ich gefunden habe, ist weniger nützlich, wenn ich versuche, eine bestimmte Frage zu finden, habe ich schon gesehen.

1

Ich denke, es ist einfach altes Wort passend. Ich möchte jedoch hinzufügen, dass diese Funktion nicht so gut funktioniert, wie ich es möchte. Es ist viel besser, die Google-Suche mit dem Präfix site: stackoverflow.com durchzuführen, als sich auf SO zu verlassen, um die relevanten Vorschläge zu liefern.

1

Das passende Programm würde einen Index aller Fragen speichern. Wenn Sie eine Frage stellen, werden alle Schlüsselwörter in Ihrer Frage mit dem Index verglichen. Dies ist vergleichbar mit der Google-Suche. Lucene Open-Source-Suche kann (und mit hoher Wahrscheinlichkeit wurde) dafür verwendet werden. Da die Ergebnisse nicht ganz genau sind, gehe ich davon aus, dass sie nur die Überschriften der Fragen als Annäherung indizieren.

Das andere verwandte Schlüsselwort ist collaborative filtering, der von Amazon popularisierte Algorithmus, um Produkte basierend auf dem Verhalten anderer ähnlicher Kunden zu empfehlen. Im aktuellen Fall ist ein alternativer Algorithmus, der auf einer kollaborativen Filterung basiert, Folgendes: Schlüsselwörter werden aus der Frage extrahiert, dann werden Tags (in der Historie) mit den Schlüsselwörtern gefunden. Fragen, die diese Tags enthalten, werden zurückgegeben. Nun, Experimente sind notwendig, um zu sehen, ob es überhaupt gut funktioniert.

1

Schlecht - mit MS SQL Volltextsuche, glaube ich. Du wirst mehr Glück mit Lucene, IMO haben. Weitere Hintergrundinformationen zu diesem Thema finden Sie im Wikipedia-Artikel unter Lucene oder im allgemeinen Thema information retrieval.

Verwandte Themen