Frage

Ich versuche, Porter -Stemming -Algorithmus zu implementieren, aber an diesem Punkt stecke ich fest:

Schritt 1B

(m>0) EED -> EE                    feed      ->  feed
                                   agreed    ->  agree
(*v*) ED  ->                       plastered ->  plaster
                                   bled      ->  bled
(*v*) ING ->                       motoring  ->  motor
                                   sing      ->  sing

Ist das M von Feed nicht gleich 1? Feed >> [C] VVC [] >> [C] VC [].

Wenn es so war, warum hat er Feed nicht in Gebühr konvertiert? Ich weiß, dass es falsch ist, kann jemand das klarstellen?

Sie können den ursprünglichen Algorithim hier überprüfen http://tartarus.org/~martin/porterstemmer/def.txt

Danke

War es hilfreich?

Lösung

m von 'Feed' ist in der Tat 1. Dennoch müssen Sie das Dokument sorgfältig erneut lesen. Der M in der Bedingung bezieht sich auf das Maß des Stammes, dh Sie müssen in berechnen nach der Ersatz. In Ihrem Fall, um zu überprüfen, ob feed -> fee Ist gültig, Sie berechnen M (Gebühr) = 0, daher machen Sie den Ersatz nicht.

Auch danke für den Algorithmus! Es war interessant!

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