パターン認識論 #14

-- Views

April 16, 26

スライド概要

東北大学で2023年に開講していた「パターン認識論」のスライドです
本資料では、まず教師あり学習と教師なし学習の違いを説明した上で、入力のみから入力そのものや生成データを予測する自己教師あり学習の基本的考え方を示します。続いて、Word2Vecの代表的手法であるCBOWとSkip‑gram、さらに負例を用いたNegative Samplingの仕組みを解説し、Wikipedia2vecを用いた類似語例も紹介しています。画像や音声に対する自己教師あり学習の事例にも触れ、次に系列変換モデルSeq2Seqとその拡張として注意機構(Query/Key/Value、スケールドドット積、マルチヘッド注意、自己注意)を詳述します。Transformerの構造、位置エンコーディング、ブロック構成、生成過程を示し、最後に自然言語処理向け事前学習モデルBERTの入力表現、マスク言語モデルと次文予測タスク、ファインチューニング方法、さらに画像認識に応用されたVision Transformerについて説明しています。

profile-image

I'll be writing programs, papers, and ramblings.

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

パターン認識論 第14回 伊藤 彰則 1

2.

自己教師あり学習 (Self-Supervised Learning) ◦ 教師あり学習:入力とそのクラスラベル ◦ 入力からクラスラベルを予測するモデル ◦ 教師なし学習:入力のみ ◦ 入力を似た性質のものに分類(クラスタリング) ◦ 自己教師あり学習:入力のみ ◦ 入力から入力(あるいは入力から生成されるデー タ)を予測するモデル ◦ 入力の特徴量を効率的に抽出する(表現学習) 2

3.

自己教師あり学習 (Self-Supervised Learning) 学習データ自体から手に入る 情報を予測 • データの一部を隠し、それ を予測する • データに変形を加え、無関 係なデータと識別する ラベルなし 学習データ (多い) 学習後 ラベル付き 学習データ (少ない) 識別用 モデル ラベル 3

4.

自己教師あり学習 (Self-Supervised Learning) ◦ Word2Vec ◦ 単語をベクトル化する方法の一つ ◦ 自己教師あり学習によって学習する ◦ Continuous Bag-Of-Word (CBOW)とSkip-gram の2通りの学習法がある ◦ CBOW ◦ ある単語の周辺の単語から当該単語を予測する ◦ Skip-gram ◦ ある単語から周辺の単語を予測する 4

5.

CBOWとSkip-gram 今日 One-hot vectors embed の 天気 は 曇り 今日 今日 の FC+ ReLU の 天気 は は Softmax 曇り 曇り CBOW Skip-gram 5

6.

Negative Sampling ◦ 正しい答えを選ぶだけでなく、正しくない答えを選 ばない学習 今日 似るように学習 (損失を下げる) の 天気 正例 は ので 負例 全単語からラ ンダムに選ぶ 似ないように学習 (損失を上げる) 曇り 6

7.

