SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
鬱くしい日本語のための
形態素解析入門




              0
プロフィール

          名前: とろとき
          言語: P to / v/el
               yh nJ aP r
                    a

          自然言語処理とか機械学習とかを
          勉強中の初心者。
          ちょっと前はA dod
                 n riとかやってた。
 @trtk
  ooo i

          中学生




                               0.
                                1
形態素解析とは
そもそも形態素って何?
 -意味を持つ最小の言語単位
 -何が最小単位なのかは割と曖昧
 -「今日は晴れ」 = 「今日」+「は」+「晴れ」

つまり形態素解析は…
 文を自動で形態素に分けちゃおう! という試み
 自然言語処理の土台となる
 実際には形態素に分割するだけでなく、他に三つの処理がある

 -形態素に分割
  上の例みたいな
 -品詞の付与
  名詞や動詞などを単語に付ける
  「今日/
     名詞」+「は/
           助詞」+「晴れ/
                  形容詞」
 -原型の復元
  「珍しき」 → 「珍しい」

                                01
形態素解析とは
形態素解析の代表的なツール
 -U N(2 )
  J MA 9 年~
 - h S n(6 )
  C a e 9 年~
 - C b (2 )
  Me a 0 年~
 - y e (9 ) N w
  K T a 0 年~ ← e !


・ KTa
   y e はその前に比べ先進的なアプローチを取っている(今回は解説しない)
・ ただし現在で最も多く使われるのは Me a
                     Cb


Me a は精度9 %って言うし、形態素解析はもう解決した分野では?
  Cb     9
 -9
  9 %できるのは新聞記事などのかたい文章
 -崩れた日本語(不自然言語)は実用にも満たないこともある
 -不自然言語の形態素解析は最近注目されているっぽい次の課題




                                          02
辞書を用意


・ 辞書を用意
・ 文章を考えられる全ての単語のパターンで辞書引き
・ すべての可能な組み合わせから最適な単語列を発見する
  -今回の中で一番大変




                              03
辞書を用意
辞書選び

 ・ 何種類も無料で配布されている
 ・ コスト推定(後述)のため本格的にはコーパスも必要になるが、
  単語の辞書だけでも簡単な形態素解析器は作れる


 辞書の主要なものとして
  -P -i
   IAdc
  - AS - i
   N I jc
      Td
  - nDc
   U ii


 単語数は N I - i< U ii<IAdc
       AS j c
         Td     nDc P -i
  ・ 今回は実験としてIAdc
            P -iを使用
  ・ ただしほとんどの辞書には互換性があり、取り替えられる


                                   04
辞書を用意

辞書の中身
 Me a のフォーマットの辞書だと
   Cb
  きらびやか, 8 , 8 , 4 , 形容動詞語幹,* ,きらびやか,
       1 7 27 39
        2 1 8 名詞,          * ,*
                            ,* ,    キラビヤカ,
                                         キラビヤカ

  史的, 8 , 8 , 0 , 形容動詞語幹,* ,史的,
    1 7 27 68
     2 1 6 名詞,          * ,*
                         ,* , シテキ,
                                 シテキ

  プラトニック, 8 , 8 , 7 , 形容動詞語幹,* ,プラトニック,
        1 7 27 07
         2 1 5 名詞,          * ,*
                             ,* ,     プラトニック,
                                            プラトニック

  てらてら, 8 , 8 , 4 , 形容動詞語幹,* ,てらてら,
      1 7 27 39
       2 1 8 名詞,          * ,*
                           ,* ,   テラテラ,
                                      テラテラ




  静謐, 8 , 8 , 4 , 形容動詞語幹,
    1 7 27 85
     2 1 4 名詞,          *,
                    * ,静謐,
                    ,*
                     * , セイヒツ,
                             セイヒツ


  単語,
    左文脈I,
       D右文脈I,
           D単語コスト, 品詞細分類1
                 品詞,     ,
                         品詞細分類2
   後で説明             品詞細分類3,
                          活用型,
                             活用形,
                                基本形, 発音
                                   読み,


 こんな感じになっている。
                                                     05
