---
title: 【ゼロから作るDeap Learning】6.1~6.2
tags: 
author: [京都大学人工知能研究会KaiRA](https://image.docswell.com/user/kyoto-kaira)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/YE9PR2VVJ3.jpg?width=480
description: 【ゼロから作るDeap Learning】6.1~6.2 by 京都大学人工知能研究会KaiRA
published: June 04, 26
canonical: https://image.docswell.com/s/kyoto-kaira/ZPRWNX-2026-06-04-202002
---
# Page. 1

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

2026年前期輪読会
ゼロからつくる Deep Learning
(6.1~6.2)
京都大学 工学部 情報学科 数理工学コース
稲葉 陽孔
1


# Page. 2

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

アジェンダ
■ パラメーターの更新
■ 重みの初期値
2


# Page. 3

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

パラメーターの更新
最適化
損失関数が最小となるパラメーターを更新すること
手法の一つに、確率的勾配降下法 (SGD)がある
SGDの欠点
SGDによるパラメーターの更新式
ηが定数なので、カーブが急な箇所では
局所最小値の箇所を超え、
右図のように振動してしまう
→Momentum
3


# Page. 4

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

パラメーターの更新
Momentum
下式のように運動の概念を用いて更新の度合いをαv+(－ηδL/δW)として更新する手法
α：空気抵抗による減衰
ーηδL/δW：ロスの発見による加速
SGDとの比較
f(x,y)=x^2/20+y^2を損失関数とした(x,y)の更新経路
Momentumによるパラメーターの更新式
→MomentumはSGDより「ジグザグ」が少ない
4


# Page. 5

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

パラメーターの更新
AdaGrad
ηが定数なので学習係数の減衰ができず、ある程度最適な場合でも更新度合いが大きくなってしまう
→hを定数とし、学習係数をη/√hとすることで減衰を行う(AdaGrad)
SGDとの比較
f(x,y)=x^2/20+y^2を損失関数とした(x,y)の更新経路
AdaGradによるパラメーターの更新式
→AdaGradによってより効率的に最小値を取る箇所((0,0))に向かう
5


# Page. 6

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

パラメーターの更新
Adam
MomentumとAdaGradの工夫点を融合させた手法
Momentumとの比較
f(x,y)=x^2/20+y^2を損失関数とした(x,y)の更新経路
→Momentumと比べて、左右の揺れが軽減されている
6


# Page. 7

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

パラメーターの更新
更新手法の比較
f(x,y)の更新経路ではAdaGradが飛びぬけて優れているが、
下図のMNISTではAdaGradとAdamでは大差ないように、
状況によって最適な更新手法は変わるので色々試すのが良い
MNISTにおける損失の遷移
※MNIST：手書き文字が0~9の何にあたるかの分類を学習
f(x,y)=x^2/20+y^2を損失関数とした(x,y)の更新経路
7


# Page. 8

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

重みの初期値
重みに関して
重みパラメーターの値が小さいと、過学習が起きないようになる
しかし、最初から重みを0に(均一に)すると、誤差逆伝搬で全ての重みが均一に更新されてしまう
→重みはランダムな値 にするべき
8


# Page. 9

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

重みの初期値
隠れ層の分布
モデルの概形図
データ：1000個のデータ（各データは[a1,,a100]で、
aiは標準偏差1のガウス分布で生成）
層：全結合層で、重みは標準偏差1のガウス分布で生成
活性化関数：sigmoid
全総結合(100×100)
×5
sigmoid
→sigmoidでの出力結果が0か1になる
につれて勾配が0に近づいていく
(sigmoidゆえにf’(x)=f(x)(1-f(x))
と伝搬されるため)
→勾配消失 の危険あり
各層に通した後のノードの分布結果(活性化関数の後)
9


# Page. 10

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

重みの初期値
隠れ層の分布
モデルの概形図
データ：1000個のデータ（各データは[a1,,a100]で、
aiは標準偏差1のガウス分布で生成）
層：全結合層で、重みは標準偏差0.01のガウス分布で生成
活性化関数：sigmoid
全総結合(100×100)
×5
sigmoid
→出力結果が0や1といった極端な値
へと偏ることはない
→勾配消失 の危険小
各層に通した後のノードの分布結果(活性化関数の後)
10


# Page. 11

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

重みの初期値
隠れ層の分布 (Xavier)
モデルの概形図
データ：1000個のデータ（各データは[a1,,a100]で、
aiは標準偏差1のガウス分布で生成）
層：全結合層で、重みは標準偏差1/√nのガウス分布で生成
活性化関数：sigmoid
※nは前の層のノード数で、今回は常に100とみなす
全総結合(100×100)
×5
sigmoid
標準偏差0.01の時と比べて、
分布に広がりがある
→sigmoidの表現を抑制されず、
効率的に学習できる
各層に通した後のノードの分布結果(活性化関数の後)
11


# Page. 12

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

重みの初期値
隠れ層の分布 (活性化関数が ReLUの場合)
データ：1000個のデータ（各データは[a1,,a100]で、
aiは標準偏差1のガウス分布で生成）
層：全結合層で、重みはガウス分布で生成
活性化関数：ReLU
Xavier：標準偏差 1/√n
He：標準偏差 √2/√n
※nは前の層のノード数で、今回は常に100とみなす
実験結果
0.01：各層のアクティベーションがとても小さい→勾配消失の危険がある
Xarxiv：層が深くなるごとに偏りが大きくなる→勾配消失の危険がある
He：各層での分布が均一→勾配消失の危険が少ない
各層に通した後のノードの分布結果
(活性化関数の後)
12


# Page. 13

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

重みの初期値
学習結果 (MNIST)
データ：1000個のデータ（各データは[a1,,a100]で、
aiは標準偏差1のガウス分布で生成）
層：全結合層で、重みはガウス分布で生成
活性化関数：ReLU
Xavier：標準偏差1/√n
He：標準偏差√2/√n
※nは前の層のノード数で、今回は常に100とみなす
実験結果
std=0.01の場合は学習が進まないが、HeやXarxivの場合は進んでいる
また、Xarxivよりもへのほうが学習の進みが早い
初期化方法ごとの損失の遷移
13


