SlideShare a Scribd company logo
1 of 63
Download to read offline
モンテカルロ法に基づく	
  
超大規模疎行列の固有値分布計算	
筑波大学	
  
二村保徳	
1
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
2
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
3
行列の固有値問題	
•  標準固有値問題	
  
•  Aはn次の正方行列、λはスカラー、uは非零の
ベクトル
•  n個の固有値が存在	
  
•  本講演ではAが実対称行列の場合を扱う	
  
–  固有値はすべて実数	
  
–  相異なる固有値の固有ベクトルは互いに直交する	
  
•  行列が超大規模疎行列である場合を考える	
  
4	
Au = u
問題のさまざまなパターン	
•  行列の大きさ	
  
–  小規模	
  
–  大規模	
  
•  行列Aの疎密	
  
–  疎行列	
  
–  密行列	
  
•  何を求めるか	
  
–  固有値のみ	
  
–  固有値と固有ベクトル両方欲しい	
  
•  どの固有対を求めるか	
  
–  (絶対値)最大/最小から何個	
  
–  	
  ある特定の区間内全部	
  
–  ある値から近いもの数個	
  
5
固有値問題の解法	
直交変換に基づく方法	
 射影法	
主に直交変換で3重対角行列な
どの簡単な形に変換.変換後の
行列の性質を利用し	
  
2つの部分空間     を生成,	
  
Lanczos法	
Jacobi-­‐Davidson法	
櫻井・杉浦法	
を満たす    を近似固有対
とする	
  
etc..	
u K
( , u)
K, L
などの反復計算で固有対を
求める	
  
QR法 	
分割統治法	
  
二分法+逆反復法	
  
部分空間の生成法に応じて	
  
様々な解法がある	
6	
etc..	
  
,	
Au u L
固有値問題の解法	
ユニタリ変換に基づく方法	
 射影法	
密行列の全固有値を求める
場合に有効	
行列要素を変換する	
  
疎行列の部分固有値を求める
場合に有効	
計算量として,求める固有対
数に依存する項が支配的	
計算量として,求める固有対
数に依存しない項が支配的	
行列要素を変換しない	
  
7
指定した区間内の固有値を求める射
影法	
•  本講演では指定した区間内の固有値を求める場合に
ついて考える	
•  指定した値付近の固有値と対応する固有ベクトルを
求める手法	
  
–  Shi=-­‐and-­‐invert	
  Lanczos法	
  
–  Jacobi-­‐Davidson法	
  
–  etc	
  
•  指定した区間内(複素平面上の領域)の固有値を求
める手法	
  
–  櫻井・杉浦法*1	
  
–  FEAST*2	
  
–  etc	
  
8	
*1	
  T.	
  Sakurai	
  and	
  H.	
  Sugiura,	
  J.	
  Comput.	
  Appl.	
  Math.	
  159(1),	
  119-­‐128	
  (2003)	
*2	
  E.	
  Polizzi,	
  Phys.	
  Rev.	
  B.	
  Vol.	
  79,	
  115112	
  (2009)	
  
たくさん固有値が欲しい場合	
•  求めたい固有値の数Mが多くなると、Gram-­‐
Schmidt直交化など、計算量がMの2乗に比
例する部分の計算コストが効いてくる	
  
– 求めたい区間を複数の小区間に分けて、それぞ
れ区間の固有値計算を個別に行う	
  
– 異なる区間の計算は独立なので並列計算ができ
る	
  
9
このアプローチの難しいところ	
•  計算量が小区間にある固有値数に比例するため、並
列計算する場合はなるべく固有値数が均等になるよう
に分けたい	
  
•  なので固有値の分布がわかると嬉しい	
  
•  でも固有値がわからなくて固有値計算をしているわけ
なので、それがわかるなら苦労しない	
  
•  とは言え、粗い近似で良いので少ない計算コストで固
有値分布を計算できる方法はないものか?	
  
10	
Re	

‥eigenvalue	
  
固有値分布を求める方法	
•  Gershgorinの定理の利用	
  
–  固有値を包むGershgorin円が大きすぎる場合がある	
  
–  行列が陽に与えれられない場合に困難	
  
•  Sylvesterの慣性則の利用	
  
–  修正Cholesky分解が必要	
  
–  行列が陽に与えられない場合に困難	
  
•  行列Traceのモンテカルロ計算に基づく手法	
  
