Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
MLP深層学習
LSTM
曽和 修平
LSTM
LSTMとは
• RNNは長い順伝搬ネットワークに展開される
→勾配消失問題が発生する(長い系列が扱えない!)
• LSTMはこの問題を解決し、長い系列を扱えるようにする
LSTMの構造
• RNNの中間層の各ユニットを「メモリユニット」というものに置き換える
メモリユニットは前の状態を「覚えていたり」「忘れていたり」することで
RN LST
中間層の

ユニット
メモリユニット
勾配消失問題を解決しようとする
中間層のユニットとメモリユニット
• 中間層の1ユニット
f
Wji
Wjj’
• メモリユニット
1時刻前の中間層の出力
入力層の出力
Wji
Wjj’
Wjj’
I
I
Wji
Wjj’
F
F
Wji
Wjj’
O
O
1時刻前のメモリセ...
LSTMの構造
下の方から見ていく
Wjj’ Wii
この部分は中間層の1ユニットと全く同じ
※添字[j]はユニットの番号,[t]は時刻
ut
j =
X
i
w
(in)
ji xt
i +
X
j0
wjj0 zt−1
j0
f(ut
j)...
LSTMの構造
1時刻前のメモリセルの出力   を考慮
Wji
Wjj’
I
uI,t
j =
X
i
w
(I,in)
ji xt
i +
X
j0
wI
jj0 zt−1
j0 + wI
j st−1
j
st−1
j
出力: gI,t
j...
LSTMの構造
先に計算した各セルの積
出力:
入力ゲート
f(ut
j)gI,t
j
f(ut
j)gI,t
j
これがメモリセルへの入力の1つとなる
LSTMの構造
出力:
Wji
Wjj’
F
F
1時刻前のメモリセルの出力   を「どれだけ覚えているか」をst−1
j
uF,t
j =
X
i
w
(F,in)
ji xt
i +
X
j0
wF
jj0 zt−1
j0 + wF
j s...
LSTMの構造
先に計算した各セルの積
出力:
これがメモリセルへの入力の1つとなる
忘却ゲート
gF,t
j
gF,t
j st−1
j
st−1
j
gF,t
j st−1
j
が1に近ければよく前のメモリセルの状態をよく覚えている事になる...
LSTMの構造
メモリセルは入力ゲートの出力と入力ゲートの出力の和
メモリセル
忘却ゲート
入力ゲート
st
j = gF,t
j st−1
j + gI,t
j f(ut
j)
メモリセルや各ゲートの意味については後述
st
j
LSTMの構造
Wji
Wjj’
O
O
st
j
uO,t
j =
X
i
w
(O,in)
ji xt
i +
X
j0
wO
jj0 zt−1
j0 + wO
j st
j
出力: gO,t
j = f(uO,t
j )
gO,t
j
現...
LSTMの構造
出力ゲート
st
j
f(st
j)
zt
j
gO,t
j
zt
j = gO,t
j f(st
j)
この値が1つのメモリユニットの出力値となる
ゲートの役割
入力重み衝突
i j
重み w
ユニットiの入力はユニットjに重みwをかけて「伝達」される
伝達するためには重みwを大きくしてユニットjを活性させない
といけない
一方、無関係な入力が入った時は伝達したくない
・・というジレンマがある
入力重み衝突
i j
重み w
例)
ユニットiは仮に「英語の名詞」に対して反応するとする
入力「pen」がきたら活性する。これは次に伝達したい。
入力「ペン」はそもそも日本語なのでこの特徴を抽出する

上で関係ない。

