2010-08-31 20 views
14

Ich mache ein wenig Nachforschungen darüber, wie man Artikel in "News Stories" unter Google News zusammenfasst.Inkrementeller Clustering-Algorithmus zum Gruppieren von Nachrichtenartikeln?

Mit Blick auf vorherige Fragen hier zu dem Thema, sehe ich oft es empfohlen, einfach einen Vektor von Wörtern aus einem Artikel herausziehen, einige Worte mehr Gewicht, wenn sie in bestimmten Teilen des Artikels sind (z. B. die Überschrift) und dann etwas wie einen K-Means-Algorithmus zu verwenden, um die Artikel zu clustern.

Aber dies führt zu ein paar Fragen:

  • Mit k-Mittel, wie wissen Sie im Voraus, wie viel k sollte? In einer dynamischen Nachrichtenumgebung haben Sie möglicherweise eine sehr unterschiedliche Anzahl von Geschichten, und Sie werden nicht im Voraus wissen, wie viele Geschichten eine Sammlung von Artikeln darstellt.

  • Wie entscheiden Sie mit hierarchischen Clustering-Algorithmen, welche Cluster als Ihre Storys verwendet werden? Sie werden Cluster am Ende des Baums haben, die nur einzelne Artikel sind, die Sie offensichtlich nicht verwenden wollen, und einen Cluster im Stammverzeichnis des Baums, der alle Artikel enthält, was Sie wiederum nicht wollen ... aber woher wissen Sie, welche Cluster dazwischen für die Darstellung von Geschichten verwendet werden sollten?

  • Schließlich, mit entweder k-means oder hierarchischen Algorithmen, scheint die meiste Literatur, die ich gelesen habe, davon auszugehen, dass Sie eine voreingestellte Sammlung von Dokumenten haben, die Sie clustern wollen. Aber was ist mit einer Situation, in der Sie immer wieder neue Artikel haben. Was geschieht? Müssen Sie alle Artikel von Grund auf neu gruppieren, jetzt wo es noch einen gibt? Deshalb frage ich mich, ob es Ansätze gibt, mit denen Sie Artikel hinzufügen können, ohne von Grund auf neu zu gruppieren. Ich kann mir nicht vorstellen, dass das sehr effizient ist.

Antwort

2

Ich würde eine Suche nach adaptiven K-Means Clustering-Algorithmen tun. Es gibt einen guten Teil der Forschung, der den Problemen gewidmet ist, die Sie beschreiben. Hier ist eine solche paper (pdf)

+0

Danke Eric! Das ist ein hilfreich Papier ist :) Es befasst sich mit der Frage der die Anzahl der Cluster vor bestimmend, und ich denke, die Wahl der Schwelle in Bezug auf die Qualität von Clustern ziemlich kritisch ist ... aber es ist etwas, das experimentiert werden kann mit. Ich frage mich aber ... wissen Sie, ob dieser Algorithmus in einem inkrementellen Kontext gut funktionieren würde? Ich meine, wenn ein neuer Artikel kommt und ich ihn einem Cluster zuordne, der auf dem geringsten Abstand zu bestehenden Clustern basiert, führt dies zu demselben Ergebnis wie die Neuberechnung der Cluster von Grund auf oder ein Ergebnis, das in jeder Hinsicht ist. genauso gut'? – Peter

+0

Basierend auf seiner Schlussfolgerung glaube ich, die Antwort ist ja, es wird "so gut", als ob Sie die Cluster von Grund auf neu berechnet, vorausgesetzt, Ihre Distanzberechnung ist korrekt durchgeführt. Ich denke nicht, dass Sie zu lange brauchen würden, um einen Prototyp in einer Skriptsprache zu implementieren (viele Datenformate können schnell analysiert werden und bieten gute Bibliotheken für die Cluster-Visualisierung). Dann könnten Sie ein Strategie-Muster haben, eine Strategie mit den adaptiven k-Mitteln und eine Strategie mit den normalen k-Mitteln, die jedes Mal neu berechnet werden. –

+0

k-nearest-neighbors können beim Online-Clustering neuer Artikel helfen. – crizCraig

3

Ich arbeitete an einem Start-up, das genau dies baute: eine inkrementelle Clustering-Engine für Nachrichtenartikel. Wir haben unseren Algorithmus auf diesem Papier basiert: Web Document Clustering mit Document Index Graph (http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=true&arnumber=4289851). Gut für uns gearbeitet für 10K Artikel/Tag.

Es hat zwei wesentliche Vorteile: 1) Es ist inkrementell, die das Problem Sie mit, die Adressen haben mit einem Strom von eingehenden Artikel befassen (Cluster als alle auf einmal) 2) Es verwendet phrasenbasierte Modellierung, im Gegensatz zu nur "Sack von Wörtern", was zu einer viel höheren Genauigkeit führt.

Eine Google-Suche erscheint http://www.similetrix.com, sie könnten haben, wonach Sie suchen.

Verwandte Themen