SlideShare a Scribd company logo
経済学のための並列分散処理1
Masa Kato
August 4th, 2018 @ Ichimura-seminar
1
コンテンツ
目的
• 経済学の研究者に並列分散処理について説明する.
• いくつかの具体的な実装例を紹介する.
• Value Function Iterationに適用できるかを検討する.
目次
1. 並列化とは何か
2. CPUとGPU
3. 並列計算の設計方法
4. 並列計算の評価
5. 並列アルゴリズム
6. Value Function Iteration
2
参考資料
A Practical Guide to Parallelization in Economics
枝廣教授「コンピュータ科学特別講義Ⅳ」資料集(非公開)
C/C++プログラマーのためのOpenMP並列プログラミング
CUDA Cプロフェッショナルプログラミング
Linuxとpthreadsによるマルチスレッドプログラミング入門
3
並列処理に使われる言語
擬似コード:実装内容を抽象的に表したもの.現実の言語では無いが特定
の言語を暗に想定している場合が多い.
C/C++:並列処理において主流の言語.
CUDA C:C言語ベースのGPU用言語
• 今日の発表は擬似コードとC言語の実装例を掲載.
Fortran:使いづらいが物理系などの古い研究室にはFortranコードの積み重
ねがあるためにCへの移行ができない場所では今も使用されている.
Python:機械学習分野での主流言語.GPUの主な使い道が深層学習でありた
めにGPUを利用するためのライブラリが充実.単純な計算に関するGPUの利
用に限ればC/C++より使いやすい.
Matlab,Stata,Juliaにも並列処理をサポートするためのライブラリがある.
4
並列処理に使われるツール
OpenMP:主にC/C++,Fortran言語で書かれたコードの並列化に用いられる
API.
CUDA:C/C++をベースに開発されたGPUコンピューティング用の言語.
Fortran版も開発された(しかし,メインがC言語などで文献も少なく,おそ
らく使うことはない).
Cupy:日本の民間企業が開発したPython用ライブラリ.numpyというライ
ブラリとほぼ同じ感じで使える.
Numba,OpenACC :あまり使っている人はいない気がする.
RやJuliaにも並列化用のライブラリが多数ある.
• 私見ではJuliaはMCMC用のライブラリが充実している.学部のときに
MCMCの並列化をJuliaでしたときはとても楽だった記憶が.
5
第1節:並列化とは何か
6
並行処理と並列処理
コンピュータにおいてはプロセッサ(CPU)上でプログラムが実行される.
プロセッサで実行されているプログラムはプロセスと呼ばれる.
OSは複数のプロセスの生成・実行・消滅を管理する役割をもつ.
複数のプロセスを見かけ上同時に実行することを並行処理という.
複数のプロセスを実際に同時に実行することを並列処理という.
• コンピュータが複数のプロセッサを持つ場合は,複数のプロセスをそれぞれ
別のプロセッサ上で動作させることができる(並列処理).
7
プロセスとスレッド
前スライドでは「プロセス」の並行・並列処理を考えた.
さらに一つのプロセス内で並行・並列処理を行うことが考えられる.
プロセス内で並列処理を行うための機構としてスレッドが存在する.
• OSの立場からみるとスレッドがプログラム実行の最小単位であり,「計算
機資源を共有するいくつかのスレッドをまとめて取り扱う単位がプロセス
である」ということもできる.
8
ネット販売において
需要を観測しながら
価格を変えたい
プロセス1
売上状況の確認
プロセス2
価格の最適化
スレッド1
分割された計算
スレッド2
分割された計算
スレッド3
分割された計算
マルチスレッドプログラミングの怖さ
マルチスレッドプログラムでは原則として各スレッドは同じメモリ空間を
共有.
• 変数に値を代入するだけでスレッド間でデータを引き渡し可能.
他のスレッドが使っているデータを容易に壊し得ることも意味する.
「同期」や「排他制御」の問題.
後のスライドでも同期の問題については詳しく説明する.
9
並列処理の分類
命令とデータの流れに基づく分類(フリンの分類)
• SISD
• SIMD
• MISD
• MIMD
メモリ構成に基づく分類
• 分散メモリを使用するマルチノード
• シェアードメモリを使用するマルチプロセッサ
プログラムレベルでの分類
• タスク並列化
• データ並列化
10
命令とデータの流れに基づく分類
フリンの分類
SISD (Single Instruction Single Data)
従来のコンピュータ(逐次アーキテクチャ).搭載されているコアは1つ.実
行される命令ストリームは1つ.演算は1つのデータストリームで実行.
SIMD (Single Instruction Multiple Data):
複数のコアが搭載されている.すべてのコアが常に同じ命令ストリームを実
行.演算はそれぞれ異なるデータストリームで実行.
MISD (Multiple Instruction Single Data):
各コアが別々の命令ストリームを通じて同じデータストリームを処理する.
MIMD (Multiple Instruction Multiple Data):
複数のコアが複数のデータストリームを処理し,それぞれ別個の命令を実行.
11
フリンの分類
12
データ
命令
Single Instruction
Single Data
(SISD)
Multiple Instruction
Single Data
(MISD)
Single Instruction
Multiple Data
(SISD)
Multiple Instruction
Multiple Data
(MIMD)
Single Multiple
MultipleSingle
MISDは珍しい.
メモリ構成に基づく分類
メモリの構成に基づいてコンピュータアーキテクチャをさらに細かく分類
することもできる.
分散メモリを使用するマルチノード
シェアードメモリを使用するマルチプロセッサ
13
分散メモリを使用する
マルチノードシステム
物理的に同じメモリに接続する
マルチプロセッサアーキテクチャ
シェアードメモリ
マルチプロセッサアーキテクチャ
通常はデュアルプロセッサから数十あるいは数百ものプロセッサに及ぶ.
これらのプロセッサは物理的に同じメモリに接続されているか,PCI-
Expressなどの低遅延リンクを共有する.
マルチプロセッサにはマルチコアと呼ばれる複数のコアを搭載したCPUと
複数のCPUからなるコンピュータの両方が含まれる.
• 以下では特にマルチコアを念頭において話を進める.
コアの数が特に多いマルチコアアーキテクチャを通常はメニーコアと呼ぶ.
GPUはメニーコアアーキテクチャに相当する.
14
プログラムレベルでの分類
タスク並列化
• 個別に処理することが可能であり,かつ大部分を並行して実行できるタス
クや関数が大量にある場合.
• タスク並列化では機能を複数のコアに分散させることに焦点を合わせる.
データ並列化
• 同時に処理できるデータ要素が大量にある場合.
• データ並列化ではデータを複数のコアに分散させることに焦点を合わせる.
CUDAプログラミングはデータ並列化に関する処理として表現できる問題
に適している.
15
第2節:CPUとGPU
16
CPUコアとGPUコア
CPUアーキテクチャとGPUアーキテクチャはメニーコア及びマルチコアと
して分類されるがCPUコアとGPUコアは全く異なる.
CPUコア
• CPUコアは比較的高度なコアであり,逐次プログラムの実行を最適化する
ことを目的として,非常に複雑な制御ロジックのために設計されている.
GPUコア
• GPUコアは比較的軽量なコアであり,並列プログラムのスループットに焦
点を合わせて,より単純な制御ロジックを持つデータ並列化タスクのため
に最適化されている.
17
ヘテロジニアスコンピューティング
CPUだけを搭載するコンピュータから,複数の処理コンポーネント(GPUな
ど)を搭載したコンピュータに.
• CPUとGPUは一般的には一つのコンピュータ内でPCI-Expressバスによって接
続される別々の処理コンポーネントである.
ホモジニアス(同種)システムからヘテロジニアス(異種)システムへ.
18
DRAM DRAM
キャッシュ
CU
ALU ALU
ALU ALU
PCI Express
CPU GPU
CU:制御装置,ALU:算術論理演算回路,キャッシュ:主記憶装置,DRAM:半導体メモリの1種
CUDA
CUDAを利用すればCPUで従来行ってきたのと同じように,GPUをコンピュー
ティングに活用できる.
CUDAプログラムは以下の2つの部分で構成されている.
• CPUで実行されるホストコード
• GPUで実行されるデバイスコード
NVIDIAのCUDAコンパイラであるnvccはコンパイルプロセスでデバイスコー
ドをホストコードから切り離す.
• ホストコードは標準のCコードでありCコンパイラによってコンパイルされる.
• デバイスコードはCUDA Cで記述され,データ並列化関数をラベル付けする
ためのキーワードによって拡張される.これらのデータ並列化関数はカーネ
ルと呼ばれる.デバイスコードはnvccによってコンパイルされる.
19
Hallo World from GPU
20
Hallo World from GPU
nvccでコンパイル.基本的にはC言語と同じ.
21
しかし,CUDAを直接書くこ
とは最近は少なくなってきた.
Pythonライブラリの進化.
Python+GPU
Numba:CUDAに近い書き方.
https://qiita.com/hoto17296/items/332da1d57173534c3aa7
cupy:numpyとほぼ変わらない仕様.
https://github.com/ShigekiKarita/cupy-examples/blob/master/doc.org
22
第3節:並列計算の設計方法
23
Fosterによる設計方法論
既存のコードから時間のかかっている場所(Hotspot)を探す.
Hotspotが並列化可能かを検討する
並列化可能な領域に対して以下のような手順で並列化を検討する.
24
Problem
Partition Communication
Agglomeration
Mapping
Partitioning
可能な限りの並列性を見つけ,要素タスクを抽出する.
Domain Decomposition
• データを分割する.
• 分割されたデータに計算を関連づける方法を決める,
Functional Decomposition
• 計算を分割する.
• 分割された個々の計算にデータを関連づける方法を決める.
しばしばパイプライン手法が使われる.
25
Partitioning:パイプライン手法
26
前のデータのDetermine image locationの処理が終わらないと次
のTrack position of instrumentが始まらないように設計.
↑依存性を考慮.
Communication
局所的通信
• ある計算実行において少数のタスクのみが関与する.
大域的通信
• ある計算実行において多くのタスクが関与する.
大域的な通信は局所的通信と比べてオーバーヘッドが大きい.
• アーキテクチャに依存する.
• 通信に分散メモリ型を使う場合は大きなオーバーヘッドとなる.
27
Agglomeration
性能やプログラム容易性を向上させるため,タスクのグループ化を行って
より大きなタスクにする処理.
通信オーバーヘッドの減少.
• 局所生の増大.
• 送信タスクや受信タスクのグループ化.
並列設計のスケーラビリティの維持.
タスクを分割しすぎると通信に時間がかかる(オーバーヘッド).した
がって,適度な塊にタスクをまとめる必要がある.
28
Agglomeration
29
Mapping
タスクをプロセスに割り当てる処理.
プロセッサ利⽤率最⼤化かつプロセッサ間通信最⼩化を図る.
• プロセッサ利⽤率--- 現在考えている問題の解法において実際にプロセッサ
が動作している時間の割合の平均値.
プロセッサ利⽤率最⼤化とプロセッサ間通信最⼩化はしばしば競合する.
(例)すべてのタスクを⼀つのプロセッサに割り付ければ?
→ プロセッサ利⽤率は最悪(他のプロセッサが放置)であるが、プロセッサ
間通信は最善(0)となる
30

