php igo-php(形態素解析)のインストール
Mecabに代わるIgo-php(形態素解析)をインストールしてみた。
「Igo-php」をダウンロード・解凍したら「README」があるのでそれを読めば、基本わかる。
※私は分からなかったので以下は、その際のメモ書き。
必要なファイル
・igo-php
・igo本体(igo-X.X.X.jar)
・MeCab辞書
インストの流れ(2013-07-04現在)
igo-phpを解凍し、READMEに従えばOK
※ヴァージョンとか気にする必要あり
READMEに記載がなかったので…
DLしたファイルを解凍した状態で一つのフォルダにいれる。
※デスクトップに「igoPhp」というフォルダを作って中に入れた場合。
C:\Users\○○○○○○\Desktop\igoPhp\igo-php-0.1.7
C:\Users\○○○○○○\Desktop\igoPhp\mecab-ipadic-2.7.0-20070801
C:\Users\○○○○○○\Desktop\igoPhp\igo-0.4.5.jar
CMDを起動して
$ cd C:\Users\○○○○○○\Desktop\igoPhp
$ java -cp igo-0.4.5.jar net.reduls.igo.bin.BuildDic ipadic mecab-ipadic-2.7.0-20070801 EUC-JP
サンプル
require_once "lib/Igo.php";
// ini_set("memory_limit", "-1"); // メモリ的なエラーが出るようならこれを使う。
$igo = new Igo("./ipadic", "UTF-8");
$text = "これはテストです";
$result = $igo->wakati($text);
print_r($result);
?>
「ini_set("memory_limit", "-1");」がはじめ無くて実行したら何も表示されなかった。
で、エラーログを見ると下記のような感じのメッセージが出力。
調べると…「ini_set("memory_limit", "-1");」を「使えばいいよ~」的なのがあったので使ってみれば対応できた。
取れる内容
上記のサンプルソースを元に下記の2種ある感じ。
・「$igo->wakati()」:分かちした単語たち。
・「$igo->parse()」:分かちした単語たち(品詞情報付き)。
問題点
Mecabと違ってサーバーにインストする必要ないんだけど…いかんせん辞書が40MB弱ある。
これをアップすることが可能ならこの問題はクリア。
何かしらの理由でアップNGなら…困ったね。
「ini_set("memory_limit", "-1");」を使ってる点。
現状の私の知識では何を意味してるか不明。
たぶん「使用するメモリの制限なし」だと思う。サーバの負荷が恐ろしくなるような気がする。
そのた
Mecabのインストは以前の記事参照
php MeCab(形態素解析)のインストール
wikiにもまとめ中。
IGO-PHP