[[memo]]


* 今はpipで入れられる [#y7d2b55b]

 pip install pynlpir

- https://pypi.python.org/pypi/PyNLPIR

ただしまともに動かないのでいろいろ手を入れる必要ある。分かち書きだけが必要ならpos_mapをゴニョゴニョしてるところを書き換えて無効にするのが良い

以下は2013年当時の古い情報

* ICTCLAS(NLPIR)をpythonで使ってみる [#p7a02bd3]
昔からある中国語(簡体字)のPOS tagger。なんか新しくなってNLPIRとかいうのに変わっている。


-http://ictclas.nlpir.org/


NLPIRはバイナリとヘッダ、辞書は手に入れられるのでラップすればいろいろ動くわけだが、pythonで動かすコードが落ちてた。script言語から呼べるのは楽で良い

SWIGでラッパーを書いているので、SWIGが必要


-http://blog.yidooo.net/archives/nlpir-python-version.html
-https://github.com/killuahzl/python-nlpir


チェックアウトしてみて中身をみてみると、同梱されているlibNLPIR.soはどうも32bit Linuxの物なので、64bit環境の人は64bit用のlibNLPIR.soに置き換える必要がある。

-http://ictclas.nlpir.org/downloads

ここで、Linux,64bit,Cのzipをダウンロードすると、中にlibNLPIR.soが入っているので、gitで落としてきたlibNLPIR.soと差し替えれば問題なく動く。
取り敢えず64bitのdebianでは問題なく動いているようだ。

インストールは、必要に応じてlibNLPIR.soを差し替えたあと、

 ./setup.sh

で入る。sudoとかしてるところは適当に書き換えてあげたり、'setup.py install'も必要であればrootでやる。

ついでにpinyinを振ってくれるpinyinライブラリを使えば、単語に分けた後にpinyinを振れる。

-https://pypi.python.org/pypi/pinyin

インストール出来たらこんな感じのコードで分かち書きやpinyin化が出来る。

 from PyNLPIR import *
 import pinyin
 import sys
 import cStringIO
 sys.stdout = cStringIO.StringIO()#nlpir_initで標準出力にメッセージが出るのでそいつをトラップする
 nlpir_init('/path/to/NLPIR_DIR(ex /home/hogehoge/python-nlpir)', 'UTF-8')
 sys.stdout = sys.__stdout__#標準出力を戻す
 dat = nlpir_paragraph_process(r'@ICTCLAS张华平博士 应各位ICTCLAS用户的要求,张华平博士提前发布ICTCLAS2013 版本,为了与以前工作进行大的区隔,并推广NLPIR自然语言处理与信息检索共享平台,从本版本开始,系统名称调整为NLPIR汉语分词系统。')
 [pinyin.get(unicode(w,"utf8")) for w in dat.split(' ')]#pinyin化

&hatena_bookmark_anywhere();


#kakasi

 kakasi -ja -ga -ka -Ea -Ka -Ha -Ja

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS