---
title: 【深層学習による画像認識の基礎】4.1~4.2
tags: 
author: [京都大学人工知能研究会KaiRA](https://docswell.com/user/kyoto-kaira)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/9E29P1M17R.jpg?width=480
description: 【深層学習による画像認識の基礎】4.1~4.2 by 京都大学人工知能研究会KaiRA
published: May 28, 26
canonical: https://docswell.com/s/kyoto-kaira/5DM266-2026-05-28-215247
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/9E29P1M17R.jpg)

2026年前期輪読会#5 2026/5/28
深層学習による画像認識の基礎
Vision Transformer (4.1~4.2)
総合人間学部 認知情報学系B4
神原みちる
0


# Page. 2

![Page Image](https://bcdn.docswell.com/page/D7Y45ZX4EM.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
1


# Page. 3

![Page Image](https://bcdn.docswell.com/page/VENYN316J8.jpg)

アジェンダ
Vision Transformerを初めから丁寧に！
Transformerの復習も大きく重ねて
2


# Page. 4

![Page Image](https://bcdn.docswell.com/page/Y79PR95RE3.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
3


# Page. 5

![Page Image](https://bcdn.docswell.com/page/G78DW9YG7D.jpg)

4.1 Vision Transformer の登場
2020年、画像認識に純粋なTransformer を持ち込んだ
- 起源は2017のTransformer,
- BEAT, GPT など後続モデルの有用性が数多く確認され、LMM分野での使用が爆発的に増え
る
- 2020年10月 画像分類タスクでも優れた性能を達成可能であるとの論文
- An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale&quot;(画像は
16×16の単語に値する ) [1]
- この論文以前からCNNに依存した応用の動きはあったが、計算コストや実装効率の観点から決定
打に至る方法はなかった
4


# Page. 6

![Page Image](https://bcdn.docswell.com/page/L7LMNW4XJR.jpg)

4.1 Vision Transformer の登場
2020年、画像認識に純粋なTransformer を持ち込んだ時、どんなことができたか
• 画像をパッチに分割し、単語列のように Transformerへ入力（タイトル：画像は 16x16 の単語に値
する）
• CNNに依存せず、畳み込みを一切使わない純粋な Transformer で画像分類が可能
• 大量データで事前学習し、ImageNet 等へ転移すると最先端CNN に匹敵・凌駕
• しかも事前学習に必要な計算資源ははるかに少ない
5


# Page. 7

![Page Image](https://bcdn.docswell.com/page/4EMYX9K3EW.jpg)

4.1 Vision Transformer の登場
なぜ画像認識では、2020以前に、そのままTransformerを使ってこなかったか？
- Transformerには、CNNが本来備えている帰納バイアス (inductive bias)が欠けているため、不十
分な量のデータで訓練した場合にはうまく汎化しない
- 帰納バイアス(inductive bias)
- 並進等変性 ( translation equivariance ) : 入力をずらしたとき、出力がどう動くか
- 局所性(locality) : 離れたピクセルは一旦無視して近接したピクセルだけから特徴を拾う
しかし、より大きなデータセット(1400万〜3億枚の画像)で訓練すると、状況は一変する → 大規模な
訓練が帰納バイアスに打ち勝つことを見出した[1]
6


# Page. 8

![Page Image](https://bcdn.docswell.com/page/PER9NGXRJ9.jpg)

補足コラム Transformer の３形態
ViT はエンコーダ型のTransformer
● ViT はエンコーダ型
○ BEATもエンコーダ型
○ 文章の分類問題、文章間の類似度推定
● デコーダ型
○ GPT系
○ 文章生成や文書要約
● エンコーダ・デコーダー型
○ 機械翻訳など、入力情報に強く条件づけされるタスクで効果的
■ 8章→自然言語のような異なるモダリティを扱うタスクでも効果的
7


# Page. 9

![Page Image](https://bcdn.docswell.com/page/P7XQNX6YEX.jpg)

4.1 Vision Transformer の概要
ViTの概要図
[1]
8


# Page. 10

![Page Image](https://bcdn.docswell.com/page/37K9NW147D.jpg)

4.1 Vision Transformer の概要
ViTは主に6つの要素で構成される
6つの要素
1.
2.
3.
4.
5.
6.
パッチ埋め込み Patch embedding
位置埋め込み Positional embedding
層正規化 Layer Normalization
自己注意機構 Self-attention
順伝播層 Feed-Forward層、MLPブロック
スキップ接続
手順
1. 画像をパッチ分割→1,2 によりパッチ集合をベクトル系列に＋クラストークン＝D次
元の入力ベクトル系列を用意
2. 3,4,5,6で構成される処理群をL回実行し、最終的な出力ベクトル系列を得る
9


# Page. 11

![Page Image](https://bcdn.docswell.com/page/LJ3WV1QDJ5.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
10


# Page. 12

![Page Image](https://bcdn.docswell.com/page/8JDK8X92EG.jpg)

4.2.1-2 Patch+ Positional Embedding
橙色の部分について話す
[1]
11


# Page. 13

![Page Image](https://bcdn.docswell.com/page/VEPK8PZL78.jpg)

4.2.1 パッチ埋込み
パッチ埋め込みをすることによって画像を認識可能な単位に分ける
- パッチとは？
画像を格子状に切り分けたタイル
- NLP処理でのTransformerは、文を単語に相当するトークンに分割する。
- 画像には言語のように単語に相当するトークンが存在しない
- An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale&quot;(画像は
16×16の単語に値する) [1]
= パッチ埋め込みをすることによって画像を認識可能な単位に分ける
12


# Page. 14

![Page Image](https://bcdn.docswell.com/page/27VVN2W67Q.jpg)

4.2.1 パッチ埋込み
パッチ埋め込みをすることによって画像を認識可能な単位に分ける
13


# Page. 15

![Page Image](https://bcdn.docswell.com/page/5JGLKRD27L.jpg)

4.2.1 パッチ埋込み
Vision Transformer (ViT) の入力ベクトル作成
1. 分割
2. 平坦化
3. 線形変換
4. クラストークン
入力画像 X ∈ R^C×Н×W
をp×pのサイズのパッチに
分割
各パッチ（サイズ C × p ×p）
を平坦化し、1次元のベクト
ルに
学習可能な「クラス用トーク
ン（[CLS]）」を先頭に追加


線形写像（全結合層）を適
用し、d次元のベクトルへ変
換
＝パッチ埋め込み


- 補足：1,2,3は入力画像Xに対して、ストライドp, 出力チャネルd, カーネルサイズ
p×pの畳み込みフィルタを適応することと等価なため、実装は畳み込みで行われる
ことが多い
14


# Page. 16

![Page Image](https://bcdn.docswell.com/page/47QYNV19EP.jpg)

4.2.2 位置埋め込み Positional embedding
画像内の情報を正確に認識するためには物体の構造や位置関係が重要な手がかりになる
∈^d×(n+1)は一般に標準正規分布により初期化される
補足：先述の論文[1]では2次元の工夫した埋め込みも検証されていたが、ViTは独自に位置を学習
する（後述）ので1次元の埋め込みで十分だったのこと。
15


# Page. 17

![Page Image](https://bcdn.docswell.com/page/KE4WGM6RJ1.jpg)

4.2.2 位置埋め込み Positional embedding
元論文[1]での位置埋め込みの可視化と分析
- 位置情報「あり」と「なし」の差は大きい → 位置情
報は必要。約0.03の差
- 「あり」の中での方法の違いはほぼ差がない → 1
次元でも2次元でも相対でも、結果はほとんど変わら
ない。0.003程度の差
筆者らの解釈：
Similarity of position embeddings of ViT-L/32. Tiles show the cosine
similarity between the position embedding of the patch with the indicated
row and column and the position embeddings of all other patches[1]
アテンションが動くのは ピクセル単位ではなくパッチ単位 だか
ら、この程度の小さな解像度なら、どのエンコード方法でも空
間関係を学習するのは同じくらい簡単だ
16


# Page. 18

![Page Image](https://bcdn.docswell.com/page/L71YD8VVJG.jpg)

4.2.2 補足コラム 位置埋め込み (Positional enbedding)と位置符号 (positional encording)
曖昧に定義されている場合があるので明確にする
- 位置情報も学習可能なパラメータで表現し、他の重みパラメータと一緒に学習する 方法を位置埋
め込みと呼ぶ。
- 位置符号 は、位置情報の学習は行わず、終始固定の位置情報を用いる
17


# Page. 19

![Page Image](https://bcdn.docswell.com/page/G7WGYZL3E2.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
18


# Page. 20

![Page Image](https://bcdn.docswell.com/page/4JZLX1MGE3.jpg)

4.2.3 層正規化はどこに位置するか？
自己注意機構と順伝播層の直前の二箇所 事前層正規化
[1]
19


# Page. 21

![Page Image](https://bcdn.docswell.com/page/YE6W4LNQEV.jpg)

4.2.3 層正規化 Layer normalization
層ごとの出力値の分布を一定に保つ
1. 統計量の計算
入力ベクトルh 平均
と分散
を計算
2. hを標準化して学習可能なパラメータで調整する
εは分母が0になることを防ぐ非常に小さな値
γはスケール移動 , βは並行移動の調整パラメータ
- 平均0, 分散1の分布が常に最適であるとは限らないため
3. ベクトル
それぞれ独立に正規化処理
20


# Page. 22

![Page Image](https://bcdn.docswell.com/page/GE5MQ152E4.jpg)

4.2.3 層正規化 Layer normalization
層正規化の役割は表現力を損なわないようにすること、ひいては学習を安定させること
● 層正規化の役割 = 学習の安定化
- 順伝播層で活性化関数 が頻繁に使用されるが、入力値が常に正もしくは負に偏っている場
合、表現力は線形関数と同じになってしまう
= 正規化によって入力がバランスよくなることが大事
- サンプルごとの統計量が大きく変わるような場合 に有効
- バッチ正規化、ミニバッチ全体の統計量をを用いて正規化する方法、サンプル（ベクト
ル）ごとに統計量が大きく異なっている場合 、バッチ正規化によって学習が不安定に
なったり、性能劣化につながってしまったりする。
（バッチ正規化は複数サンプルをまたいだ正規化）
- 訓練データとテストデータ間で分布が大きく異なる場合も同様
- 補足：パッチ埋め込みの前後に層正規化を行う、二重層正規化 もViTモデルでは有用である
21


# Page. 23

![Page Image](https://bcdn.docswell.com/page/9729P1N1JR.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
22


# Page. 24

![Page Image](https://bcdn.docswell.com/page/DJY45ZP47M.jpg)

4.2.4 自己注意機構はどこに位置するか？
クエリから見て重要なベクトルを選び、重要度に応じて値を集約する処理
- なぜ「自己」注意機構か？
k,v方式のデータベースに対して、qで問い合わせを行うが、qもk,vも同じ情報源を用い
て生成されているから
23


# Page. 25

![Page Image](https://bcdn.docswell.com/page/V7NYN356E8.jpg)

4.2.4 自己注意機構の具体的な演算内容
クエリから見て重要なベクトルを選び、重要度に応じて値を集約する処理
1. Q, K, V の生成
入力されたパッチの系列 H から3つのベクトルを作成(全結合層の重みはそれぞれ異なる ことに留
意)
2.
3.
4.
各クエリq に対し、Kとの類似度（内積） を計算
√d はスケーリング係数
ソフトマックス関数による確率化
情報の集約
24


# Page. 26

![Page Image](https://bcdn.docswell.com/page/YJ9PR9YR73.jpg)

4.2.4 自己注意機構の解釈
[CLS]トークンに関する解釈
- 類似度に基づいて、全ての画像
パッチを１つのベクトルに集約する
処理
- クエリの観点から注意すべきベクト
ルを選択し、その重要度によってベ
クトルを集約する処理
25


# Page. 27

![Page Image](https://bcdn.docswell.com/page/GJ8DW96GJD.jpg)

4.2.4 自己注意機構の比較など
グローバルに特徴抽出できることがCNNとの比較としてあげられる
- 畳み込み処理との比較
-
-
CNNとは特徴抽出の受容野が大きく違う
CNN：3×3 画素程度
self-attentionは画像全体から画像特徴を一気に集約する、
- √d で割る理由：ソフトマックス関数の傾き、勾配消失問題を防ぐため
e.g. d次元のランダムベクトル、平均0, 分散1 内積は平均0, 分散d = 次元数増えるにつれ
内積の分散が大きくなる＝√d で内積結果を割ることで内積の分散が1になるように
（ある確率変数Xを定数cで割ると、分散はc^2で割られる）（= 分散を1にするために標準偏差で割る＝標準化）
26


# Page. 28

![Page Image](https://bcdn.docswell.com/page/LJLMNW9XER.jpg)

4.2.4 マルチヘッド注意機構
実際のViTでは自己注意機構を複数並列実行させたものを用いる。
softmax()は1つの要素のみ高い傾向があるため、複数のヘッドを用いてそれそれ独立に特徴抽出
1. Q,K,VをH個のヘッドに分割する
各ヘッドhは、
という次元数
れにより、各ヘッドは全体の情報を少しずつ（専門
分担するように）分担して計算
2.各ヘッドでの独立した計算
3.全てのヘッドを統合する
Concat (連結):
すべてのヘッドの出力を横一列に
Woは調整のための重み行列 (全結合層 )
27


# Page. 29

![Page Image](https://bcdn.docswell.com/page/47MYX9Z37W.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
28


# Page. 30

![Page Image](https://bcdn.docswell.com/page/P7R9NG6RE9.jpg)

4.2.5 順伝播層 MLP
橙色の部分について話す
[1]
29


# Page. 31

![Page Image](https://bcdn.docswell.com/page/PJXQNXMY7X.jpg)

4.2.5 順伝播層 MLP(多層パーセプトロン )
クエリから見て重要なベクトルを選び、重要度に応じて値を集約する処理。
- 2層の全結合層と活性化関数で構成される。
入力ベクトルをhとすると、
𝞼(・)は活性化関数、GERUが用いられる
●
コラム：順伝播層の役割
○
順伝播層のパラメータ数はtransformer全体の2/3を占めるため重要な役割がありそう。
○
代表的な役割：記憶
簡単に：attentionの式とMLPの式はsoftmaxか活性化関数かという違いはあるが、構造的に
にている 。W1がK, W2がVに解釈できるという主張（詳しくは論文へ[2]）
30


# Page. 32

![Page Image](https://bcdn.docswell.com/page/3JK9NWG4JD.jpg)

アジェンダ
■
4.1 Vision Transformer 概要
■
4.2.1 パッチ埋め込み Patch embedding
■
4.2.2 位置埋め込み Positional embedding
■
4.2.3 層正規化 Layer normalization
■
4.2.4 自己注意機構 Self-attention
■
4.2.5 順伝播層
■
4.2.6 スキップ接続
■
4.2.7 ViTにおける主要演算まとめ
31


# Page. 33

![Page Image](https://bcdn.docswell.com/page/LE3WV1NDE5.jpg)

4.2.6 スキップ接続
スキップ接続による残差学習によって学習を効率化・安定化させる
スキップ接続：ある層の入力をその層の出力に加算する
CNNで広く利用されているが、ViTでも採用されている。
● マルチヘッド機構の出力
● マルチヘッド機構の出力から順伝播層への出力
32


# Page. 34

![Page Image](https://bcdn.docswell.com/page/8EDK8XW27G.jpg)

4.2.7 ViTにおける主要演算のまとめ
画像分類を行う場合は最終層のクラストークンh_CLS^(L) を用いる
アルゴリズム
33


# Page. 35

![Page Image](https://bcdn.docswell.com/page/V7PK8P9LJ8.jpg)

references
[1] A. Dosovitskiy, L. Beyer, A. Kolesnikov, D. Weissenborn, X. Zhai, T. Unterthiner, M. Dehghani, M.
Minderer, G. Heigold, S. Gelly, J. Uszkoreit, and N. Houlsby, “An image is worth 16x16 words:
Transformers for image recognition at scale,” in Proc. Int. Conf. Learn. Represent. (ICLR), 2021.
[2] M. Geva, R. Schuster, J. Berant, and O. Levy, “Transformer feed-forward layers are key-value
memories,” in Proc. EMNLP, 2021, pp. 5484–5495.
菅沼雅徳『深層学習による機械学習の基礎』オーム社、2024年、pp.106-126.
34


# Page. 36

![Page Image](https://bcdn.docswell.com/page/2JVVN2M6JQ.jpg)

簡易実装コードと疑問だったこと
https://github.com/Kambara-Michiru/vit/blob/main/README.md
https://github.com/Kambara-Michiru/vit/blob/main/notebooks/01_modules.ipynb
CIFAR-10（32×32 画像、patch_size=4）で、30エポック
疑問：2層のMLPで、次元拡大して特徴量を取り出し、また縮小させるという理解はあっているか？
中間層ではc=4、入力次元の４倍に拡大というのが唐突でよくわからかなかった
-
大体、計算量とパフォーマンスの兼ね合いが慣例的にいい部分？
35


