Porter-Stemmer-Algorithmus - LinkFang.de





Porter-Stemmer-Algorithmus


Der Porter-Stemmer-Algorithmus ist ein verbreiteter Algorithmus der Computerlinguistik zum automatischen Zurückführen von Wörtern auf ihren Wortstamm (Stemming). Der Algorithmus basiert auf einer Menge von Verkürzungsregeln, die so lange auf ein Wort angewandt werden, bis dieses eine Minimalanzahl von Silben aufweist. Der ursprünglich für Wörter der englischen Sprache entwickelte Algorithmus kann relativ leicht für andere Sprachen portiert werden.

Funktionsweise

Bestimmung der Silbenanzahl

Maßgeblich ist genaugenommen nicht die Anzahl der Silben, sondern die Anzahl der Vokal-Konsonant-Sequenzen. Jedes Wort lässt sich als eine Zeichenkette der Form [C](VC)m[V] interpretieren, wobei C für eine Folge von einem oder mehreren Konsonanten und V für eine Folge von einem oder mehreren Vokalen steht. Gemessen wird die Anzahl m der Vokal-Konsonant-Sequenzen zwischen optional führenden Konsonanten und einer optionalen Folge von Vokalen am Ende.

Beispiele:

  • tr-ee, t-o (m=0)
  • w-eb, ant (m=1)
  • b-etw-een (m=2)
  • W-ik-ip-ed-ia (m=3)

Verkürzungsregeln

Die Verkürzungsregeln bestehen aus Paaren von Bedingungen und Ableitungen für verschiedene Suffixe (Wortendungen). Die Regeln sind in Gruppen zusammengefasst, die nacheinander abgearbeitet werden. Aus jeder Gruppe darf nur eine Regel angewandt werden.

Beispiel: Die erste Gruppe beinhaltet die Suffix-Verkürzungsregeln "sses" → "s", "ies" → "i" und "s" → "", die beispielsweise zu den Ableitungen "libraries" → "librari" und "Wikis" → "Wiki" führen. Eine später folgende Gruppe besteht aus der Regel "y" → "i", so dass beispielsweise das Wort "library" auf den gleichen Stamm ("library" → "librari") zurückgeführt wird.

Implementierungen

Auf der Webseite des Porter-Stemmer-Algorithmus finden sich Implementierungen in mehreren Programmiersprachen. Unter http://snowballstem.org/ befindet sich die von Martin Porter entwickelte Zeichenkettenverarbeitungssprache "Snowball", mit deren Hilfe Porter Stemmer beschrieben werden können. Dort findet man auch einen Porter Stemmer für die deutsche Sprache.

Anmerkungen

Die aus einem Wort abgeleiteten Stämme entsprechen oft nicht den linguistisch korrekten Wortstämmen. Da das Ziel des Stemmings jedoch keine linguistische Analyse ist, sondern verwandte Worte auf ein und dieselbe Zeichenkette zurückgeführt werden sollen, spielt dies keine Rolle.

Wie praktisch alle Stemming-Algorithmen arbeitet auch der Porter-Stemmer nicht mit hundertprozentiger Genauigkeit, so dass es bei einigen Worten vorkommen kann, dass zu viel (Overstemming) oder zu wenig (Understemming) abgeschnitten wird. In der Praxis ist er jedoch ausreichend gut. (siehe auch weitere Hintergrundinformationen zum Thema im Artikel Stemming).

Literatur

  • M.F. Porter: An algorithm for suffix stripping. In: Program, 14(3), S. 130-137, Juli 1980

Weblinks


Kategorien: Algorithmus | Computerlinguistik

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Porter-Stemmer-Algorithmus (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.