Authentication




Cancel OK
B!コメントする  2015-02-18 10:52:00 by admin

CodeIgniter3でigo-php

形態素解析をやろうと思うと

サーバーにmecabやChasenを入れる
YahooやgooラボがAPIとして公開しているものを使用

というのが検索でも上位に出てきます。
しかし意外とハードルが高い。
レンタルサーバーでは導入が出来ないことも多いし、APIは回数制限などもある。
自前でどうにかしようと考えてigo-phpになった。
これはJavaで作られた形態素解析をPHPでも使えるようにしたもの。
mecabの辞書も使えてmecabとほぼ同様の結果を返してくれるスグレモノです。

導入方法や使い方は検索すればすぐに出てきますので、
そのへんの解説は別サイトに譲りますがGodeigniter3で使う際に5分程度はまったところを記載しておきます。

必要なモジュール(ligフォルダとipadicフォルダ)をCodeigniterのmodelsに突っ込んで
PHPでの使用方法でよく紹介されている以下を書いても動かない。

require_once('lib/Igo.php');
$igo = new Igo("./ipadic", "UTF-8");
$text = "すもももももももものうち";
$result = $igo->wakati($text);
var_dump($result);

Codeigniterで使う場合はこれではダメで「new Igo」で指定するアドレスは

$igo = new Igo("./application/models/ipadic", "UTF-8");

でないといけない。
参照するものが全て同一階層に揃っていたので大丈夫と思ってましたが クラスとして呼び出す場合はフルパスじゃないとダメのようです。
当たり前と言えば当たり前のことかもしれませんが5分程度はまってしまったので書いておきます。


PHP 人工無能 形態素解析  

  • コメント
  • コメントはまだありません