mathematica による固有値計算の高速化 eigenvalue calculation speed by mathematica
DESCRIPTION
Mathematica による固有値計算の高速化 Eigenvalue calculation speed by Mathematica. 情報工学部 06A2055 平塚翔太. バックグラウンド. 前回のあらすじ 自己相関 行列の対角化 行列のスペクトル分解 プロ グラムの内容 参考 文献. スライド一覧. 前回のあらすじ. VPN 下でのストリーミング配信における人の振舞い(データ等の劣化によりクライアントがキャンセルかリトライする確率)を行列化する。 α β p p : キャンセルした確率 - PowerPoint PPT PresentationTRANSCRIPT
Mathematica による固有値計算の高速化 Eigenvalue calculation speed by Mathematica
情報工学部06A2055
平塚翔太
スライド一覧
•前回のあらすじ•自己相関•行列の対角化•行列のスペクトル分解•プログラムの内容•参考文献
バックグラウンド
前回のあらすじ VPN 下でのストリーミング配信における人の振舞い(デー
タ等の劣化によりクライアントがキャンセルかリトライする確率)を行列化する。
α β p p : キャンセルした確率 rp r : リトライした
確率 (1 - r)p 1-α α 0 ・・・・・・・ 0
行列化 β 1-α-β α ・・・・・・・・ 0 ・ β 1-α-β α ・・・・・・ 0 ・・・・・・・・・・・・・・ 0 0 0 0 ・・・・・・・ 1-β β
Client
自己相関 同じ時系列での相関 x k+t
0 秒後 ⇒ 0 本 1 秒後 ⇒ 5 本 2 秒後 ⇒ 3 本 : x k
x k 秒後 r を相関係数という : r = 1 : 正の相関 x k+t 秒後 r = -1 : 負の相関 x k とx k+t の相関グラフ r = 0 : 相関無し
r = 0
r = 1r = -1
0 1 2 3 4 5 6 7 8 9
t 秒時の相関係数 r (r(t) ) は r(t) = と定義される
分散( Variance ) 複数のデータの二乗和を求めることで データの散らばり具合が求まる
Var( x k ) = ∑ ( x k ) P( x k ) – x
P( x k ) はある状態からx k になる確立を表す
Var( xk+t )
Var( x k
)
Cov( x k , xk+t )
2
2∞
x k =0
P とx k の関係をグラフ化
≈
x k = ∑ x k P( x k )
定常 P( x k 、x k+t ) = P( x k+l 、x k+t+l) でどんな l でも成り立つとき P( x k 、x k+t ) は定常である
xk
P
・・・・
x k+t1
0 1 2 3 4 5 6 ・・・・
xk∞
x k =0
共分散( Covariance ) 複数のデータの積和を求めることで データ間の関係性や連動性が求まる
Cov( x k , x k+t ) = ∑ ∑ ( x k - x k ) ( x k+ t - x
k+ t ) P( x k , x k+t )
( x k - x k ) :x k からx k になる確率の変量 ( x k+ t - x k+ t ) :x k+ tからx k+ tになる確率の変量 P( x k , x k+t ) :x k からにx k+ tなる確率
∞
x k =0
∞
x k+t =0
また、相関係数 r (t) とデータを転送する時間 t のグラフを以下に示す
長いデータを転送 ⇒ 時間がかかる分、相関が比較的長い 間相関が強くなる 短いデータを転送 ⇒ 時間がかからない分、相関が比較的 すぐ相関が弱まる
r(t)
t0
データ:長
データ:短
行列の対角化 固有値 ある行列 A に対して「 A x = λ x」を満たす ベクトルxと、スカラー λ が存在するとき、 λ :固有値 x:固有ベクトル と呼ぶ。
「方向を持たない大きさ」
行列 A には固有ベクトルという方向と固有値という大きさからなる
なぜ固有値なのか???ここで、固有ベクトルxを列ベクトル S とする
そして、対角成分に固有値を並べた対角行列を Λ とする
これらの行列から A S = Λ S がわかるこれを変形すると S A S = Λ となるこの S を A の対角行列という
S = x 1 ,x 2 ,・・・,x n
λ1 λ2Λ = ・ ・ ・ λ n0
0
-1
S A S = Λ は、 S Λ S = A とも書けるここで、行列 A を n 乗算したとき A と書く
固有値と固有ベクトルを用いると行列の乗算が著しく簡略化される
-1
-1 n
A = A A A A ・・・ A = SΛS SΛS SΛS SΛS ・・・ SΛS = SΛΛΛΛ ・・・ ΛS = SΛ S
-1
-1
-1
-1
-1
n
-1n -
1
λ1 λ2Λ = ・ ・ ・ λ n0
0n
nn
n
※ S S = I
-1
行列のスペクトル分解行列 A 、固有値 λ 、とするとき直交する固有ベクトルを選ぶ
と
=
と表すことができる。これを
と転置する。
A y 1 ,y 2 ,・・・,y n
λ1 λ2 ・ ・ ・ λ n0
0
x 1 ,x 2 ,・・・,x n
A = x 1 ,x 2 ,・・・,x n
λ1 λ2 ・ ・ ・ λ n0
0
y 1y 2・・・y n
A = λ 1 x 1 y 1 + λ 2 x 2 y 2 + ・・・ + λ n x n y n
これを行列 A のスペクトル分解という x i y i :行列 λ i :スペクトル
A = λ 1 x 1 y 1 + λ 2 x 2 y 2 + ・・・ + λ n x n y n
A が n 乗の時の固有値 λ の m 乗を求めることができる
mmmn
y
x0 xi
yi
λ xi
λ yi
プログラムの内容
CLIENT
VPN
誰が(何人)キャンセルするかわからない
キャンセル率の最も多い時を hMAX として定量化する例: hMAX :キャンセル率が最大 Δ : 0 から hMAX を刻む数 σ : hMAX * Δ :定量化した時の一めもり w :配信が正常に行える最大数 el :終了
-1
0 1 2
w+1 w+2 ・・・・・・・ el
配信の劣化が始まる
hMAX
σ
ストリーミングを受けるクライアントが増加するとキャンセル率は増加、あるいは不変な場合はあるが、減少することはないと仮定する
0 1 2
w+1 w+2 w+3 ・・・・・ el
下がることはない
上がるか変わらないのは有り
ストリーミング配信の悪化増
hMAX
σ
青線のみを Δ + 1進数で定量化する
その内の最大値 (relaxmax) と最小値 (relaxmin) を出力する
-1
0 1 2
w+1 w+2 ・・・・・ el
hMAX
σ
プログラム
参考文献
相関係数と回帰直線 加藤千恵子、石村貞夫 著 秋田工業専門学校HP
http://akita-nct.jp/ Wikipedia
http://ja.wikipedia.org/wiki/ やさしく学べる線形代数 石村園子 著 千葉大学理学部HP
http://www.math.s.chiba-u.ac.jp/
御清聴ありがとうございました