SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
深層学習
著:岡本  孝之  
NAIST	
Computational  Linguistic  Lab  	
D1  Masayoshi  Kondo
5章  –前半-‐‑‒
00:  はじめに
【⽬目的と狙い】
•  Deep  Learningに興味があるけど詳しくは分からない理理系修⼠士学⽣生向け
•  実⽤用的なことよりも基礎的知識識を重視
•  今後論論⽂文を読んで⾏行行く上での基礎体⼒力力を滋養し、各学⽣生の理理解速度度の向上が狙い
【ガイドライン】
•  「深層学習(講談社  :  岡本  貴之  著)」の本をまとめる形で発表
•  全8章の165ページから構成
•  本の内容に準拠(本に記載されていない内容・表現を知っている場合でも原則的
には記載を控える。あくまでも本の内容に忠実。)
•  ただし、適宜、参考⽂文献や関連論論⽂文等はあれば記載していくつもり
•  理理系(情報⼯工学系)の⼤大学学部4年年⽣生が理理解できるくらいをイメージしてまとめる
今回  :  第4章
XX:  緑のスライドとは?  
書籍(本書)には記載されていないが、必要箇所の説明に際し
補助・追記として個⼈人的に記載が必要と思われた場合には、
緑⾊色のページに適宜載せることとする.
•  本には載っていないけど、あえて追加説明したい場合は、
緑スライドに書くことにする.
•  緑スライドに書かれる内容は本には記載されていない.
00:  はじめに
全8章
•  【第1章】はじめに
•  【第2章】順伝搬型ネットワーク
•  【第3章】確率率率的勾配降降下法
•  【第4章】誤差逆伝搬法
•  【第5章】⾃自⼰己符号化器
•  【第6章】畳込みニューラルネット(CNN)
•  【第7章】再帰型ニューラルネット(RNN)
•  【第8章】ボルツマンマシン
00:  はじめに  –  これまでのまとめ  (1・2章)  -‐‑‒
深層学習(Deep  Learning)  /  ニューラルネット  を使って分析するとは
•  ネットワークの構造  を決める
•  活性化関数  を決める
•  学習⽅方法(誤差関数と最適化法)  を決める
の3つを⾏行行うことである
00:  はじめに  –  これまでのまとめ  (3章)  -‐‑‒
深層学習・ニューラルネットワークを使⽤用することは、
•  学習時の過適合(overfitting)
•  学習にかかる膨⼤大な計算時間
との戦い.
過適合を緩和する⽅方法と計算時間を縮⼩小する⼿手法を組み合わせて
現実的に解決可能な問題へ落落とし込む
ニューラルネットワークの学習
誤差関数を最⼩小(極⼩小)にするパラメータ
(重み・バイアス)を求める作業
•    誤差関数  に対する  ユニット  の影響
•    ユニット  に対する  重み・バイアス  の影響
複雑な構造を持つニューラルネットに対して
誤差関数に対するパラメータの影響(微分)を求めるために
00:  はじめに  –  これまでのまとめ  (4章)  -‐‑‒
の2段形式で考える
微分!!
1.  ニューラルネットを特徴量量抽出器として利利⽤用するモデルのこと
2.  ⼊入⼒力力=出⼒力力となるようにパラメータを学ばせる教師無し学習
3.学習したモデルを得ることが⽬目的ではなくて、中間層の出⼒力力値
      を得ることが⽬目的
4.深層学習の事前学習(pre-‐‑‒training)に利利⽤用できることが、近年年
  分かった.
00:  はじめに(今回  まとめ)
【⾃自⼰己符号化器】について学ぶ
• ⾃自⼰己符号化器(autoencoder)って何?
第5章  ⾃自⼰己符号化器
  5.1  概要
  5.2  ネットワークの設計
  5.3  ⾃自⼰己符号化器の働き
  5.4  スパース正則化
  5.5  データの⽩白⾊色化
  5.6  ディープネットの事前学習
  5.7  その他の⾃自⼰己符号化器  
