Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Chainer meetup lt

90,436 views

Published on

Chainer meetup #1 での LT の資料です。

Published in: Technology

Chainer meetup lt

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

×