SlideShare une entreprise Scribd logo
1  sur  9
Télécharger pour lire hors ligne
Strassenのアルゴリズム
による行列の積の計算
2017-09-19
宮川 拓
概要
 n*nの密な正方行列の積が、Θ(n^3)よ
りも漸近的に小さな計算量で計算できる
 びっくり
 実装&計測してみた
 元ネタ:
 コルメン等『アルゴリズム・イントロダク
ション』第3版, 4.2節
2/9
行列の積をふつうに計算
 ふつうに計算
 𝐴 = ( 𝑎 𝑖 𝑗 ), 𝐵 = ( 𝑏 𝑖 𝑗 )をn次の正方行列と
する。 𝐶 = 𝐴 ∙ 𝐵とすると、その要素 𝑐 𝑖 𝑗
は、 𝑐 𝑖 𝑗 = σ 𝑘=1
𝑛
𝑎 𝑖 𝑘 ∙ 𝑏 𝑘 𝑗
 これは素直に下記の3重ループで書ける
 for i in 1~n
for j in 1~n
for k in 1~n
c [i,j ]+=a[ i,k ]* b [k,j ]
 計算量はΘ(n*n*n)=Θ(n^3)
3/9
準備: 分割統治
 A, B, Cを4つずつの(n /2)次正方行列
に分割すると、C=A・Bは

𝐶11 𝐶12
𝐶21 𝐶22
=
𝐴11 𝐴12
𝐴21 𝐴22
∙
𝐵11 𝐵12
𝐵21 𝐵22
=
𝐴11 ∙ 𝐵11 + 𝐴12 ∙ 𝐵21 𝐴11 ∙ 𝐵12 + 𝐴12 ∙ 𝐵22
𝐴21 ∙ 𝐵11 + 𝐴22 ∙ 𝐵21 𝐴21 ∙ 𝐵12 + 𝐴22 ∙ 𝐵22
と書き直せる
 書き直した式を再帰関数で実装すると、1
回の呼び出しは、半分の次数の部分行列同
士の乗算について、8回関数を呼び出す
 したがって、その計算量はΘ(n^3)
4/9
Strassenのアルゴリズム
 こ こ で 𝑃1 ~ 𝑃7 を 下 記 の よ う に 置 く と
 𝑃1 = 𝐴 1 1 ( 𝐵1 2 − 𝐵 2 2 )
 𝑃2 = ( 𝐴 1 1 + 𝐴 1 2 ) 𝐵 2 2
 𝑃3 = ( 𝐴 2 1 + 𝐴 2 2 ) 𝐵1 1
 𝑃4 = 𝐴 2 2 𝐵 2 1 − 𝐵1 1
 𝑃5 = ( 𝐴 1 1 + 𝐴 2 2 ) ( 𝐵1 1 + 𝐵 2 2 )
 𝑃6 = 𝐴 1 2 − 𝐴 2 2 𝐵 2 1 + 𝐵 2 2
 𝑃7 = 𝐴 1 1 − 𝐴 2 1 𝐵1 1 + 𝐵1 2
 次 が 成 り 立 つ
 𝐶1 1 = 𝐴 1 1 ∙ 𝐵1 1 + 𝐴 1 2 ∙ 𝐵 2 1 = 𝑃5 + 𝑃4 − 𝑃2 + 𝑃6
 𝐶1 2 = 𝐴 1 1 ∙ 𝐵1 2 + 𝐴 1 2 ∙ 𝐵 2 2 = 𝑃1 + 𝑃2
 𝐶2 1 = 𝐴 2 1 ∙ 𝐵1 1 + 𝐴 2 2 ∙ 𝐵 2 1 = 𝑃3 + 𝑃4
 𝐶2 2 = 𝐴 2 1 ∙ 𝐵1 2 + 𝐴 2 2 ∙ 𝐵 2 2 = 𝑃5 + 𝑃1 − 𝑃3 − 𝑃7
5/9
Strassenのアルゴリズム
 前ページの計算を再帰関数として実装
すると、1回の呼び出しごとに、部分
行列の乗算の呼び出しは7回
 nを2倍すると計算量は7倍に増える
 したがって、計算量は
Θ 𝑛 𝑙𝑜𝑔27
= Θ 𝑛2.8073…
6/9
実装
 https://bitbucket.org/miyakawataku/
matrix-
multiplication/src/default/matrix.go
7/9
計測
log2(n) 単純 Strassen
n-1との比
(単純)
n-1との比
(Strassen)
4 22,724 577,688 - -
5 133,972 4,008,528 5.90 6.94
6 1,129,255 28,688,124 8.43 7.16
7 9,924,139 203,509,826 8.79 7.09
8 133,242,248 1,576,870,691 13.43 7.75
9 1,327,584,877 11,072,402,847 9.96 7.02
10 11,892,402,060 86,182,808,153 8.96 7.78
11 106,612,149,065 619,821,838,102 8.96 7.19
12 3,073,269,379,009 5,012,791,249,199 28.83 8.09
実行環境:
 GCE n1-standard1
 CPU: 2.20GHz(x1コア), キャッシュ55MB
 たぶんXeon E5-2699 v4
