Upgrade to Pro — share decks privately, control downloads, hide ads and more …

形態素解析器をフルスクラッチで作る話

 形態素解析器をフルスクラッチで作る話

Avatar for Nakano Masaki

Nakano Masaki

May 01, 2019

Other Decks in Programming

Transcript

  1. Twitter Bot をフルスクラッチで作る話 Nakano Masaki 香川高専 電気情報工学科 5 年 Wed

    1th May, 2019 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 1 / 25 —
  2. Twitter Bot をフルスクラッチで作る話 Nakano Masaki 香川高専 電気情報工学科 5 年 Wed

    1th May, 2019 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 2 / 25 —
  3. 形態素解析器をフルスクラッチで作る話 Nakano Masaki 香川高専 電気情報工学科 5 年 Wed 1th May,

    2019 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 3 / 25 —
  4. 自己紹介と今日の話題 中野将生 (なかの まさき) 香川高専 電気情報工学科 4 年 本題 Twitter

    Bot の典型的な実装 bi-gram マルコフモデルの形態素解析器のアルゴリズム 高速な Trie 木と Latice 解析の実装 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 4 / 25 —
  5. Twitter Bot n つ組 (NoSQL など) オタク ツイート 分かち書き (

    形態素解析) マルコフ連鎖 Twitter API この辺の話をします 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 5 / 25 —
  6. 文章生成の詳細 形態素 n 個で切り出す キョン ! 形態素 ! 形態素 解析

    形態素 解析 する 解析 する わ する わ よ 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 6 / 25 —
  7. 文章生成の詳細 しりとりをする オススメ の うどん うどん 食べ て て なかっ

    た EOS BOS 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 7 / 25 —
  8. マルコフ連鎖とは ? 過去と関係なく、現在の状態のみで未来への遷移が決まる 離散的な状態を取る A B C D E F

    B とC の何方を経由しようとD からの遷移は変わらない Text 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 8 / 25 —
  9. 必要なもの 学習元 (オタクなのでツイート数には困らない) Twitter API との通信 (書いている人は多い) 3 つ組みを格納する DB(要求が単純でデータも精々

    MB 単位) 形態素解析器 (実は実装できる) → 実装できるのでは ? 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 11 / 25 —
  10. 形態素解析器の基本的なアルゴリズム BOS 東 一般名詞 東京 固有名詞 京 固有名詞 京都 固有名詞

    都 接尾名詞 都 一般名詞 に 格助詞 住 一般名詞 住む 自立動詞 む 一般名詞 EOS 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 13 / 25 —
  11. 形態素解析器の基本的なアルゴリズム BOS 東 一般名詞 東京 固有名詞 京 固有名詞 京都 固有名詞

    都 接尾名詞 都 一般名詞 に 格助詞 住 一般名詞 住む 自立動詞 む 一般名詞 EOS 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 14 / 25 —
  12. Trie 木 Root f i s l h l m

    k n o w 魚 埋める フィル ム 知る 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 15 / 25 —
  13. Trie 木 Root f i s l h l m

    k n o w 魚 埋める フィル ム 知る 1 2 3 4 5 6 7 8 9 10 11 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 17 / 25 —
  14. 遷移表 状態 入力 f i s h l m k

    n o w 1 2 2 3 5 3 4 4 5 6 7 6 7 8 9 9 10 10 11 11 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 19 / 25 —
  15. Latice 4 6 7 9 10 11 2 3 5

    2 3 4 5 6 7 9 10 11 遷移 BASE 0 0 0 1 1 1 1 2 1 3 3 7 8 CHECK 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 22 / 25 —
  16. Latice BOS 東 一般名詞 東京 固有名詞 京 固有名詞 京都 固有名詞

    都 接尾名詞 都 一般名詞 に 格助詞 住 一般名詞 住む 自立動詞 む 一般名詞 EOS 形態素解析器をフルスクラッチで作る話 Nakano Masaki — 23 / 25 —