5

単語の語根を見つける PHP 辞書を作成する必要があります。元。「cars」で検索すると、「cars is multiple of car」または「took」で「take の過去形」と表示されます

ワードネットの利用を検討していますが、難しそうです。

なにか提案を?私は必死です

よろしく;

4

3 に答える 3

5

提案されたステマーは正しく機能しないため、ここから適切なものを選択できます。

http://snowball.tartarus.org/

ここにも興味深いライブラリがあります: http://sourceforge.net/projects/nlp/

また、StackOverflow に関する同様の質問へのリンク:

PHP を使用した NLP プログラミング ツール?

PHPによるテキストマイニング

更新: 単語のステミングまたはレンマタイゼーションを行うにはどうすればよいですか?

http://www.reddit.com/r/programming/comments/8e5d3/how_do_i_programatically_do_stemming_eg_eating_to/

http://www.nltk.org/

Wordnet lemmatizer: http://wordnet.princeton.edu/wordnet/download/

于 2011-03-28T06:19:40.620 に答える
1

さて、これは単語ステミングを行う拡張機能です (これはあなたが望むものだと思います): http://pecl.php.net/package/stem

ただし、作品の文法分析は行いません。

これはphpのみのバージョンです:http://www.chuggnutt.com/stemmer.php

于 2011-03-27T19:58:43.350 に答える
0

ここで無料の Lemmatizer API を試すことができます: http://twinword.com/lemmatizer.php

下にスクロールして Lemmatizer エンドポイントを見つけます。

これにより、「犬」から「犬」、「能力」から「能力」を得ることができます。

「text」という POST または GET パラメータを「walked plant」のような文字列で渡すと、次のようになります。

// These code snippets use an open-source library. http://unirest.io/php
$response = Unirest\Request::post("[ENDPOINT URL]",
  array(
    "X-Mashape-Key" => "[API KEY]",
    "Content-Type" => "application/x-www-form-urlencoded",
    "Accept" => "application/json"
  ),
  array(
    "text" => "walked plants"
  )
);

次のような応答が返されます。

{
  "lemma": {
    "plant": 1,
    "walk": 1
  },
  "result_code": "200",
  "result_msg": "Success"
}
于 2015-04-17T13:23:45.967 に答える