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

Transformer基礎「Attentionメカニズムによる自然言語処理の改善」-安田健士郎

 Transformer基礎「Attentionメカニズムによる自然言語処理の改善」-安田健士郎

Python機械学習プログラミング PyTorch&scikit-learn編 第16章
「Transformer -Attentionメカニズムによる自然言語処理の改善」

明治大学大学院 先端数理科学研究科 ネットワークデザイン専攻
安田健士郎

Graduate School of Advanced Mathematical Sciences, Meiji University (Tokyo, Japan)
Network Design Program

Kenshiro Yasuda

安田健士郎

August 03, 2023
Tweet

More Decks by 安田健士郎

Other Decks in Technology

Transcript

  1. Transformerの簡単な構造 Transformerは、大きく分けてEncoderとDecoderの2つから構成される。 さらに、内部の特徴的な構成としてAttention機構が複数用いられている。 • Transformerの簡単な構造・構成要素 ◦ Encoder ▪ 入力文を分析可能な形へ変換 ◦

    Decoder ▪ Encoderからの情報を受理 ▪ 適切な出力へ変換処理する ◦ Attention機構 ▪ 重みを各単語へ付与する 6 Encoder Decoder Attention 機構 入力文章の 埋め込み 出力文章の 埋め込み(右へシフト)
  2. 従来の言語翻訳モデル:seq2seqモデルの概要 seq2seqは、RNN層を用いた言語翻訳モデルで、EncoderとDecoderの直列構 造となっている。各隠れ層にて、1つ前の層の情報を受け継ぎ、共有する。 9 EN RNN EN RNN EN RNN

    EN RNN This book is thick EN RNN . DE RNN DE RNN DE RNN DE RNN この 本 は 分厚い DE RNN 。 DE RNN <EOS> <BOS> この 本 は 分厚い 。 1 2 3 4 5 Encoder Decoder 入力文を分析可能な形へ変換 Encoderからの情報を受理 適切な出力へ変換処理
  3. 従来の言語翻訳モデル:seq2seqモデルの仕組み(1/2) seq2seqモデルは、人を介するごとに内容のレベルが上がる伝言ゲームのイ メージである。後半の隠れ層につれ、持つ情報の大きさが大きくなる。 10 EN RNN 1 EN RNN 2

    EN RNN 3 EN RNN 4 This book is thick EN RNN 5 . 1 2 3 4 5 Decoder ・“This”の情報を聞く ・②に伝える この本は分厚い。 Encoder ・①から“This”の情報を聞く ・新たに“book”の情報を聞く ・③に伝える ・②から“This”と“book” の情報を聞く ・新たに“is”の情報を聞く ・④に伝える EN RNN 1 EN RNN 2 EN RNN 3 イメージ:「人を介する毎に内容のレベルが上がる伝言ゲーム」
  4. 従来の言語翻訳モデル:seq2seqモデルの仕組み(2/2) seq2seqモデルは、人を介するごとに内容のレベルが上がる伝言ゲームのイ メージである。後半の隠れ層につれ、持つ情報の大きさが大きくなる。 11 EN RNN 1 EN RNN 2

    EN RNN 3 EN RNN 4 This book is thick EN RNN 5 . 1 2 3 4 5 Decoder この本は分厚い。 Encoder EN RNN 1 This 1 EN RNN 2 book 2 1 EN RNN 3 is 3 2 イメージ:「人を介する毎に内容のレベルが上がる伝言ゲーム」
  5. 従来の言語翻訳モデル:seq2seqモデルの欠点 seq2seqは、入力文全体を一度に解析してから翻訳文を生成する。 そのため、入力文全体が長い場合、途中で情報を消失する懸念がある。 12 EN RNN 1 EN RNN 2

    EN RNN 3 EN RNN 4 This book is thick EN RNN 5 . 1 2 3 4 5 Decoder イメージ:人間も、英語長文を全部一気に覚えて翻訳できるわけない この本は分厚い。 Encoder EN RNN 5 5 “This book is thick.” の情報 EN RNN 5 5 “This book is thick. However, it's not just the physical size of the book that demands attention. The depth of its content matches its impressive thickness. As you open it, you're immediately immersed in a world that exists between the lines of black ink and the rough texture of the pages.” の情報 ?
  6. 従来の言語翻訳モデル:seq2seqモデルの改善 入力シーケンスの各要素に、入力全体の情報を考慮した重み(Attention) を割り当てることで、seq2seqの欠点を補うことができる。 13 EN RNN 1 EN RNN 2

    EN RNN 3 EN RNN 4 This book is thick EN RNN 5 . 1 2 3 4 Decoder 出力(Decoder)の各時間ステップで入力シーケンスを全体的にアクセスしたい この本は分厚い。 Encoder 入力シーケンスの各要素にAttentionを割り当てることで効果的に全てにアクセス可能 1 1 3 4 2 ※Attention:各時間ステップにおける入力シーケンスの各要素の重要度
  7. (参考)Attentionのイメージ 下の英文の“However”を翻訳する時、前文と後ろの1文目の重要度は高い。 しかし、後ろの2文目以降の文章は参考にならないので、重要度が低い。 14 “This book is thick. However, it's

    not just the physical size of the book that demands attention. The depth of its content matches its impressive thickness. As you open it, you're immediately immersed in a world that exists between the lines of black ink and the rough texture of the pages.” ※Attention:各時間ステップにおける入力シーケンスの各要素の重要度 〜Attentionのイメージ〜 「この文字を理解したい時は、ここら辺の文字に注目(Attention)しろ!」
  8. Attentionメカニズム:Attentionの計算方法 Attentionは、隠れ状態h(入力)とs(出力)のペア毎の関係を数値化させ たもの。ソフトマックス関数で正規化されるため、Attentionの合計は1。 18 計算 :Attentionの導出 構造② 構造① • α:Attenttion •

    score:スコア関数(統計検定1級レベル) ◦ 入力要素と出力要素がどのく らいマッチしているかを評価 ソフトマックス関数で正規化 (Attentionの合計(α2,1~α2,T)は1になる) 計算
  9. Self-Attentionをどうパラメータ化するべきか(2/2) 一つの入力xから3つのパラメータq, k, vに分割する際は、Uq, Uk, Uvの3つ の重みを用意する。最終的に、これらを最適化することで学習機能を持つ。 • 3つのパラメータの分割方法:Scaled Dot-Product

    Attention 28 クエリシーケンス キーシーケンス バリューシーケンス 学習過程で、重みのUq, Uk, Uvを最適化することが可能!! 学習内容「入力xをq, k, vへ適切に分割するため、Uをそれぞれ最適化」 重み U ✖ 入力 x
  10. Transformer誕生の経緯(ここまでのまとめ) Transformerは、従来のAttentionメカニズムからRNNの機能を無くしたこと で生まれた深層学習モデルである。 • 言語処理における、従来のRNNモデル(Seq2Seq) ➔ 長い文章を入力すると途中からデータを忘れてしまう • RNNモデルにAttentionメカニズムを採用した ◦

    常に全文へアクセスできる仕組みなので、長文への処理対応が可能 ➔ ここからRNNの機能を削除すると、性能が良くなることが判明 • Transformerの誕生 ◦ Attentionメカニズム(Self-Attention)のみで作られたモデル ◦ 言語翻訳だけでなく、文章生成や文章要約に対応可能 31
  11. Transformer:Masked Multi-head Attention層(3/3) 37 学習の際は出力値のカンニングを防ぐため、出力したい部分以降の正解デー タをマスクで隠す、そして出力時間毎に右へ一つずつシフト移動していく。 Maskedする箇所 (実際はベクトル) 出力 <BOS>

    この この本は分厚い。 本 この本は分厚い。 は この本は分厚い。 分厚い この本は分厚い。 。 この本は分厚い。 <EOS> ②:学習 Encoder This book is thick. この本は分厚い。 book 本 この
  12. (参考)Transformerのアーキテクチャの全容 43 全結合層 全結合層 層正規化 層正規化 層正規化 層正規化 層正規化 位置

    エンコーディング 位置 エンコーディング Multi-head attention層 Multi-head attention層 Masked Multi-head attention層
  13. Fin