Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Jun-ya Norimatsu
PPTX, PDF
94,961 views
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
Chainer Meetup #01での発表スライドです。
Engineering
◦
Read more
8
Save
Share
Embed
Embed presentation
Download
Downloaded 23 times
1
/ 30
2
/ 30
3
/ 30
4
/ 30
5
/ 30
6
/ 30
7
/ 30
8
/ 30
9
/ 30
10
/ 30
11
/ 30
12
/ 30
13
/ 30
14
/ 30
15
/ 30
16
/ 30
17
/ 30
18
/ 30
19
/ 30
20
/ 30
21
/ 30
22
/ 30
23
/ 30
24
/ 30
25
/ 30
26
/ 30
27
/ 30
28
/ 30
29
/ 30
30
/ 30
More Related Content
PDF
Deep learning実装の基礎と実践
by
Seiya Tokui
PDF
Chainer meetup20151014
by
Jiro Nishitoba
PPTX
Chainer Meetup LT (Alpaca)
by
Jun-ya Norimatsu
PDF
LT@Chainer Meetup
by
Shunta Saito
PDF
Chainer入門と最近の機能
by
Yuya Unno
PDF
Jubatusにおける大規模分散オンライン機械学習
by
Preferred Networks
PDF
Chainerの使い方と自然言語処理への応用
by
Yuya Unno
PPTX
Tensor flow勉強会3
by
tak9029
Deep learning実装の基礎と実践
by
Seiya Tokui
Chainer meetup20151014
by
Jiro Nishitoba
Chainer Meetup LT (Alpaca)
by
Jun-ya Norimatsu
LT@Chainer Meetup
by
Shunta Saito
Chainer入門と最近の機能
by
Yuya Unno
Jubatusにおける大規模分散オンライン機械学習
by
Preferred Networks
Chainerの使い方と自然言語処理への応用
by
Yuya Unno
Tensor flow勉強会3
by
tak9029
What's hot
PDF
Learning Phrase Representations using RNN Encoder-Decoder for Statistical Mac...
by
Yuta Kikuchi
PPTX
MS COCO Dataset Introduction
by
Shinagawa Seitaro
PDF
GPU上でのNLP向け深層学習の実装について
by
Yuya Unno
PDF
CuPy解説
by
Ryosuke Okuta
PDF
音声認識と深層学習
by
Preferred Networks
ODP
D言語会議#1
by
9rnsr
PDF
High performance python computing for data science
by
Takami Sato
PDF
深層学習フレームワークChainerの紹介とFPGAへの期待
by
Seiya Tokui
PDF
深層学習フレームワークChainerとその進化
by
Yuya Unno
PDF
PCFG構文解析法
by
Yusuke Oda
PDF
CMSI計算科学技術特論A(3) OpenMPの基礎
by
Computational Materials Science Initiative
PPTX
boost - std - C#
by
Tatsuya Ishikawa
PDF
CMSI計算科学技術特論A(4) Hybrid並列化技法
by
Computational Materials Science Initiative
PDF
ディープニューラルネット入門
by
TanUkkii
PDF
Python 機械学習プログラミング データ分析演習編
by
Etsuji Nakai
PDF
111015 tokyo scipy2_ディスカッション
by
Shohei Hido
PDF
Tokyo.R #19 発表資料 「Rで色々やってみました」
by
Masayuki Isobe
PPTX
論文紹介:「End-to-end Sequence Labeling via Bi-directional LSTM-CNNs-CRF」
by
Naonori Nagano
PDF
110828 tokyo scipy1_hido_dist
by
Shohei Hido
PDF
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)
by
Shirou Maruyama
Learning Phrase Representations using RNN Encoder-Decoder for Statistical Mac...
by
Yuta Kikuchi
MS COCO Dataset Introduction
by
Shinagawa Seitaro
GPU上でのNLP向け深層学習の実装について
by
Yuya Unno
CuPy解説
by
Ryosuke Okuta
音声認識と深層学習
by
Preferred Networks
D言語会議#1
by
9rnsr
High performance python computing for data science
by
Takami Sato
深層学習フレームワークChainerの紹介とFPGAへの期待
by
Seiya Tokui
深層学習フレームワークChainerとその進化
by
Yuya Unno
PCFG構文解析法
by
Yusuke Oda
CMSI計算科学技術特論A(3) OpenMPの基礎
by
Computational Materials Science Initiative
boost - std - C#
by
Tatsuya Ishikawa
CMSI計算科学技術特論A(4) Hybrid並列化技法
by
Computational Materials Science Initiative
ディープニューラルネット入門
by
TanUkkii
Python 機械学習プログラミング データ分析演習編
by
Etsuji Nakai
111015 tokyo scipy2_ディスカッション
by
Shohei Hido
Tokyo.R #19 発表資料 「Rで色々やってみました」
by
Masayuki Isobe
論文紹介:「End-to-end Sequence Labeling via Bi-directional LSTM-CNNs-CRF」
by
Naonori Nagano
110828 tokyo scipy1_hido_dist
by
Shohei Hido
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)
by
Shirou Maruyama
Viewers also liked
PDF
Chainer Development Plan 2015/12
by
Seiya Tokui
PDF
深層学習ライブラリのプログラミングモデル
by
Yuta Kashino
PPTX
ディープラーニングにおける学習の高速化の重要性とその手法
by
Yuko Fujiyama
PDF
ボケるRNNを学習したい (Chainer meetup 01)
by
Motoki Sato
PDF
Lighting talk chainer hands on
by
Ogushi Masaya
PDF
Chainer Contribution Guide
by
Kenta Oono
PDF
Chainer meetup lt
by
Ace12358
PDF
Introduction to DEEPstation the GUI Deep learning environment for chainer
by
Ryo Shimizu
PPTX
Deep parking
by
Shintaro Shiba
PDF
A Chainer MeetUp Talk
by
Yusuke Oda
PDF
Towards Chainer v1.5
by
Seiya Tokui
PPTX
Chainer meetup
by
kikusu
PDF
Chainer Update v1.8.0 -> v1.10.0+
by
Seiya Tokui
PPTX
Chainerを使って細胞を数えてみた
by
samacoba1983
PDF
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
by
NVIDIA Japan
PDF
On the benchmark of Chainer
by
Kenta Oono
PDF
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
by
Yuta Kashino
PDF
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
by
Yahoo!デベロッパーネットワーク
PDF
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
by
Yusuke HIDESHIMA
PDF
Chainer, Cupy入門
by
Yuya Unno
Chainer Development Plan 2015/12
by
Seiya Tokui
深層学習ライブラリのプログラミングモデル
by
Yuta Kashino
ディープラーニングにおける学習の高速化の重要性とその手法
by
Yuko Fujiyama
ボケるRNNを学習したい (Chainer meetup 01)
by
Motoki Sato
Lighting talk chainer hands on
by
Ogushi Masaya
Chainer Contribution Guide
by
Kenta Oono
Chainer meetup lt
by
Ace12358
Introduction to DEEPstation the GUI Deep learning environment for chainer
by
Ryo Shimizu
Deep parking
by
Shintaro Shiba
A Chainer MeetUp Talk
by
Yusuke Oda
Towards Chainer v1.5
by
Seiya Tokui
Chainer meetup
by
kikusu
Chainer Update v1.8.0 -> v1.10.0+
by
Seiya Tokui
Chainerを使って細胞を数えてみた
by
samacoba1983
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
by
NVIDIA Japan
On the benchmark of Chainer
by
Kenta Oono
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
by
Yuta Kashino
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
by
Yahoo!デベロッパーネットワーク
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
by
Yusuke HIDESHIMA
Chainer, Cupy入門
by
Yuya Unno
Capitalicoでのchainer 1.1 → 1.5 バージョンアップ事例
1.
Capitalicoでのchainer 1.1→1.5 バージョンアップ事例 J U
N - Y A N O R I M A T S U Engineer http://alpaca.ai jnory@alpacadb.com 2015/12/19 Chainer Meetup #01
2.
自己紹介 乗松潤矢(Twitter: arrow_elpis, Github:
jnory) Alpaca (Engineer) フリーランス 博士課程在学中(専門:自然言語処理, 統計翻訳) 今日の肩書
3.
Entry Point FXチャートにはパターンがある
4.
すべて同一カテゴリの事象 パターン認識で検出したい
5.
プログラミングなしでパターンを発見
6.
Chainerによるモデル学習 入力:為替時系列データ 出力:学習時に指定したパターンっぽさ
7.
今日の発表 弊社環境をChainer 1.5にバージョンアップしました バージョンアップでハマったところは? バージョンアップで良くなったところは? バージョンアップで悪くなったところは? Chainerバージョンアップはどの程度のタスク?
8.
今日の発表 弊社環境をChainer 1.5にバージョンアップしました バージョンアップでハマったところは? バージョンアップで良くなったところは? バージョンアップで悪くなったところは? Chainerバージョンアップはどの程度のタスク?
9.
本題の前に…CapitalicoでのChainerバージョンアップのトラウマ 2015年9月2日 Chainer 1.3リリース 弊社環境もバージョンアップを試みるが…
v1.1と比較してモデル学習が約1.5倍遅い バージョンアップ失敗 Chainer 1.3の変更点 CuPyの導入 どうもこれが遅いらしい
10.
バージョンアップで良くなったところ ボトルネックだったCuPyが高速化 速くなりました!!! Chainer 1.1 :約22分 Chainer
1.5 :約16分 (ありがとうございます!!!) 弊社サービス上でのモデル学習時間
11.
Training Loss収束の様子 Chainer 1.1
Chainer 1.5 ほぼ同じ学習ができた 反復回数 反復回数
12.
Chainerの速度で気になっていること Dropoutが全体の12%の時間 Linearより重い…? モデル学習時のProfileを取った 実行時間に大きな偏りはない
13.
今日の発表 弊社環境をChainer 1.5にバージョンアップしました バージョンアップでハマったところは? バージョンアップで良くなったところは? バージョンアップで悪くなったところは? Chainerバージョンアップはどの程度のタスク?
14.
バージョンアップで悪くなったところ 一度GPUメモリを確保すると開放されない 学習終了後もプロセスは起動したまま サーバープログラム内で学習・テスト
15.
メモリ解放したい 幾つかのプロセスがGPUを使用 GPUメモリが開放されないと同時起動プロセス数に影響 用途ごとにプロセスを分離 モデル学習 テスト実行 大量のユーザーに対応できない CapitalicoはBtoCなサービス 目標:1万人程度が同時アクセス 数千人が同時にモデル学習を走らせても動くようにしたい
16.
[解決策] ちょっとだけChainerを改造 MemoryPoolにこんなコードを追加 (とにかく全部捨てる…という意味) PRしました
17.
今日の発表 弊社環境をChainer 1.5にバージョンアップしました バージョンアップでハマったところは? バージョンアップで良くなったところは? バージョンアップで悪くなったところは? Chainerバージョンアップはどの程度のタスク?
18.
バージョンアップでハマったところ 1. インストール 2. FunctionSet
→ Chain 4. モデルの保存形式をHDF5に変更 5. 過去に学習したモデルを変換 3. その他の非互換を修正 これ バージョンアップの流れ
19.
バージョンアップでハマったところ HDF5からの読込:一部のパラメータが読み込まれない chain.linear = Linear(…,
nobias=True) from chainer.serializers.hdf5 import HDF5Deserializer group = h5file["chainer"] serializer = HDF5Deserializer(group) serializer.load(chain) モデルファイルにbiasが書かれていても読まれない
20.
今日の発表 弊社環境をChainer 1.5にバージョンアップしました バージョンアップでハマったところは? バージョンアップで良くなったところは? バージョンアップで悪くなったところは? Chainerバージョンアップはどの程度のタスク?
21.
Chainerバージョンアップはどの程度のタスク? コード修正:5.5人日 動作検証に要した期間:3人日 修正開始 11/26 本番環境適用
12/11 デプロイ等々:2人日 コード修正量 工数 追加:500行(くらい) 削除:100行 コミット回数:30回
22.
Chainerに期待すること コミュニティが大きくなってほしいと思います Numpy非互換部分が少しずつでも減っていくと嬉しいです CuPyは単体でも十分インパクト大だと思います モデルフォーマットは今後固定していただけるとありがたい! ロゴがあると人に紹介するときにより大きいインパクト
23.
まとめ CapitalicoのChainerをバージョンアップ 学習機能が高速化 メモリ使用効率は悪化 PRしましたm(_ _)m バージョンアップ作業はそこそこ重いタスク ハマりどころもそこそこある
24.
おまけ Chainer 1.5での修正必要箇所一覧 Reference: https://groups.google.com/forum/#!topic/chainer/eXyL11thcNY
25.
インストール pip install cython==0.23.4 pip
install h5py==2.5.0 pip install chainer==1.5.0.2 何のつまづきもなくすんなり
26.
FunctionSet → Chain 何のつまづきもなくすんなり self.model
= FunctionSet(**args) self.model = Chain(**args) API互換性有
27.
その他非互換部分 レイヤー内の変数が(Numpy/gpuarrayから)Variableになった ohlc.W.shape[1] ohlc.W.data.shape[1] 旧FunctionがFunctionとLinkに分離 import chainer.functions as
F F.Linear(x_size, self.n_units) import chainer.links as L L.Linear(x_size, self.n_units)
28.
過去に学習したモデルを変換 Chainer 1.1形式のモデル (pickle)を読み込み1.5の形式(HDF5)で出力 import
sys from chainer.links.connection import linear sys.modules['chainer.functions.linear'] = linear パッケージの配置が変わっているのでトリックを入れる with open(path) as fp: chain = cPickle.loads(fp.read()) 一応読めるようになる newchain.linear.W.data[...] = model.W[...] newchain.linear.W.grad[...] = model.gW[...] newchain.linear.b.data[...] = model.b[...] newchain.linear.b.grad[...] = model.gb[...] newchain = Chain(linear=linear.Linear(x, y)) 変数の値を淡々とコピー nobias=Trueのとき不要
29.
モデルの保存形式をHDF5に変更 保存:何のつまづきもなくすんなり from chainer.serializers.hdf5 import
HDF5Serializer group = h5file.create_group("/chainer”) serializer = HDF5Serializer(group) serializer.save(model) 読込:一部のパラメータが読み込まれなくてハマる model = Linear(…, nobias=True) from chainer.serializers.hdf5 import HDF5Deserializer group = h5file["chainer"] serializer = HDF5Deserializer(group) serializer.load(model) ファイルにbiasが書かれていても読まれない
30.
一応の解決策(おそらく非推奨) chain.linear = Linear(…,
nobias=True) nobias=Trueなレイヤーを無理やりnobias=Falseに書き換える del chain.linear.b out_size = chain.linear.W.data.shape[0] chain.linear.add_param('b', out_size) from chainer.serializers.hdf5 import HDF5Deserializer group = h5file["chainer"] serializer = HDF5Deserializer(group) serializer.load(chain) bをリセット 以下の定義は修正不可とする モデル読み込み (ここを変えられるならnobiasを取るのが正攻法)
Download