キ ャ ッ シ ュ に 乗 ら な く な っ た た め ?
4096*4096*4byte = 64MiB
8/9
総括
素敵なアルゴリズムは、nが小さい時には遅い。
そして大抵の場合、nは小さい。
素敵なアルゴリズムの計算量の式には、大きな
定数項が掛かっている。
nが頻繁に大きくなることが分かっていない限り、
素敵にしてはならない。
― Rob Pike “Notes on Programming in C”
9/9

Contenu connexe

Tendances

PRML勉強会第3回 2章前半 2013/11/28
PRML勉強会第3回 2章前半 2013/11/28PRML勉強会第3回 2章前半 2013/11/28
PRML勉強会第3回 2章前半 2013/11/28kurotaki_weblab
 
PRML第9章「混合モデルとEM」
PRML第9章「混合モデルとEM」PRML第9章「混合モデルとEM」
PRML第9章「混合モデルとEM」Keisuke Sugawara
 
東京都市大学 データ解析入門 2 行列分解 1
東京都市大学 データ解析入門 2 行列分解 1東京都市大学 データ解析入門 2 行列分解 1
東京都市大学 データ解析入門 2 行列分解 1hirokazutanaka
 
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー階層ベイズと自由エネルギー
階層ベイズと自由エネルギーHiroshi Shimizu
 
Stochastic Gradient MCMC
Stochastic Gradient MCMCStochastic Gradient MCMC
Stochastic Gradient MCMCKenta Oono
 
混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)Takao Yamanaka
 
PRML輪読#8
PRML輪読#8PRML輪読#8
PRML輪読#8matsuolab
 
モンテカルロサンプリング
モンテカルロサンプリングモンテカルロサンプリング
モンテカルロサンプリングKosei ABE
 
PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半Ohsawa Goodfellow
 
スペクトラルグラフ理論入門
スペクトラルグラフ理論入門スペクトラルグラフ理論入門
スペクトラルグラフ理論入門irrrrr
 
Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)
Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)
Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)Teppei Kurita
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習Deep Learning JP
 
[PRML] パターン認識と機械学習(第1章:序論)
[PRML] パターン認識と機械学習(第1章:序論)[PRML] パターン認識と機械学習(第1章:序論)
[PRML] パターン認識と機械学習(第1章:序論)Ryosuke Sasaki
 
ディープボルツマンマシン入門
ディープボルツマンマシン入門ディープボルツマンマシン入門
ディープボルツマンマシン入門Saya Katafuchi
 
【輪読】Bayesian Optimization of Combinatorial Structures
【輪読】Bayesian Optimization of Combinatorial Structures【輪読】Bayesian Optimization of Combinatorial Structures
【輪読】Bayesian Optimization of Combinatorial StructuresTakeru Abe
 

Tendances (20)

coordinate descent 法について
coordinate descent 法についてcoordinate descent 法について
coordinate descent 法について
 
PRML勉強会第3回 2章前半 2013/11/28
PRML勉強会第3回 2章前半 2013/11/28PRML勉強会第3回 2章前半 2013/11/28
PRML勉強会第3回 2章前半 2013/11/28
 
PRML第9章「混合モデルとEM」
PRML第9章「混合モデルとEM」PRML第9章「混合モデルとEM」
PRML第9章「混合モデルとEM」
 
東京都市大学 データ解析入門 2 行列分解 1
東京都市大学 データ解析入門 2 行列分解 1東京都市大学 データ解析入門 2 行列分解 1
東京都市大学 データ解析入門 2 行列分解 1
 
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
 
Stochastic Gradient MCMC
Stochastic Gradient MCMCStochastic Gradient MCMC
Stochastic Gradient MCMC
 
Prml
PrmlPrml
Prml
 
混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)
 
PRML輪読#8
PRML輪読#8PRML輪読#8
PRML輪読#8
 
RとStanで分散分析
RとStanで分散分析RとStanで分散分析
RとStanで分散分析
 
モンテカルロサンプリング
モンテカルロサンプリングモンテカルロサンプリング
モンテカルロサンプリング
 
PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半
 
スペクトラルグラフ理論入門
スペクトラルグラフ理論入門スペクトラルグラフ理論入門
スペクトラルグラフ理論入門
 
Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)
Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)
Sparse Codingをなるべく数式を使わず理解する(PCAやICAとの関係)
 
深層学習 第6章
深層学習 第6章深層学習 第6章
深層学習 第6章
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習
 