今回(前編)!!
次回(後編)
第5章  ⾃自⼰己符号化器
  5.1  概要
  5.2  ネットワークの設計
  5.3  ⾃自⼰己符号化器の働き
  5.4  スパース正則化
  5.5  データの⽩白⾊色化
  5.6  ディープネットの事前学習
  5.7  その他の⾃自⼰己符号化器  
【⾃自⼰己符号化器(autoencoder)】
01:  概要
•  データをよく表現する特徴の獲得
•  データの良良い表現⽅方法の獲得⽬目的
その他  の⽤用途
ディープネットの事前学習
(“重み”について良良い初期値を得るための前処理理)
x2x1 xN
単層の順伝搬型ニューラルネットをくっつける
y = f (Wx + b)
単層NN
単層NN
ˆx = !f ( !Wy+ !b)
y(x)
x
ˆx(x)
⼆二層ニューラルネットの重みとバイ
アスを上⼿手く調整して、⼊入⼒力力    に
対する出⼒力力    が元の⼊入⼒力力    とな
るべく近くなるようにする
•  符号化
•  復復号化
y = f (Wx + b)
ˆx = !f ( !Wy+ !b)
ˆx
x
x
⽬目標出⼒力力を伴わない⼊入⼒力力だけの訓練データによる教師無し学習を⾏行行うニューラル
ネットのこと.具体的には、⼊入⼒力力=出⼒力力となるような符号化能⼒力力を持つネット
ワークのこと.
【⾃自⼰己符号化器(autoencoder)】
02:  概要
•  データをよく表現する特徴の獲得
•  データの良良い表現⽅方法の獲得⽬目的
その他  の⽤用途
ディープネットの事前学習
(“重み”について良良い初期値を得るための前処理理)
x2x1 xN
単層の順伝搬型ニューラルネットをくっつける
y = f (Wx + b)
単層NN
単層NN
ˆx = !f ( !Wy+ !b)
y(x)
x
ˆx(x)
⽬目標出⼒力力を伴わない⼊入⼒力力だけの訓練データによる教師無し学習を⾏行行うニューラル
ネットのこと.具体的には、⼊入⼒力力=出⼒力力となるような符号化能⼒力力を持つネット
ワークのこと.
正確には
訓練データ
x1, x2,!, xN−1, xN
が与えられた時、各サンプル    
を⼊入⼒力力したときのネットワークの
出⼒力力    が、  に平均的に近く
なるように学習する.
xn
ˆxn
xn
第5章  ⾃自⼰己符号化器
  5.1  概要
  5.2  ネットワークの設計
  5.3  ⾃自⼰己符号化器の働き
  5.4  スパース正則化
  5.5  データの⽩白⾊色化
  5.6  ディープネットの事前学習
  5.7  その他の⾃自⼰己符号化器  
03:  ネットワークの設計
5.2.1  出⼒力力層の活性化関数と誤差関数
⾃自⼰己符号化器の活性化関数には、中間層の  と出⼒力力層  がある.!ff
!f
f :  ⾃自由に決定.  ⼀一般的に、⾮非線形関数を選択.
:  ⽬目標出⼒力力が⼊入⼒力力xに⾃自⾝身になるように⼊入⼒力力データの
        種類に応じて、選択.