辞書引き




       06
辞書引き
辞書検索のためのデータ構造、トライ木(Ti
                    r)
                     e

文字列の最初から順番にたどっていく
これだと O (
      (文長) が O 文長)
         2
          )   (   で辞書引きが
できるので総当たりより効率が良い


・ C mmo Pe x e rh
   o   n rfi S ac
 -ある文字が開始位置の単語を列挙
 -これを全ての文字に適用して
  Ti
   r 木から辞書引きする
    e

>>CS”
 > P(東海道新幹線”)
>>東 : 名詞
 >   :
>>東海 : 名詞
 >     :
>>東海道 : 名詞
 >       :
                       I g b ht:jw k e iogw k トライ木
                       ma e y t /a ip da r/ i/
                               p /. i   .    i
>>東海道新幹線 : 名詞
 >         :


                                                     07
「新幹線」というワードが入っていないのに注意
最適な単語列を発見する
辞書引きをして全てのパターンの単語を引くと




・ このような図ができてくれる(ラティス構造と呼ばれる)
・ ここから一通りの最適解を導き出す
                    ※1図はかな漢字変換のラティス構造
                     ・ 後で気がついたよ!
                    ※2 O ,O は文頭と文末の特殊記号
                      B SE S              08
最適な単語列を発見する




・ ヒュースティックス(規則)に基づく手法(8 年代)
                       0
  ・ 形態素最小法 :
           形態素の一番少ない解を優先
  ・2文節最長一致法 :
            文を左から見て2文節毎の長さが長い解を優先
  などなど
  しかし全く統計的ではない!
                                    09
最適な単語列を発見する
コスト最小法




・ 今の形態素解析器はこの方法を基礎としている(Me a , h S n J MA .
                          C b C a e ,U N. )
・ それぞれの単語と単語の「繋がりやすさ」を数字で表し、和が最小の道をアンサー


具体的には…
                                              1
                                              0
最適な単語列を発見する
コスト最小法




・ 連接コスト :
        二つの単語のつながりやすさ
・ 生起コスト :
        一つの単語の出現しやすさ


全ての文字の連接コスト+生起コストが最小になる解をアンサー
そのまま求めると計算しきれないので…
  秘策 : i ri
     Vt b アルゴリズム
        e
                                1
                                1
最適な単語列を発見する
左・右文脈I
     D

 ・ 実は辞書の中の mar .e(
             tx f
              id 連接表)を見るためのI番号
                           D

   ある単語 A Bが連接をなすとき,
         ,

   ・ 単語Aは左文脈Iを見る
            D
   ・ 単語Bは右文脈Iを見る
            D

mar .e :
  tx f
   id
 左文脈I
    D      右文脈I 連接コスト
              D
   0       15
            34   -9
                  96
  15
  34       15
            32   -7 8
                 25
  15
  32        0    -4
                  91
   .
   .
   .        ..
             .    ..
                   .

例えば左文脈Iが1 5 で右文脈Iが1 5 だと、ここで連接コストが -7 8
        D 34     D 42                 25
mar .e には (
  tx f
   id     単語)、つまり1 0 0 0 0 0
            2     0 0 0 0 0 以上のデータがある
                            ※I「0
                             D 」はB SE S
                                  O /O     1
                                           2
最適な単語列を発見する
10
0 億以上の連接コストをどうやって決定してるの?

 人手(9 年代はじめ)
     0

  ・ 試行錯誤を繰り返してやっと一つ設定できる
  ・ 客観的評価が難しいらしい

 統計処理(いま)

  ・ 大量の生テキストから推定
     ・楽
     ・ テキストの質に問題がある

  ・ 正解データを人手で作ってデータから推定
     ・今の形態素解析器は多分これ
     ・ これによりMe a に単語を入れてもコストが推定される
              Cb



                                     1
                                     3
コスト推定
一体どうやってコーパスから連接コストを推定するのか

 Hid nMak v d l MM)
  de    ro Mo e(
               H
  ・ 日本語で言うと 隠れマルコフモデル
  ・ 前の品詞とその単語の品詞の情報から学習する

 C n io aR n o F ls R )
  o dt n l a d m i d( F
      i          e C
   ・ 難しすぎてよく分からない
   ・ 全ての候補を考慮して推定できるのでH MMより精度がいいらしい
   ・ Me a に採用
       Cb


詳細は
      東藍,
        浅原正幸,松本裕治.0 6条件付確率場による日本語未知語処理.
                 20.
      情報処理学会自然言語処理研究会予稿集.

      ht:cnicpn i/1 0 4 2 2 5
       t / i i . /a 1 0 0 8 4 3
        p /. . j
              a    d



                                          1
                                          4
まとめ
簡単な形態素解析器を作るには

 辞書引き

  ・ トライ構造
  ・ C mmo Pe x e rhを使って
     o   n rfi S ac
     全通りの単語候補(=    ラティス構造を作る)

 最適な単語列を発見する

  ・ 連接コスト +生起コスト
  ・ Vtri
     i b アルゴルリズムで最適解を見つける
      e


 コスト推定(オプション)

  ・ 統計的に求める
     ・ 正解データを作ってそこから推定

                                1
                                5
参考・引用文献
P to による日本語自然言語処理 (
 yh n                   入門自然言語処理の1 章が公開されている)
                                       2
ht:nt.o geo e o snt n /o /o kj/h 2 t
 t / l g o l d . m/v / u kd cb o - c 1 . ml
  p/ k      c c       r           p    h

日本語形態素解析入門 V ro 0 .
               es n .1
                 i 9
ht:n it/ yod ctc / / 1 9 0 1 .d
 t / a . ~ t/o / hj j 9 9 5 4 f
  p / so        e ma ma      p

Me a 汎用日本語形態素解析エンジン
  Cb
ht:w wj a r/l / C bp f
 t / w .p . gfie Me a .d
  p/    t o    s




                                          1
                                          6

Mais conteúdo relacionado

Mais procurados

はじめての生成文法 《後編》
はじめての生成文法 《後編》はじめての生成文法 《後編》
はじめての生成文法 《後編》Shuyo Nakatani
 
Workshop20110305slide01
Workshop20110305slide01Workshop20110305slide01
Workshop20110305slide01Hilo Yamamoto
 
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word RepresentationsAll-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word RepresentationsMakoto Takenaka
 
簡単な算数でできる文章校正
簡単な算数でできる文章校正簡単な算数でできる文章校正
簡単な算数でできる文章校正hirokiky
 
Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)
Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)
Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)Koji Matsuda
 