–  行列が陽に与えられない場合でも使える	
  
–  モンテカルロ法なので不正確な場合も..	
  
11
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
12
行列Traceのモンテカルロ計算	
  
に基づく近似法の概要	
•  行列Traceのモンテカルロ計算に基づく近似法	
  
– Traceをとることによって固有値数を与える矩形の
行列値関数を考える	
  
– その行列値関数を多項式や有理関数で近似	
  
– 近似した行列値関数のTraceをモンテカルロ計算で
さらに近似	
  
13	
0
h( )
指定区間内の固有値数を求める	
•  区間[a, b]内の固有値数mを求める	
  
A = U UT
Ak
= U k
UT
UT
U = I
tr(h(A)) = tr(Uh( )UT
)
= tr( i [a,b] uiuT
i )
= m
定義と関係式	
ただし	
h(t)
1 if t [a, b]
0 otherwize
diag( 1, 2, . . . , n)
U [u1, u2, . . . , un]
14
矩形関数の近似	
•  矩形関数h(A)を近似する	
  
– 多項式近似*1	
  
•  Chebyshev多項式等	
  
– 周回数値積分による近似(有理関数近似)*2	
0
h( )
今回扱う手法	
15	
*1	
  E.	
  D.	
  Napoli,	
  E.	
  Polizzi,	
  Y.	
  Saad,	
  arXiv:1308.4275v2,	
  2014	
  
