2016-06-20 3 views
0

を使用して、自然言語の文字列を食い止めるしようとしている:私はnltk.stem.snowball輸入SnowballStemmer</p> <p>から輸入していますし、次のように私は、文字列を持っているのpython-2.7

たtext_string = "こんにちはみんなあなたができる場合にはこのメッセージは、parseOutTextを使って正しく読んでください。 "

私はこのコードを実行しています: words =" ".join(text_string.splitの単語のためのstemmer.stem(word) "))

およびI g次のように、いくつか 'e'が欠落しています。それが何を引き起こしているのか理解できません。助言がありますか?おかげであなたはそれを正しく使用しているフィードバック

「やあeveryonあなたはこのmessagを読むことができるならば、あなたの適切な使用のparseouttextの嘆願は、プロジェクトの次の部分に進み、」

+0

正しく使用しています。それは変な演技をしているステマーです。何が原因かは、訓練データが少なすぎるか、間違ったバランスであるか、あるいは単に間違った結論になっていることです。完璧を期待することはできませんが、一般的な言葉で起こると迷惑です。それは動詞のように、「すべて」から「あらゆるもの」にまたがっています。少なくともここでは、それが何をしているのかはっきりしています。しかし、 "-e"は英語の接尾辞ではありません... – alexis

+0

ありがとうございます。私はそれが私の質問への答えだと思います。 – kevbuntu

+0

それを少し拡大して答えました。注意してください、私は茎の内部の経験はありません。 – alexis

答えて

0

ため、それは変な演技をしているステマーです。これは、トレーニングデータが少なすぎたりバランスが悪すぎたり、ステマーの統計アルゴリズムによる誤った結論が原因で発生する可能性があります。完璧を期待することはできませんが、一般的な言葉で起こると迷惑です。それは動詞のように、「すべて」から「あらゆるもの」にまたがっています。少なくともここでは、それが何をしているのかはっきりしています。しかし、「-eは」(これらは通常、不規則な一般的な単語です、ポーターは除外するフィット感と思っていることステマーがストップワードリスト内の単語の語幹抑制しますオプションignore_stopwords=Trueを、可能に...英語で

接尾辞ではありませんトレーニングセットに含まれていると悪い結果が得られたため)。残念ながら、あなたが尋ねる特定の例については助けになりません。

関連する問題