More Related Content

What's hot

40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) 40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
hamaken
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Hiro H.
 
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識Hadoopの概念と基本的知識
Hadoopの概念と基本的知識
Ken SASAKI
 
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組みSAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
Masahiro Sakai
 
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
Yuki Gonda
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
Deep Learning JP
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
Shota Imai
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Preferred Networks
 
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSSYahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo!デベロッパーネットワーク
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類Shintaro Fukushima
 
ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
Ohyama Masanori
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
Preferred Networks
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
 
最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...
最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...
最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...
ケンタ タナカ
 
DLLab 異常検知ナイト 資料 20180214
DLLab 異常検知ナイト 資料 20180214DLLab 異常検知ナイト 資料 20180214
DLLab 異常検知ナイト 資料 20180214
Kosuke Nakago
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤
Masahiro Kiura
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
Preferred Networks
 

What's hot (20)

40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) 40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
 
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識Hadoopの概念と基本的知識
Hadoopの概念と基本的知識
 
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組みSAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
 
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
 
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSSYahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類
 
ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...
最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...
最高の統計ソフトウェアはどれか? "What’s the Best Statistical Software? A Comparison of R, Py...
 
DLLab 異常検知ナイト 資料 20180214
DLLab 異常検知ナイト 資料 20180214DLLab 異常検知ナイト 資料 20180214
DLLab 異常検知ナイト 資料 20180214
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
 

