DIAVIS-wiki
  • 追加された行はこの色です。
  • 削除された行はこの色です。
 [[:private]]
 
 #contents
 
 *Sen [#m94a4215]
 -Javaで書かれた日本語形態素解析器
 -C++で開発されているMeCabをJavaに移植した.
 -IPAの辞書を利用.MeCab、茶筌と同じもの.
 -辞書の構築にはAntが必要
 
 
 *インストール [#hbfb9d61]
 **ビルドツールAntのインストール [#z4018ca4]
 -[[Antプロジェクトページ:http://ant.apache.org/bindownload.cgi]]からapache-ant-1.7.0-bin.zipをダウンロードし解凍.
 -クラスパスを通す前に,フォルダ名を「apache-ant-1.7.0」から「apache-ant」に変更する.
 -パスの設定
 --XPの場合.「システムのプロパティ」の「システム環境変数」の「Path」を選択し「編集ボタン」を押す.パスを追加する.(例「C:\apache-ant\bin;」)
 --Vistaの場合.「コントロールパネル」>「システムとメンテナンス」>「システム」まで行って,左側の「システムの詳細設定」をクリックして「システムのプロパティ」ダイアログを開く.「詳細設定」タブの下にある「環境変数」ボタンを押す.
 
 *Senのインストール [#v751287b]
 -[[Sen配布ページ:https://sen.dev.java.net/servlets/ProjectDocumentList?folderID=755&expandFolder=755&folderID=0]]からsen-1.2.2.1.zipをダウンロード.解凍.
 
 -環境変数にSEN_HOMEを新規作成.解凍したフォルダへのパスを追加する.
 -Java の CLASSPATH に sen.jar と commons-logging.jar (jakarta project のロギングライブラリ) を追加する必要がある。なお、commons-logging.jar は Sen に同梱されている。 
 
 *ActivePerlのインストール [#b7f23633]
 -[[ActiveStateのActivePerlのページ:http://www.activestate.com/products/activeperl/]]へアクセス
 -WindowsのMSI(ActivePerl-5.6.1.638-MSWin32-x86)をダウンロード.
 --ver.5.6.1 Build638(2007年2月20日現在)
 -無料だけどダウンロードするには氏名を入力する必要がある.
 -ダウンロードしたファイルを実行するとインストーラーが起動する.
 
 *辞書の作成 [#w6440d0f]
 -Windowsの「スタート」メニューから「ファイル名を指定して実行」を選択.プログラム名「cmd」を入力し「OK」しコマンドラインを表示.
 -先ほど解凍したSenのフォルダへcdコマンドにより移動する.
  c:\> cd フォルダまでのパス
 
 antを実行しようとすると以下のようなエラーがでた.
 tools.jarを使用するらしいんだけど,tools.jarはJREには含まれていないらしい.ちなみに,tools.jarはjavacなどで利用されるみたい.
 とりあえず,JDK5.0をダウンロードしてクラスパスにtools.jarまでのフルパスを追加してみる.けど,同じエラーが出た.
  Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre1.5.0_11\lib\tools.jar
 まだ,jreのほうを見に行っている.
 インストールしたjdkのフォルダを探しに行ってほしい.
 環境変数に「JAVA_HOME」を追加.コマンドラインのウィンドウを一度閉じて再表示.(こうしないと,変更が反映されないみたいなので.)
 で,「C:\> ant」と打つとエラーは無事でなくなった.
 
 けど,ビルドしようとするとさっきのエラーはでなくなったものの失敗している様子.
 &ref(cmdexe_faild.gif);
 
 調べていたら,
 http://ultimania.org/sen/の「インストール>辞書作成」に以下のような記述を発見.
 > Widowsで辞書を作成するには、プロパティperl.binに対して下記のようにperlの実行ファイルを絶対パスで指定します。
 
 そこで,以下のように入力すると無事ビルドに成功した.(ビルド時間は,Let's note Vistaでは1分33秒)
  ant -Dperl.bin=C:\Perl\bin\perl.exe -buildfile build.xml
 &ref(cmdline_build_successful.gif);
 
 *空白を含むパスによるエラー [#v3cdc785]
 senを起動すると以下のエラーが発生する場合がある.
  Exception in thread "main" java.lang.NoClassDefFoundError: and
 空白のあるパス(Documents and SettingsやProgram Files)が原因
 
 javaとsenを空白を含まないパスへ再インストールしてみる.
 
 でもsen.batが動かない.javaにはパスが通っているはずなので,以下のように変更.無事動作.コマンドラインから日本語が打てないのでペーストで入力.きちんと解析できました.
  @java -Dsen.home=%SEN_HOME% -classpath %CLASSPATH% StringTaggerDemo ${1+"$@"}
 
 *プログラムからの利用 [#jed0f695]
 **Senへのパスの設定 [#qe72235c]
 +プログラム内で設定
  System.setProperty("sen.home","path"); 
 +引数(Dsen.home)として指定
  >java -cp commons-logging.jar;sen.jar; -Dsen.home=sen-1.2.2.1 program
 **サンプルプログラム [#t2ed9b02]
 -Senによる解析アプリのサンプル(eclipseプロジェクト)
 --&ref(046_SenStudy_01.zip);
 --辞書データ(作成するのがめんどくさい場合.使えるかは不明)
 --http://diavis.info/programs/dic.zip
 
 +左側のテキストエリアに文字列を入力するかコピペする.
 +画面下のボタンを押す.
 +結果が右側のテキストエリアに表示される.
 +側のテキストエリアをマウスでクリックするとリセット.
 
 &ref(morphologicAnalysiser.gif);
 
 *参考文献 [#sc1ed08b]
 -[[Senプロジェクトページ:http://ultimania.org/sen/]]
 -[[形態素解析システム Sen:http://www.mlab.im.dendai.ac.jp/~yamada/ir/MorphologicalAnalyzer/Sen.html]]
 
トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS