yasuokaの日記: 古典中国語(漢文)の形態素解析・係り受け解析のためのudkanbun
思うところあって、古典中国語(漢文)の形態素解析・係り受け解析をUniversal Dependenciesでおこなうpython3モジュールudkanbunを、PyPIからリリースした。UDPipe・MeCab用の言語モデルを、モジュールに含めておいたので
% pip3 install udkanbun
一発でインストールできるはずである。使い方も簡単で、たとえば「不入虎穴不得虎子」を形態素解析・係り受け解析するには
% python3
>>> import udkanbun
>>> lzh=udkanbun.load()
>>> s=lzh("不入虎穴不得虎子")
>>> print(s)
# text = 不入虎穴不得虎子
1 不 不 ADV v,副詞,否定,無界 Polarity=Neg 2 advmod _ Gloss=not|SpaceAfter=No
2 入 入 VERB v,動詞,行為,移動 _ 0 root _ Gloss=enter|SpaceAfter=No
3 虎 虎 NOUN n,名詞,主体,動物 _ 4 nmod _ Gloss=tiger|SpaceAfter=No
4 穴 穴 NOUN n,名詞,固定物,地形 Case=Loc 2 obj _ Gloss=cave|SpaceAfter=No
5 不 不 ADV v,副詞,否定,無界 Polarity=Neg 6 advmod _ Gloss=not|SpaceAfter=No
6 得 得 VERB v,動詞,行為,得失 _ 2 parataxis _ Gloss=get|SpaceAfter=No
7 虎 虎 NOUN n,名詞,主体,動物 _ 8 nmod _ Gloss=tiger|SpaceAfter=No
8 子 子 NOUN n,名詞,人,関係 _ 6 obj _ Gloss=child|SpaceAfter=No
でOKである。なお、複数の文を一度に解析したい場合は
>>> s=lzh("孟子見梁惠王\n王曰\n叟不遠千里而來\n亦將有以利吾國乎")
という風に、改行コードで区切ってやれば大丈夫だ。私(安岡孝一)の共同研究班のページで、これまでバラバラに配布していたものを、エイヤっとひとまとめにしたので、ぜひ使ってみてほしい。
古典中国語(漢文)の形態素解析・係り受け解析のためのudkanbun More ログイン