読者です 読者をやめる 読者になる 読者になる

謎言語使いの徒然

適当に気になった技術や言語を流すブログ。

形態素解析ライブラリを触ってみる【Igo】

Java 勉強 Scala

先ず適当なディレクトリを掘って、ダウンロード - Igo - SourceForge.JPMeCab - Browse /mecab-ipadic/2.7.0-20070801 at SourceForge.net を配置。
MeCab のtarボールは解凍しとく。
で、

C:\common\projects\lab\Igo>dir
 ドライブ C のボリューム ラベルがありません。
 ボリューム シリアル番号は 7CE8-D6F9 です

 C:\common\projects\lab\Igo のディレクトリ

2013/05/22  23:40              .
2013/05/22  23:40              ..
2013/05/22  23:36            16,868 igo-0.4.5-src.tar.gz
2013/05/22  23:35            37,428 igo-0.4.5.jar
2013/05/22  23:38              mecab-ipadic-2.7.0-20070801
2013/05/22  23:37        12,208,105 mecab-ipadic-2.7.0-20070801.tar.gz

という感じの構成にして

java -cp igo-0.4.5.jar net.reduls.igo.bin.BuildDic ipadic mecab-ipadic-2.7.0-20070801 EUC-JP

と叩く。すると、

2013/05/22  23:44    <DIR>          .
2013/05/22  23:44    <DIR>          ..
2013/05/22  23:36            16,868 igo-0.4.5-src.tar.gz
2013/05/22  23:35            37,428 igo-0.4.5.jar
2013/05/22  23:44    <DIR>          ipadic
2013/05/22  23:38    <DIR>          mecab-ipadic-2.7.0-20070801
2013/05/22  23:37        12,208,105 mecab-ipadic-2.7.0-20070801.tar.gz

てな感じで ipadic ができる。
そしたらディレクトリ構成弄って

Igo  (ROOT)
 |- ipadic
 |- lib
 |   |- igo-0.4.5.jar
 |- build.sbt
 |- src
     |- main
         |- scala

てな感じでSBTプロジェクト立ち上げる。

で、ほげっと

import net.reduls.igo.Tagger

object IgoSample extends App {
  val tagger = new Tagger("ipadic")
  val parsedList = tagger.parse("田村憲久厚生労働相は22日、2階の飲食店を予約した作家の乙武洋匡さんが、" +
    " 車いすを理由に入店拒否されたとネットで明らかにしていることに対し" +
    " 「店員が協力して連れて行く努力をすべきだと思うが、店の状況や対応が分からず、" +
    " これ以上のコメントは差し控えたい」と述べた。")

  import scala.collection.JavaConversions._
  parsedList.foreach(morpheme => {
    println("%s\t%s".format(morpheme.surface, morpheme.feature))
  })
}

たったこれだけで。

