質問

私はポーターステムのアルゴリズムを実装しようとしていますが、私はこの時点で立ち往生しています:

ステップ1b

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

フィードのmは1等しくなりませんか?フィード>> [c] vvc [] >> [c] vc []。

もしそうだったら、なぜ彼はフィードを料金に変換しなかったのか私はそれが間違っていることを知っています、誰かがそれを明確にすることができますか?

ここで元のアルゴリチムを確認できます http://tartarus.org/~martin/porterstemmer/def.txt

ありがとう

役に立ちましたか?

解決

「フィード」のmは確かに1です。ただし、ドキュメントを慎重に読み直す必要があります。条件のMは、ステムの尺度を指します。つまり、で計算する必要があります 交換。あなたの場合、確認するかどうかを確認します feed -> fee 有効である場合、M(fee)= 0を計算するため、交換は行いません。

アルゴリズムもありがとう!興味深かった!

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top