![人工知能 人工知能](https://srad.jp/static/topics/ai_64.png)
yasuokaの日記: 古典中国語(漢文)自動訓読ツールUD-Kundokuの試作版
私(安岡孝一)の11月14日の日記で公開した「返り点を自動で付けるUD-Kanbun」を拡張して、自動で訓読をおこなうツールUD-Kundokuを試作してみた。あくまで試作版なのだが、とりあえずインストーラは大丈夫そうなので、Linuxなら
% pip3 install udkundoku
一発でインストールできる。ただ、内部で旧仮名口語UniDicをダウンロードしているため、最初のインストールには多少なりとも時間がかかると思う。なお、Cygwin (64bit版)にインストールする場合は、11月11日の日記の手順でUniDic2UDを先にインストールした後
$ pip3.7 install udkundoku
でOKだ。これでインストールがうまくいったなら、まずは「不入虎穴不得虎子」を訓読してみよう。python3もしくはpython3.7を立ち上げて
>>> import udkundoku
>>> lzh=udkundoku.load()
>>> s=lzh("不入虎穴不得虎子")
>>> t=udkundoku.translate(s)
>>> print(t)
# text = 虎の穴に入らずして虎の子を得ず
1 虎 虎 NOUN n,名詞,主体,動物 _ 3 nmod _ Gloss=tiger|SpaceAfter=No
2 の _ ADP _ _ 1 case _ SpaceAfter=No
3 穴 穴 NOUN n,名詞,固定物,地形 Case=Loc 5 obj _ Gloss=cave|SpaceAfter=No
4 に _ ADP _ _ 3 case _ SpaceAfter=No
5 入ら 入 VERB v,動詞,行為,移動 _ 0 root _ Gloss=enter|SpaceAfter=No
6 ずして 不 AUX v,副詞,否定,無界 Polarity=Neg 5 advmod _ Gloss=not|SpaceAfter=No
7 虎 虎 NOUN n,名詞,主体,動物 _ 9 nmod _ Gloss=tiger|SpaceAfter=No
8 の _ ADP _ _ 7 case _ SpaceAfter=No
9 子 子 NOUN n,名詞,人,関係 _ 11 obj _ Gloss=child|SpaceAfter=No
10 を _ ADP _ _ 9 case _ SpaceAfter=No
11 得 得 VERB v,動詞,行為,得失 _ 5 parataxis _ Gloss=get|SpaceAfter=No
12 ず 不 AUX v,副詞,否定,無界 Polarity=Neg 11 advmod _ Gloss=not|SpaceAfter=No
とすれば、とりあえず「虎の穴に入らずして虎の子を得ず」という訓読文が得られるはずだ。あるいは、pythonを立ち上げずに
% echo 不入虎穴不得虎子 | udkundoku -j -t
虎 ─┐<┐ nmod(体言による連体修飾語)
の <┘ │ case(格表示)
穴 ─┬─┘<┐ obj(目的語)
に <┘ │ case(格表示)
入 ─┬───┴─┐ root(親)
ら │ │
ず <┘ │ advmod(連用修飾語)
し │
て │
虎 ─┐<┐ │ nmod(体言による連体修飾語)
の <┘ │ │ case(格表示)
子 ─┬─┘<┐ │ obj(目的語)
を <┘ │ │ case(格表示)
得 ─┬───┘<┘ parataxis(隣接表現)
ず <┘ advmod(連用修飾語)
を実行してみるのも、楽しいと思う。もし、表示が乱れるようなら、-tの代わりに-t2も試してみてほしい。ただ、あくまで試作版なので、まだまだ日本語が不便だったりする。正式版がいつ完成するか、私自身にもまだ分からないのだが、時々は
% pip3 install -U udkundoku
して、最新版に更新してほしい。
古典中国語(漢文)自動訓読ツールUD-Kundokuの試作版 More ログイン