Similar to 経済学のための並列分散処理1

経済学のための並列分散処理2
経済学のための並列分散処理2経済学のための並列分散処理2
経済学のための並列分散処理2
Masa Kato
 
CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能
CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能
CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能Computational Materials Science Initiative
 
iii_SGMI #5 "OOP & Design Patterns"
iii_SGMI #5 "OOP & Design Patterns"iii_SGMI #5 "OOP & Design Patterns"
iii_SGMI #5 "OOP & Design Patterns"Ryohei Suzuki
 
Pyconjp2014_implementations
Pyconjp2014_implementationsPyconjp2014_implementations
Pyconjp2014_implementations
masahitojp
 
Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...
Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...
Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...
No Bu
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理について
Yasutomo Kawanishi
 
How to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented ProgramsHow to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented Programs
Kenta Oono
 
Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演
Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演
Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演
Hironori Washizaki
 
2010 icse-an analysis of the variability in forty preprocessor-based software...
2010 icse-an analysis of the variability in forty preprocessor-based software...2010 icse-an analysis of the variability in forty preprocessor-based software...
2010 icse-an analysis of the variability in forty preprocessor-based software...n-yuki
 
CMSI計算科学技術特論C (2015) 可読性と性能の両立を目指して
CMSI計算科学技術特論C (2015) 可読性と性能の両立を目指してCMSI計算科学技術特論C (2015) 可読性と性能の両立を目指して
CMSI計算科学技術特論C (2015) 可読性と性能の両立を目指して
Computational Materials Science Initiative
 