[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding
[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding
[NeurIPS2018読み会@PFN] On the Dimensionality of Word EmbeddingMakoto Takenaka
 
吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセス吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセスWhiramine
 
Joint Modeling of a Matrix with Associated Text via Latent Binary Features
Joint Modeling of a Matrix with Associated Text via Latent Binary FeaturesJoint Modeling of a Matrix with Associated Text via Latent Binary Features
Joint Modeling of a Matrix with Associated Text via Latent Binary FeaturesKoji Matsuda
 
111127.lsj143.田川 japanese conjugation and dm
111127.lsj143.田川 japanese conjugation and dm111127.lsj143.田川 japanese conjugation and dm
111127.lsj143.田川 japanese conjugation and dmTakumi Tagawa
 
Rの基礎(データ型とデータ構造)
Rの基礎(データ型とデータ構造)Rの基礎(データ型とデータ構造)
Rの基礎(データ型とデータ構造)jundoll
 
TensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecTensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecShin Asakawa
 
ICALP 2014 参加記
ICALP 2014 参加記ICALP 2014 参加記
ICALP 2014 参加記irrrrr
 
水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法dc1394
 
NeurIPS2020参加報告
NeurIPS2020参加報告NeurIPS2020参加報告
NeurIPS2020参加報告Sho Takase
 
一階述語論理のメモ
一階述語論理のメモ一階述語論理のメモ
一階述語論理のメモKeisuke OTAKI
 
Deep neural models of semantic shift
Deep neural models of semantic shiftDeep neural models of semantic shift
Deep neural models of semantic shiftMakoto Takenaka
 
Arに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーションArに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーションdc1394
 
SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化dc1394
 
正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem
正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem
正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety TheoremRyoma Sin'ya
 
単振り子と二重振り子のコンピュータシミュレーション
単振り子と二重振り子のコンピュータシミュレーション単振り子と二重振り子のコンピュータシミュレーション
単振り子と二重振り子のコンピュータシミュレーションdc1394
 

Mais procurados (20)

はじめての生成文法 《後編》
はじめての生成文法 《後編》はじめての生成文法 《後編》
はじめての生成文法 《後編》
 
Workshop20110305slide01
Workshop20110305slide01Workshop20110305slide01
Workshop20110305slide01
 
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word RepresentationsAll-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
 
簡単な算数でできる文章校正
簡単な算数でできる文章校正簡単な算数でできる文章校正
簡単な算数でできる文章校正
 
Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)
Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)
Language Models as Representations for Weakly-­Supervised NLP Tasks (CoNLL2011)
 