誤差関数  について
-‐‑‒  xの各成分xiが実数値で、その範囲に制約が無い場合  
-‐‑‒  xの各成分xiが0と1の⼆二値をとる場合(                            )xi ∈ {0,1}
!f
[誤差関数]  :    
:  恒等写像
E(w) = xn − ˆx(xn )
2
n=1
N
∑ w = {w,b, !w, !b}( )
!f
[誤差関数]  :    
:  ロジスティック関数
E(w) = C(xn, ˆxn )
n=1
N
∑ C(xn, ˆxn ) = − xi log ˆxi +(1− xi )log(1− ˆxi (x))[ ]
i=1
D
∑
#
$
%
&
'
(
-‐‑‒  ⼆二乗誤差の総和
-‐‑‒  交差エントロピー
(※    と        は、それぞれ    と          のi番⽬目の成分を⽰示す.)xi ˆxi (x) x ˆx(x)
04:  ネットワークの設計
5.2.2  重み共有
⼊入⼒力力層のユニット数:  、出⼒力力層のユニット数:  とすると、    のサイズは、
それぞれ、
Dx
Dy w, !w
w → Dy × Dx
!w → Dx × Dy
#
$
%
&%
となる.
このとき、⼀一般的に、この2つの重み      と        は異異なるもので構わないが、w !w
!w = wt
のように共通する場合もあり、これを重み共有の⼀一種とみなすことがある.
(Weight  Sharing,  Weight  Tying)
第5章  ⾃自⼰己符号化器
  5.1  概要
  5.2  ネットワークの設計
  5.3  ⾃自⼰己符号化器の働き
  5.4  スパース正則化
  5.5  データの⽩白⾊色化
  5.6  ディープネットの事前学習
  5.7  その他の⾃自⼰己符号化器  
⾃自⼰己符号化器の⽬目的:上述のような特徴を学習することで、サンプル  x  の
                    別な「表現」としての  y  を得ること.
05:  ⾃自⼰己符号化器の働き
5.3.1  データを表す特徴の学習  
⾃自⼰己符号化器では、(前述の)誤差関数を最⼩小化することでネットワークの
パラメータ(重み・バイアス)を最適化.  また、パラメータのことを特徴
(feature)と呼ぶ.  通常、興味があるのは中間層のパラメータ  (    )である.W,b
x2x1 xN
y = f (Wx + b)
単層NN
単層NN
ˆx = !f ( !Wy+ !b)
y(x)
x
ˆx(x)
何が“良良い”表現であるかの明確
な定義は無い
(直感的には)xをそのまま使う
代わりに変換したyを利利⽤用
すると、対象とする問題が
上⼿手く解ければ良良い.
コレ!!
⼀一応…
⾃自⼰己符号化器の特性:ネットワークの構造に依存
!ff
中間層のユニット数と活性化関数
•    と  が恒等写像
•  出⼒力力次元≦⼊入⼒力力次元
な、⾃自⼰己符号化器  の重み
06:  ⾃自⼰己符号化器の働き
5.3.2  主成分分析との関係  
余談的な内容なので詳しいことは割愛
主成分分析  (PCA)
第5章  ⾃自⼰己符号化器
  5.1  概要
  5.2  ネットワークの設計
  5.3  ⾃自⼰己符号化器の働き
  5.4  スパース正則化
  5.5  データの⽩白⾊色化
  5.6  ディープネットの事前学習
  5.7  その他の⾃自⼰己符号化器  
ρ:パラメータ(重み)の活性度度
ˆρ :中間層の各ユニットの平均活性度度
5.4.1  データの過完備な表現    
「過完備(overcomplete)」とは?
07:  スパース正則化
⼊入⼒力力次元より出⼒力力次元が⼤大きいような余分な⾃自由度度を持つ冗⻑⾧長な特徴
であるにも関わらず、データの性質を上⼿手く表現できる状態のこと
-‐‑‒  スパース正則化  と  スパース⾃自⼰己符号化器(sparse  autoencoder)
【基本的な考え⽅方】
1.  個々の訓練サンプルに対して、なるべく少ない数の中間層のユニットを
使って再現できるようにパラメータを決定.
2.  各訓練サンプル毎に活性化するユニットは異異なって良良い.
新しい誤差関数:誤差関数  +  スパース正則化項  を  最⼩小化
ˆρj =
1
N
yj (xn )
n=1
N
∑
!E(w) = E(w)+ β KL(ρ || ˆρj )
j=1
Dy
∑
∂
∂uj
(l)
β KL(ρ || ˆρj )
j=1
Dl
∑
"
#
$$
%
&
'' = β
∂
∂ ˆρj
KL(ρ || ˆρj )⋅
∂ ˆρj
∂ ˆuj
(l)
∂
∂ ˆρj
KL(ρ || ˆρj ) = −
ρ
ˆρj
+
1− ρ
1− ˆρj
#
$
%%
&
'
((
δj
(l)
=
∂ ˆE w( )
∂uj
(l)
KL(ρ || ˆρj ):                      の微分について
∂ ˆρj
∂ ˆuj
(l)
= "f (uj
(l)
)

08:  スパース正則化
5.4.2  最適化    
δj
(l)
= δk
(l+1)
wkj
(l+1)
+ β −
ρ
ˆρ
+
1− ρ
1− ˆρj
"
#
$$
%
&
''
k
∑
)
*
+
,+
-
.
+
/+
0f (uj
(l)
)
拡張された誤差関数も、勾配降降下法を使って最⼩小化可能
デルタの計算式
ˆρj
(t)
= λ ˆρj
(t−1)
+(1− λ) ˆρj
1.  ミニバッチが含むサンプル集合についてのみ平均活性度度を求める.
2.  ミニバッチ間で以下のように加重平均をとり、全サンプルに対する近似値
として使⽤用.
【解決】
t:更更新(イテレーション)回数
λ:事前に与える定数
09:  スパース正則化
5.4.2  最適化    
ˆρユニットの平均活性度度 について
平均活性度度は全サンプルについての平均なので、厳密に求めるには
全サンプルの順伝搬計算を⼀一度度⾏行行い、各ユニットの出⼒力力を求めてお
いて、その後、活性度度の平均を計算することになる.
ミニバッチによる学習の場合:平均活性度度の計算のためだけに全サンプルの
                            順伝搬計算を⾏行行うのでは⼤大変⾮非効率率率.
スパース正則化:この「分担」のあり⽅方を制御する働き
10:  スパース正則化
5.4.3  スパース正則化の効果    
⾃自⼰己符号化器は、⼊入⼒力力された各サンプルを中間層の各ユニットが「分担」
して表現する.
1.  スパース正則化を⾏行行わないとき
2.  スパース正則化が適度度に⾏行行われるとき
3.  スパース正則化が強すぎるとき
中間層の各ユニットはそれぞれ勝⼿手に⼊入⼒力力を表現しようとする
⼊入⼒力力が持つ構造を効率率率よく表すように、中間層のユニットが
協⼒力力して個々の⼊入⼒力力を表現するようになる
中間層のユニットは集合ではなく、なるべく単独で個々の⼊入⼒力力
を表現しようとする
第5章  ⾃自⼰己符号化器
  5.1  概要
  5.2  ネットワークの設計
  5.3  ⾃自⼰己符号化器の働き
  5.4  スパース正則化
  5.5  データの⽩白⾊色化
  5.6  ディープネットの事前学習
  5.7  その他の⾃自⼰己符号化器  
今回(前編)!!
次回(後編)
終わり

Contenu connexe

Plus de Masayoshi Kondo

Plus de Masayoshi Kondo (7)

Graph-to-Sequence Learning using Gated Graph Neural Networks. [ACL'18] 論文紹介
Graph-to-Sequence Learning using Gated Graph Neural Networks. [ACL'18] 論文紹介Graph-to-Sequence Learning using Gated Graph Neural Networks. [ACL'18] 論文紹介
Graph-to-Sequence Learning using Gated Graph Neural Networks. [ACL'18] 論文紹介
 
GeneratingWikipedia_ICLR18_論文紹介
GeneratingWikipedia_ICLR18_論文紹介GeneratingWikipedia_ICLR18_論文紹介
GeneratingWikipedia_ICLR18_論文紹介
 
Deep Learning
Deep LearningDeep Learning
Deep Learning
 
Semantic_Matching_AAAI16_論文紹介
Semantic_Matching_AAAI16_論文紹介Semantic_Matching_AAAI16_論文紹介
Semantic_Matching_AAAI16_論文紹介
 
最先端NLP勉強会2017_ACL17
最先端NLP勉強会2017_ACL17最先端NLP勉強会2017_ACL17
最先端NLP勉強会2017_ACL17
 
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
 
Linguistic Knowledge as Memory for Recurrent Neural Networks_論文紹介
Linguistic Knowledge as Memory for Recurrent Neural Networks_論文紹介Linguistic Knowledge as Memory for Recurrent Neural Networks_論文紹介
Linguistic Knowledge as Memory for Recurrent Neural Networks_論文紹介
 

深層学習(岡本 孝之 著)Deep learning chap.5_1