16. 導出
• B-1であるHを⽤いたBFGS法のk回⽬の反復(P110 式(7.3)のH式を使⽤)
𝐻$ = 𝐻$G. −
TKUVNKUVLKUV
M
-LKUVNKUV
M
TKUV
LKUV
M NKUV
+ 1 +
NKUV
M
TKUVNKUV
LKUV
M NKUV
LKUVLKUV
M
LKUV
M NKUV
= 𝐼 −
NKUVLKUV
M
LKUV
M NKUV
>
𝐻$G. 𝐼 −
NKUVLKUV
M
LKUV
M NKUV
+
LKUVLKUV
M
LKUV
M NKUV
ここで、𝑉Y = 𝐼 −
NZLZ
M
LZ
MNZ
とおくと
𝐻$ = 𝑉$G.
>
𝐻$G. 𝑉$G. +
LKUVLKUV
M
LKUV
M NKUV
𝐻$G. = 𝑉$G8
>
𝐻$G8 𝑉$G8 +
LKU[LKU[
M
LKU[
M NKU[
代⼊
17. 導出
• 先程のHk-1をHkの式に代⼊する操作をH0まで繰り返す
𝐻$ = 𝑉 𝑉. ⋯ 𝑉$G8 𝑉$G.
> 𝐻 𝑉 𝑉. ⋯ 𝑉$G8 𝑉$G.
+ 𝑉. 𝑉8 ⋯ 𝑉$G8 𝑉$G.
> L^L^
M
L^
MN^
𝑉. 𝑉8 ⋯ 𝑉$G8 𝑉$G.
⋮
+ 𝑉$G8 𝑉$G.
> LKU`LKU`
M
LKU`
M NKU`
𝑉$G8 𝑉$G.
+𝑉$G.
> LKU[LKU[
M
LKU[
M NKU[
𝑉$G. +
LKUVLKUV
M
LKUV
M NKUV
H0は正定値対称な初期⾏列
このままでは通常の準ニュートン法と変わらない
18. 導出
• 過去t回分のみを保存して更新して計算をサボる(Nocedal 1980)
𝐻$ = 𝑉$Ga 𝑉$GaG. ⋯ 𝑉$G8 𝑉$G.
> 𝐻$
𝑉$Ga 𝑉$GaG. ⋯ 𝑉$G8 𝑉$G.
+ 𝑉$GaG. 𝑉$GaG8 ⋯ 𝑉$G8 𝑉$G.
> L^L^
M
L^
MN^
𝑉$GaG. 𝑉$GaG8 ⋯ 𝑉$G8 𝑉$G.
⋮
+ 𝑉$G8 𝑉$G.
> LKU`LKU`
M
LKU`
M NKU`
𝑉$G8 𝑉$G.
+𝑉$G.
> LKU[LKU[
M
LKU[
M NKU[
𝑉$G. +
LKUVLKUV
M
LKUV
M NKUV
t期前までを使⽤
形状の推定にはt期前までの情報で⼗分(?)
適当な初期⾏列で置き換える
19. 導出
ここで、
𝑉Y = 𝐼 −
NZLZ
M
LZ
MNZ
𝐻$
=
LKUV
M
NKUV
NKUV
M NKUV
𝐼
だったので、sとyのみを保存しておけばHを計算できる
それがt期分必要なので、2t個のベクトルを保存しておくだけでよい
最適化対象の変数の次元nが数千であっても
通常tは10程度で設定するため、
⼤幅な時空間計算量の削減が可能