パスワードを忘れた? アカウント作成
14046242 journal
人工知能

yasuokaの日記: UniDic2UDによる単語間の係り受けと二文節間の係り受け

日記 by yasuoka

昨日の日記に続いて、UniDic2UDにも縦書きツリーを実装してみた。これで、日本語における単語間の係り受け解析と、二文節間の係り受け解析が、どう異なっているか、少しはわかりやすくなると思う。まずは、最新版のUniDic2UDをインストール。UDPipeの言語モデルjapanese-gsdと、旧仮名口語UniDicも、ダウンロードしておこう。

% pip3 install 'unidic2ud>=1.4.4'
% udcabocha --download=japanese-gsd
% udcabocha --download=qkana

インストールがうまくいったら、「未だ義にして其君を後にする者は有らざるなり」の単語間係り受けを、旧仮名口語UniDicとjapanese-gsdで解析してみよう。

% python3
>>> import unidic2ud
>>> qkana=unidic2ud.load("qkana")
>>> s=qkana("未だ義にして其君を後にする者は有らざるなり")
>>> print(s.to_tree())
未だ <──┐     advmod
  義 ─┐<┤     iobj
  に <┘ │     case
  し ─┬─┘<──┐ advcl
  て <┘     │ mark
  其 <┐     │ det
  君 ─┤<┐   │ obj
  を <┘ │   │ case
  後 ─┐<┤   │ iobj
  に <┘ │   │ case
する ───┘<┐ │ acl
  者 ─┬───┘<┤ nsubj
  は <┘     │ case
有ら ─┬─────┘ root
ざる <┤       aux
なり <┘       aux

もし、表示が乱れる場合は、to_tree(2)を試してみてほしい。ざっと見た限りだと、「未だ義にして」全体が「有ら」にぶら下がっている点が、ちょっと解析ミスっぽい。本来なら「義にして」は「する」と並置(conj)されるべきなのだが、それは日本語としては正直なところ不自然で、まあ仕方ないところだろう。ただ、単語係り受け解析をミスってる結果、UniDic2UDを内部流用しているudcabochaは、文節間の係り受けを一部ミスってしまう。

% echo 未だ義にして其君を後にする者は有らざるなり | udcabocha -U qkana -f 0
未だ---D
  義に-D
    して-----------D
        其-D       |
        君を---D   |
          後に-D   |
            する-D |
              者は-D
        有らざるなり
EOS

なかなかうまくいかないものだ。ちなみに、本日15:00から18日(月)12:00まで、UniDicサーバーはメンテナンスが予定されている。メンテナンスの間、qkanaのダウンロードも出来なければ、Web茶まめAPIも停止する。その間UniDic2UDやudcabochaも、UniDic辞書なしでは一部の機能が動かなくなるので、ダウンロードはお早目に。

この議論は、yasuoka (21275)によって ログインユーザだけとして作成されたが、今となっては 新たにコメントを付けることはできません。
typodupeerror

Stableって古いって意味だっけ? -- Debian初級

読み込み中...