*2	
  Y.	
  Futamura,	
  H.	
  Tadano,	
  and	
  T.	
  Sakurai,	
  JSIAM	
  Le`ers,	
  Vol.	
  2,	
  pp.	
  127-­‐130,	
  2010	
  
ただし、        かつ	
周回積分のよる表現	
16	
h(A) =
1
2 i
(zI A) 1
dz
1
2 i
(zI A) 1
dz =
1
2 i
U(zI ) 1
UT
dz
=
n
i=1
1
2 i
1
z i
dzuiuT
i
= b
Re	

Im	

‥eigenvalue	
  
Γ	

= a
よって	
a b
= m
数値積分	
•  周回積分を数値積分で近似する	
  
– 台形則	
  
– Gauss-­‐Legendre則	
  
– etc..	
  
	
  
•  h(A)の有理関数近似と見て取れる	
  
1
2 i
(zI A) 1
dz
N
j=1
wj(zjI A) 1
wj:重み,zj:積分点	
17
行列traceのモンテカルロ計算	
•  大規模行列の場合、行列多項式や逆行列の
陽を計算するのは非現実的	
18	
行列のtraceを求めるモンテカルロ系の
方法を用いる	
M.	
  F.	
  Hutchinson,	
  Commun.	
  Staast.	
  Simula.,	
  19	
  (1990),	
  pp.	
  433–450.	
  	
  
Z.	
  Bai,	
  M.	
  Fahey	
  and	
  G.	
  Golub,	
  Vol.	
  74,	
  Issues	
  1-­‐2,	
  pp.	
  71-­‐89,	
  1996	
  
H.	
  Avron	
  and	
  S.	
  Toledo,	
  Journal	
  of	
  the	
  ACM,	
  58,	
  p.	
  8,	
  2011	
  
F.	
  Roosta-­‐Khorasani,	
  U.	
  Ascher,	
  Foundaaons	
  of	
  Computaaonal	
  Mathemaacs,	
  pp.1-­‐26,	
  2014	
  	
  
問題設定	
•  多項式近似の場合:	
  
–  実対称行列の(実係数)多項式は実対称行列	
  
•  周回数値積分(有理関数近似)の場合:	
  
–  積分点を共役対で与えれば実対称行列の議論に落
ちる	
  
•  問題設定:実対称行列Aのtraceを近似する	
  
w(zI A) 1
+ w(zI A) 1
は実対称行列	
※	
Re	

Im	

19
行列Traceのモンテカルロ計算	
•  viは乱数で作られたベクトル	
  
•  vi
TAviの期待値がtr(A)になるように作られる	
  
•  Aが行列値関数の値だったりして陽に与えられ
なくても、Aとベクトルとの積が計算できれば使え
る	
tr(A)
1
s
s
i=1
vT
i Avi
20
Trace	
  esamatorの種類	
•  Hutchinson	
  esamator	
  
•  Gaussian	
  esamator	
  
•  Normalized	
  Rayleigh-­‐quoaent	
  esamator	
  
•  Unit	
  vector	
  esamator	
21	
H.	
  Avron	
  and	
  S.	
  Toledo,	
  Journal	
  of	
  the	
  ACM,	
  58,	
  p.	
  8,	
  2011	
  
F.	
  Roosta-­‐Khorasani,	
  U.	
  Ascher,	
  Foundaaons	
  of	
  Computaaonal	
  Mathemaacs,	
  pp.1-­‐26,	
  2014	
  	
  
Hutchinson	
  esamator	
•  各要素が等確率で-­‐1か1のベクトルを使う	
  
•  行列Traceを近似するモンテカルロ法の最初の
提案*1で使われ、広く用いられている*2	
  
•  行列が対角優位なほど分散が相対的に小さくな
る	
  
•  Aが対角行列の場合は、ベクトル1本で真値が得
られる	
  
Var(vT
Av) = 2(||A||2
F
n
i=1
aii)
22	
*1	
  M.	
  F.	
  Hutchinson,	
  Commun.	
  Staast.	
  Simula.,	
  19	
  (1990),	
  pp.	
  433–450.	
  	
  
*2	
  H.	
  Avron	
  and	
  S.	
  Toledo,	
  Journal	
  of	
  the	
  ACM,	
  58,	
  p.	
  8,	
  2011	
  
Gaussian	
  esamator	
•  各要素が互いに独立に標準正規分布に従うベク
トルを使う	
  
•  このようなベクトルは直交行列をかけても上記の
性質が不変であることが知られている	
  
•  そのため実対称行列の場合、分散は固有値の
みで決まる	
  
	
Var(vT
Av) = 2
n
i=1
i
2
23
Normalized	
  Rayleigh-­‐quoaent	
  
esamator	
•  各要素が互いに独立に平均0の、ある確率分
布に従う乱数ベクトルを使う.ただし、vTv=n
•  Hutchinson	
  esamatorはこれの一例	
  
•  分散は乱数の確率分布で決まる	
  
 (※これだけ他のesamatorに対して抽象的)	
24
Unit	
  vector	
  esamator	
•             を一様に乱択し、単位ベクトルeiを
使う	
  
•  分散は行列の対角成分のみのばらつきできまる	
  
•  対角要素が全て等しい場合は、ベクトル1本で真値が
得られる	
•  離散フーリエ変換などでシャッフルするアプローチもあ
る	
i {1, 2, . . . , n}
tr(A)
n
s
s
i=1
vT
i Avi
25	
Var(nvT
Av) = n
n
i=1
A2
ii tr(A)2
固有値分布の推定	
•  固有値分布を知りたい区間を複数の小区間
に分割	
  
•  それぞれの小区間で固有値数を求める	
  
26	
Re	

3	
 4	
 2	
 4	
 3	
a b
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
27
数値実験(概要)	
•  指定区間の固有値数推定	
  
– Trace	
  esamatorはすべてHutchinson	
  esamator	
  
– Matrix	
  Marketの行列における実験	
  
– 積分点数 N	
  の増加に応じた固有値数の変化(ex.
1)	
  
– サンプルベクトル数 s	
  の増加に応じた固有値数
の変化(ex.2)	
  
•  指定区間の固有値分布推定(ex.3)	
  
– 密度汎関数計算で現れる行列における実験	
  
28
数値実験	
  ex.1	
•  Matrix	
  Marketの行列における実験	
  
•  標準固有値問題	
  
– PLAT1919	
  
– BCSST13	
  
29	
Matrix	
 Size	
 a	
 b	
 #eig	
  in	
  Γ	
PLAT1919	
 1919	
 -­‐0.5e7	
 4.5e7	
 40	
BCSST13	
 2003	
 1.0e3	
 5.0e3	
 11
数値実験	
  ex.1	
•  積分点数 N	
  の増加に応じた固有値数の変化
を調べる	
  
•  行列traceはexactに計算した	
  
	
  (Monte	
  Carlo法は用いていない)	
  
30
ex.1	
  数値実験結果 PLAT1919	
31	
35	
  
40	
  
45	
  
50	
  
55	
  
60	
  
0	
   10	
   20	
   30	
   40	
   50	
   60	
   70	
  
Eigenvalue	
  count	
  
Number	
  of	
  quadrature	
  points	
  
PLAT1919	
  (n	
  =	
  1919)	
  
ex.1	
  数値実験結果	
  BCSST13	
32	
10.9	
  
10.92	
  
10.94	
  
10.96	
  
10.98	
  
11	
  
11.02	
  
0	
   10	
   20	
   30	
   40	
   50	
   60	
   70	
  
Eigenvalue	
  count	
  
Number	
  of	
  quadrature	
  points	
  
BCSST13	
  (n	
  =	
  2003)	
  	
  
数値実験	
  ex.2	
•  サンプルベクトル数 s	
  の増加に応じた固有値
数の変化	
  
•  積分点数はN	
  = 16 に固定	
  
– ex.1でN	
  = 16の時の値を真値とする	
  
•  テスト行列は	
  ex.1	
  と同じ	
33
ex.2	
  数値実験結果	
  PLAT1919	
34	
39	
  
39.5	
  
40	
  
40.5	
  
41	
  
41.5	
  
42	
  
0	
   50	
   100	
   150	
   200	
   250	
   300	
  
Eigenvalue	
  count	
  
Number	
  of	
  samples	
  
PLAT1919	
  (n	
  =	
  1919)	
  
ex.2	
  数値実験結果	
  BCSST13	
35	
8	
  
9	
  
10	
  
11	
  
12	
  
13	
  
14	
  
0	
   50	
   100	
   150	
   200	
   250	
   300	
  
Eigenvalue	
  count	
  
Number	
  of	
  samples	
  
BCSST13	
  (n	
  =	
  2003)	
  
数値実験	
  ex.3	
  (1/3)	
•  密度汎関数計算で現れる行列における実験
†	
  	
  
•  標準固有値問題	
  
•  Si	
  510	
  原子系の計算で現れる行列で実験	
  
– 行列の次元数	
  175,616	
  
– 最小から1,020	
  の固有対が必要	
  
– 行列は行列ベクトル積の関数としてのみ与えられ
る	
36	
†J.	
  R.	
  Chelikowsky,	
  N.	
  Troullier,	
  K.	
  Wu,	
  Y.	
  Saad,	
  Phys.	
  Rev.	
  B	
  50	
  11355-­‐11364,	
  1994.	
†J.-­‐I.	
  Iwata,	
  D.	
  Takahashi,	
  A.	
  Oshiyama,	
  T.	
  Boku,	
  K.	
  Shiraishi,	
  S.	
  Okada,	
  and	
  K.	
  Yamada	
  	
  
	
  	
  J.	
  Comput.	
  Phys.	
  229,	
  2339-­‐2363,	
  2010.
数値実験	
  ex.3	
  (2/3)	
•  パラメータ設定	
  
– 積分点数	
  =	
  8	
  
– サンプルベクトル数	
  =	
  20	
  
– 物理的に意味のある固有値が存在する区間	
  
[-­‐0.230,	
  0.243]	
  を100個の小区間に等分割し、そ
れぞれで固有値数を推定	
  
37
ex.3	
  数値実験結果	
  (1/2)	
38	
0 10 20 30 40 50 60 70 80 90 100
0
10
20
30
40
50
60
Index of the circle
Eigenvaluecount
Estimation
Exact
ex.3	
  数値実験結果 (2/2)	
10 20 30 40 50 60 70 80 90 100
0
200
400
600
800
1000
1200
Index of the circle
Eigenvaluecount
Estimation
Exact
accumulated	
39
モンテカルロ計算による固有値分布
推定に関するReference	
•  非対称一般化固有値問題を扱った論文	
  
•  非線形固有値問題を扱った論文	
40	
Y.	
  Futamura,	
  H.	
  Tadano,	
  and	
  T.	
  Sakurai,	
  “Parallel	
  stochasac	
  
esamaaon	
  method	
  of	
  eigenvalue	
  distribuaon”,	
  JSIAM	
  
Le`ers,	
  Vol.	
  2,	
  pp.	
  127-­‐130,	
  2010	
  