[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding
[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding
[NeurIPS2018読み会@PFN] On the Dimensionality of Word Embedding
 
吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセス吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセス
 
Joint Modeling of a Matrix with Associated Text via Latent Binary Features
Joint Modeling of a Matrix with Associated Text via Latent Binary FeaturesJoint Modeling of a Matrix with Associated Text via Latent Binary Features
Joint Modeling of a Matrix with Associated Text via Latent Binary Features
 
111127.lsj143.田川 japanese conjugation and dm
111127.lsj143.田川 japanese conjugation and dm111127.lsj143.田川 japanese conjugation and dm
111127.lsj143.田川 japanese conjugation and dm
 
Rの基礎(データ型とデータ構造)
Rの基礎(データ型とデータ構造)Rの基礎(データ型とデータ構造)
Rの基礎(データ型とデータ構造)
 
TensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecTensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vec
 
ICALP 2014 参加記
ICALP 2014 参加記ICALP 2014 参加記
ICALP 2014 参加記
 
水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法
 
NeurIPS2020参加報告
NeurIPS2020参加報告NeurIPS2020参加報告
NeurIPS2020参加報告
 
一階述語論理のメモ
一階述語論理のメモ一階述語論理のメモ
一階述語論理のメモ
 
Deep neural models of semantic shift
Deep neural models of semantic shiftDeep neural models of semantic shift
Deep neural models of semantic shift
 
Arに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーションArに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーション
 
SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化
 
正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem
正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem
正規言語と代数と論理の対応:An Introduction to Eilenberg’s Variety Theorem
 
単振り子と二重振り子のコンピュータシミュレーション
単振り子と二重振り子のコンピュータシミュレーション単振り子と二重振り子のコンピュータシミュレーション
単振り子と二重振り子のコンピュータシミュレーション
 

Destaque

Scala による自然言語処理
Scala による自然言語処理Scala による自然言語処理
Scala による自然言語処理Hiroyoshi Komatsu
 
Introduction to Japanese Morphological Analysis
Introduction to Japanese Morphological AnalysisIntroduction to Japanese Morphological Analysis
Introduction to Japanese Morphological AnalysisTakeshi Arabiki
 
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来形態素解析の過去・現在・未来
形態素解析の過去・現在・未来Preferred Networks
 
自然言語処理 Word2vec
自然言語処理 Word2vec自然言語処理 Word2vec
自然言語処理 Word2vecnaoto moriyama
 
質問応答システム入門
質問応答システム入門質問応答システム入門
質問応答システム入門Hiroyoshi Komatsu
 
個人ユースGitのススメ
個人ユースGitのススメ個人ユースGitのススメ
個人ユースGitのススメKenichi Niwa
 
スタート形態素解析
スタート形態素解析スタート形態素解析
スタート形態素解析tod esking
 
CVチーム勉強会 Halide編
CVチーム勉強会 Halide編CVチーム勉強会 Halide編
CVチーム勉強会 Halide編Tetsuro Kato
 
ジャストシステムの形態素解析技術 その2 機械学習編
ジャストシステムの形態素解析技術 その2 機械学習編ジャストシステムの形態素解析技術 その2 機械学習編
ジャストシステムの形態素解析技術 その2 機械学習編JustSystems Corporation
 
Lucene/Solr Revolution 2016 参加レポート
Lucene/Solr Revolution 2016 参加レポートLucene/Solr Revolution 2016 参加レポート
Lucene/Solr Revolution 2016 参加レポートShinpei Nakata
 
オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京
オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京
オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京Koichi Hamada
 
MySQLテーブル設計入門
MySQLテーブル設計入門MySQLテーブル設計入門
MySQLテーブル設計入門yoku0825
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)Yoshitaka Kawashima
 

Destaque (16)

日本語形態素解析
日本語形態素解析日本語形態素解析
日本語形態素解析
 
Scala による自然言語処理
Scala による自然言語処理Scala による自然言語処理
Scala による自然言語処理
 
Introduction to Japanese Morphological Analysis
Introduction to Japanese Morphological AnalysisIntroduction to Japanese Morphological Analysis
Introduction to Japanese Morphological Analysis
 
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
 
自然言語処理 Word2vec
自然言語処理 Word2vec自然言語処理 Word2vec
自然言語処理 Word2vec
 
質問応答システム入門
質問応答システム入門質問応答システム入門
質問応答システム入門
 
個人ユースGitのススメ
個人ユースGitのススメ個人ユースGitのススメ
個人ユースGitのススメ
 
スタート形態素解析
スタート形態素解析スタート形態素解析
スタート形態素解析
 
CVチーム勉強会 Halide編
CVチーム勉強会 Halide編CVチーム勉強会 Halide編
CVチーム勉強会 Halide編
 
Elasticsearch at Makuake
Elasticsearch at MakuakeElasticsearch at Makuake
Elasticsearch at Makuake
 
Qaシステム解説
Qaシステム解説Qaシステム解説
Qaシステム解説
 
ジャストシステムの形態素解析技術 その2 機械学習編
ジャストシステムの形態素解析技術 その2 機械学習編ジャストシステムの形態素解析技術 その2 機械学習編
ジャストシステムの形態素解析技術 その2 機械学習編
 
Lucene/Solr Revolution 2016 参加レポート
Lucene/Solr Revolution 2016 参加レポートLucene/Solr Revolution 2016 参加レポート
Lucene/Solr Revolution 2016 参加レポート
 
オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京
オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京
オープニングトーク - 創設の思い・目的・進行方針  -データマイニング+WEB勉強会@東京
 
MySQLテーブル設計入門
MySQLテーブル設計入門MySQLテーブル設計入門
MySQLテーブル設計入門
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 

Semelhante a 鬱くしい日本語のための形態素解析入門

言語資源と付き合う
言語資源と付き合う言語資源と付き合う
言語資源と付き合うYuya Unno
 
Kuroda NLP17 slides on Parallel Simulated Error Correction method
Kuroda NLP17 slides on Parallel Simulated Error Correction methodKuroda NLP17 slides on Parallel Simulated Error Correction method
Kuroda NLP17 slides on Parallel Simulated Error Correction methodKow Kuroda
 
Introduction to Topological Data Analysis
Introduction to Topological Data AnalysisIntroduction to Topological Data Analysis
Introduction to Topological Data AnalysisTatsuki SHIMIZU
 
Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!
Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!
Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!近藤 嘉雪
 
言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクールYuya Unno
 
深層学習を用いた言語モデルによる俳句生成に関する研究
深層学習を用いた言語モデルによる俳句生成に関する研究深層学習を用いた言語モデルによる俳句生成に関する研究
深層学習を用いた言語モデルによる俳句生成に関する研究harmonylab
 
文字の正統性
文字の正統性文字の正統性
文字の正統性t yamo
 
大規模な単語活用辞書を用いた英単語の見出し語化
大規模な単語活用辞書を用いた英単語の見出し語化大規模な単語活用辞書を用いた英単語の見出し語化
大規模な単語活用辞書を用いた英単語の見出し語化奈良先端大 情報科学研究科
 
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice ModelKuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice ModelKow Kuroda
 
Deep Learningと自然言語処理
Deep Learningと自然言語処理Deep Learningと自然言語処理
Deep Learningと自然言語処理Preferred Networks
 
Proof summit2014mizar
Proof summit2014mizarProof summit2014mizar
Proof summit2014mizarAlcor80UMa
 
LS for Reinforcement Learning
LS for Reinforcement LearningLS for Reinforcement Learning
LS for Reinforcement Learningimlschedules
 
Lucene gosenの紹介 solr勉強会第7回
Lucene gosenの紹介 solr勉強会第7回Lucene gosenの紹介 solr勉強会第7回
Lucene gosenの紹介 solr勉強会第7回Jun Ohtani
 

Semelhante a 鬱くしい日本語のための形態素解析入門 (20)

言語資源と付き合う
言語資源と付き合う言語資源と付き合う
言語資源と付き合う
 
符号なしベトナム語
符号なしベトナム語符号なしベトナム語
符号なしベトナム語
 
comp_pfiseminar
comp_pfiseminarcomp_pfiseminar
comp_pfiseminar
 
Kuroda NLP17 slides on Parallel Simulated Error Correction method
Kuroda NLP17 slides on Parallel Simulated Error Correction methodKuroda NLP17 slides on Parallel Simulated Error Correction method
Kuroda NLP17 slides on Parallel Simulated Error Correction method
 
4thNLPDL
4thNLPDL4thNLPDL
4thNLPDL
 
Introduction to Topological Data Analysis
Introduction to Topological Data AnalysisIntroduction to Topological Data Analysis
Introduction to Topological Data Analysis
 
Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!
Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!
Perlの勘所をマスターしよう! コンテキストとリファレンスを我が物に!
 
言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール
 
深層学習を用いた言語モデルによる俳句生成に関する研究
深層学習を用いた言語モデルによる俳句生成に関する研究深層学習を用いた言語モデルによる俳句生成に関する研究
深層学習を用いた言語モデルによる俳句生成に関する研究
 
文字の正統性
文字の正統性文字の正統性
文字の正統性
 
大規模な単語活用辞書を用いた英単語の見出し語化
大規模な単語活用辞書を用いた英単語の見出し語化大規模な単語活用辞書を用いた英単語の見出し語化
大規模な単語活用辞書を用いた英単語の見出し語化
 
Introduction to Erlang/OTP
Introduction to Erlang/OTPIntroduction to Erlang/OTP
Introduction to Erlang/OTP
 
Lc ken 20101126
Lc ken 20101126Lc ken 20101126
Lc ken 20101126
 
Acl2020 taguchi
Acl2020 taguchiAcl2020 taguchi
Acl2020 taguchi
 
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice ModelKuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
 
Deep Learningと自然言語処理
Deep Learningと自然言語処理Deep Learningと自然言語処理
Deep Learningと自然言語処理
 
yyoshida thesis
yyoshida thesisyyoshida thesis
yyoshida thesis
 
Proof summit2014mizar
Proof summit2014mizarProof summit2014mizar
Proof summit2014mizar
 
LS for Reinforcement Learning
LS for Reinforcement LearningLS for Reinforcement Learning
LS for Reinforcement Learning
 
Lucene gosenの紹介 solr勉強会第7回
Lucene gosenの紹介 solr勉強会第7回Lucene gosenの紹介 solr勉強会第7回
Lucene gosenの紹介 solr勉強会第7回
 

鬱くしい日本語のための形態素解析入門

  • 2. プロフィール 名前: とろとき 言語: P to / v/el yh nJ aP r a 自然言語処理とか機械学習とかを 勉強中の初心者。 ちょっと前はA dod n riとかやってた。 @trtk ooo i 中学生 0. 1
  • 3. 形態素解析とは そもそも形態素って何? -意味を持つ最小の言語単位 -何が最小単位なのかは割と曖昧 -「今日は晴れ」 = 「今日」+「は」+「晴れ」 つまり形態素解析は… 文を自動で形態素に分けちゃおう! という試み 自然言語処理の土台となる 実際には形態素に分割するだけでなく、他に三つの処理がある -形態素に分割 上の例みたいな -品詞の付与 名詞や動詞などを単語に付ける 「今日/ 名詞」+「は/ 助詞」+「晴れ/ 形容詞」 -原型の復元 「珍しき」 → 「珍しい」 01
  • 4. 形態素解析とは 形態素解析の代表的なツール -U N(2 ) J MA 9 年~ - h S n(6 ) C a e 9 年~ - C b (2 ) Me a 0 年~ - y e (9 ) N w K T a 0 年~ ← e ! ・ KTa y e はその前に比べ先進的なアプローチを取っている(今回は解説しない) ・ ただし現在で最も多く使われるのは Me a Cb Me a は精度9 %って言うし、形態素解析はもう解決した分野では? Cb 9 -9 9 %できるのは新聞記事などのかたい文章 -崩れた日本語(不自然言語)は実用にも満たないこともある -不自然言語の形態素解析は最近注目されているっぽい次の課題 02
  • 5. 辞書を用意 ・ 辞書を用意 ・ 文章を考えられる全ての単語のパターンで辞書引き ・ すべての可能な組み合わせから最適な単語列を発見する -今回の中で一番大変 03
  • 6. 辞書を用意 辞書選び ・ 何種類も無料で配布されている ・ コスト推定(後述)のため本格的にはコーパスも必要になるが、 単語の辞書だけでも簡単な形態素解析器は作れる 辞書の主要なものとして -P -i IAdc - AS - i N I jc Td - nDc U ii 単語数は N I - i< U ii<IAdc AS j c Td nDc P -i ・ 今回は実験としてIAdc P -iを使用 ・ ただしほとんどの辞書には互換性があり、取り替えられる 04
  • 7. 辞書を用意 辞書の中身 Me a のフォーマットの辞書だと Cb きらびやか, 8 , 8 , 4 , 形容動詞語幹,* ,きらびやか, 1 7 27 39 2 1 8 名詞, * ,* ,* , キラビヤカ, キラビヤカ 史的, 8 , 8 , 0 , 形容動詞語幹,* ,史的, 1 7 27 68 2 1 6 名詞, * ,* ,* , シテキ, シテキ プラトニック, 8 , 8 , 7 , 形容動詞語幹,* ,プラトニック, 1 7 27 07 2 1 5 名詞, * ,* ,* , プラトニック, プラトニック てらてら, 8 , 8 , 4 , 形容動詞語幹,* ,てらてら, 1 7 27 39 2 1 8 名詞, * ,* ,* , テラテラ, テラテラ 静謐, 8 , 8 , 4 , 形容動詞語幹, 1 7 27 85 2 1 4 名詞, *, * ,静謐, ,* * , セイヒツ, セイヒツ 単語, 左文脈I, D右文脈I, D単語コスト, 品詞細分類1 品詞, , 品詞細分類2 後で説明 品詞細分類3, 活用型, 活用形, 基本形, 発音 読み, こんな感じになっている。 05
  • 9. 辞書引き 辞書検索のためのデータ構造、トライ木(Ti r) e 文字列の最初から順番にたどっていく これだと O ( (文長) が O 文長) 2 ) ( で辞書引きが できるので総当たりより効率が良い ・ C mmo Pe x e rh o n rfi S ac -ある文字が開始位置の単語を列挙 -これを全ての文字に適用して Ti r 木から辞書引きする e >>CS” > P(東海道新幹線”) >>東 : 名詞 > : >>東海 : 名詞 > : >>東海道 : 名詞 > : I g b ht:jw k e iogw k トライ木 ma e y t /a ip da r/ i/ p /. i . i >>東海道新幹線 : 名詞 > : 07 「新幹線」というワードが入っていないのに注意
  • 11. 最適な単語列を発見する ・ ヒュースティックス(規則)に基づく手法(8 年代) 0 ・ 形態素最小法 : 形態素の一番少ない解を優先 ・2文節最長一致法 : 文を左から見て2文節毎の長さが長い解を優先 などなど しかし全く統計的ではない! 09
  • 12. 最適な単語列を発見する コスト最小法 ・ 今の形態素解析器はこの方法を基礎としている(Me a , h S n J MA . C b C a e ,U N. ) ・ それぞれの単語と単語の「繋がりやすさ」を数字で表し、和が最小の道をアンサー 具体的には… 1 0
  • 13. 最適な単語列を発見する コスト最小法 ・ 連接コスト : 二つの単語のつながりやすさ ・ 生起コスト : 一つの単語の出現しやすさ 全ての文字の連接コスト+生起コストが最小になる解をアンサー そのまま求めると計算しきれないので… 秘策 : i ri Vt b アルゴリズム e 1 1
  • 14. 最適な単語列を発見する 左・右文脈I D ・ 実は辞書の中の mar .e( tx f id 連接表)を見るためのI番号 D ある単語 A Bが連接をなすとき, , ・ 単語Aは左文脈Iを見る D ・ 単語Bは右文脈Iを見る D mar .e : tx f id 左文脈I D 右文脈I 連接コスト D 0 15 34 -9 96 15 34 15 32 -7 8 25 15 32 0 -4 91 . . . .. . .. . 例えば左文脈Iが1 5 で右文脈Iが1 5 だと、ここで連接コストが -7 8 D 34 D 42 25 mar .e には ( tx f id 単語)、つまり1 0 0 0 0 0 2 0 0 0 0 0 以上のデータがある ※I「0 D 」はB SE S O /O 1 2
  • 15. 最適な単語列を発見する 10 0 億以上の連接コストをどうやって決定してるの? 人手(9 年代はじめ) 0 ・ 試行錯誤を繰り返してやっと一つ設定できる ・ 客観的評価が難しいらしい 統計処理(いま) ・ 大量の生テキストから推定 ・楽 ・ テキストの質に問題がある ・ 正解データを人手で作ってデータから推定 ・今の形態素解析器は多分これ ・ これによりMe a に単語を入れてもコストが推定される Cb 1 3
  • 16. コスト推定 一体どうやってコーパスから連接コストを推定するのか Hid nMak v d l MM) de ro Mo e( H ・ 日本語で言うと 隠れマルコフモデル ・ 前の品詞とその単語の品詞の情報から学習する C n io aR n o F ls R ) o dt n l a d m i d( F i e C ・ 難しすぎてよく分からない ・ 全ての候補を考慮して推定できるのでH MMより精度がいいらしい ・ Me a に採用 Cb 詳細は 東藍, 浅原正幸,松本裕治.0 6条件付確率場による日本語未知語処理. 20. 情報処理学会自然言語処理研究会予稿集. ht:cnicpn i/1 0 4 2 2 5 t / i i . /a 1 0 0 8 4 3 p /. . j a d 1 4
  • 17. まとめ 簡単な形態素解析器を作るには 辞書引き ・ トライ構造 ・ C mmo Pe x e rhを使って o n rfi S ac 全通りの単語候補(= ラティス構造を作る) 最適な単語列を発見する ・ 連接コスト +生起コスト ・ Vtri i b アルゴルリズムで最適解を見つける e コスト推定(オプション) ・ 統計的に求める ・ 正解データを作ってそこから推定 1 5
  • 18. 参考・引用文献 P to による日本語自然言語処理 ( yh n 入門自然言語処理の1 章が公開されている) 2 ht:nt.o geo e o snt n /o /o kj/h 2 t t / l g o l d . m/v / u kd cb o - c 1 . ml p/ k c c r p h 日本語形態素解析入門 V ro 0 . es n .1 i 9 ht:n it/ yod ctc / / 1 9 0 1 .d t / a . ~ t/o / hj j 9 9 5 4 f p / so e ma ma p Me a 汎用日本語形態素解析エンジン Cb ht:w wj a r/l / C bp f t / w .p . gfie Me a .d p/ t o s 1 6