SlideShare a Scribd company logo
INFRASTRUCTURE + LIFE + INNOVATION
12018/8/1
ReNom
2016 ~ 2018 振り返り
内容
22018/8/1
2018年 7月は 深層学習フレームワーク ReNom が
リリースされてから ちょうど 2年目
⚫ 2年の振り返り
⚫ ReNomDL のこれまでと今を速度ベンチマークとともに
ReNom
32018/8/1
ReNom
Products
DL TDA IMG TAG DP
Deep Learning
Topological
Data Analysis
Image
Processing
Target Creation
Data
Preprocessing
ReNom
42018/8/1
DL
Deep Learning
ReNom
● 2016年 3月 ~ 2017年 10月
ReNom : ディープラーニング フレームワーク
Relu
入力層
中間層
出力層
ReNom
52018/8/1
ReNom
Products
DL TDA
Deep Learning
Topological
Data Analysis
● 2017年 10月 ~ 2018年 3月
ReNomDL : ディープラーニング フレームワーク
ReNomTDA : トポロジカル データ アナリシス
ReNom
62018/8/1
ReNom
Products
DL TDA IMG TAG DP
Image
Processing
Target
Creation
Data
Preprocess
● 2018年 4月 ~
ReNom 2年の振り返り
72018/8/1
v2 開発開始 現在 v2.6.1
v2 リリース
2018 / 7月2017 / 4月
12月 4月7月
第1回 RNUG !!
RNUG 1周年
ReNom
82018/8/1
v2 開発開始 現在 v2.6.1
v2 リリース
ReNomDLを
バックエンドとした
アプリケーション開発
開始
2018 / 7月2017 / 4月
12月
人工知能EXPOで
ReNom展示
4月7月
第1回 RNUG !!
ReNom
92018/8/1
v2 開発開始 現在 v2.6.1v0 開発開始
v0 リリース
v1 開発開始
v1 リリース v2 リリース
2016 / 3月 2018 / 7月2017 / 4月11月
12月7月 4月7月
ReNom 2周年
ReNom 開発背景
102018/8/1
深層学習 (機械学習プロフェッショナルシリーズ)
著) 岡谷貴之 https://www.amazon.co.jp
● 機械学習 技術力向上のため「深層学習」を全て実装
当時 “プログラマ”、“研究者” のみが機械学習を
実践できるようなツールしか存在しなかった.
● 機械学習の一般化を目指す
ReNom 開発背景 - 機械学習の一般化
112018/8/1
● 汎用的な機械学習モデルでは,
識別精度が下がる
● 深層学習による特徴量の自動獲得
機械学習の特性 現場のニーズ
● 定点カメラで製品をチェックし,
傷があるかどうかを認識したい
… そのような学習データセットは自分
で作るしかない.
汎用的な学習済みモデルを配る.
個人個人が持つ目的に合わせて, 学習データを収集し
モデルを作れるようになるべき.
この二点の
サポートを目指す
この2点の
サポートを目指す
ReNom 名前の由来
122018/8/1
くりこみ群に関する理論は, Deep Learningによって精度の高い
モデルが学習できるのかについて, 新たな知見を与える.
● Why Deep Learning Works II: the Renormalization Group
https://calculatedcontent.com/2015/04/01/why-deep-learning-works-ii-the-renormalization-group/
● Maximum Entropy Learning with Deep Belief Networks
(Payton Lin, Szu-Wei Fu, Syu-Siang Wang, Ying-Hui Lai, Yu Tsao)
http://www.mdpi.com/1099-4300/18/7/251
● 繰り込み(Wikipedia)
https://ja.wikipedia.org/wiki/%E7%B9%B0%E3%82%8A%E8%BE%BC%E3%81%BF
繰り込み(くりこみ): Wikipedia
場の量子論で使われる、計算結果が無限大に発散してしまうのを防ぐ
数学的な技法であり、同時に場の量子論が満たすべき最重要な
原理のひとつでもある。
RBMやAuto Encorderなどの教師無し学習アルゴリズムにおける隠れ変数は,
Variational Renormalization Group (変分くりこみ群) を形成する.
ReNom 名前の由来
132018/8/1
ReNom
RBMやAuto Encorderなどの教師無し学習アルゴリズムにおける隠れ変数は,
Variational Renormalization Group (変分くりこみ群) を形成する.
https://github.com/ReNom-dev-team/ReNom
142018/8/1
ディープラーニングフレームワークとしての
ReNom のこれまでと今
ReNom v0, v1の設計思想
152018/8/1
とにかく簡単に, ニューラルネット(以降NN)を定義して学習できること
• ネットワーク構造, ハイパーパラメータを変更しやすいこと
◆全結合, 畳み込みなどの関数をブロック化し, それを組み合わせる.
◆他にも, SVMのような機械学習アルゴリズムをブロック化し,
NNと複合して使えるようにする.
◆ハイパーパラメータサーチ
ReNom v0 のプログラミングインタフェース
162018/8/1
出力を次のレイヤの入力とする.
最後に入力層と誤差関数層を
Modelに渡して, NNを定義.
よくなかった点
- 新たな層を追加するのが面倒
- 中間層の出力を確認するのが面倒
ReNom v1 のプログラミングインタフェース
172018/8/1
よかった点
- コメントアウトで層の有無を決められる
レイヤのリストで
モデルを定義する.
ReNom v1→v2 より柔軟なフレームワークに
182018/8/1
● Highway Networks
(Rupesh Kumar Srivastava, Klaus Greff, Jürgen Schmidhuber. 2015)
複数の入力, 出力が
必要なレイヤ
Fig. Understanding Bidirectional RNN in PyTorch
https://towardsdatascience.com/understanding-bidirectional-rnn-in-pytorch-5bd25a5dd66
● Bidirectional RNN
データ系列を 順 & 逆順 に
入力する ニューラルネット
ReNom v2 の設計思想
192018/8/1
V1 における NNの定義しやすさを残しつつ, より柔軟なNNを定義可能に
• 自動微分
• 新たなモデル定義方法
追加
◆自動微分ライブラリに進化
◆Numpy (行列計算ライブラリ) と同じインタフェースで提供する.
◆定義したモデルを層として再利用
◆計算グラフ(計算履歴)を安全に構築
ReNom v2 のプログラミングインタフェース
202018/8/1
レイヤのリストで
モデルを定義する.
ReNom v1 と
同様の書き方
ReNom v2 のプログラミングインタフェース
212018/8/1
定義した計算が
ニューラルネットになる
新たに,
Functionalモデルを追加
ReNom v2 – Numpyと同じ行列操作方法
222018/8/1
𝑓 𝑥 = ෍
𝑖=0
2
෍
𝑗=0
2
𝑥𝑖𝑗 𝑖𝑓 𝑥𝑖𝑗 > 0 𝑒𝑙𝑠𝑒 0
変数 𝑥𝑖𝑗 が0以下の場合,
それを定数として扱う様な関数の, 勾配を計算
例: 行列の一部分を定数として扱う関数の勾配を計算
ReNomではNumpyと同じ行列操作方法を提供している
● サイズの違う行列(ベクトル)同士の演算:
Broadcasting
● 条件に基づいて行列の一部分にのみ処理を加える:
Advanced Indexing
ReNom v2 – Numpyと同じ行列操作方法
232018/8/1
● 1. 変数の初期化 ● 2. 関数の定義
● 3. 微分係数の取得
ReNom v2 – 計算グラフの明示的な管理
242018/8/1
𝑎
𝑥
×
𝑏
+ 𝑓(𝑥)ℎ
自動微分アルゴリズムでは, 逆伝播計算のために, 順伝播計算の履歴を保持する
自動微分ライブラリでは,
「どの計算を計算グラフに入れて, どの計算をグラフから除くのか」
をユーザが制御しなければならない.
計算グラフが際限なく大きくなり,
メモリオーバフローの可能性
Predictionの際に
計算グラフを作るのは無駄
ReNom v2 – 計算グラフの明示的な管理
252018/8/1
ReNomでは, withブロック内で行われた計算について計算グラフが作られる.
● 学習は withブロック内で
● 予測(Prediction)は withブロック外で
ReNom v2 - GPUとCPUの切り替えが簡単
262018/8/1
ReNomでは, GPUを使った学習とCPUを使った学習でソースコードが変わらない.
ここにあるコードのみで切り替え可能
272018/8/1
ご静聴ありがとうございました

