SlideShare a Scribd company logo
Chainer, Cupy⼊⾨
2016/07/02 Chainer Meetup #03
(株)Preferred Networks
海野 裕也
v1.10向け
今⽇のおはなし
l  Deep Learningのおさらい
l  Chainer の使い⽅の紹介
l  CuPyの使い⽅の紹介
2
ニューラルネットの基礎
ニューラルネット
l  値が伝播していく有向グラフ
l  エッジで重みをかけて、ノードに⼊るところで⾜し
込み、ノードの中で⾮線形変換する
l  全体としては巨⼤で複雑な関数を表す
4
ニューラルネット=合成関数
l  ベクトルに対して線形・⾮線形な関数をたくさん適
⽤する合成関数と捉えるとよい
l  各ノードはベクトルを保持する変数
5
⼀般のニューラルネットは DAG = 計算グラフ
⼀般にはグラフが分岐したり合流したりする
l  分岐:同じ変数を複数の場所でつかう
l  合流:⼆つ以上の変数を受け取る関数を適⽤する
6
計算グラフの例
z = x ** 2 + 2 * x * y + y
7	
x
y
_ **
2
2 * _ _ * _ _ + _ z
_ + _
誤差逆伝播は、計算グラフを逆向きにたどる
計算グラフと順伝播時の各変数の値があれば計算可能
8
機械学習(教師あり学習)のおさらい
⽬的
l  ⼊⼒Xに対して出⼒Yを予測する関数fを求めたい
l  例:Xがメール、Yはスパムか否か
⽅法
l  正解のわかっているデータx1, y1 … xn, ynに対し
て、f(xi)とyiがなるべく⼀致するfを求める
l  |f(x1) – y1| + … + |f(xn) – yn| を最⼩にしたい
9	
⽬的関数
機械学習のおさらい
多くの機械学習⼿法は、
1.  ⽬的関数の設計
2.  勾配の計算
3.  最⼩化のための反復計算
からなる
10	
先ほどの計算は
ここに使う
ニューラルネットの学習⽅法
1.  ⽬的関数の設計
l  計算グラフを⾃分で設計する
2.  勾配の計算
l  誤差逆伝播で機械的に計算できる
3.  最⼩化のための反復計算
l  勾配を使って反復更新する
11	
1さえ設計すれば残りは
ほぼ⾃動化されている
Chainer の使い⽅
Chainer はニューラルネットのフレームワーク
l  機能
l  ニューラルネットを記述する
l  ニューラルネットの順伝播・逆伝播を実⾏する
l  勾配法を実⾏してパラメータを最適化する
l  Chainer の特徴
l  順伝播は単純に Python のスクリプトとして書ける
l  そのスクリプトの実⾏結果は計算⼿順を記憶してい
て、逆伝播を⼿で書く必要はない
13
Chainer のインストール
l  環境は Linux(特に Ubuntu)がおすすめ
l  インストール⽅法
l  新しめの Python 環境を⽤意(CPython 2.7+, 3.4+, 3.5+)
l  pip も⽤意
l  コマンドを実⾏: pip install chainer
l  chainer パッケージが import できれば完了です
l  Python スタックの環境構築は、Anaconda がお
すすめ
l  Python のバージョン管理は pyenv がおすすめ
l  pyenv からコマンド⼀つで Anaconda もインストールできます
14
順伝播
l  今まで「変数」と呼んでいたものは、Chainer
では Variable オブジェクト
l  Variable を Function に⼊れると、順伝搬後の
Variable が返ってくる
l  Variable が計算グラフを保持している
l  Function は、四則演算以外に
chainer.functions に⽤意されている
15
順伝搬とコード例
16	
x
y
_**2
2*_ _*_ _+_ z
_+_
x = Varaible(...)
y = Variable(...)
z = x ** 2 + 2 * x * y + y
Variable オブジェクト
l  計算グラフの(データ)ノード
l  NumPy または CuPy(後述)の配列を保持する
l  初期化時に配列を渡す
l  data 属性に保存される
l  多くの Function は配列の最初の軸をミニバッチとして
使うので注意
l  下の x は、20 次元ベクトルが 10 個⼊ったミニバッチとみなす
l  現状、Chainer は多くの場所で float32 配列を要求する
ので注意
17	
x = Variable(np.zeros((10, 20),
dtype=np.float32))
x.data
Function オブジェクト
l  計算グラフの「演算」ノード
l  chainer.functions (以降 F) にいろいろ定義され
ている
l  F.relu, F.max_pooling_2d, F.lstm, ...
l  Functionの呼び出し結果が、再びVariableになる
l  v1.5からパラメータはLinkとして分離された
18	
x = Variable(...)
y = F.relu(x) # yもVariable
Link オブジェクト
l  パラメータ付きの関数
l  最適化の対象となる
l  save/loadができる(v1.5からsave/loadをサポート)
l  chainer.links(以降L)に⾊々⽤意されている
l  L.Linear, L.Convolution2D, L.EmbedID, ...
l  Linkの呼び出し結果が、再びVariableになる
l  v1.5からFunctionとパラメータは分離され、パラメータ
付きの関数はLinkオブジェクトになった
19	
v1.5~
ChainでLinkをまとめる
l  ⼀般的にパラメータ付きの関数(Link)は複数あるので、
Chainでまとめて管理できる
l  Chainを継承すると再利⽤しやすくなる
model = Chain(embed=L.EmbedID(10000, 100),
layer1=L.Linear(100, 100),
layer2=L.Linear(100, 10000))
x = Variable(...)
h = F.relu(model.layer1(model.embed(x)))
y = model.layer2(h)
20	
v1.5~
ロス関数、勾配計算
l  ロス関数もFunctionの⼀種
l  ロス関数の出⼒に、Variable.backward() を呼ぶと
勾配が計算できる
loss = F.softmax_cross_entropy(y, t)
loss.backward()
21
Optimizer の設定
l  勾配が計算できたら、あとは勾配法をまわす
l  勾配法のアルゴリズムは Optimizer クラスの⼦クラス
l  chainer.optimizers に定義されている
l  実装されている最適化⼿法:SGD, MomentumSGD, AdaGrad,
RMSprop, RMSpropGraves, AdaDelta, Adam
l  最適化対象をsetup メソッドに渡す
l  正則化はhook関数として登録する
optimizer = optimizers.SGD()
optimizer.setup(model)
optimizer.add_hook(optimizer.WeightDecay())
22
Optimizer による最適化
l  まず勾配をゼロ初期化:zerograds()
l  順伝播・逆伝播を実⾏
l  最適化ルーチンを実⾏:update()
l  以上を何回も繰り返す
model.zerograds()
loss = ...
loss.backward()
optimizer.update()
23
Chainer を使う場合の全体の流れ
1.  Linkを使ってChainを定義する
2.  Optimizer に、Chain を設定する
3.  forward 関数を定義する
4.  データセットを読み込み、訓練⽤と評価⽤にわける
5.  訓練ループを回す
a.  勾配をゼロ初期化
b.  順伝搬して、得られたロス値の backward メソッドを呼ぶ
c.  Optimizerを、update
6.  適当な頻度で評価ループを回す
a.  テストデータで順伝搬関数を呼んで結果を記録
24	
次のバージョンで訓練ループは抽象化されます
CUDAによる⾏列ライブラリCuPy
25
CuPyとは何か?
NumPy互換インターフェースの
CUDA実装の⾏列ライブラリ
26	
Pythonの⾏列ライブラリ
NVIDIA GPUの開発環境とライブラリ
既存のライブラリと
同じインターフェースで
GPUの⾼速性を⼿に⼊れられる
27
CuPyとNumPyの⽐較
import numpy
x = numpy.array([1,2,3], numpy.float32)
y = x * x
s = numpy.sum(y)
print(s)
import cupy
x = cupy.array([1,2,3], cupy.float32)
y = x * x
s = cupy.sum(y)
print(s)
28
CuPyはどのくらい早いの?
l  状況しだいですが、最⼤数⼗倍程度速くなります
def test(xp):
a = xp.arange(1000000).reshape(1000, -1)
return a.T * 2
test(numpy)
t1 = datetime.datetime.now()
for i in range(1000):
test(numpy)
t2 = datetime.datetime.now()
print(t2 -t1)
test(cupy)
t1 = datetime.datetime.now()
for i in range(1000):
test(cupy)
t2 = datetime.datetime.now()
print(t2 -t1)
29	
時間
[ms]
倍率
NumPy 2929 1.0
CuPy 585 5.0
CuPy +
Memory Pool
123 23.8
Intel Core i7-4790 @3.60GHz,
32GB, GeForce GTX 970
なぜCuPyが求められるのか?
l  GPUを使った応⽤研究では、必
要な知識が以前より増えた
l  GPU⾃体が複雑
l  GPUを効率的に扱うアルゴリズム
も複雑
l  使わないと効率で勝てない
l  GPUを効率的に⼿軽に使える仕
組みが必要になっている
30	
GPU
CUDA
⾏列ライブラリ
深層学習エンジン
応⽤研究
裏の仕組み
l  CUDA⽤ソースを⾃動⽣成してコンパイラが⾛る
l  ⽣成されたバイナリをGPUに⾃動的に転送・実⾏する
l  ビルド結果はキャッシュされるので2回⽬移⾏⾼速
31	
スタブ
スタブ
実処理
nvcc
コンパイラ
.cubin
GPU
実行	
キャッシュ
する
⾃分でコードを書きたい時
例:z[i] = x[i] + 2 * y[i] を書きたい
32	
引数の型: “float32 x, float32 y”
戻り値の型: “float32 z”
処理: “z = x + 2 * y;”
ループやインデックスの処理は
⾃動で埋めてくれる
これだけ書け
ば良い
チューニングの⽅法
l  CUDAのツールがそのまま使える
l  NVIDIA Visual Profiler (nvvp)やnvprofコマンド
l  CPU⽤のプロファイラではGPUのボトルネックがわ
からないので注意
l  詳細はCUDAのサイトへ
33
深層学習以外にも利⽤できる
l  既存のNumPyコードがほぼそのまま動く
l  既存の解析⼿法がそのままCUDA上で動く
l  NumPyのベクトルデータとの変換は1⾏
34
まとめ
l  ニューラルネットを(おもに実装⾯から)簡単におさら
いしました
l  Chainerは直感的なインターフェスで深層学習できるラ
イブラリ
l  CuPyはNumPyインターフェースでCUDAを使えるライ
ブラリ
35