これは伝達したくない・...
入力ゲート
・前のユニットの状態を伝達するかどうかを決定
i j
重み w
入力ゲート
・前のユニットの出力が必要ものならゲートを開ける
・前のユニットの出力が関係ないものならゲートを閉じる
・この判断をするのが↓の部分のネットワーク
Wji
...
出力重み衝突/出力ゲート
入力重み衝突と同じ。
・前のユニットの状態を「受け取る」かどうかを決定
(入力ゲート)
(出力ゲート)
・前のユニットの状態を「伝達する」かどうかを決定
Wji
Wjj’
O
O
st
j
gO,t
j
・この判断をす...
メモリセル
・メモリセルはこれまでの状態を保持している
メモリセル
忘却ゲート
入力ゲート
st
j = gF,t
j st−1
j + gI,t
j f(ut
j)
st
j
・しかし、入力の系列がガラッと変わった時、今までの状 
態を捨てた...
メモリセル
主語が男か女かを判断例)
He is a student and she is a student
・「and」の前後で文が独立している
このような場合,she is ・・の文を学習するにあたって
これまでの状態(He is a・・...
忘却ゲート
・これまでの状態を覚えておくか、忘れるかを判断する
Wji
Wjj’
F
F
忘却ゲート
st−1
j
gF,t
j st−1
j
st−1
j
忘れるべきか、覚えておくべきかを判断
逆伝搬計算
誤差関数に関する勾配の求め方(復習)
・中間層l ← 中間層l+1の勾配を誤差逆伝搬法で求める
・l層のあるユニットjへの総入力は
u
(l)
j =
nX
i=1
w
(l)
ji z
(l−1)
i
δEn
δw
(l)
ji
=
δEn
...
誤差関数に関する勾配の求め方(復習)
・中間層l ← 中間層l+1の勾配を誤差逆伝搬法で求める
δEn
δw
(l)
ji
=
δEn
δu
(l)
j
δu
(l)
j
δw
(l)
ji この部分はそのまま微分可能
この部分は出力層→中間層...
誤差関数に関する勾配の求め方(復習)
ユニットjが変動すると,Enはどう影響を受けるのか?
j
0
k
l層
l+1層
ユニットjの出力分だけ、次の層の各中間ユニットの総入力が
影響を受ける→この影響が出力層まで連鎖していく
ユニットjの出力 ...
誤差関数に関する勾配の求め方(復習)
つまり、uj^(l)がEnに与える影響(変動) は
δEn
δu
(l)
j
δEn
δu
(l)
j
=
X
k
δEn
δu
(l+1)
k
δu
(l+1)
k
δu
(l)
j と書ける
そしてこの...
誤差関数に関する勾配の求め方(復習)
では、デルタはどう変形できるか。
δEn
δu
(l)
j
=
X
k
δEn
δu
(l+1)
k
δu
(l+1)
k
δu
(l)
j
右辺第一項はl+1層のデルタになっている
δ
(l)
j ⌘
δ...
誤差関数に関する勾配の求め方(復習)
l+1層のユニットkに関する総入力uは
u
(l+1)
k =
X
j
w
(l+1)
kj z
(l)
j =
X
j
w
(l+1)
kj f(u
(l)
j )
この式をuj^(l)で微分すると
δu...
LSTMの逆伝搬計算
LSTMのメモリユニットの各「デルタ」を計算する
最適化対象の変数は以下
Wji
Wjj’
Wjj’
II
Wji Wjj’
F F
Wji Wjj’
OO
Wji
WjF
Wj I
Wj O
・・これまでと同じ
・・入力...
逆伝搬計算
Wji
Wjj’
O
O
st
j
gO,t
j
まずはこのセルのデルタを考える
※vk^tは次の出力層への総入力
出力層に関して 次時刻のメモリユニットに関して
δO,t
j =
X
k
δout,t
k
δvt
k
δuO,t
...
逆伝搬計算
vt
k =
X
j
wout
kj zt
j
この部分を求める
出力層のユニットへの総入力は
これをuj^(O,t)で微分すると
δvt
k
δuO,t
j
= wout
kj f0
(uO,t
j )f(st
j)
zi
j =...
逆伝搬計算
この部分を求める
これは先と同じように計算できる
δvt
k
δuO,t
j
= wout
kj f0
(uO,t
j )f(st
j)
出力ゲート
st
j
f(st
j)
zt
j
gO,t
j
δO,t
j =
X
k
δou...
逆伝搬計算
✏t
j =
X
k
wout
kj δout,t
k +
X
j0
wj0jδt+1
j0
ここで
とおき
δvt
k
δuO,t
j
= wout
kj f0
(uO,t
j )f(st
j)
をデルタO,tに代入すると・・
δ...
逆伝搬計算
出力ゲート
st
j
f(st
j)
zt
j
gO,t
j
次は、このセルのデルタを求める
これも先と同様の考え方をする。
eδt
j =
X
k
δout,t
k
δvt
k
δst
j
+
X
j0
δ
(t+1)
j0
δu...
逆伝搬計算
vt
k =
X
j
wout
kj zt
j
出力層のユニットへの総入力は
これをsj^tで微分すると
zi
j = gO,t
j f(st
j) である事に注意
eδt
j =
X
k
δout,t
k
δvt
k
δst
j
...
逆伝搬計算
こちらに関しても同様の流れで計算して
eδt
j =
X
k
δout,t
k
δvt
k
δst
j
+
X
j0
δ
(t+1)
j0
δu
(l+1)
k
δst
j
✏t
j =
X
k
wout
kj δout,t
k +...
逆伝搬計算
デルタの定義式をもう一度眺める
δ
(l)
j =
X
k
δ
(l+1)
k (w
(l+1)
kj f0
(u
(l)
j ))
伝搬元のデルタ
伝搬元の重み
現在の層の出力を微分したもの
これらの積の和
(伝搬元のユニット数)
逆伝搬計算
次は、メモリセルのデルタを求める
メモリセル
忘却ゲート
入力ゲート
st
j
このセルの「伝搬元」は・・
・外部出力向け ・セル自身への帰還
・入力ゲート ・忘却ゲート ・出力ゲート
つまり、これら全ての「デルタ」x重みの和がメモ...
逆伝搬計算
メモリセル
忘却ゲート
入力ゲート
st
j
・外部出力向け のデルタ
これは先程計算済み。
eδt
j = gO,t
j f0
(st
j)✏t
j
逆伝搬計算
メモリセル
忘却ゲート
入力ゲート
st
j
・セル自身への帰還 のデルタ
1時刻後のメモリセルの値と1時刻後のゲート値の積
gF,t+1
j δcell,t+1
j
忘却ゲート
メモリセル
伝搬元のデルタ伝搬元の重み
逆伝搬計算
メモリセル
忘却ゲート
入力ゲート
st
j
・入力ゲート
・忘却ゲート
・出力ゲート からのデルタ
それぞれ・・ wI
j δI,t+1
j
wF
j δF,t+1
j
wO
j δO,t
j
逆伝搬計算
よって、メモリセルのデルタは下記のように表される
メモリセル
忘却ゲート
入力ゲート
st
j
δcell,t
j = eδt
j + gF,t+1
j δcell,t+1
j + wI
j δI,t+1
j + wF
j δF,t...
逆伝搬計算
デルタの定義式をもう一度眺める(再掲)
δ
(l)
j =
X
k
δ
(l+1)
k (w
(l+1)
kj f0
(u
(l)
j ))
伝搬元のデルタ
伝搬元の重み
現在の層の出力を微分したもの
これらの積の和
(伝搬元のユニ...
逆伝搬計算
δF,t
jまず、
Wji
Wjj’
F
F
に関して。
伝搬元のデルタは? = δcell,t
j
伝搬元の重みは? = st−1
j
現在の層の出力を微分したものは? = f0
(uF,t
j )
伝搬元は単一のセルからなので、...
逆伝搬計算
次、 に関して。
伝搬元のデルタは? = δcell,t
j
伝搬元の重みは? =
現在の層の出力を微分したものは? =
伝搬元は単一のセルからなので、和を取る必要はない。
よって・・
δI,t
j
Wji
Wjj’
I
gI,t
...
逆伝搬計算
最後、 に関して。
伝搬元のデルタは? = δcell,t
j
伝搬元の重みは? =
現在の層の出力を微分したものは? =
伝搬元は単一のセルからなので、和を取る必要はない。
よって・・
δt
j
Wjj’ Wii
f(ut
j)
...
逆伝搬計算
これで、全てのデルタの計算ができた。
重みの更新ができる
Upcoming SlideShare
Loading in …5
×

MLP深層学習 LSTM

2,074 views

Published on

MPLシリーズ「深層学習」の輪講に用いた資料
LSTMの解説

Published in: Science
  • Be the first to comment

MLP深層学習 LSTM

  1. 1. MLP深層学習 LSTM 曽和 修平
  2. 2. LSTM
  3. 3. LSTMとは • RNNは長い順伝搬ネットワークに展開される →勾配消失問題が発生する(長い系列が扱えない!) • LSTMはこの問題を解決し、長い系列を扱えるようにする
  4. 4. LSTMの構造 • RNNの中間層の各ユニットを「メモリユニット」というものに置き換える メモリユニットは前の状態を「覚えていたり」「忘れていたり」することで RN LST 中間層の
 ユニット メモリユニット 勾配消失問題を解決しようとする
  5. 5. 中間層のユニットとメモリユニット • 中間層の1ユニット f Wji Wjj’ • メモリユニット 1時刻前の中間層の出力 入力層の出力 Wji Wjj’ Wjj’ I I Wji Wjj’ F F Wji Wjj’ O O 1時刻前のメモリセルの出力 メモリセル 忘却ゲート 入力ゲート 出力ゲート Wji
  6. 6. LSTMの構造 下の方から見ていく Wjj’ Wii この部分は中間層の1ユニットと全く同じ ※添字[j]はユニットの番号,[t]は時刻 ut j = X i w (in) ji xt i + X j0 wjj0 zt−1 j0 f(ut j) f(ut j) 出力: (in)
  7. 7. LSTMの構造 1時刻前のメモリセルの出力   を考慮 Wji Wjj’ I uI,t j = X i w (I,in) ji xt i + X j0 wI jj0 zt−1 j0 + wI j st−1 j st−1 j 出力: gI,t j = f(uI,t j ) gI,t j
  8. 8. LSTMの構造 先に計算した各セルの積 出力: 入力ゲート f(ut j)gI,t j f(ut j)gI,t j これがメモリセルへの入力の1つとなる
  9. 9. LSTMの構造 出力: Wji Wjj’ F F 1時刻前のメモリセルの出力   を「どれだけ覚えているか」をst−1 j uF,t j = X i w (F,in) ji xt i + X j0 wF jj0 zt−1 j0 + wF j st−1 j gF,t j = f(uF,t j ) 表現している。
  10. 10. LSTMの構造 先に計算した各セルの積 出力: これがメモリセルへの入力の1つとなる 忘却ゲート gF,t j gF,t j st−1 j st−1 j gF,t j st−1 j が1に近ければよく前のメモリセルの状態をよく覚えている事になる 逆に0に近ければ前のメモリセルの状態を忘れた事になる gF,t j
  11. 11. LSTMの構造 メモリセルは入力ゲートの出力と入力ゲートの出力の和 メモリセル 忘却ゲート 入力ゲート st j = gF,t j st−1 j + gI,t j f(ut j) メモリセルや各ゲートの意味については後述 st j
  12. 12. LSTMの構造 Wji Wjj’ O O st j uO,t j = X i w (O,in) ji xt i + X j0 wO jj0 zt−1 j0 + wO j st j 出力: gO,t j = f(uO,t j ) gO,t j 現在のメモリセルの値を考慮
  13. 13. LSTMの構造 出力ゲート st j f(st j) zt j gO,t j zt j = gO,t j f(st j) この値が1つのメモリユニットの出力値となる
  14. 14. ゲートの役割
  15. 15. 入力重み衝突 i j 重み w ユニットiの入力はユニットjに重みwをかけて「伝達」される 伝達するためには重みwを大きくしてユニットjを活性させない といけない 一方、無関係な入力が入った時は伝達したくない ・・というジレンマがある
  16. 16. 入力重み衝突 i j 重み w 例) ユニットiは仮に「英語の名詞」に対して反応するとする 入力「pen」がきたら活性する。これは次に伝達したい。 入力「ペン」はそもそも日本語なのでこの特徴を抽出する
 上で関係ない。
 これは伝達したくない・・ →重みは大きくしたい →重みは小さくしたい
  17. 17. 入力ゲート ・前のユニットの状態を伝達するかどうかを決定 i j 重み w 入力ゲート ・前のユニットの出力が必要ものならゲートを開ける ・前のユニットの出力が関係ないものならゲートを閉じる ・この判断をするのが↓の部分のネットワーク Wji Wjj’ I gI,t j
  18. 18. 出力重み衝突/出力ゲート 入力重み衝突と同じ。 ・前のユニットの状態を「受け取る」かどうかを決定 (入力ゲート) (出力ゲート) ・前のユニットの状態を「伝達する」かどうかを決定 Wji Wjj’ O O st j gO,t j ・この判断をするのが↓の部分のネットワーク
  19. 19. メモリセル ・メモリセルはこれまでの状態を保持している メモリセル 忘却ゲート 入力ゲート st j = gF,t j st−1 j + gI,t j f(ut j) st j ・しかし、入力の系列がガラッと変わった時、今までの状  態を捨てたい事がある
  20. 20. メモリセル 主語が男か女かを判断例) He is a student and she is a student ・「and」の前後で文が独立している このような場合,she is ・・の文を学習するにあたって これまでの状態(He is a・・)を捨てたい
  21. 21. 忘却ゲート ・これまでの状態を覚えておくか、忘れるかを判断する Wji Wjj’ F F 忘却ゲート st−1 j gF,t j st−1 j st−1 j 忘れるべきか、覚えておくべきかを判断
  22. 22. 逆伝搬計算
  23. 23. 誤差関数に関する勾配の求め方(復習) ・中間層l ← 中間層l+1の勾配を誤差逆伝搬法で求める ・l層のあるユニットjへの総入力は u (l) j = nX i=1 w (l) ji z (l−1) i δEn δw (l) ji = δEn δu (l) j δu (l) j δw (l) ji ・勾配を求める為微分する これが計算できれば勾配が求まる→重みが更新できる
  24. 24. 誤差関数に関する勾配の求め方(復習) ・中間層l ← 中間層l+1の勾配を誤差逆伝搬法で求める δEn δw (l) ji = δEn δu (l) j δu (l) j δw (l) ji この部分はそのまま微分可能 この部分は出力層→中間層の時以外はこのまま計算できない はどうすれば計算できるのか。 δEn δu (l) j
  25. 25. 誤差関数に関する勾配の求め方(復習) ユニットjが変動すると,Enはどう影響を受けるのか? j 0 k l層 l+1層 ユニットjの出力分だけ、次の層の各中間ユニットの総入力が 影響を受ける→この影響が出力層まで連鎖していく ユニットjの出力 x 重みの分だけ
 総入力に影響がある
  26. 26. 誤差関数に関する勾配の求め方(復習) つまり、uj^(l)がEnに与える影響(変動) は δEn δu (l) j δEn δu (l) j = X k δEn δu (l+1) k δu (l+1) k δu (l) j と書ける そしてこの本ではこの値を「デルタ」と呼んでいる δ (l) j ⌘ δEn δu (l) j このデルタさえわかれば後は δEn δw (l) ji = δEn δu (l) j δu (l) j δw (l) ji に代入すれば簡単に勾配が求まる。
  27. 27. 誤差関数に関する勾配の求め方(復習) では、デルタはどう変形できるか。 δEn δu (l) j = X k δEn δu (l+1) k δu (l+1) k δu (l) j 右辺第一項はl+1層のデルタになっている δ (l) j ⌘ δEn δu (l) j δ (l) j = X k δ (l+1) k δu (l+1) k δu (l) j ので、こう書ける さて、右辺第二項について考える。
  28. 28. 誤差関数に関する勾配の求め方(復習) l+1層のユニットkに関する総入力uは u (l+1) k = X j w (l+1) kj z (l) j = X j w (l+1) kj f(u (l) j ) この式をuj^(l)で微分すると δu (l+1) k δu (l) j = w (l+1) kj f0 (u (l) j ) よって δ (l) j = X k δ (l+1) k (w (l+1) kj f0 (u (l) j ))
  29. 29. LSTMの逆伝搬計算 LSTMのメモリユニットの各「デルタ」を計算する 最適化対象の変数は以下 Wji Wjj’ Wjj’ II Wji Wjj’ F F Wji Wjj’ OO Wji WjF Wj I Wj O ・・これまでと同じ ・・入力ゲート値の重み ・・忘却ゲート値の重み ・・出力ゲート値の重み
  30. 30. 逆伝搬計算 Wji Wjj’ O O st j gO,t j まずはこのセルのデルタを考える ※vk^tは次の出力層への総入力 出力層に関して 次時刻のメモリユニットに関して δO,t j = X k δout,t k δvt k δuO,t j + X j0 δ (t+1) j0 δu (l+1) k δu (O,t) j j’
  31. 31. 逆伝搬計算 vt k = X j wout kj zt j この部分を求める 出力層のユニットへの総入力は これをuj^(O,t)で微分すると δvt k δuO,t j = wout kj f0 (uO,t j )f(st j) zi j = gO,t j f(st j) 出力ゲート st j f(st j) zt j gO,t j である事に注意 δO,t j = X k δout,t k δvt k δuO,t j + X j0 δ (t+1) j0 δu (l+1) k δu (O,t) j j’
  32. 32. 逆伝搬計算 この部分を求める これは先と同じように計算できる δvt k δuO,t j = wout kj f0 (uO,t j )f(st j) 出力ゲート st j f(st j) zt j gO,t j δO,t j = X k δout,t k δvt k δuO,t j + X j0 δ (t+1) j0 δu (l+1) k δu (O,t) j j’ j’δu (t+1) j0 δuO,t j = wj0jf0 (uO,t j )f(st j)
  33. 33. 逆伝搬計算 ✏t j = X k wout kj δout,t k + X j0 wj0jδt+1 j0 ここで とおき δvt k δuO,t j = wout kj f0 (uO,t j )f(st j) をデルタO,tに代入すると・・ δO,t j = f0 (uO,t j )f(st j)✏t j となる j’ δu (t+1) j0 δuO,t j = wj0jf0 (uO,t j )f(st j)
  34. 34. 逆伝搬計算 出力ゲート st j f(st j) zt j gO,t j 次は、このセルのデルタを求める これも先と同様の考え方をする。 eδt j = X k δout,t k δvt k δst j + X j0 δ (t+1) j0 δu (l+1) k δst j 出力層に関して 次時刻のメモリユニットに関して j’
  35. 35. 逆伝搬計算 vt k = X j wout kj zt j 出力層のユニットへの総入力は これをsj^tで微分すると zi j = gO,t j f(st j) である事に注意 eδt j = X k δout,t k δvt k δst j + X j0 δ (t+1) j0 δu (l+1) k δst j δvt k δst j = X j wout kj gO,t j f0 (st j) j’
  36. 36. 逆伝搬計算 こちらに関しても同様の流れで計算して eδt j = X k δout,t k δvt k δst j + X j0 δ (t+1) j0 δu (l+1) k δst j ✏t j = X k wout kj δout,t k + X j0 wj0jδt+1 j0 とおくと eδt j = gO,t j f0 (st j)✏t j j’ j’ δu (t+1) j0 δuO,t j = wj0jgO,t j f0 (st j)
  37. 37. 逆伝搬計算 デルタの定義式をもう一度眺める δ (l) j = X k δ (l+1) k (w (l+1) kj f0 (u (l) j )) 伝搬元のデルタ 伝搬元の重み 現在の層の出力を微分したもの これらの積の和 (伝搬元のユニット数)
  38. 38. 逆伝搬計算 次は、メモリセルのデルタを求める メモリセル 忘却ゲート 入力ゲート st j このセルの「伝搬元」は・・ ・外部出力向け ・セル自身への帰還 ・入力ゲート ・忘却ゲート ・出力ゲート つまり、これら全ての「デルタ」x重みの和がメモリセルの 「デルタ」 メモリセルは総入力sj^tを受け、恒等写像
 の活性化関数を経てsj^tを返すと考える f0 (st j) = 1
  39. 39. 逆伝搬計算 メモリセル 忘却ゲート 入力ゲート st j ・外部出力向け のデルタ これは先程計算済み。 eδt j = gO,t j f0 (st j)✏t j
  40. 40. 逆伝搬計算 メモリセル 忘却ゲート 入力ゲート st j ・セル自身への帰還 のデルタ 1時刻後のメモリセルの値と1時刻後のゲート値の積 gF,t+1 j δcell,t+1 j 忘却ゲート メモリセル 伝搬元のデルタ伝搬元の重み
  41. 41. 逆伝搬計算 メモリセル 忘却ゲート 入力ゲート st j ・入力ゲート ・忘却ゲート ・出力ゲート からのデルタ それぞれ・・ wI j δI,t+1 j wF j δF,t+1 j wO j δO,t j
  42. 42. 逆伝搬計算 よって、メモリセルのデルタは下記のように表される メモリセル 忘却ゲート 入力ゲート st j δcell,t j = eδt j + gF,t+1 j δcell,t+1 j + wI j δI,t+1 j + wF j δF,t+1 j + wO j δO,t j まだ δF,t j δI,t jと が求められていないので求めていく。 最初のセルに関するデルタ δt j
  43. 43. 逆伝搬計算 デルタの定義式をもう一度眺める(再掲) δ (l) j = X k δ (l+1) k (w (l+1) kj f0 (u (l) j )) 伝搬元のデルタ 伝搬元の重み 現在の層の出力を微分したもの これらの積の和 (伝搬元のユニット数)
  44. 44. 逆伝搬計算 δF,t jまず、 Wji Wjj’ F F に関して。 伝搬元のデルタは? = δcell,t j 伝搬元の重みは? = st−1 j 現在の層の出力を微分したものは? = f0 (uF,t j ) 伝搬元は単一のセルからなので、和を取る必要はない。 δF,t j = f0 (uF,t j )st−1 j δcell,t jよって・・
  45. 45. 逆伝搬計算 次、 に関して。 伝搬元のデルタは? = δcell,t j 伝搬元の重みは? = 現在の層の出力を微分したものは? = 伝搬元は単一のセルからなので、和を取る必要はない。 よって・・ δI,t j Wji Wjj’ I gI,t j f(ut j) f0 (uI,t j ) δI,t j = f0 (uI,t j )f(ut j)δcell,t j
  46. 46. 逆伝搬計算 最後、 に関して。 伝搬元のデルタは? = δcell,t j 伝搬元の重みは? = 現在の層の出力を微分したものは? = 伝搬元は単一のセルからなので、和を取る必要はない。 よって・・ δt j Wjj’ Wii f(ut j) gI,t j f0 (ut j) δt j = gI,t j f0 (ut j)δcell,t j
  47. 47. 逆伝搬計算 これで、全てのデルタの計算ができた。 重みの更新ができる

×