More Related Content

Similar to ReNom 2016 ~ 2018振り返り

Big data解析ビジネス
Big data解析ビジネスBig data解析ビジネス
Big data解析ビジネス
Mie Mori
 

Similar to ReNom 2016 ~ 2018振り返り (20)

Batch Reinforcement Learning
Batch Reinforcement LearningBatch Reinforcement Learning
Batch Reinforcement Learning
 
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
 
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
 
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
 
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
 
BIM/CIMにおける3D-GIS・IoTの役割と展望
BIM/CIMにおける3D-GIS・IoTの役割と展望BIM/CIMにおける3D-GIS・IoTの役割と展望
BIM/CIMにおける3D-GIS・IoTの役割と展望
 
CMSI計算科学技術特論A(4) Hybrid並列化技法
CMSI計算科学技術特論A(4) Hybrid並列化技法CMSI計算科学技術特論A(4) Hybrid並列化技法
CMSI計算科学技術特論A(4) Hybrid並列化技法
 
【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...
【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...
【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...
 
Ocha 20191204
Ocha 20191204Ocha 20191204
Ocha 20191204
 
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
Database Encryption and Key Management for PostgreSQL - Principles and Consid...Database Encryption and Key Management for PostgreSQL - Principles and Consid...
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
 
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGAAn Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
An Introduction of DNN Compression Technology and Hardware Acceleration on FPGA
 