Y.	
  Maeda,	
  Y.	
  Futamura,	
  and	
  T.	
  Sakurai,	
  “Stochasac	
  esamaaon	
  
of	
  eigenvalue	
  density	
  for	
  nonlinear	
  eigenvalue	
  problem	
  on	
  
the	
  complex	
  plane”,	
  JSIAM	
  Le`ers,	
  pp.	
  61–64,	
  2011	
  	
  
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
41
周回数値積分による方法の難点	
•  固有値数を求めるために線形方程式をs✕N
個解かないといけない	
  
•  線形方程式をLU分解による直接解法で解くぐ
らいならシルベスター慣性則を使うべき	
  
•  Krylov部分空間法などの反復法を使う	
  
s
i=1
N
j=1
wjvT
i (zjI A) 1
vi
42
Krylov部分空間法の利用	
43	
•  (zjI–A)が複素対称行列になるので複素対
称行列向きを解法を使う	
  
– COCG法	
  
– COCR法	
  
– QMR-­‐SYM法	
  
s
i=1
N
j=1
wjvT
i (zjI A) 1
vi
(前処理無し)COCG法のアルゴリズム	
Set initial guess x0
Set p0 = r0 = b x0
for k = 0, 1, . . . , until converge do
qk = Cpk
k =
rk
T
rk
pk
Tqk
xk+1 = xk + kpk
rk+1 = rk kqk
k =
rk+1
T
rk+1
rk
Trk
pk+1 = rk+1 + kpk
end for
複素対称行列Cに関する
線形方程式	
Cx = b
を解くアルゴリズム	
44
計算の主要部	
•  COCG法などKrylov部分空間反復法では前処
理を行わない場合は行列Aに関する疎行列
ベクトル積が計算の主要部になる	
  
– リスタート周期の長いGMRES等、例外もあり	
  
45
Krylov部分空間のシフト不変性	
•  解きたい方程式:	
  
	
  
•  Krylov部分空間のシフト不変性に着目	
  
	
  
Kk(A; v) = Kk(A + I; v)
Kk(A, v) span{v, Av, A2
v, . . . , Ak 1z
v}
Krylov部分空間:	
( C)
シフト不変性:	
(zjI A)xzj
= v (j = 1, 2, . . . , N)
46
shi=ed	
  Krylov部分空間法	
•  Krylov部分空間のシフト不変性を利用した解
法	
  
– Shi=ed	
  CG*1	
  
– Shi=ed	
  COCG*2	
  
– Shi=ed	
  COCR*3	
  
– etc..	
  
47	
*1	
  B.	
  Jegerlehner,	
  Hep-­‐lat/9612014,	
  1996	
*2	
  S.	
  Yamamoto,	
  T.	
  Sogabe,	
  T.	
  Hoshi,	
  S.-­‐L.	
  Zhang,	
  and	
  T.	
  Fujiwara,	
    	
J.	
  Phys.	
  Soc.	
  Jpn.,	
  Vol.	
  77,	
  No.	
  11,	
  114713,	
  pp.	
  1-­‐8,	
  2008	
*3	
  T.	
  Sogabe	
  and	
  S.-­‐L.	
  Zhang,	
  East	
  Asia	
  J.	
  on	
  Appl.	
  Math.,	
  1,	
  pp.	
  97-­‐107,	
  2011
Shi=ed	
  COCG法	
•  COCG法をシフト線形方程式群:	
  
	
  
 にそれぞれ適用したのと数学的に等価	
  
	
  
N本のシフト線形方程式を解くのに1回反復あ
たりCに関する行列ベクトル積が1回のみ	
  
(C + jI)x j
= b (j = 1, 2, . . . , N)
48
Shi=ed	
  COCGのアルゴリズム	
Set initial guess x0
Set x j
0 = x0 = 0, 1 = j
1 = j
0 = 1
Set p j
0 = p0 = r0 = b
for k = 0, 1, . . . , until converge do
{COCG iteration}
for j = 1, 2, . . . , N do
j
k+1 =
j
k
j
k 1 k 1
k k 1( j
k 1
j
k ) + j
k 1 k 1(1 + j k)
j
k = ( j
k+1/ j
k ) k
x j
k+1 = x j
k + j
k p j
k
j
k = ( j
k+1/ j
k )2 j
k
p j
k+1 = j
k+1rk+1 + j
k p j
k
end for
end for 49
計算量の削減	
50	
COCG	
  法	
shi=ed	
  COCG法	
行列ベクトル積	
内積	
  
ベクトル・スカラー積	
  
ベクトル和
Limitaaon	
•  Krylov部分空間法では多くの場合「前処理」を
行うことで収束性を改善する	
  
•  一般に前処理を適用するとKrylov部分空間の
シフト不変性が保たれないためshi=ed	
  COCG
などのshi=不変性を用いた解法での前処理
の適用は困難	
51
Block	
  Krylov部分空間法	
•  サンプルベクトルは複数与えるので、線形方程式も複
数の右辺ベクトルに対して解くことになる	
  
•  複数の右辺ベクトルをまとめて扱うことで反復回数を
減らすことが可能な(場合がある)Block	
  Krylov部分空
間法を使う	
  
•  Block	
  Krylov部分空間にもシフト不変性があるので、シ
フト線形方程式向け解法が提案されている	
  
–  Shi=ed	
  block	
  CG等*1	
  
52	
s
i=1
N
j=1
wjvT
i (zjI A) 1
vi
*1	
  Y.	
  Futamura,	
  T.	
  Sakurai,	
  S.	
  Furuya,	
  J.-­‐I.	
  Iwata,	
  Post	
  conference	
  proceedings	
  of	
  
VECPAR	
  2012	
  ,LNCS	
  Vol.	
  7851,	
  2013,	
  pp	
  226-­‐235
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
53
並列計算	
•  並列計算	
  
– 共有メモリ型並列	
  
– 分散メモリ型並列	
  
•  行列やベクトルのデータを複数計算ノードに分散	
•  他のノードにあるデータが必要になったとき通信を行っ
てデータを得る	
  
54
shi=ed	
  COCG法の計算カーネル	
•  疎行列ベクトル積	
  
•  内積	
  
•  ベクトル和	
  
•  ベクトル・スカラー積	
  
55
並列計算	
•  疎行列ベクトル積	
  
– 近接通信(が望ましい)	
  
•  内積	
  
– プロセスごとの部分和を計算したあと、通信ライ
ブラリで足し合わせる	
  
– 全てのプロセスが関わるので、なるべく避けたい	
  
•  ベクトル和、ベクトル・スカラー積	
  
– 通信不要	
  
56
内積の直接計算	
•  本当に計算したいのは解ベクトル   そのも
のではなく、bとの内積	
•  このスカラー量を直接計算することを考える	
  
x j
bT
x j
57
Shi=ed	
  COCGのアルゴリズム(再掲)	
Set initial guess x0
Set x j
0 = x0 = 0, 1 = j
1 = j
0 = 1
Set p j
0 = p0 = r0 = b
for k = 0, 1, . . . , until converge do
{COCG iteration}
for j = 1, 2, . . . , N do
j
k+1 =
j
k
j
k 1 k 1
k k 1( j
k 1
j
k ) + j
k 1 k 1(1 + j k)
j
k = ( j
k+1/ j
k ) k
x j
k+1 = x j
k + j
k p j
k
j
k = ( j
k+1/ j
k )2 j
k
p j
k+1 = j
k+1rk+1 + j
k p j
k
end for
end for 58
スカラーの漸化式	
x j
k+1 = x j
k + j
k p j
k
ベクトルの漸化式がスカラーの漸化式に	
計算量、メモリ要求量の大幅な削減	
p j
k+1 = j
k+1rk+1 + j
k p j
k
bT
x j
k+1 = bT
x j
k + j
k bT
p j
k
bT
p j
k+1 = j
k bT
p j
k
ベクトルの漸化式:	
bとの内積をとると…	
bT
rk = 0
(k = 1, 2, . . . )
を利用	
59
超大量のシフト方程式がある場合	
•  超大量のシフト方程式をまとめて解く場合、
(特にBlock	
  Krylov部分空間法への一般化を
すると)漸化式の係数の計算が大部分を占め
るようになる	
  
•  独立に計算できるのでこれらも並列に計算す
る	
  
– これはスカラーの漸化式だからこそできる	
60
Outline	
•  固有値問題とその解法	
  
•  固有値数の確率的推定法	
  
•  小規模問題での数値実験	
  
•  実用化について	
  
•  並列化について	
  
•  超大規模問題での数値実験	
  
61
非公開スライド	
62
まとめと今後の展開	
•  まとめ	
  
– モンテカルロ法に基づく固有値分布計算手法とそ
の実用化・並列化について述べた	
  
– 電子状態計算で現れる超大規模問題で、今回紹
介したモンテカルロ固有値分布計算は固有値解
法を行う前のProfilingとして十分高速であることを
確認	
  
•  今後の展開	
  
– モンテカルロ計算による固有値数推定に関する
確率不等式についての研究	
  
63

More Related Content

What's hot

Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
Shuyo Nakatani
 

What's hot (20)

ブースティング入門
ブースティング入門ブースティング入門
ブースティング入門
 
[DL輪読会]A Bayesian Perspective on Generalization and Stochastic Gradient Descent
 [DL輪読会]A Bayesian Perspective on Generalization and Stochastic Gradient Descent [DL輪読会]A Bayesian Perspective on Generalization and Stochastic Gradient Descent
[DL輪読会]A Bayesian Perspective on Generalization and Stochastic Gradient Descent
 
Batch normalization effectiveness_20190206
Batch normalization effectiveness_20190206Batch normalization effectiveness_20190206
Batch normalization effectiveness_20190206
 
正準相関分析
正準相関分析正準相関分析
正準相関分析
 
[Dl輪読会]introduction of reinforcement learning
[Dl輪読会]introduction of reinforcement learning[Dl輪読会]introduction of reinforcement learning
[Dl輪読会]introduction of reinforcement learning
 
Hough forestを用いた物体検出
Hough forestを用いた物体検出Hough forestを用いた物体検出
Hough forestを用いた物体検出
 
探索と活用の戦略 ベイズ最適化と多腕バンディット
探索と活用の戦略 ベイズ最適化と多腕バンディット探索と活用の戦略 ベイズ最適化と多腕バンディット
探索と活用の戦略 ベイズ最適化と多腕バンディット
 
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
 
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)
 
GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)
 
グラフデータの機械学習における特徴表現の設計と学習
グラフデータの機械学習における特徴表現の設計と学習グラフデータの機械学習における特徴表現の設計と学習
グラフデータの機械学習における特徴表現の設計と学習
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
 
強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験
 
主成分分析
主成分分析主成分分析
主成分分析
 
Ml professional bandit_chapter2
Ml professional bandit_chapter2Ml professional bandit_chapter2
Ml professional bandit_chapter2
 
[DL輪読会]Active Domain Randomization
[DL輪読会]Active Domain Randomization[DL輪読会]Active Domain Randomization
[DL輪読会]Active Domain Randomization
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)
 
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
 
Reinforcement Learning @ NeurIPS2018
Reinforcement Learning @ NeurIPS2018Reinforcement Learning @ NeurIPS2018
Reinforcement Learning @ NeurIPS2018
 

Similar to Yasunori Futamura

K070k80 点推定 区間推定
K070k80 点推定 区間推定K070k80 点推定 区間推定
K070k80 点推定 区間推定
t2tarumi
 
K070 点推定
K070 点推定K070 点推定
K070 点推定
t2tarumi
 
PRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデルPRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデル
Shohei Okada
 
ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3
noname409
 
K030 appstat201203 2variable
K030 appstat201203 2variableK030 appstat201203 2variable
K030 appstat201203 2variable
t2tarumi
 
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
ryotat
 
020 1変数の集計
020 1変数の集計020 1変数の集計
020 1変数の集計
t2tarumi
 
スペクトラルグラフ理論入門
スペクトラルグラフ理論入門スペクトラルグラフ理論入門
スペクトラルグラフ理論入門
irrrrr
 
パターン認識 05 ロジスティック回帰
パターン認識 05 ロジスティック回帰パターン認識 05 ロジスティック回帰
パターン認識 05 ロジスティック回帰
sleipnir002
 
TokyoWebmining統計学部 第1回
TokyoWebmining統計学部 第1回TokyoWebmining統計学部 第1回
TokyoWebmining統計学部 第1回
Issei Kurahashi
 
第二回統計学勉強会@東大駒場
第二回統計学勉強会@東大駒場第二回統計学勉強会@東大駒場
第二回統計学勉強会@東大駒場
Daisuke Yoneoka
 

Similar to Yasunori Futamura (20)

K070k80 点推定 区間推定
K070k80 点推定 区間推定K070k80 点推定 区間推定
K070k80 点推定 区間推定
 
K070 点推定
K070 点推定K070 点推定
K070 点推定
 
PRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデルPRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデル
 
ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3ディジタル信号処理の課題解説 その3
ディジタル信号処理の課題解説 その3
 
[DL輪読会]Factorized Variational Autoencoders for Modeling Audience Reactions to...
[DL輪読会]Factorized Variational Autoencoders for Modeling Audience Reactions to...[DL輪読会]Factorized Variational Autoencoders for Modeling Audience Reactions to...
[DL輪読会]Factorized Variational Autoencoders for Modeling Audience Reactions to...
 
ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習
 
K030 appstat201203 2variable
K030 appstat201203 2variableK030 appstat201203 2variable
K030 appstat201203 2variable
 
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
 
第9回スキル養成講座講義資料
第9回スキル養成講座講義資料第9回スキル養成講座講義資料
第9回スキル養成講座講義資料
 
020 1変数の集計
020 1変数の集計020 1変数の集計
020 1変数の集計
 
スペクトラルグラフ理論入門
スペクトラルグラフ理論入門スペクトラルグラフ理論入門
スペクトラルグラフ理論入門
 
PRML2.3.8~2.5 Slides in charge
PRML2.3.8~2.5 Slides in chargePRML2.3.8~2.5 Slides in charge
PRML2.3.8~2.5 Slides in charge
 
東京都市大学 データ解析入門 2 行列分解 1
東京都市大学 データ解析入門 2 行列分解 1東京都市大学 データ解析入門 2 行列分解 1
東京都市大学 データ解析入門 2 行列分解 1
 
Prml 1.3~1.6 ver3
Prml 1.3~1.6 ver3Prml 1.3~1.6 ver3
Prml 1.3~1.6 ver3
 
経験過程
経験過程経験過程
経験過程
 
パターン認識 05 ロジスティック回帰
パターン認識 05 ロジスティック回帰パターン認識 05 ロジスティック回帰
パターン認識 05 ロジスティック回帰
 
第2回DARM勉強会
第2回DARM勉強会第2回DARM勉強会
第2回DARM勉強会
 
PRML 8.4-8.4.3
PRML 8.4-8.4.3 PRML 8.4-8.4.3
PRML 8.4-8.4.3
 
TokyoWebmining統計学部 第1回
TokyoWebmining統計学部 第1回TokyoWebmining統計学部 第1回
TokyoWebmining統計学部 第1回
 
第二回統計学勉強会@東大駒場
第二回統計学勉強会@東大駒場第二回統計学勉強会@東大駒場
第二回統計学勉強会@東大駒場
 

More from Suurist (17)

Hiroki Shigemune
Hiroki  ShigemuneHiroki  Shigemune
Hiroki Shigemune
 
Hiroaki Shiokawa
Hiroaki ShiokawaHiroaki Shiokawa
Hiroaki Shiokawa
 
Hidetomo Nagai
Hidetomo NagaiHidetomo Nagai
Hidetomo Nagai
 
Kensuke Aihara
Kensuke AiharaKensuke Aihara
Kensuke Aihara
 
Tatsuhiro Kishi
Tatsuhiro KishiTatsuhiro Kishi
Tatsuhiro Kishi
 
Hideitsu Hino
Hideitsu HinoHideitsu Hino
Hideitsu Hino
 
Tatsuya Yatagawa
Tatsuya YatagawaTatsuya Yatagawa
Tatsuya Yatagawa
 
Hiroyuki Sato
Hiroyuki SatoHiroyuki Sato
Hiroyuki Sato
 
Tetsunao Matsuta
Tetsunao MatsutaTetsunao Matsuta
Tetsunao Matsuta
 
Naoya Tsuruta
Naoya TsurutaNaoya Tsuruta
Naoya Tsuruta
 
Suurist Test Slide
Suurist Test SlideSuurist Test Slide
Suurist Test Slide
 
Akitoshi Takayasu
Akitoshi TakayasuAkitoshi Takayasu
Akitoshi Takayasu
 
Kohta Suzuno
Kohta SuzunoKohta Suzuno
Kohta Suzuno
 
Shunsuke Horii
Shunsuke HoriiShunsuke Horii
Shunsuke Horii
 
Akiyasu Tomoeda
Akiyasu TomoedaAkiyasu Tomoeda
Akiyasu Tomoeda
 
Takuya Tsuchiya
Takuya TsuchiyaTakuya Tsuchiya
Takuya Tsuchiya
 
Akira Imakura
Akira ImakuraAkira Imakura
Akira Imakura
 

Yasunori Futamura