TypeScript で型を上手く使う試み.pdf
TypeScript で型を上手く使う試み.pdfTypeScript で型を上手く使う試み.pdf
TypeScript で型を上手く使う試み.pdf
Ryo Higashigawa
 
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
Knowledge & Experience
 
2019-04-17 「不適切コンテンツ検出」の機械化と安定運用
2019-04-17 「不適切コンテンツ検出」の機械化と安定運用2019-04-17 「不適切コンテンツ検出」の機械化と安定運用
2019-04-17 「不適切コンテンツ検出」の機械化と安定運用
Yasuhiko Iwase
 
Presen 190517
Presen 190517Presen 190517
Presen 190517
masukomasuko
 
Deep Learning reading club at SWEST 2017 interactive session
Deep Learning reading club at SWEST 2017 interactive session Deep Learning reading club at SWEST 2017 interactive session
Deep Learning reading club at SWEST 2017 interactive session
Kiyoshi Ogawa
 
JAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターン
JAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターンJAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターン
JAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターン
Takekazu Omi
 
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1
Hiroshi Watanabe
 
El text.tokuron a(2019).katagiri190509
El text.tokuron a(2019).katagiri190509El text.tokuron a(2019).katagiri190509
El text.tokuron a(2019).katagiri190509
RCCSRENKEI
 
Non-autoregressive text generation
Non-autoregressive text generationNon-autoregressive text generation
Non-autoregressive text generation
nlab_utokyo
 

Similar to 経済学のための並列分散処理1 (20)

経済学のための並列分散処理2
経済学のための並列分散処理2経済学のための並列分散処理2
経済学のための並列分散処理2
 
CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能
CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能
CMSI計算科学技術特論B(1) スーパーコンピュータとアプリケーションの性能
 
iii_SGMI #5 "OOP & Design Patterns"
iii_SGMI #5 "OOP & Design Patterns"iii_SGMI #5 "OOP & Design Patterns"
iii_SGMI #5 "OOP & Design Patterns"
 
Pyconjp2014_implementations
Pyconjp2014_implementationsPyconjp2014_implementations
Pyconjp2014_implementations
 
Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...
Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...
Literate Computing for Infrastructure - インフラ・コード化の実践におけるIPython (Jupyter) Not...
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理について
 
How to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented ProgramsHow to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented Programs
 
Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演
Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演
Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン、鷲崎弘宜、PyConJP 2016 招待講演
 
2010 icse-an analysis of the variability in forty preprocessor-based software...
2010 icse-an analysis of the variability in forty preprocessor-based software...2010 icse-an analysis of the variability in forty preprocessor-based software...
2010 icse-an analysis of the variability in forty preprocessor-based software...
 
CMSI計算科学技術特論C (2015) 可読性と性能の両立を目指して
CMSI計算科学技術特論C (2015) 可読性と性能の両立を目指してCMSI計算科学技術特論C (2015) 可読性と性能の両立を目指して
CMSI計算科学技術特論C (2015) 可読性と性能の両立を目指して
 
TypeScript で型を上手く使う試み.pdf
TypeScript で型を上手く使う試み.pdfTypeScript で型を上手く使う試み.pdf
TypeScript で型を上手く使う試み.pdf
 
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
 
2019-04-17 「不適切コンテンツ検出」の機械化と安定運用
2019-04-17 「不適切コンテンツ検出」の機械化と安定運用2019-04-17 「不適切コンテンツ検出」の機械化と安定運用
2019-04-17 「不適切コンテンツ検出」の機械化と安定運用
 
Presen 190517
Presen 190517Presen 190517
Presen 190517
 
