[Python] Python + TreeTagger で英語の文に品詞アノテーションをする

前回の記事では、入力された英文を Python + TreeTagger で処理して、原形の情報を得ました。その過程で、入力された単語(そのままの形)と品詞の情報も得られますので、今回はそれらを使って、品詞アノテーションをします。

イメージとしては:

入力:"He has lots of books."
      ↓↓↓
出力:He_PP has_VHZ lots_NNS of_IN books_NNS ._SENT

それぞれの単語の後ろに、アンダーバー(_)と、品詞情報(PP, VHZなど)がくっついています。このように品詞情報を付与してコーパスを作成すると、より高度な検索などがしやすくなるようです。

line に入っている文が処理されますので、ダブルクオーテーションマークの中の文を分析したい文に変えてください。また、input() やコマンドライン引数を使うことで、より簡単に扱うこともできそうです。

なお、POS (品詞) がそれぞれどういう意味であるかは、TreeTaggerのページにある "tagset documentation" をクリックすることで確認することができます。

関連

[Python] Python + TreeTagger で英語の文の原形を得る

TreeTagger を Python で動かして、原形を得ます。

下のコードでは、例として "He has lots of books, and I have as many books." という文を処理しています。アウトプットとして、['he', 'have', 'lot', 'of', 'book', ',', 'and', 'I', 'have', 'as', 'many', 'book', '.'] と返ってきます。

なお、10行目の "line" に処理をする文を格納していますが、input()を使ったり、コマンドライン引数を使ったりすると、使い勝手も向上しそうです。

関連

[Windows] AutoHotKey その2

職場の Windows PC に AutoHotKey というソフトを導入して、キーバインドを変更 したら、ものすごくキー入力が楽になった。ホームポジションから手をはずさずに上下左右、行頭・行末にカーソルを移動させたり、文字を削除したりできる。ストレスフリー。 カーソル移動系...