Frage

Ich mag die Ähnlichkeit des Inhalts von zwei Nachrichten, ähnlich wie Google News, aber anders in dem Sinne, um zu bestimmen, dass ich feststellen zu können, will, was die grundlegenden Themen bestimmen dann, welche Themen beziehen.

Also, wenn ein Artikel über Saddam Hussein war, dann wird der Algorithmus könnte etwas über Donald Rumsfelds Geschäfte im Irak empfehlen.

Wenn Sie um Schlüsselwörter wie k-nächsten Nachbarn und eine wenig Erklärung werfen nur darüber, warum sie arbeiten (wenn Sie können) Ich werde den Rest des reseach tun und den Algorithmus optimieren. Nur Suche nach einem Ort, um loszulegen, da ich weiß, jemand da draußen versucht haben muss, bevor etwas ähnliches.

War es hilfreich?

Lösung

Erste Gedanken:

  • wegwerfen Füllwörter (und Sie, ist, die, einige, ...).
  • zählen alle anderen Wörter und sortieren nach Menge.
  • für jedes Wort in den beiden Artikeln, fügen Sie eine Punktzahl abhängig von der Summe (oder ein Produkt oder einer anderen Formel) die Mengen.
  • die Partitur stellt die Ähnlichkeit.

Es scheint zu sein, dass ein Artikel in erster Linie um Donald Rumsfeld diese beiden Worte ziemlich viel haben würde, weshalb ich sie in dem Artikel gewichte.

Allerdings kann es einmal ein Artikel zu erwähnen, Warren Buffet oft mit Bill Gates sein, und weiterem erwähnen sowohl Bill Gates und Microsoft viele Male. Die Korrelation würde es minimal.

Basierend auf Ihren Kommentar:

  

Also, wenn ein Artikel über Saddam Hussein war, dann wird der Algorithmus könnte etwas über Donald Rumsfelds Geschäfte im Irak empfehlen.

das nicht der Fall wäre, wenn der Saddam Artikel auch Irak erwähnt (oder Donald).

Das ist, wo ich anfangen würde, und ich mögliche Löcher in der Theorie bereits (ein Artikel über Bill Gates eng mit einem Artikel über Bill Clinton würde passen, wenn ihre Vornamen viel genannt werden) sehen. Diese gut betreut von allen anderen Worten (Microsoft für eine Bill, Hillary für die andere) werden kann.

Ich würde es vielleicht einen Testlauf geben, bevor Sie versuchen Wort Nähe Funktionalität einzuführen, da, dass es sehr kompliziert geht zu machen (vielleicht unnötig).

Eine andere mögliche Verbesserung wäre ‚harten‘ Verbände werden beibehalten (wie immer das Wort Hinzufügen Afghanistan Artikel mit Osama bin Laden in ihnen). Aber noch einmal, das erfordert zusätzliche Wartung für möglicherweise zweifelhaften Wert, da Artikel über Osama würde mit ziemlicher Sicherheit Afghanistan erwähnt auch.

Andere Tipps

Im Moment habe ich so etwas wie dies denke.

Jeder nicht-Füllwort ist eine Dimension. Jeder Artikel wird durch einen Vektor dargestellt, in dem die Worte, die von Null und den dargestellten nicht angezeigt werden, der einen Wert angezeigt bekommt, das die Anzahl von Malen gleich ist, dass sie durch die Summe der Worte auf der Seite geteilt erscheinen. Dann kann ich die euklidische Distanz zwischen jedem der Punkte in diesem Raum nehmen die Ähnlichkeit von zwei beliebigen Artikel zu erhalten.

Der nächste Schritt wäre Cluster der Gegenstände zu bestimmen, und dann einen zentralen Punkt für jeden Cluster zu bestimmen. Dann berechnet die euklidische Distanz zwischen zwei beliebigen Clustern, die die Ähnlichkeit der Themen gibt.

Baaah Ich denke, durch die Eingabe aus ich mein eigenes Problem gelöst. Natürlich nur in einem sehr hohen Niveau Art und Weise, ich bin sicher, wenn ich, um es nach unten ich Probleme ... der Teufel immer im Detail finden.

Aber Kommentare und Verbesserungen nach wie vor hoch geschätzt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top