例 ◦ モデルはwikipedia2vecのモデルを利用 (https://wikipedia2vec.github.io) ◦ 「王」とのコサイン類似度が高い項目 ENTITY/中国帝王一覧 ENTITY/兄弟スポーツ選手一覧 ENTITY/消滅した政権一覧 ENTITY/女性君主の一覧 ENTITY/歴史書一覧 ENTITY/軍事指揮官の一覧 ENTITY/ヨーロッパの祖母 ENTITY/アジアの紛争一覧 ENTITY/古代末期のキリスト教 ENTITY/飛鳥時代以前の人物一覧 reorder(term1, -ord) ENTITY/日羅関係 ENTITY/三国志演義の成立史 ENTITY/台湾の人物一覧 ENTITY/ロバート ENTITY/東京都出身の人物一覧 ENTITY/新元史 ENTITY/倭・ 倭人関連の朝鮮文献 ENTITY/イギリス君主一覧 ENTITY/双子の有名人の一覧 ENTITY/南史 ENTITY/夏商周年表 ENTITY/朝鮮の君主一覧 ENTITY/フランス君主一覧 ENTITY/国王 ENTITY/阪神タイガースの選手一覧 ENTITY/北史 ENTITY/中世ヨーロッパにおける教会と国家 ENTITY/作品がテレビドラマ化されたことがある漫画家一覧 ENTITY/前賢故実 ENTITY/伝説の生物一覧 0.0 0.2 0.4 similarity 7

8.

その他の自己教師あり学習 ◦ 画像の特徴抽出モデルをSSLで学習 [Jaiswal+2021] 色の変化、回転、 拡大縮小など 8

9.

その他の自己教師あり学習 ◦ 音声などの予測による自己教師あり学習 [Aaron+ 2018] 9

10.

Seq2Seq ◦系列を変換するモデル ◦入力系列を潜在空間に写像する部分 (エンコーダ)と、潜在空間から出力 系列を生成する部分(デコーダ)から なる ◦パターン認識のモデルではないが、極 めて重要なので取り上げる 10

11.

Seq2Seqによる機械翻訳 翻訳文 Cho, K. et al. Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation. In: Proc. EMNLP. 2014. このモデル構造は、翻訳だけでなく、文生成・対 話・要約などにも使える Encoder Decoder 元言語の文 EOS 11

12.

アテンションの導入 Luong, M. et al. Effective Approaches to Attention-based Neural Machine Translation. In: Proc. EMNLP, 2015. p. 1412-1421. 翻訳文 単語を出力するとき、その単語とすべての入力と の関連度(アテンション)を計算し、アテンショ ンで重みづけた入力の中間層出力を出力層に入れ る Attention Layer Encoder 元言語の文 EOS 12

13.

アテンションの導入 Attention layer Context vector × × × × × × 内積 Encoder 元言語の文 Decoder 13

14.

Query/Key/Valueによる アテンション ◦ QueryとKeyの類似度(内積)に基づいてValueを重みづける 仕組み (Scaled dot-product attention) 𝑸1 (𝑖) 𝑖 ◦ 𝑄 = ⋮ , 𝑸𝑖 = 𝑞1 , … , 𝑞𝑑 𝑸𝑛 𝑲1 ⋮ , 𝑲𝑖 = 𝑘1(𝑖) , … , 𝑘𝑑(𝑖) ◦𝐾 = 𝑲𝑚 𝑽1 (𝑖) 𝑖 ◦ 𝑉 = ⋮ , 𝑽𝑖 = 𝑣1 , … , 𝑣𝑑 𝑽𝑚 14

15.

Query/Key/Valueによる アテンション ◦アテンション計算 ◦ Attention 𝑄, 𝐾, 𝑉 = softmax = softmax 𝑇 𝑸 𝑲 1 1 1 ⋮ 𝑑 𝑸 𝑲𝑇 𝑛 1 ⋯ ⋯ 𝑄𝐾 𝑇 𝑑 𝑉 𝑸1 𝑲𝑇𝑚 ⋮ 𝑸𝑛 𝑲𝑇𝑚 𝑉 ◦ ただしここでのsoftmaxは(次ページ) 15

16.

Softmax ◦ 𝒙 = (𝑥1 , … , 𝑥𝑁 ) ◦ Softmax 𝒙 𝒙1 ◦𝑋 = ⋮ 𝒙𝑀 (exp(𝑥1 ),…,exp(𝑥𝑁 )) = σ𝑁 𝑖=1 exp(𝑥𝑖 ) Softmax 𝒙1 ⋮ ◦ Softmax 𝑋 = Softmax 𝒙𝑀 16

17.

Query/Key/Valueによる アテンション Query 内積/ 𝑑 Key Value 17

18.

Query/Key/Valueによる アテンション Query Softmax Key Value 18

19.

Query/Key/Valueによる アテンション Query × × × × × × Key Value 19

20.

Query/Key/Valueによる アテンション Query × × × × × + × Key Value 20

21.

マルチヘッドアテンション ◦ 入力の次元を分割して複数のアテンションを取 る Query Scaled dot-product attention Key Value 21

22.

マルチヘッドアテンション ◦ 入力の次元を分割して複数のアテンションを取 る concat FC FC FC Head 1 Scaled dotproduct attention F F F F F F F FF FFF C C C C C C C CC CCC FC FC FC FC FC FC Head 2 Scaled dotproduct attention FC FC FC F F F F F F F FF FFF C C C C C C C CC CCC 22

23.

マルチヘッドアテンション ◦ こんな感じで描く Multi-Head Attention Key Value Query 23

24.

セルフアテンション ◦ Query, Key, Valueすべてに同じ値を入れる ◦ 系列の中の各ベクトルの関係性に基づいて出力を 計算する Multi-Head Attention Key Value Query 24

25.

Transformer Vaswani, Ashish, et al. "Attention is all you need." Advances in neural information processing systems 30 (2017). Seq2SeqモデルからRNN/LSTM層を 削除してしまい、アテンションだけ で計算を行う 時間依存性は、入力の埋め込みベク トルに正弦波を加算して表現する (Positional Encoding) 25

26.

Positional Encoding ◦ Transformerには入力系列の順序の概念がな いので、入力の値自体に順序を導入する Multi-Head Attention Query Key Value d i pos 𝑝𝑜𝑠 sin , (𝑖−1)/𝑑 10000 𝑃𝐸 𝑝𝑜𝑠, 𝑖 = 𝑝𝑜𝑠 cos , 10000(𝑖−2)/𝑑 𝑖 mod 2 = 1 𝑖 mod 2 = 0 26

27.

Transformerブロック Layer Normalization + FC×2 Layer Normalization 実際には各所に Dropoutが入っている + Multi-Head Attention Key Value Query 27

28.

Transformerによる生成 Key&Value Encoder Decoder Mask 28

29.

Transformerによる生成 Key&Value Encoder Decoder 29

30.

Transformerによる生成 Key&Value Encoder Decoder 30

31.

Transformerによる生成 Key&Value Encoder Decoder 31

32.

Transformerによる生成 Key&Value Encoder Decoder 32

33.

Transformerによる生成 Key&Value Encoder Decoder 33

34.

BERT (Bidirectional Encoder Representations from Transformers) ◦ 自然言語処理用の事前学習モデル ◦ J. Devlin et al., “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding” In Proc. NAACL-HLT, pp. 4171-4186, 2019. ◦ Transformerベース(Encoderのみ) ◦ さまざまなSSLで学習する ◦ マスク言語モデル(Masked LM)、後続文予測 (NSP) 34

35.

BERTへの入力 ◦トークン埋め込み、位置埋め込み、 セグメント埋め込みを加算 35

36.

BERTのSSLタスク ◦ マスク言語モデル ◦ 単語の一部を[MASK]またはランダムに選んだ単語 に置き換え、元の単語を予測する ◦ 単語全体の15%を選び、そのうち80%を[MASK]に、10% をランダムな単語に置き換える(残り10%はそのまま) [CLS] Today is Sunday [SEP] It ‘s a sunny day [SEP] BERT [CLS] Today [MASK] Sunday [SEP] It ‘s a [MASK] day [SEP] 36

37.

BERTのSSLタスク ◦ 後続発話予測 (Next Sentence Prediction) ◦ 与えられた2つの文が連続する文なのかどうかを識別する IsNext BERT [CLS] Today is Sunday [SEP] It ‘s a sunny day [SEP] 37

38.

BERTのファインチューニング ◦ 実際のタスクに BERTを応用する 場合には、事前学 習モデルを微調整 する 38

39.

Vision Transformer (ViT) Dosovitskiy, et al., An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. In Proc. ICLR, 2020. 39