[PRML] パターン認識と機械学習(第1章:序論)
[PRML] パターン認識と機械学習(第1章:序論)[PRML] パターン認識と機械学習(第1章:序論)
[PRML] パターン認識と機械学習(第1章:序論)
 
PRML 6.4-6.5
PRML 6.4-6.5PRML 6.4-6.5
PRML 6.4-6.5
 
ディープボルツマンマシン入門
ディープボルツマンマシン入門ディープボルツマンマシン入門
ディープボルツマンマシン入門
 
【輪読】Bayesian Optimization of Combinatorial Structures
【輪読】Bayesian Optimization of Combinatorial Structures【輪読】Bayesian Optimization of Combinatorial Structures
【輪読】Bayesian Optimization of Combinatorial Structures
 

En vedette

Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方Taku Miyakawa
 
Graph Algorithms Part 1
Graph Algorithms Part 1Graph Algorithms Part 1
Graph Algorithms Part 1Taku Miyakawa
 
Java SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心にJava SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心にTaku Miyakawa
 
Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語Taku Miyakawa
 
Kink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based languageKink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based languageTaku Miyakawa
 
擬似乱数生成器の評価
擬似乱数生成器の評価擬似乱数生成器の評価
擬似乱数生成器の評価Taku Miyakawa
 
Summary of "Hacking", 0x351-0x354
Summary of "Hacking", 0x351-0x354Summary of "Hacking", 0x351-0x354
Summary of "Hacking", 0x351-0x354Taku Miyakawa
 
コルーチンの実装について
コルーチンの実装についてコルーチンの実装について
コルーチンの実装についてTaku Miyakawa
 
金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency API金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency APITaku Miyakawa
 
Quasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on JavaQuasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on JavaTaku Miyakawa
 
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6Yuji Kubota
 
Prepare for Java 9 #jjug
Prepare for Java 9 #jjugPrepare for Java 9 #jjug
Prepare for Java 9 #jjugYuji Kubota
 
楽して JVM を学びたい #jjug
楽して JVM を学びたい #jjug楽して JVM を学びたい #jjug
楽して JVM を学びたい #jjugYuji Kubota
 
言語設計者が意味論を書くときに考えていたこと
言語設計者が意味論を書くときに考えていたこと言語設計者が意味論を書くときに考えていたこと
言語設計者が意味論を書くときに考えていたことTaku Miyakawa
 

En vedette (16)

Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方
 
Graph Algorithms Part 1
Graph Algorithms Part 1Graph Algorithms Part 1
Graph Algorithms Part 1
 
Java SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心にJava SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心に
 
Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語Kink: プロトタイプベースの俺々 JVM 言語
Kink: プロトタイプベースの俺々 JVM 言語
 
Kink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based languageKink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based language
 
Kink の宣伝
Kink の宣伝Kink の宣伝
Kink の宣伝
 
Hadoop jobbuilder
Hadoop jobbuilderHadoop jobbuilder
Hadoop jobbuilder
 
擬似乱数生成器の評価
擬似乱数生成器の評価擬似乱数生成器の評価
擬似乱数生成器の評価
 
Summary of "Hacking", 0x351-0x354
Summary of "Hacking", 0x351-0x354Summary of "Hacking", 0x351-0x354
Summary of "Hacking", 0x351-0x354
 
コルーチンの実装について
コルーチンの実装についてコルーチンの実装について
コルーチンの実装について
 
金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency API金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency API
 
Quasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on JavaQuasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on Java
 
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
 
Prepare for Java 9 #jjug
Prepare for Java 9 #jjugPrepare for Java 9 #jjug
Prepare for Java 9 #jjug
 
楽して JVM を学びたい #jjug
楽して JVM を学びたい #jjug楽して JVM を学びたい #jjug
楽して JVM を学びたい #jjug
 
言語設計者が意味論を書くときに考えていたこと
言語設計者が意味論を書くときに考えていたこと言語設計者が意味論を書くときに考えていたこと
言語設計者が意味論を書くときに考えていたこと
 

Similaire à Matrix Multiplication in Strassen Algorithm

行列計算アルゴリズム
行列計算アルゴリズム行列計算アルゴリズム
行列計算アルゴリズムTakuo Tachibana
 
Prml 最尤推定からベイズ曲線フィッティング
Prml 最尤推定からベイズ曲線フィッティングPrml 最尤推定からベイズ曲線フィッティング
Prml 最尤推定からベイズ曲線フィッティングtakutori
 
MMDs10.6-7
MMDs10.6-7MMDs10.6-7
MMDs10.6-7mfumi
 
2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)
2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)
2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)Akira Asano
 
公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題Joe Suzuki
 
Fourier analysis on symmetric group
Fourier analysis on symmetric groupFourier analysis on symmetric group
Fourier analysis on symmetric groupHanpenRobot
 