Deep Learning reading club at SWEST 2017 interactive session
Deep Learning reading club at SWEST 2017 interactive session Deep Learning reading club at SWEST 2017 interactive session
Deep Learning reading club at SWEST 2017 interactive session
 
JAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターン
JAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターンJAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターン
JAZUG 第2回 CDP 勉強会 Compensating Transaction, Index Table パターン
 
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術1
 
El text.tokuron a(2019).katagiri190509
El text.tokuron a(2019).katagiri190509El text.tokuron a(2019).katagiri190509
El text.tokuron a(2019).katagiri190509
 
Non-autoregressive text generation
Non-autoregressive text generationNon-autoregressive text generation
Non-autoregressive text generation
 
CMSI計算科学技術特論B(3) アプリケーションの性能最適化2
CMSI計算科学技術特論B(3) アプリケーションの性能最適化2CMSI計算科学技術特論B(3) アプリケーションの性能最適化2
CMSI計算科学技術特論B(3) アプリケーションの性能最適化2
 

More from Masa Kato

効率的反実仮想学習
効率的反実仮想学習効率的反実仮想学習
効率的反実仮想学習
Masa Kato
 
敵対的学習に対するラデマッハ複雑度
敵対的学習に対するラデマッハ複雑度敵対的学習に対するラデマッハ複雑度
敵対的学習に対するラデマッハ複雑度
Masa Kato
 
最適腕識別と多重検定
最適腕識別と多重検定最適腕識別と多重検定
最適腕識別と多重検定
Masa Kato
 
Validating Causal Inference Models via Influence Functions
Validating Causal Inference Modelsvia Influence FunctionsValidating Causal Inference Modelsvia Influence Functions
Validating Causal Inference Models via Influence Functions
Masa Kato
 
Jamieson_Jain2018
Jamieson_Jain2018Jamieson_Jain2018
Jamieson_Jain2018
Masa Kato
 
マルコフ転換モデル:導入編
マルコフ転換モデル:導入編マルコフ転換モデル:導入編
マルコフ転換モデル:導入編
Masa Kato
 
Koh_Liang_ICML2017
Koh_Liang_ICML2017Koh_Liang_ICML2017
Koh_Liang_ICML2017
Masa Kato
 
Neural netorksmatching
Neural netorksmatchingNeural netorksmatching
Neural netorksmatching
Masa Kato
 
米国のインサイダー取引規制
米国のインサイダー取引規制米国のインサイダー取引規制
米国のインサイダー取引規制
Masa Kato
 
Risk based approaches to asset allocation chap0102
Risk based approaches to asset allocation chap0102Risk based approaches to asset allocation chap0102
Risk based approaches to asset allocation chap0102
Masa Kato
 
適時開示制度
適時開示制度適時開示制度
適時開示制度Masa Kato
 
Experimental games
Experimental games Experimental games
Experimental games
Masa Kato
 

More from Masa Kato (12)

効率的反実仮想学習
効率的反実仮想学習効率的反実仮想学習
効率的反実仮想学習
 
敵対的学習に対するラデマッハ複雑度
敵対的学習に対するラデマッハ複雑度敵対的学習に対するラデマッハ複雑度
敵対的学習に対するラデマッハ複雑度
 
最適腕識別と多重検定
最適腕識別と多重検定最適腕識別と多重検定
最適腕識別と多重検定
 
Validating Causal Inference Models via Influence Functions
Validating Causal Inference Modelsvia Influence FunctionsValidating Causal Inference Modelsvia Influence Functions
Validating Causal Inference Models via Influence Functions
 
Jamieson_Jain2018
Jamieson_Jain2018Jamieson_Jain2018
Jamieson_Jain2018
 
マルコフ転換モデル:導入編
マルコフ転換モデル:導入編マルコフ転換モデル:導入編
マルコフ転換モデル:導入編
 
Koh_Liang_ICML2017
Koh_Liang_ICML2017Koh_Liang_ICML2017
Koh_Liang_ICML2017
 
Neural netorksmatching
Neural netorksmatchingNeural netorksmatching
Neural netorksmatching
 
米国のインサイダー取引規制
米国のインサイダー取引規制米国のインサイダー取引規制
米国のインサイダー取引規制
 
Risk based approaches to asset allocation chap0102
Risk based approaches to asset allocation chap0102Risk based approaches to asset allocation chap0102
Risk based approaches to asset allocation chap0102
 
適時開示制度
適時開示制度適時開示制度
適時開示制度
 
Experimental games
Experimental games Experimental games
Experimental games
 

経済学のための並列分散処理1