Kawanet Blog II

アクセスカウンタ

zoom RSS [Perl] 形態素解析JUMANをPerlから使ってみる

<<   作成日時 : 2006/04/04 00:31   >>

ブログ気持玉 0 / トラックバック 0 / コメント 1

東京大学 大学院情報理工学系研究科 電子情報学専攻 黒橋研究室の
日本語形態素解析システム JUMAN をインストールして試してみたメモ。
形態素解析自体じゃなくて、分かち書き・読み仮名取得が目的です。

http://www.kc.t.u-tokyo.ac.jp/nl-resource/juman.html
http://www.kc.t.u-tokyo.ac.jp/nl-resource/juman/juman-5.1.tar.gz

※インストール先パスは/usr/local/juman-5.1、環境はMac OS X 10.4です。

まずjuman本体をインストールする
tar zxvf juman-5.1.tar.gz
cd juman-5.1
./configure --prefix=/usr/local/juman-5.1
make
sudo make install
cd ..


とりあえず、コマンドラインで動作確認する(EUC-JP)
/usr/local/juman-5.1/bin/juman


Perlバインディング(Juman.pm)をインストールする
cd juman-5.1/perl
PATH=/usr/local/juman-5.1/bin:$PATH perl Makefile.PL
make
make test # テストに失敗しても無視
sudo make install


Perlからの分かち書き(読み仮名+品詞情報)取得のサンプルスクリプト
#!/usr/bin/perl

use strict;
use Juman;
my $JUMAN_PATH = '/usr/local/juman-5.1/bin/juman';

my $str = "この文を形態素解析して下さい。";

my $juman = Juman->new( -Command => $JUMAN_PATH );
my $result = $juman->analysis( $str );
foreach my $node ( $result->mrph() ) {
    my $midasi = $node->midasi();
    $midasi =~ s/^\\//;
    my $hinsi = $node->hinsi();
    my $hinsi_id = $node->hinsi_id();
    my $yomi = $node->yomi() if ( 1 < $hinsi_id && $hinsi_id < 15 );
    print $midasi, "\t", $yomi, "\t", $hinsi, "\n";
}


実行結果(見出し/読み/品詞)
このこの指示詞
ぶん名詞
助詞
形態けいたい名詞
名詞
解析かいせき名詞
してして動詞
下さいください接尾辞
特殊


JUMANサーバ機能を使っていないので、Jumanモジュールから内部的に
子プロセスでjumanコマンドが呼び出されているようです。
同時アクセス数が多い場合など、負荷が大きい場合は、
サーバ機能を使った方がいいのかな。

なお、mrph() で返ってくるノードは、Juman::Morpheme モジュールの
オブジェクトになっています。以下のメソッドが提供されているようです。
midasi()形態素の見出し
yomi()形態素の読み
genkei()形態素の原形
hinsi()形態素の品詞
hinsi_id()形態素の品詞番号
bunrui()形態素の細分類
bunrui_id()形態素の細分類番号
katuyou1()形態素の活用型
katuyou1_id()形態素の活用型番号
katuyou2()形態素の活用形
katuyou2_id()形態素の活用形番号
imis()形態素の意味情報
doukei()形態素の同形異義語のリスト
id()コンストラクタを呼び出したときに指定した ID
spec()形態素オブジェクトを文字列に変換

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(1件)

内 容 ニックネーム/日時
ほー(゜o゜)
beginner
2006/04/04 11:23

コメントする help

ニックネーム
本 文
[Perl] 形態素解析JUMANをPerlから使ってみる Kawanet Blog II/BIGLOBEウェブリブログ
文字サイズ:       閉じる