続・わかりやすいパターン認識 9章
続・わかりやすいパターン認識 9章続・わかりやすいパターン認識 9章
続・わかりやすいパターン認識 9章hakusai
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元Shogo Muramatsu
 
Computing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner BasisComputing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner BasisYasu Math
 
PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1sleepy_yoshi
 
これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法kenyanonaka
 
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へZansa
 
アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法nitoyon
 
Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜Yuki Matsubara
 
確率微分方程式の基礎
確率微分方程式の基礎 確率微分方程式の基礎
確率微分方程式の基礎 HanpenRobot
 
NN, CNN, and Image Analysis
NN, CNN, and Image AnalysisNN, CNN, and Image Analysis
NN, CNN, and Image AnalysisYuki Shimada
 
コンピュータビジョン最先端ガイド6 第2章:4~4.2節
コンピュータビジョン最先端ガイド6 第2章:4~4.2節コンピュータビジョン最先端ガイド6 第2章:4~4.2節
コンピュータビジョン最先端ガイド6 第2章:4~4.2節nonane
 

Similaire à Matrix Multiplication in Strassen Algorithm (20)

行列計算アルゴリズム
行列計算アルゴリズム行列計算アルゴリズム
行列計算アルゴリズム
 
Prml 最尤推定からベイズ曲線フィッティング
Prml 最尤推定からベイズ曲線フィッティングPrml 最尤推定からベイズ曲線フィッティング
Prml 最尤推定からベイズ曲線フィッティング
 
Cosmology
CosmologyCosmology
Cosmology
 
MMDs10.6-7
MMDs10.6-7MMDs10.6-7
MMDs10.6-7
 
2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)
2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)
2018年度秋学期 応用数学(解析) 第4部・「その先の解析学」への導入 第13回 複素関数論(2) 孤立特異点と留数 (2018. 12. 18)
 
公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題
 
C02
C02C02
C02
 
Fourier analysis on symmetric group
Fourier analysis on symmetric groupFourier analysis on symmetric group
Fourier analysis on symmetric group
 
続・わかりやすいパターン認識 9章
続・わかりやすいパターン認識 9章続・わかりやすいパターン認識 9章
続・わかりやすいパターン認識 9章
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元
 
Computing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner BasisComputing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner Basis
 
PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1
 
これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法
 
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
 
アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法
 
Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜
 
確率微分方程式の基礎
確率微分方程式の基礎 確率微分方程式の基礎
確率微分方程式の基礎
 
NN, CNN, and Image Analysis
NN, CNN, and Image AnalysisNN, CNN, and Image Analysis
NN, CNN, and Image Analysis
 
コンピュータビジョン最先端ガイド6 第2章:4~4.2節
コンピュータビジョン最先端ガイド6 第2章:4~4.2節コンピュータビジョン最先端ガイド6 第2章:4~4.2節
コンピュータビジョン最先端ガイド6 第2章:4~4.2節
 
Fourier transform
Fourier transformFourier transform
Fourier transform
 

Plus de Taku Miyakawa

ラムダと invokedynamic の蜜月
ラムダと invokedynamic の蜜月ラムダと invokedynamic の蜜月
ラムダと invokedynamic の蜜月Taku Miyakawa
 
Processing LTSV by Apache Pig
Processing LTSV by Apache PigProcessing LTSV by Apache Pig
Processing LTSV by Apache PigTaku Miyakawa
 
Java 7 invokedynamic の概要
Java 7 invokedynamic の概要Java 7 invokedynamic の概要
Java 7 invokedynamic の概要Taku Miyakawa
 
Java オブジェクトの内部構造
Java オブジェクトの内部構造Java オブジェクトの内部構造
Java オブジェクトの内部構造Taku Miyakawa
 
Kink: developing a programming language on the JVM
Kink: developing a programming language on the JVMKink: developing a programming language on the JVM
Kink: developing a programming language on the JVMTaku Miyakawa
 

Plus de Taku Miyakawa (6)

ラムダと invokedynamic の蜜月
ラムダと invokedynamic の蜜月ラムダと invokedynamic の蜜月
ラムダと invokedynamic の蜜月
 
Java Quine Golf
Java Quine GolfJava Quine Golf
Java Quine Golf
 
Processing LTSV by Apache Pig
Processing LTSV by Apache PigProcessing LTSV by Apache Pig
Processing LTSV by Apache Pig
 
Java 7 invokedynamic の概要
Java 7 invokedynamic の概要Java 7 invokedynamic の概要
Java 7 invokedynamic の概要
 
Java オブジェクトの内部構造
Java オブジェクトの内部構造Java オブジェクトの内部構造
Java オブジェクトの内部構造
 
Kink: developing a programming language on the JVM
Kink: developing a programming language on the JVMKink: developing a programming language on the JVM
Kink: developing a programming language on the JVM
 

Matrix Multiplication in Strassen Algorithm