人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

英語のテキストを辞書の項目に載っている形に正規化してくれるソフトウェアを探しています。例えば

A topic should also meet Wikipedia's standards of "notability",[58] which usually means that it must have received significant coverage in reliable secondary sources

というテキストを入力すると

A topic should also meet Wikipedia standard of notability which usually mean that it must have receive significant coverage in reliable secondary source

というように時制や単数・複数、修飾などの情報を取り除いたテキスト(単語列)を返してくれるものです。

ある程度近似的な処理でも構わないので、大量の文章を出来るだけ高速に正規化できる仕組みを探しています。もしそういった手法なりソフトウェアをご存知の方がいらっしゃいましたら教えてください。python等から使えるモジュールの形になっていれば理想的です。

よろしくお願いします。


●質問者: satehasateha
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:Python Wikipedia ソフトウェア テキスト モジュール
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● hfgvbcv
●0ポイント

今調べてます。まってて、下さい

http://q.hatena.ne.jp


2 ● tasklight
●30ポイント

Linuxをご利用でしたら sed を使って下記のようにしてみてください。

sed -e 's/[^a-zA-Z0-9 ]//g' 変換元ファイル名
◎質問者からの返答

回答ありがとうございます。

ただこれは少し求めていたものと異なります。質問が判りにくかったのだと思いますが、

Wikipedia's >> Wikipedia

standards >> standard

received >> receive

という形に正規化してくれる手法を探しています。


3 ● kick_m
●20ポイント

スペルチェッカーのオプションでできそうですね。http://www

◎質問者からの返答

回答ありがとうございます。

時制等を正規化してくれるようなスペルチェッカーがあるのですか? 具体的なソフト、やり方を教えてもらえませんか?


4 ● gp334437g4723k87
●50ポイント ベストアンサー

その処理は辞書方式を含めて単純な置換処理で対応すると確実に文法が崩れることとなるわけですが、それでもかまわないのでしょうか?


NPLは、学部学生あたりのレベルでは日本語は難しいが、英文は簡単という風に思われていますが、英語のNPLが簡単なのは形態素解析位で、構文解析のレベルまで行くと、英語も日本語も難易度ではそう大した違いは生じなくなってきます。


以前、英文の自然言語解析プログラムを作った際には、いろいろ探した挙げくにPerlに行き着きました。Perlであれば、前処理で単純な置換処理をかけ、後処理で文法チェックをかければ可能ではないかと思います。ちなみにPerlだと


アポストロフィーの処理はAcme::Lingua::EN::Inflect:Modern

複数形正規化の処理はLingua::Stem

http://www.mawode.com/~waltman/talks/nlp_ppw.pdf


などで可能です。NLPといえばCommmon LispでCommon Lispあたりだともっと高度なライブラリーがあるかと思いますが、Lispはガーベッジコレクションが介在するために処理が遅いのが難点です。

◎質問者からの返答

文法はとりあえず気にせず、いわゆるバッグオブワードモデルに使えるように前処理をしたいと考えていました。ご紹介いただいたPerlのライブラリが正に探していたもののように思います。ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