> run
[info] Running IgoSample
田村    名詞,固有名詞,人名,姓,*,*,田村,タムラ,タムラ
憲      名詞,固有名詞,人名,名,*,*,憲,ケン,ケン
久      名詞,一般,*,*,*,*,久,ヒサ,ヒサ
厚生    名詞,一般,*,*,*,*,厚生,コウセイ,コーセイ
労働    名詞,サ変接続,*,*,*,*,労働,ロウドウ,ロードー
相      名詞,接尾,一般,*,*,*,相,ショウ,ショー
は      助詞,係助詞,*,*,*,*,は,ハ,ワ
2      名詞,数,*,*,*,*,2,ニ,ニ
2      名詞,数,*,*,*,*,2,ニ,ニ
日      名詞,接尾,助数詞,*,*,*,日,ニチ,ニチ
、       記号,読点,*,*,*,*,、,、,、
2      名詞,数,*,*,*,*,2,ニ,ニ
階      名詞,接尾,助数詞,*,*,*,階,カイ,カイ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
飲食    名詞,サ変接続,*,*,*,*,飲食,インショク,インショク
店      名詞,接尾,一般,*,*,*,店,テン,テン
を      助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
予約    名詞,サ変接続,*,*,*,*,予約,ヨヤク,ヨヤク
し      動詞,自立,*,*,サ変・スル,連用形,する,シ,シ
た      助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
作家    名詞,一般,*,*,*,*,作家,サッカ,サッカ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
乙      名詞,一般,*,*,*,*,乙,オツ,オツ
武洋    名詞,固有名詞,人名,名,*,*,武洋,タケヒロ,タケヒロ
匡      名詞,固有名詞,人名,名,*,*,匡,タダシ,タダシ
さん    名詞,接尾,人名,*,*,*,さん,サン,サン
が      助詞,格助詞,一般,*,*,*,が,ガ,ガ
、       記号,読点,*,*,*,*,、,、,、
車いす  名詞,一般,*,*,*,*,車いす,クルマイス,クルマイス
を      助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
理由    名詞,一般,*,*,*,*,理由,リユウ,リユー
に      助詞,格助詞,一般,*,*,*,に,ニ,ニ
入      接頭詞,名詞接続,*,*,*,*,入,ニュウ,ニュー
店      名詞,一般,*,*,*,*,店,ミセ,ミセ
拒否    名詞,サ変接続,*,*,*,*,拒否,キョヒ,キョヒ
さ      動詞,自立,*,*,サ変・スル,未然レル接続,する,サ,サ
れ      動詞,接尾,*,*,一段,連用形,れる,レ,レ
た      助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
と      助詞,格助詞,引用,*,*,*,と,ト,ト
ネット  名詞,一般,*,*,*,*,ネット,ネット,ネット
で      助詞,格助詞,一般,*,*,*,で,デ,デ
明らか  名詞,形容動詞語幹,*,*,*,*,明らか,アキラカ,アキラカ
に      助詞,格助詞,一般,*,*,*,に,ニ,ニ
し      動詞,自立,*,*,サ変・スル,連用形,する,シ,シ
て      助詞,接続助詞,*,*,*,*,て,テ,テ
いる    動詞,非自立,*,*,一段,基本形,いる,イル,イル
こと    名詞,非自立,一般,*,*,*,こと,コト,コト
に対し  助詞,格助詞,連語,*,*,*,に対し,ニタイシ,ニタイシ
「       記号,括弧開,*,*,*,*,「,「,「
店員    名詞,一般,*,*,*,*,店員,テンイン,テンイン
が      助詞,格助詞,一般,*,*,*,が,ガ,ガ
協力    名詞,サ変接続,*,*,*,*,協力,キョウリョク,キョーリョク
し      動詞,自立,*,*,サ変・スル,連用形,する,シ,シ
て      助詞,接続助詞,*,*,*,*,て,テ,テ
連れ    動詞,自立,*,*,一段,連用形,連れる,ツレ,ツレ
て      助詞,接続助詞,*,*,*,*,て,テ,テ
行く    動詞,非自立,*,*,五段・カ行促音便,基本形,行く,イク,イク
努力    名詞,サ変接続,*,*,*,*,努力,ドリョク,ドリョク
を      助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
す      動詞,自立,*,*,サ変・スル,文語基本形,する,ス,ス
べき    助動詞,*,*,*,文語・ベシ,体言接続,べし,ベキ,ベキ
だ      助動詞,*,*,*,特殊・ダ,基本形,だ,ダ,ダ
と      助詞,格助詞,引用,*,*,*,と,ト,ト
思う    動詞,自立,*,*,五段・ワ行促音便,基本形,思う,オモウ,オモウ
が      助詞,接続助詞,*,*,*,*,が,ガ,ガ
、       記号,読点,*,*,*,*,、,、,、
店      名詞,一般,*,*,*,*,店,ミセ,ミセ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
状況    名詞,一般,*,*,*,*,状況,ジョウキョウ,ジョーキョー
や      助詞,並立助詞,*,*,*,*,や,ヤ,ヤ
対応    名詞,サ変接続,*,*,*,*,対応,タイオウ,タイオー
が      助詞,格助詞,一般,*,*,*,が,ガ,ガ
分から  動詞,自立,*,*,五段・ラ行,未然形,分かる,ワカラ,ワカラ
ず      助動詞,*,*,*,特殊・ヌ,連用ニ接続,ぬ,ズ,ズ
、       記号,読点,*,*,*,*,、,、,、
これ    名詞,代名詞,一般,*,*,*,これ,コレ,コレ
以上    名詞,非自立,副詞可能,*,*,*,以上,イジョウ,イジョー
の      助詞,連体化,*,*,*,*,の,ノ,ノ
コメント        名詞,サ変接続,*,*,*,*,コメント,コメント,コメント
は      助詞,係助詞,*,*,*,*,は,ハ,ワ
差し控え        動詞,自立,*,*,一段,連用形,差し控える,サシヒカエ,サシヒカエ
たい    助動詞,*,*,*,特殊・タイ,基本形,たい,タイ,タイ
」       記号,括弧閉,*,*,*,*,」,」,」
と      助詞,格助詞,引用,*,*,*,と,ト,ト
述べ    動詞,自立,*,*,一段,連用形,述べる,ノベ,ノベ
た      助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
。       記号,句点,*,*,*,*,。,。,。
[success] Total time: 0 s, completed 2013/05/23 0:04:02

面白いが固有名詞に難ありか?