『JUMAN++』の⼤大規模語彙獲得へ向けた取り組み
京都⼤大学 森⽥田 ⼀一

12017.3.6	  ＠語彙資源活⽤用シンポジウム

形態素解析とは• 単語の境界と品詞を推定するタスク
NPGå

単語品詞私Mb¢9hJ\^は新しい

本もE

買った

âu: kºÝáÓãn£0RE[æ0R°_§4C¢V¡Mb
名詞 °,­
助詞
形容詞
名詞
助詞
動詞
£Mb¢0R£9h°E[¬1¡Mb°%®(• 後段の言語処理の基礎

MbÜÄµ×´¶ß=q@æ gl

1980! ¢. q]ªÌáÈÎÂ¼ß¡ÔáÃÒÝ;£mI(·8âLHã!
(BIvÜÄµ×´¶ßq@¤vvgl  l®¨ (((nMbvv5
ËÅ»Ý?Tq@¡ ££=q@¢>¥t¼¿È® (7+â`]o ã!
(·8â90ã!
1990! ¬q£5¦ä àà(CREST1¢D%¯®Mb
知識に基づく構造的言語処理
ÜÄµ×´¶ßq@¤((黒橋，京都大学グループ)gl  lÜÄµ×´¶ßq@¤1990! (¬q£5¦2z未知語• 辞書に登録されていない語• ⽇日本語の形態素解析は辞書に⼤大きく依存しているため，未知語が存在する⽂文では解析を誤りやすい．

• 形態素解析で残るエラーの40％が未知語によるもの(1-­‐best)

例文:「綺麗にヘコんでるお腹になりたい」
きれいに 形容詞 "代表表記:綺麗だ/きれいだ"
ヘコ未定義語ん
未定義語
でる
動詞"代表表記:出る/でる"
お腹名詞"代表表記:お腹/おなか"に助詞なり
動詞"代表表記:成る/なる"たい接尾辞 "代表表記:たい/たい"3未知語の撲滅に向けて• ⼤大きければ⼤大きいほどよいが，⼈人⼿手では語彙拡張に限界がある

自動的な語彙獲得
• しかし，単純に語彙を増やすと解析に副作⽤用が• 例:「ことは」(⼈人名)
写真部だという|ことは|以前…	  	  (JUMANによる解析)

JUMAN++ による解析
4

⽬目次• JUMAN++• 語彙獲得フロー• 語彙獲得の⽅方針• Wikipedia	  からの語彙獲得• Wiktionary	  からの語彙獲得• Webテキストからの語彙獲得• まとめ5JUMAN++

6

背景✔ foreigner	  suffrage	  right×人外国
foreignperson

権

✔

政権

×

参政

suffrage

人参carrotright

regime

従来の形態素解析では単語の並びに対する意味的自然さを考慮できない7

単語ベクトル• 近年の言語処理では，ベクトルで単語を表現することがよく行われる• 似ている単語，似ていない単語をベクトルの類似度で表現することができる
単語ベクトル間の類似度
大阪0.950

神戸0.857

京都学科

広島大学

0.902
0.718

0.858

0.878
0.83

学部

中学校
8

• For$sequence$predic>on$

RNNLM– language$model,$sequence$labeling,$MTx(t)単語をベクトル空間へ写像

1



0…
語彙数と同じ次元• コンテクストを隠れ層として持つNNベースの言語
P($|$$)
モデル.
• 単語を意味的に汎化されたベクトルとして扱う

y(t)
s(t)

VW

0U

潜在ベクトルcontext(１つ前の潜在ベクトル)

Mikolov+$10

s(t-1)

Figure 1: A simple recurrent neural network.

“外国人参政権”	  を入力とする時の例“外国人参政権”	  を入力とする時の例
0:

外国010lX

netj (t) =xi (t)vji +p(人|外国)
i=	  0.399m
X:0人 1)u1jh + bjsh (th00p(人参|外国)=	  y0.002(t) = g(net (t))

netk (t) =km
X
j(2)

参政

p(参政|外国,人)

0100p(権|外国,人,参政)=	  0.909=	  0.00003• Hidden layer ! Output layerk00(3)0:sj (t)w
人参kj + bk

0
1
0:

0(4)

p(政権|外国,人参)

Where f and g are the activate functions in the hidden layer and output =	  layer
0.0021
respectively. The activate function holds the non-linearities of the entire neuralnetwork, which greatly improves its expression power. bj and bk are the biases.
The architecture of a recurrent neural network is shown in Figure 1. Whatp(<bos>|外国,人,参政,権)=	  0.007p(<bos>|外国,人参,政権)=	  0.0006

9JUMAN++による精度改善[Morita+	  EMNLP2015]

実験設定

RNNLMの訓練に用いたデータ:

基本モデルの学習と評価に用いたデータ

Web	  テキスト 1000万文(F1)

京都大学テキストコーパス（news),
京都大学ウェブ文書リードコーパス(web)
80

98.6

70

98.4

60

98.2

50

98

40

97.8

30
20

97.6
97.4

10

JUMAN

MeCab JUMAN++

単語分割+品詞タグ付け

×JUMAN

感想|やご|要望0JUMAN

JUMAN++

1,000文中の致命的な誤りの数✔ JUMAN++

感想 |	  や |	  	  ご |	  	  要望10

副作⽤用の軽減例• JUMAN++による解析で，副作用を軽減– 写真部だという|ことは|以前…	  	  (JUMAN)– 写真部だという|こと|は|以前…	  (JUMAN++)– 人名として解析するほうが適切な文脈では，人名として解析• |ことは|は以前写真部にいた (JUMAN++)11

誤り例を集めています12収集された誤りの例• まっくろくろすけでておいで13収集された誤りの例• まっくろくろすけでておいでまっ接頭辞
くろく 形容詞
ろすけ 名詞で助詞ておい 名詞
で助詞"代表表記:真っ/まっ""代表表記:黒い/くろい""代表表記:露助/ろすけ"”代表表記:手負い/ておい"14

語彙獲得フロー15

語彙獲得の⽅方針• 基本的な語彙は人手で整備（基本語彙）– 語彙数を絞る代わりに，語のドメインや反義語などの情報をリッチに付与する• 基本語彙に含まれない語は自動的に獲得– 単語の候補（Wikipedia	  の記事タイトルなど)のうち，複合語でないものを自動判定し辞書へ

16

JUMAN++辞書獲得フロー
Wikipedia

Wiktionary(JP)

Wiktionary(EN)

Web	  Corpus

形態素解析

形態素解析

形態素解析

形態素解析＋
文節区切り

基本語彙辞書

分布類似度

複合語判定
文節区切り解析済み
Web	  Corpus

上位語・代表表記付与
品詞付与 or	  品詞推定
Wikipedia
辞書

Wiktionary	  (JP)辞書

Wiktionary	  (EN)
辞書

Webコーパス辞書

統合辞書

Web	  Corpus

係り受け解析係り受け解析済み
Web	  Corpus

表記揺れ認識統合辞書(異表記統合)17

未獲得の語彙が⾒見つかれば
1. まずは自動獲得の見直し– Wikipedia,	  Wiktionary	  から語彙を獲得するルー
ルや基準を見直し

2. 基本的な語彙であれば，基本語彙として人手登録することも検討3. 将来獲得したい候補として貯めておく例)	  にがうるか18Wikipedia  からの語彙獲得• リソース– 約100万記事– 記事タイトル，リダイレクト，カテゴリ，テンプレート，箇条書き等を利用• 獲得する語彙– 幅広く名詞を獲得• 普通名詞:	  アベノミクス， ＧＰＧＰＵ ，…
組織名:	  Dentsu， ファーウェイ ，…
人名:	  山極， オバマ …
地名:	  豊洲， 伊勢 …
19

記事タイトルからの語彙獲得記事タイトル

上位語

定義文• 記事タイトル，リダイレクトから語彙を獲得– 記事中の定義文から上位語を抽出し，細分類(人名,地名等)を判定– 複合語を除外して辞書に登録する

20

複合語の除外• 単語候補を形態素解析した結果を利用• 解析結果が誤っていると思われる例を辞書に追加– 辞書に無く，分割もできないカタカナ語，アルファベット例)  ゴスペル，ThinkPad– 一文字の語の並びとして解析される場合例)  爽 |  健 |  美 |  茶，み |  ん |  ぱ |く– カタカナ語の誤った分割• カタカナ語の分割は難しく，単語候補が分割できても，あやまった分割であることが多い• 単語候補とその主辞の間で，WEBテキスト上に出現するコンテキストを比較し，類似していなければ単語として獲得する例)    フット+サル (≠  サル)

21

記事のカテゴリや Infoboxからの獲得
記事タイトル

定義文

上位語・・・

Infobox

カテゴリ• カテゴリ，Infobox を利用して人名や組織名を判定– 人名は姓と名を分割して，それぞれを登録
22

⼀一覧ページからの獲得• 一覧ページには，個別の記事を持たない語であっても記載されている場合がある

一覧・・・• 一覧から語彙を獲得

上位語– 複合語の除外– 助詞を含む単語列や記号等を除外• 一覧では，作品名など単語として不適当なものも存在するため– タイトルから上位語を抽出する• 上位語から細分類を判定
23

Wiktionary 辞書構築
• Wiktionary  内のエントリを解析– 英語版，⽇日本語版を利⽤用• 英語版:  8万記事
• ⽇日本語版:  4万記事
– ⾒見出し語と品詞，（動詞や形容詞の場合）活⽤用型を抽出• JUMAN  と⽂文法体系が異なるためルールにより品詞と活⽤用型を変換– 複合語をWikipediaと同じ基準で除外する

24

Webコーパスからの語彙獲得• オンライン未知語獲得 (村脇,  2010)  中の品詞推定の⼿手法を利⽤用‣ 語幹の候補に対して，後続する語尾と付属語列(サフィックス)から品詞の候補を列挙‣ 語幹候補ごとに,  ⽤用例をコーパ
ス中から集め以下の条件を満たした時に品詞を確定する-‑ ⼀一定の割合で共通した品詞候補がある-‑ 活⽤用形の異なり数が⼀一定以上

用例: ググってみた。
子音動詞ラ行 e.g. 走ってみた
子音動詞ワ行 e.g. 笑ってみた
子音動詞タ行 e.g. 立ってみた
子音動詞カ行 e.g. 行ってみた:

用例: ググりたいキーワード
25

子音動詞ラ行 e.g. 走りたい
母音動詞 e.g. 降りたい構築した辞書
語彙数
基本語彙辞書3万語

Examples
走る，行く，明日Wikipedia

アベノミクス，Dentsu，85万語
山極，豊洲

Wiktionary

8千語
1万語
90万語

Web	  コーパス
合計

インセンティヴ，糾す
逆進税,	  政独委

26

JUMAN++• 黒橋研Webページ，GitHubで公開• 次バージョンを近日公開予定– 従来の4倍以上の解析速度– 実装から辞書依存を排除
27

まとめ• JUMAN++と語彙獲得のフローを紹介• ぜひJUMAN++を使ってみて下さい！

28