yasuokaの日記: 日本語における単語間の係り受け解析
日本語の係り受け解析を、文節レベルではなく単語レベルでおこなうメリットは、どこにあるのだろうと、私(安岡孝一)なりに考えてみた。つらつら考えるに、カッコが文節をぶった切ってしまう場合、文節レベルの解析は微妙に無理が生じる気がする。典型的なのが法律文で、たとえば戸籍法第四十九条「出生の届出は、十四日以内(国外で出生があつたときは、三箇月以内)にこれをしなければならない。」を、Universal Dependenciesで係り受け解析してみよう。
1 出生 出生 NOUN 名詞-普通名詞-サ変可能 _ 3 nmod _ SpaceAfter=No
2 の の ADP 助詞-格助詞 _ 1 case _ SpaceAfter=No
3 届出 届出 NOUN 名詞-普通名詞-一般 _ 26 nsubj _ SpaceAfter=No
4 は は ADP 助詞-係助詞 _ 3 case _ SpaceAfter=No
5 、 、 PUNCT 補助記号-読点 _ 3 punct _ SpaceAfter=No
6 十四 十四 NUM 名詞-数詞 _ 7 nummod _ SpaceAfter=No
7 日 日 NOUN 接尾辞-名詞的-助数詞 _ 8 compound _ SpaceAfter=No
8 以内 以内 NOUN 名詞-普通名詞-副詞可能 _ 26 obl _ SpaceAfter=No
9 ( ( PUNCT 補助記号-括弧開 _ 21 punct _ SpaceAfter=No
10 国外 国外 NOUN 名詞-普通名詞-一般 _ 14 obl _ SpaceAfter=No
11 で で ADP 助詞-格助詞 _ 10 case _ SpaceAfter=No
12 出生 出生 NOUN 名詞-普通名詞-サ変可能 _ 14 nsubj _ SpaceAfter=No
13 が が ADP 助詞-格助詞 _ 12 case _ SpaceAfter=No
14 あつ 有る VERB 動詞-非自立可能 _ 16 acl _ SpaceAfter=No
15 た た AUX 助動詞 _ 14 aux _ SpaceAfter=No
16 とき 時 NOUN 名詞-普通名詞-副詞可能 _ 21 nsubj _ SpaceAfter=No
17 は は ADP 助詞-係助詞 _ 16 case _ SpaceAfter=No
18 、 、 PUNCT 補助記号-読点 _ 16 punct _ SpaceAfter=No
19 三 三 NUM 名詞-数詞 _ 20 nummod _ SpaceAfter=No
20 箇月 箇月 NOUN 名詞-普通名詞-助数詞可能 _ 21 compound _ SpaceAfter=No
21 以内 以内 NOUN 名詞-普通名詞-副詞可能 _ 8 appos _ SpaceAfter=No
22 ) ) PUNCT 補助記号-括弧閉 _ 21 punct _ SpaceAfter=No
23 に に ADP 助詞-格助詞 _ 8 case _ SpaceAfter=No
24 これ 此れ PRON 代名詞 _ 26 obj _ SpaceAfter=No
25 を を ADP 助詞-格助詞 _ 24 case _ SpaceAfter=No
26 し 為る VERB 動詞-非自立可能 _ 29 advcl _ SpaceAfter=No
27 なけれ ない AUX 助動詞 _ 26 aux _ SpaceAfter=No
28 ば ば CCONJ 助詞-接続助詞 _ 26 mark _ SpaceAfter=No
29 なら 成る VERB 動詞-非自立可能 _ 0 root _ SpaceAfter=No
30 ない ない AUX 助動詞 _ 29 aux _ SpaceAfter=No
31 。 。 PUNCT 補助記号-句点 _ 29 punct _ SpaceAfter=No
この例文では、二つある「以内」をapposで繋いでおいて、カッコ内の単語を全て「以内」にぶら下げるという、やや大技の解析をおこなってみた。UniDic2UDのツリーで示すと、たとえば以下のとおり。
出生 ─┐<┐ nmod(体言による連体修飾語)
の <┘ │ case(格表示)
届出 ─┬─┘<──────┐ nsubj(主語)
は <┤ │ case(格表示)
、 <┘ │ punct(句読点)
十四 <┐ │ nummod(数量による修飾語)
日 ─┘<┐ │ compound(複合)
以内 ───┴─────┐<┤ obl(斜格補語)
( <──────┐ │ │ punct(句読点)
国外 ─┐<┐ │ │ │ obl(斜格補語)
で <┘ │ │ │ │ case(格表示)
出生 ─┐<┤ │ │ │ nsubj(主語)
が <┘ │ │ │ │ case(格表示)
あつ ─┬─┘<┐ │ │ │ acl(連体修飾節)
た <┘ │ │ │ │ aux(動詞補助成分)
とき ─┬───┘<┤ │ │ nsubj(主語)
は <┤ │ │ │ case(格表示)
、 <┘ │ │ │ punct(句読点)
三 <┐ │ │ │ nummod(数量による修飾語)
箇月 ─┘<┐ │ │ │ compound(複合)
以内 ─┬─┴───┘<┤ │ appos(同格)
) <┘ │ │ punct(句読点)
に <────────┘ │ case(格表示)
これ ─┐<┐ │ obj(目的語)
を <┘ │ │ case(格表示)
し ─┬─┴───────┘<┐ advcl(連用修飾節)
なけれ <┤ │ aux(動詞補助成分)
ば <┘ │ mark(標識)
なら ─┬───────────┘ root(親)
ない <┤ aux(動詞補助成分)
。 <┘ punct(句読点)
もちろん、現時点のUniDic2UDは、ここまでうまく解析ができるわけではない。GiNZAも、こういう大技の解析をおこなわない。法律文におけるカッコの解析は、現実には非常に難しくて、だからこそ研究対象になりそうだと私には感じられるのだ。さて、どうするのがいいかな。
日本語における単語間の係り受け解析 More ログイン