Vldb2002 report-200210231500
Vldb2002 report-200210231500Vldb2002 report-200210231500
Vldb2002 report-200210231500
 
Big data解析ビジネス
Big data解析ビジネスBig data解析ビジネス
Big data解析ビジネス
 
全力解説!Transformer
全力解説!Transformer全力解説!Transformer
全力解説!Transformer
 
なにわテック20180127
なにわテック20180127なにわテック20180127
なにわテック20180127
 
Bridging between Vision and Language
Bridging between Vision and LanguageBridging between Vision and Language
Bridging between Vision and Language
 
Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017
 
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
 
Jubatus: 分散協調をキーとした大規模リアルタイム機械学習プラットフォーム
Jubatus: 分散協調をキーとした大規模リアルタイム機械学習プラットフォームJubatus: 分散協調をキーとした大規模リアルタイム機械学習プラットフォーム
Jubatus: 分散協調をキーとした大規模リアルタイム機械学習プラットフォーム
 
1028 TECH & BRIDGE MEETING
1028 TECH & BRIDGE MEETING1028 TECH & BRIDGE MEETING
1028 TECH & BRIDGE MEETING
 

More from ReNom User Group

量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
ReNom User Group
 
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
ReNom User Group
 
データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介
ReNom User Group
 

More from ReNom User Group (20)

AI画像認識モデル開発をやってみた!#1
AI画像認識モデル開発をやってみた!#1AI画像認識モデル開発をやってみた!#1
AI画像認識モデル開発をやってみた!#1
 
ReNomを利活用した溶接モニタリングの取組について
ReNomを利活用した溶接モニタリングの取組についてReNomを利活用した溶接モニタリングの取組について
ReNomを利活用した溶接モニタリングの取組について
 
ReNom IMG version3.0最新情報の紹介
ReNom IMG version3.0最新情報の紹介ReNom IMG version3.0最新情報の紹介
ReNom IMG version3.0最新情報の紹介
 
Renomロードマップの紹介
Renomロードマップの紹介Renomロードマップの紹介
Renomロードマップの紹介
 
EDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
EDGEMATRIX社のご紹介と、Edge AI Computing PlatformについてEDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
EDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
 
AIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにAIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるために
 
ReNomDL 高速化の紹介
ReNomDL 高速化の紹介ReNomDL 高速化の紹介
ReNomDL 高速化の紹介
 
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
 
ReNom IMGの活用事例 + ReNom TAGの告知
ReNom IMGの活用事例 + ReNom TAGの告知ReNom IMGの活用事例 + ReNom TAGの告知
ReNom IMGの活用事例 + ReNom TAGの告知
 
ReNom RG新機能の紹介
ReNom RG新機能の紹介ReNom RG新機能の紹介
ReNom RG新機能の紹介
 
ReNomDL V3の紹介
ReNomDL V3の紹介ReNomDL V3の紹介
ReNomDL V3の紹介
 
エンジニアではなくてもAIモデル構築が可能な時代に
エンジニアではなくてもAIモデル構築が可能な時代にエンジニアではなくてもAIモデル構築が可能な時代に
エンジニアではなくてもAIモデル構築が可能な時代に
 
バージョンアップした「ReNomIMG」の紹介
バージョンアップした「ReNomIMG」の紹介バージョンアップした「ReNomIMG」の紹介
バージョンアップした「ReNomIMG」の紹介
 
数値回帰モデル作成アプリケーション 「ReNomRG」の紹介
数値回帰モデル作成アプリケーション 「ReNomRG」の紹介数値回帰モデル作成アプリケーション 「ReNomRG」の紹介
数値回帰モデル作成アプリケーション 「ReNomRG」の紹介
 
ReNomIMG を使った料理名判別による栄養管理アプリ
ReNomIMG を使った料理名判別による栄養管理アプリReNomIMG を使った料理名判別による栄養管理アプリ
ReNomIMG を使った料理名判別による栄養管理アプリ
 
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
 
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
 
ReNom DP&TDA
ReNom DP&TDAReNom DP&TDA
ReNom DP&TDA
 
ユニアデックスのAIに向けた取り組みご紹介
ユニアデックスのAIに向けた取り組みご紹介ユニアデックスのAIに向けた取り組みご紹介
ユニアデックスのAIに向けた取り組みご紹介
 
データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介
 

ReNom 2016 ~ 2018振り返り