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

深層学習を用いた自然言語処理③

shu_suzuki
January 24, 2019

 深層学習を用いた自然言語処理③

長岡技術科学大学 自然言語処理研究室
B3ゼミ発表資料

shu_suzuki

January 24, 2019
Tweet

More Decks by shu_suzuki

Other Decks in Technology

Transcript

  1. 言語モデルとは • 単語の並びに対して確率を与える • 自然な単語の並びかを確率で評価 例) 「You say goodbye」→ 高確率   「You

    say good die」→ 低確率 • 様々なアプリケーションに応用可能 例)機械翻訳,対話システム • 確率分布により文章生成が可能 3
  2. 数式による表現 w1 , · · · , wm という順序で単語が出現する確率 (同時確率)

    は次式で表される P(wt |w1 , · · · , wm ) = m t=1 P(wt |w1 , · · · , wt−1 ) 4
  3. 評価方法 モデルの予測性能を perplexity(確率の逆数) で評価 L = − 1 N n

    t tnk log ynk perplexity = eL tnk :onehot ベクトルの正解ラベル, ynk :確率分布,L:損失関数 5
  4. seq2seqの改良 • Encoder で固定長のベクトルに変換するため,長文に対応 できない → 単語ベクトルを行列にまとめて Decoder に渡す • Decoder

    はまとまった行列を受け取れない → 対応関係にある単語の情報を抜き出す (Attention) • 行列と,単語の重要度の重み付き和で Attention を実現 → 単語の重要度は,固定長ベクトルと行列の類似度に よって算出される 11
  5. まとめ • 言語モデルは,単語の羅列を確率として解釈する • seq2seq は時系列データを別の時系列データに変換する • RNN はループする経路を持っている •

    Encoder は文章をベクトルに変換する • Decoder はベクトルを受け取り,文章生成する • Attention という手法で,seq2seq を改良できる 12