More Related Content

What's hot

いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
 
[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations
Deep Learning JP
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
Sho Tatsuno
 
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
Taiji Suzuki
 
第52回SWO研究会チュートリアル資料
第52回SWO研究会チュートリアル資料第52回SWO研究会チュートリアル資料
第52回SWO研究会チュートリアル資料
Takanori Ugai
 
深層学習の数理
深層学習の数理深層学習の数理
深層学習の数理
Taiji Suzuki
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習
Deep Learning JP
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
 
CNNの構造最適化手法について
CNNの構造最適化手法についてCNNの構造最適化手法について
CNNの構造最適化手法について
MasanoriSuganuma
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
Preferred Networks
 
RでGPU使ってみた
RでGPU使ってみたRでGPU使ってみた
RでGPU使ってみた
Kazuya Wada
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
弘毅 露崎
 
機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門
hoxo_m
 
Res netと派生研究の紹介
Res netと派生研究の紹介Res netと派生研究の紹介
Res netと派生研究の紹介
masataka nishimori
 
PRML 第4章
PRML 第4章PRML 第4章
PRML 第4章
Akira Miyazawa
 
[DL輪読会]Temporal DifferenceVariationalAuto-Encoder
[DL輪読会]Temporal DifferenceVariationalAuto-Encoder[DL輪読会]Temporal DifferenceVariationalAuto-Encoder
[DL輪読会]Temporal DifferenceVariationalAuto-Encoder
Deep Learning JP
 
研究効率化Tips Ver.2
研究効率化Tips Ver.2研究効率化Tips Ver.2
研究効率化Tips Ver.2
cvpaper. challenge
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
Yuta Kikuchi
 
闇魔術を触ってみた
闇魔術を触ってみた闇魔術を触ってみた
闇魔術を触ってみたSatoshi Sato
 

What's hot (20)

いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
 
[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
 
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
 
第52回SWO研究会チュートリアル資料
第52回SWO研究会チュートリアル資料第52回SWO研究会チュートリアル資料
第52回SWO研究会チュートリアル資料
 
深層学習の数理
深層学習の数理深層学習の数理
深層学習の数理
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
CNNの構造最適化手法について
CNNの構造最適化手法についてCNNの構造最適化手法について
CNNの構造最適化手法について
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
 
RでGPU使ってみた
RでGPU使ってみたRでGPU使ってみた
RでGPU使ってみた
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門
 
Res netと派生研究の紹介
Res netと派生研究の紹介Res netと派生研究の紹介
Res netと派生研究の紹介
 
PRML 第4章
PRML 第4章PRML 第4章
PRML 第4章
 
[DL輪読会]Temporal DifferenceVariationalAuto-Encoder
[DL輪読会]Temporal DifferenceVariationalAuto-Encoder[DL輪読会]Temporal DifferenceVariationalAuto-Encoder
[DL輪読会]Temporal DifferenceVariationalAuto-Encoder
 
研究効率化Tips Ver.2
研究効率化Tips Ver.2研究効率化Tips Ver.2
研究効率化Tips Ver.2
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
 
Lockfree list
Lockfree listLockfree list
Lockfree list
 
闇魔術を触ってみた
闇魔術を触ってみた闇魔術を触ってみた
闇魔術を触ってみた
 

Viewers also liked

Chainerを使って細胞を数えてみた
Chainerを使って細胞を数えてみたChainerを使って細胞を数えてみた
Chainerを使って細胞を数えてみた
samacoba1983
 
Chainer Update v1.8.0 -> v1.10.0+
Chainer Update v1.8.0 -> v1.10.0+Chainer Update v1.8.0 -> v1.10.0+
Chainer Update v1.8.0 -> v1.10.0+
Seiya Tokui
 
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA Japan
 
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
Yuta Kashino
 
On the benchmark of Chainer
On the benchmark of ChainerOn the benchmark of Chainer
On the benchmark of Chainer
Kenta Oono
 
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
Yahoo!デベロッパーネットワーク
 
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
Yusuke HIDESHIMA
 
マシンパーセプション研究におけるChainer活用事例
マシンパーセプション研究におけるChainer活用事例マシンパーセプション研究におけるChainer活用事例
マシンパーセプション研究におけるChainer活用事例
nlab_utokyo
 
Deep parking
Deep parkingDeep parking
Deep parking
Shintaro Shiba
 
LT@Chainer Meetup
LT@Chainer MeetupLT@Chainer Meetup
LT@Chainer Meetup
Shunta Saito
 
Towards Chainer v1.5
Towards Chainer v1.5Towards Chainer v1.5
Towards Chainer v1.5
Seiya Tokui
 
A Chainer MeetUp Talk
A Chainer MeetUp TalkA Chainer MeetUp Talk
A Chainer MeetUp Talk
Yusuke Oda
 
Chainer Meetup LT (Alpaca)
Chainer Meetup LT (Alpaca)Chainer Meetup LT (Alpaca)
Chainer Meetup LT (Alpaca)
Jun-ya Norimatsu
 
Chainer meetup
Chainer meetupChainer meetup
Chainer meetup
kikusu
 
Chainer meetup20151014
Chainer meetup20151014Chainer meetup20151014
Chainer meetup20151014
Jiro Nishitoba
 
Chainer Development Plan 2015/12
Chainer Development Plan 2015/12Chainer Development Plan 2015/12
Chainer Development Plan 2015/12
Seiya Tokui
 
深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル
Yuta Kashino
 
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
Jun-ya Norimatsu
 
ディープラーニングにおける学習の高速化の重要性とその手法
ディープラーニングにおける学習の高速化の重要性とその手法ディープラーニングにおける学習の高速化の重要性とその手法
ディープラーニングにおける学習の高速化の重要性とその手法
Yuko Fujiyama
 
Lighting talk chainer hands on
Lighting talk chainer hands onLighting talk chainer hands on
Lighting talk chainer hands on
Ogushi Masaya
 

Viewers also liked (20)

Chainerを使って細胞を数えてみた
Chainerを使って細胞を数えてみたChainerを使って細胞を数えてみた
Chainerを使って細胞を数えてみた
 
Chainer Update v1.8.0 -> v1.10.0+
Chainer Update v1.8.0 -> v1.10.0+Chainer Update v1.8.0 -> v1.10.0+
Chainer Update v1.8.0 -> v1.10.0+
 
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
 
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
 
On the benchmark of Chainer
On the benchmark of ChainerOn the benchmark of Chainer
On the benchmark of Chainer
 
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
 
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
 
マシンパーセプション研究におけるChainer活用事例
マシンパーセプション研究におけるChainer活用事例マシンパーセプション研究におけるChainer活用事例
マシンパーセプション研究におけるChainer活用事例
 
Deep parking
Deep parkingDeep parking
Deep parking
 
LT@Chainer Meetup
LT@Chainer MeetupLT@Chainer Meetup
LT@Chainer Meetup
 
Towards Chainer v1.5
Towards Chainer v1.5Towards Chainer v1.5
Towards Chainer v1.5
 
A Chainer MeetUp Talk
A Chainer MeetUp TalkA Chainer MeetUp Talk
A Chainer MeetUp Talk
 
Chainer Meetup LT (Alpaca)
Chainer Meetup LT (Alpaca)Chainer Meetup LT (Alpaca)
Chainer Meetup LT (Alpaca)
 
Chainer meetup
Chainer meetupChainer meetup
Chainer meetup
 
Chainer meetup20151014
Chainer meetup20151014Chainer meetup20151014
Chainer meetup20151014
 
Chainer Development Plan 2015/12
Chainer Development Plan 2015/12Chainer Development Plan 2015/12
Chainer Development Plan 2015/12
 
深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル
 
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
 
ディープラーニングにおける学習の高速化の重要性とその手法
ディープラーニングにおける学習の高速化の重要性とその手法ディープラーニングにおける学習の高速化の重要性とその手法
ディープラーニングにおける学習の高速化の重要性とその手法
 
Lighting talk chainer hands on
Lighting talk chainer hands onLighting talk chainer hands on
Lighting talk chainer hands on
 

Similar to Chainer, Cupy入門

Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015
Ryosuke Okuta
 
深層学習フレームワーク Chainerとその進化
深層学習フレームワークChainerとその進化深層学習フレームワークChainerとその進化
深層学習フレームワーク Chainerとその進化
Yuya Unno
 
Deep Collective Classification in Heterogeneous Information Networks
Deep Collective Classification in Heterogeneous Information Networks Deep Collective Classification in Heterogeneous Information Networks
Deep Collective Classification in Heterogeneous Information Networks
Kota Kakiuchi
 
Chainerの使い方と 自然言語処理への応用
Chainerの使い方と自然言語処理への応用Chainerの使い方と自然言語処理への応用
Chainerの使い方と 自然言語処理への応用
Yuya Unno
 
W8PRML5.1-5.3
W8PRML5.1-5.3W8PRML5.1-5.3
W8PRML5.1-5.3
Masahito Ohue
 
Lambda calculus
Lambda calculusLambda calculus
Lambda calculus
Naoki Rin
 
ラムダ計算と関数型言語を学ぶ
ラムダ計算と関数型言語を学ぶラムダ計算と関数型言語を学ぶ
ラムダ計算と関数型言語を学ぶ
Naoki Hayashida
 
Chainer入門と最近の機能
Chainer入門と最近の機能Chainer入門と最近の機能
Chainer入門と最近の機能
Yuya Unno
 
Move semantics
Move semanticsMove semantics
Move semantics
mitsutaka_takeda
 
rpscala35-scala2.9.0
rpscala35-scala2.9.0rpscala35-scala2.9.0
rpscala35-scala2.9.0Kenji Yoshida
 

Similar to Chainer, Cupy入門 (10)

Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015
 
深層学習フレームワーク Chainerとその進化
深層学習フレームワークChainerとその進化深層学習フレームワークChainerとその進化
深層学習フレームワーク Chainerとその進化
 
Deep Collective Classification in Heterogeneous Information Networks
Deep Collective Classification in Heterogeneous Information Networks Deep Collective Classification in Heterogeneous Information Networks
Deep Collective Classification in Heterogeneous Information Networks
 
Chainerの使い方と 自然言語処理への応用
Chainerの使い方と自然言語処理への応用Chainerの使い方と自然言語処理への応用
Chainerの使い方と 自然言語処理への応用
 
W8PRML5.1-5.3
W8PRML5.1-5.3W8PRML5.1-5.3
W8PRML5.1-5.3
 
Lambda calculus
Lambda calculusLambda calculus
Lambda calculus
 
ラムダ計算と関数型言語を学ぶ
ラムダ計算と関数型言語を学ぶラムダ計算と関数型言語を学ぶ
ラムダ計算と関数型言語を学ぶ
 
Chainer入門と最近の機能
Chainer入門と最近の機能Chainer入門と最近の機能
Chainer入門と最近の機能
 
Move semantics
Move semanticsMove semantics
Move semantics
 
rpscala35-scala2.9.0
rpscala35-scala2.9.0rpscala35-scala2.9.0
rpscala35-scala2.9.0
 

More from Yuya Unno

深層学習で切り拓くパーソナルロボットの未来
深層学習で切り拓くパーソナルロボットの未来深層学習で切り拓くパーソナルロボットの未来
深層学習で切り拓くパーソナルロボットの未来
Yuya Unno
 
深層学習時代の 自然言語処理ビジネス
深層学習時代の自然言語処理ビジネス深層学習時代の自然言語処理ビジネス
深層学習時代の 自然言語処理ビジネス
Yuya Unno
 
ベンチャー企業で言葉を扱うロボットの研究開発をする
ベンチャー企業で言葉を扱うロボットの研究開発をするベンチャー企業で言葉を扱うロボットの研究開発をする
ベンチャー企業で言葉を扱うロボットの研究開発をする
Yuya Unno
 
PFNにおける セミナー活動
PFNにおけるセミナー活動PFNにおけるセミナー活動
PFNにおける セミナー活動
Yuya Unno
 
進化するChainer
進化するChainer進化するChainer
進化するChainer
Yuya Unno
 
予測型戦略を知るための機械学習チュートリアル
予測型戦略を知るための機械学習チュートリアル予測型戦略を知るための機械学習チュートリアル
予測型戦略を知るための機械学習チュートリアル
Yuya Unno
 
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション
Yuya Unno
 
最先端NLP勉強会 “Learning Language Games through Interaction” Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会 “Learning Language Games through Interaction” Sida I. Wang, Percy L...
Yuya Unno
 
Chainerのテスト環境とDockerでのCUDAの利用
Chainerのテスト環境とDockerでのCUDAの利用Chainerのテスト環境とDockerでのCUDAの利用
Chainerのテスト環境とDockerでのCUDAの利用
Yuya Unno
 
深層学習フレームワークChainerの特徴
深層学習フレームワークChainerの特徴深層学習フレームワークChainerの特徴
深層学習フレームワークChainerの特徴
Yuya Unno
 
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
Yuya Unno
 
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
Yuya Unno
 
GPU上でのNLP向け深層学習の実装について
GPU上でのNLP向け深層学習の実装についてGPU上でのNLP向け深層学習の実装について
GPU上でのNLP向け深層学習の実装について
Yuya Unno
 
言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール
Yuya Unno
 
企業における自然言語処理技術利用の最先端
企業における自然言語処理技術利用の最先端企業における自然言語処理技術利用の最先端
企業における自然言語処理技術利用の最先端
Yuya Unno
 
「知識」のDeep Learning
「知識」のDeep Learning「知識」のDeep Learning
「知識」のDeep Learning
Yuya Unno
 
自然言語処理@春の情報処理祭
自然言語処理@春の情報処理祭自然言語処理@春の情報処理祭
自然言語処理@春の情報処理祭
Yuya Unno
 
ピーFIの研究開発現場
ピーFIの研究開発現場ピーFIの研究開発現場
ピーFIの研究開発現場
Yuya Unno
 
深層学習時代の自然言語処理
深層学習時代の自然言語処理深層学習時代の自然言語処理
深層学習時代の自然言語処理
Yuya Unno
 
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
Yuya Unno
 

More from Yuya Unno (20)

深層学習で切り拓くパーソナルロボットの未来
深層学習で切り拓くパーソナルロボットの未来深層学習で切り拓くパーソナルロボットの未来
深層学習で切り拓くパーソナルロボットの未来
 
深層学習時代の 自然言語処理ビジネス
深層学習時代の自然言語処理ビジネス深層学習時代の自然言語処理ビジネス
深層学習時代の 自然言語処理ビジネス
 
ベンチャー企業で言葉を扱うロボットの研究開発をする
ベンチャー企業で言葉を扱うロボットの研究開発をするベンチャー企業で言葉を扱うロボットの研究開発をする
ベンチャー企業で言葉を扱うロボットの研究開発をする
 
PFNにおける セミナー活動
PFNにおけるセミナー活動PFNにおけるセミナー活動
PFNにおける セミナー活動
 
進化するChainer
進化するChainer進化するChainer
進化するChainer
 
予測型戦略を知るための機械学習チュートリアル
予測型戦略を知るための機械学習チュートリアル予測型戦略を知るための機械学習チュートリアル
予測型戦略を知るための機械学習チュートリアル
 
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション
 
最先端NLP勉強会 “Learning Language Games through Interaction” Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会 “Learning Language Games through Interaction” Sida I. Wang, Percy L...
 
Chainerのテスト環境とDockerでのCUDAの利用
Chainerのテスト環境とDockerでのCUDAの利用Chainerのテスト環境とDockerでのCUDAの利用
Chainerのテスト環境とDockerでのCUDAの利用
 
深層学習フレームワークChainerの特徴
深層学習フレームワークChainerの特徴深層学習フレームワークChainerの特徴
深層学習フレームワークChainerの特徴
 
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
 
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
 
GPU上でのNLP向け深層学習の実装について
GPU上でのNLP向け深層学習の実装についてGPU上でのNLP向け深層学習の実装について
GPU上でのNLP向け深層学習の実装について
 
言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール
 
企業における自然言語処理技術利用の最先端
企業における自然言語処理技術利用の最先端企業における自然言語処理技術利用の最先端
企業における自然言語処理技術利用の最先端
 
「知識」のDeep Learning
「知識」のDeep Learning「知識」のDeep Learning
「知識」のDeep Learning
 
自然言語処理@春の情報処理祭
自然言語処理@春の情報処理祭自然言語処理@春の情報処理祭
自然言語処理@春の情報処理祭
 
ピーFIの研究開発現場
ピーFIの研究開発現場ピーFIの研究開発現場
ピーFIの研究開発現場
 
深層学習時代の自然言語処理
深層学習時代の自然言語処理深層学習時代の自然言語処理
深層学習時代の自然言語処理
 
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
 

Recently uploaded

ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
Matsushita Laboratory
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
Takayuki Nakayama
 
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさJSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
0207sukipio
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
chiefujita1
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
t m
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 

Recently uploaded (9)

ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
 
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさJSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 

Chainer, Cupy入門