windowsのpythonでjanomeを使って分かち書き 

 janomeのインストール

Windowsで分かち書きをしたくて色々調べたが、大道はmecabを使うのだが、インストールが面倒とのこと、次点でjanomeがあるがこちらはpipで手軽にインストールできるけども、速度は1/10000程度とのこと、とりあえずhanomeですることに、インストールは簡単、

> pip install janome

でOK

test.pyを作って

from janome.tokenizer import Tokenizer
t = Tokenizer()
s = 'すもももももももものうち'
print(s)
for token in t.tokenize(s):
      print(token)

 で

すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ

でOK 。辞書が古いらしいのでNEologdを使えるようにする。


(失敗)NEologdのインストール

windows上でもできるようだが、ubuntu上でした方が楽らしいので、仮想マシンにubuntuをインストールしてそこで行うことにした。
とりあえず準備としてgit とcurlが必要なのでまずインストール、その後mecab環境が必要。

sudo apt install git curl$
sudo apt install mecab
sudo apt install libmecab-dev
sudo apt install mecab-ipadic-utf8
sudo apt install make
git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git
で環境構築完了。辞書の作成
cd mecab-ipadic-neologd
sudo bin/install-mecab-ipadic-neologd -n -a

構築に1分くらいかかる。 

Do you want to install mecab-ipadic-NEologd? Type yes or no.

って出てくるのでyesをタイプ

/usr/lib/x86_64-linux-gnu/mecab/dic

にmecab-ipadic-neologd ディレクトリができるのでこのディレクトリをWindows側にコピー、とりあえず c:\tool\mecab-ipadic-neologd とした

 これで仮想マシンはとりあえず終了。

がjanomeでつかえないね。とりあえず、標準辞書では分かち書きできるからよしとしよう。


janomeでコンパイル

JanomeでNEologd辞書を使う にあった方法をやってみる


git clone https://github.com/neologd/mecab-ipadic-neologd.git
xz -dkv mecab-ipadic-neologd/seed/*.csv.xz
cat mecab-ipadic-neologd/seed/*.csv > neologd.csv

できあがった neologd.csv を.pyのあるのと同じディレクトリに移動し、以下のpythonプログラムを実行

from janome.dic import UserDictionary
from janome import sysdic
user_dict = UserDictionary('neologd.csv', 'utf8', 'ipadic', sysdic.connections)
user_dict.save('neologd')

これがめっちゃ時間かかって動いていないかと思った。VS Codeの中で動かしている生なのか、最初、動いていないのかと思うくらい難も起こっていなかったが、タスクマネージャーで見ると、4コアで何か作業しているようだ、各コアの動作状況で見ないと、総合では25%程度で凪なので、動いているかどうかわからない。メモリはとりあえずめっちゃ食う。



とりあえず、待ち中。
約20分特に状況変化無し。約30分特に状況変化無し。
約40分特に状況変化無し。約50分特に状況変化無し。
約60分特に状況変化無し。約70分特に状況変化無し。
約80分特に状況変化無し。約90分特に状況変化無し。
約100分特に状況変化無し。メモリ、大丈夫か?最初ぐっとあがってその後じわじわあがってきた。

とりあえず仮想マシンを止める。

約110分(CPU負荷がちょっと下がったように見えるが)特に状況変化無し。
約120分特に状況変化無し。約140分特に状況変化無しメモリ使用率99%→97%。
約160分に状況変化無し。作業中止

とりあえず、一個のcsvでやったらすぐできたので、コマンドは間違っていない

JanomeでNEologd辞書を使う」で配布されているファイルをつかえることを確認。








コメント

このブログの人気の投稿

Windows10デフォルトゲートウェアに0.0.0.0が追加される

iOS VLC でSMB共有できなかった点について

無線LANルータの選択肢が、NEC Aterm 静的ルーティングできない問題