Juman++をWSL1のUbuntuにインストール(備忘録)
日本語の機械学習を行うためには日本語をそれぞれ意味のある形式に分割することが必要です。
そこで、日本語形態素解析システム JUMAN++ をインストールしてみた。
その前にインストール元の環境を説明します。
純粋なUbuntuやMacだと簡単だと思います。私自身はUbuntuはVMWare WorkstationやVMWare Fusionを持っているのでUbuntuはその上で稼働しています。また、Mac OSでHomebrewでの環境もあり、Windows 10ではWSL1を利用しています。とはいえ、2018 Mac Book Pro 13'では機械学習系を実行するには荷が重いので、2020 VAIO S15( i7-9750H)や2020 ASUS ROG Zephyrus G14(Ryzen 9 4900HS)で実行するために、よりネイティブに近いWSL1 Ubuntu環境にと思ったのが経緯です。
Windwos10 WSL2はVMWare Workstation15と相性が悪いって話で、入れてみたけど取り外してWSL1に戻しました。
WSLで動作するUbuntuはWindows Store経由では18.04と20.04。この20.04で当初はインストールしようとしていたけど、ダメだったの調べてみると20.04は glibcでこけるので18.04で行いました。
※WSL2とVMWareの共存はVMWare側の設定とレジストリ変更で共存できるらしい話まで見ましたが・・・w
http://kzlog.picoaccel.com/post-1114/
1.環境準備
Ubuntu 18.04はapt upgradeまで行って最新化していることとします。
2.Juman++ダウンロード
京都大学の黒橋・褚・村脇研究室の公式サイトにあるのですが、Ver.1.02(1.01も)では動作することができませんでした。途中でビルドエラーとなりました。(エラー内容はboostのwhat(): Invalid argument)
開発版2.0.0-rc3をダウンロードして作業を行うことで、ビルドに成功しJuman++がインストールすることができました。
3.ファイルの解凍からビルドまでのコマンド
$ xz -dv /home/xxxx/jumanpp-2.0.0-rc3.tar.xz
$ cd /usr/local/src
$ tar xvf /home/xxxxxx/jumanpp-2.0.0-rc3.tar
$ cd jumanpp-2.0.0-rc3/
$ mkdir bid
$ cd bid
$ cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
$ make install -j2
xzコマンドで解凍
tarコマンドでカレントディレクトリに展開
bidディレクトリを作ってそのディレクトリでcmakeを実行
この時、install prefixは指定されたディレクトリにbinディレクトリを生成するとまでは理解しないで実行したので、削除して再度実行する羽目に。
makeコマンドでは並列実行プロセス数指定とのことだったので、適当に設定すればよいかと思う
4.インストール後の試験
ビルドで完了では無くてインストールした後に動作させて初めてインストール完了です。
公式ドキュメントにあるように動作検証コマンドを実行します。
$ echo "下鴨神社の参道は暗かった。" | jumanpp
個人的にはちょっと悩んだのが、「WSL1とUbuntu 20.04の罠」「Juman++1.02系でのビルドエラー」の2点。
pyknpを動作させる目的でJuman++のインストールを行うことになったのですが、かなり優秀な形態素解析エンジンなので有難く使わせて頂きたいなと思っています。
あとがき
noteに初投稿なのでかなり軽めの話題にしようと思ったのが経緯。
また、Google Keepに備忘録を残しているのですが、文章化しようかなと思ったのがきっかけでしょうか。