Ein Einfacher Algorithmus, um Antworten in Hashtag Communities zu finden.

5 Sep

Ein aufschlussreicher Aspekt bei der Analyse von Hashtag Communities ist die Ermittlung von gestellten Fragen und deren Antworten.

Fragen lassen sich problemlos anhand eines Fragezeichens identifizieren. Zusätzlich dazu lässt sich der Text auf sprachspezifische Fragewörter prüfen. Antworten zu finden ist wesentlich aufwendiger.

Fragen lassen sich grundsätzlich in zwei Kategorien unterteilen, Fragen an die Community, sowie Fragen an einzelne Personen. Um eine Frage diesen Kategorien zuordnen zu können, wurde untersucht ob in einem Fragetext die Benutzernamen anderer Benutzer erwähnt werden. Ist dies der Fall, so wird davon ausgegangen, dass die Frage an diese Person(en) gerichtet ist. Wird kein Benutzername gefunden, so ist davon auszugehen, das sie der zweiten Kategorie zuzuordnen ist.

Antworten lassen sich dementsprechend auch in diese Kategorien einteilen. Da auch direkte Fragen an einzelne Personen öffentlich gestellt werden, kann es dazu kommen das Benutzer auf nicht ans sie gerichtete Fragen antworten.

Technisch kann jede Nachricht, die nach der Frage gesendet wurde und die an den Fragesteller gerichtet ist, eine Antwort sein. Daher entscheidet die Frage über den Typ der Antwort. Um die Ergebnismenge überschaubar zu halten, versucht der Algorithmus nur direkte Antworten und Antworten auf Fragen an die Community zu finden.

Sind die Grundvoraussetzungen gegeben und die Nachricht kommt als Antwort in Frage wird sie genauer überprüft und bewertet. Bewertungskriterien sind:

  • Gemeinsame Hashtags im Antwort- sowie im Fragetext.
  • Gemeinsame Schlüsselwörter im Antwort- sowie im Fragetext.
  • Beide Texte sind in derselben Sprache verfasst.

Hashtags sind vom Benutzer gesetzt und anders als die automatisch erfassten Schlüsselwörter, besonders ausschlaggebend für die Bewertung.

Ein weiteres Kriterium bei der Bewertung der Antworten könnten auch zeitliche Differenzen zwischen Frage und Antwort sein.

Die Ergebnisse des Algorithmus sind bis jetzt wechselhaft. In einigen der untersuchten Archive kommt der Algorithmus zu guten Ergebnissen. In anderen sind direkte Fragen anscheinend selten beantwortet worden oder in den Antworten wurde kein Hashtag für die Community gesetzt. Gefundene Antworten auf direkte Fragen erwiesen sich in der Regel als sinnvoll.

Erwartungsgemäß finden sich bei Fragen an die Community durchweg viele Antworten. Die Qualität der Antworten ist jedoch nicht zufriedenstellend.

Im Idealfall wird die Webapplikation so gestaltet, dass die Antworten bewertet oder gelöscht werden können. Somit lässt sich die Qualität der Antworten nachträglich weiter verbessern.

Falls ihr noch Ideen habt für weitere Bewertungskriterien oder andere Verbesserungsvorschläge, bin ich auf euren Input gespannt.

5 Antworten to “Ein Einfacher Algorithmus, um Antworten in Hashtag Communities zu finden.”

  1. Wolfgang Reinhardt 5. September 2011 um 18:43 #

    Ein weiterer direkter Indikator für eine Antwort ist auch die reply_to Information am Tweet selbst…

  2. Wolfgang Reinhardt 5. September 2011 um 18:45 #

    Ich habe auch mal meinen Kollegen Traian (http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/r/Rebedea:Traian.html) gefragt, wie er das Thema Frage-Antwort-Identifizierung angehen würde. Traian beschäftigt sich mit der Analyse von Chat-Konversationen. Hier seine Antwort:

    The basic idea would be that I cannot provide you with a simple and short answer. There has been lots of research on this subject, but there is no open source or web service that is easily to get and use of integrate in other applications . Most of the approaches use a mix of NLP, text mining and machine learning techniques that combine linguistic patterns with automatic classification by starting from a gold standard corpora. Most of the papers and research is not only on questions (and requests for information, in general) and answer detection, but on other speech acts, that are more general.

    To get an idea this are papers that try to find questions and answers in e-mails or forums or other short web messages:

    http://research.microsoft.com/en-us/people/cyl/sigir2008-gao-msra.pdf

    http://delivery.acm.org/10.1145/1630000/1628976/p79-ivanovic.pdf?ip=94.62.206.252&CFID=37558556&CFTOKEN=68784308&__acm__=1314656449_563fcef9955a41b78e25f7b82017b59c

    http://dl.acm.org/citation.cfm?id=1571973

    http://acl.ldc.upenn.edu/C/C04/C04-1128.pdf

    They all are pretty new and from very strong conferences (ACL, SIGIR), but do not know to have an open source application attached to them.

  3. twapperlyzer 6. September 2011 um 17:36 #

    Zum Thema reply_to, in den twapperkeeper Daten gibt es nur ein Feld das da heißt: to_user_id.
    Ich weiß nicht welche Heuristik die Werte dafür berechnet aber sie überzeugt mich nicht. Manchmal stimmt die ID meistens zeigt sie aber auf einen andern User als das @username im Tweet vermuten lässt oder auch auf gar keine Gültige ID.

  4. Wolfgang Reinhardt 6. September 2011 um 22:00 #

    Die Originaldaten von Twitter schaust du gar nicht mehr an, oder?

  5. twapperlyzer 7. September 2011 um 06:33 #

    Nein, das würde zu lange dauern die auch noch herunterzuladen und ich bange sowieso schon um das rating limit bei der Twitter API. Momentan werden nur die Benutzerprofile heruntergeladen und ich bin schon sehr froh das ich diese[1] TwitterAPI Funktion gefunden habe die es erlaubt anstatt für jeden Profil einen Request zu senden 100 Profile auf einmal abzufragen.
    [1] https://dev.twitter.com/docs/api/1/get/users/lookup

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: