View
76.340
Download
0
Category
Preview:
Citation preview
アカデミアでの Chainer 利用の実例 深層ニューラルネットワーク を用いた日本語単語分割
Chainer Meetup #1 LT枠
自己紹介• 北川善彬(きたがわよしあき)
• Twitter: @Ace12358
• 首都大学東京 M1 小町研究室(自然言語処理)
• 研究テーマ:Web文書を対象とした日本語形態素解析
• 興味がある分野:形態素解析、対話、ソーシャルメディア活用
• 趣味:ギター、ビリヤード、カラオケ、人狼
研究のテーマ• テーマ:Web文書を対象とした形態素解析
• 課題:
• Web文書データの整備
• 学習アルゴリズムの改良(CRF, 深層学習)
• 口語表現の処理(崩れ表記,新語等の処理)
究極的には次のような 崩れた文の解析がしたい
• 極端な例;
• 小文字表記
• カタカナ表記
• 顔文字
• 象形文字?4
先ほどの tweet を形態素解析 してみようとすると(mecab IPAdic)
5
ま/ぇ/の/彼氏/の/とき/ィロィロ/ あっ/て/恋/に/おく/
びょぅになってた/ヮタシ/に/また/恋/を/
ぉしえてくれたの/。/。/。/…/>_<…/いっ/も/
支え/て/くれ/て/ぁりがとぅ/。/。/ は/ぢ/ゅかしぃ/ケド/ダィスキダョ/。/。//////
形態素解析における未知語によるエラー分析(50件)
• 品詞主体の分類、文字種による細分類で分析 • 名詞による誤りがほとんど、特にNEが多い • ひらがな、文字種の混合による誤りが多い
0
10
20
30
40
名詞 独立詞 接尾辞 連用詞 判定詞 複合
ひらがなカタカナ漢字アルファベット混合
6
未知語の品詞による分類の例
• 独立詞や、連用詞に含まれるオノマトペのような表現はたくさん生成できる
• 文字間にスペース、記号を挿入する例などは解析が難しい(例:規 制、ファ●ミリーマート)
分類 例 ()内は補足説明
名詞 まゆゆ(NE)、C・ロナウド(NE)、あいぽん(NE)
独立詞 ふぇ、ぐはは、おはあり
接尾辞 やん(方言)、なやん(方言)
連用詞 ぴよぴよ、あへあへ
判定詞 もす(「ます」の方言)、じゃん
複合 すばらC
7
研究のテーマ• テーマ:Web文書を対象とした形態素解析
• 課題:
• Web文書データの整備
• 学習アルゴリズムの改良(CRF, 深層学習)
• 口語表現の処理(崩れ表記,新語等の処理)
中国語においては深層学習を用いた単語分割が盛ん
• LSTM を用いた CWS [Chen+ EMNLP2015] (state-of-the-art)
• Gated Recursive NN も用いた CWS [Chen+ EMNLP2015]
• 文字 Embedding を用いた CWS [Ma and Hinrichs ACL2015]
単語分割は系列ラベリング問題として解かれる
• 入力:単語分割してみるよ
• 出力:B I B I B B B I B (単語 |分割|し|て|みる|よ)
• 出力次元をラベルの数にしてニューラルネットワークを構築できる
Neural Model for Word Segmentation
• 文字 embedding のconcat
• 隠れ層
• 出力層(ラベル次元)
• 出力y と 遷移パラメータを用いてスコアを作成
• 正解の系列スコアと出力の系列スコアの差が小さくなるように学習
chainer で実装時の話
• ラベルを出すところまでは chainer で簡単にできる
• 系列をビタビで処理する処理が難しかった
Chainer でビタビ部分のグラフ構造を保持させるには?
• ラベル (BIのとき)
• ラベル系列をリストYとして append していく(1文)
• Y = [[0.7, 0.3], [0.6, 0.4],…, [0.4, 0.6]]
• 必要なスコアはビタビで計算したパスに含まれる方そこで
• Y’ = [[1, 0], [0, 1], …, [0, 1]] を作成
• Y・Y’ を chainer のmatmul にし chainer の function matmul で 計算すると生成確率部分のスコアが計算できる
まとめ• 日本語単語分割を chainer で実装しました
• 日本語単語分割の未知語エラーの紹介
• ビタビなどの系列を処理するときに、詰まった点を紹介
• 論文が書ければ言語処理学会 NLP 2016 で発表予定
Recommended