SlideShare a Scribd company logo
New tf.keras
Masao Taketani (竹谷 昌夫)
自己紹介 (Self-Introduction)
名前(name):竹谷 昌夫 (Masao Taketani)
学歴(education):アメリカの大学の理工学部統計学科を卒業 (BS in Statistics)
職業(occupation):ディープラーニングエンジニア (Deep Learning Engineer)
業務では主に画像系を担当するが、業務外では自然言語処理やレコメンドも経験あり
今までの tf.keras
モデル構築がシンプルでPythonicな書き方ができる。ただ、小さなモデル構築用
に作られており、大規模なモデル構築用ではなかった。
tf.estimator
そこで、スケーラビリティを意識したAPIとしてtf.estimatorがあった。
tf.estimatorを使用すれば分散学習も容易に行える。tf.estimatorならWide &
Deep Learning等のモデルもbuilt-inとして備わっており、学習や、本番環境用に
デプロイすることが容易に可能。
新しい tf.keras
TensorFlow 2.0からは、モデルの構築に関しては今までのtf.kerasと同じ書き方
で書けるように標準化し、そこにtf.estimatorも持ってくることでtf.kerasからプ
ロトタイプ作成、分散学習、そして本番環境へのデプロイまでが容易にできるよ
うになった。
古いtf.kerasでのモデルの書き方
新しいtf.kerasでのモデルの書き方
新しいtf.kerasのその他の特徴
● 今までのtf.kerasはグラフ構造を基にし、sessionを走らせることでデータを
投入していたが、新しいtf.kerasではEager modeでデータを投入させること
ができる(Define by Run)。
● データセットのパイプラインはnumpy配列の様に扱うことができ、デバッグ
も楽になる。かつ同時にデータセットも高いパフォーマンスのためにオーバ
ヘッドができるだけかからないように最適化される。
Eagerモード
● Eagerモードでもグラフの利点をそのまま残している。
● Eagerはデバッグやプロトタイプ作成を容易にさせるが、一方でTensorFlow
のランタイムがパフォーマンスやスケーリングの最適化の役割を賄う。
● 「run_eagarly」というフラグを使用することによって、明示的にeagerモー
ドでモデルをステップバイステップに走らせることができる。
多くのAPIをわかりやすく統合
● optimizers、metrics、losses、layersはtf.kerasの下にそれぞれ一つのセッ
トに統合され、eagerモードの使用、単独での学習か分散での学習かによら
ず使用できる。
● built-inにないものを利用したい際も、サブクラスを用いてカスタマイズする
ことができる。
● layersにおいてはkerasのAPI仕様書に書いてあるものはすべて使用可能。
RNNレイヤーの変更
今までのTensorFlowではいくつかのLSTMとGRUのバージョンがあり、cuDNNを
使用する際は実行する前に記載する必要があったが、新しいバージョンでは
LSTMもGRUも一つのバージョンしかなく、CPUを使用するかGPUを使用するか
は利用状況により、ランタイム時に自動で行ってくれる。
tf.kerasからtf.feature_columnが使用可能
tf.feature_columnは生データをestimatorが必要なフォーマットに変換する役目
を担っていたが、TensorFlow 2.0ではtf.kerasで作られたモデルにも
tf.feature_columnが使用できるようになった。
tf.kerasからTensorBoardの使用
● tf.kerasでTensorBoardを使用する際は一行で簡単に書くことができる。
● TensorBoardでaccuracy、loss、モデルの形状等が見れる。
● モデルのパフォーマンスやデバイスの配置確認、学習時のボトルネックを容
易に見つけることができるようなフルプロファイリング機能を追加。
手軽にできる分散学習
● tf.distribute.Strategy APIを使用することで、Kerasの利便性を保ちながら分
散学習のためのスケールアップが容易にできる。
● 下記の例では、変数は複数のGPUにコピーされ、学習時にallreduceを用いて
同期される。
モデルのセーブ/ロード
● 本番環境、スマホ、またはPython以外の言語で利用するために、モデルのセ
ーブやロードも簡単に行える。
● この機能はまだ実験段階(APIの詳細を調整中)だが、TF Serving、TF Lite等に
簡単にエクスポートしたり、再学習のためにリロードできるようになってい
る。
マルチノードでの同期(開発中)
まだ開発中だが、複数のマシーンで同期させて学習を行うための機能も追加予定
であり、現在試すことも可能。
TPUを用いた分散学習(開発中)
● 次のTensorFlowのリリースまで待たなければならないが、TPUの分散学習も
keras上からできるように開発中である。
● リリースされれば、TPUが利用できるGCPやColab上で使用できる。
2.0のファイナルバージョンに向けて
2.0の完成に向けて以下のスケーラビリティをtf.kerasに付け加えようとしている
。
・tf.kerasからのParameterServerStrategyの利用
・tf.kerasからのestimatorのモデル(Wide & Deepモデル等)利用
・巨大なモデルを扱うためのvariable partitioning
tf.thanks!

More Related Content

What's hot

Arに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーションArに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーション
dc1394
 
SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化
dc1394
 
水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法
dc1394
 
20170806 Discriminative Optimization
20170806 Discriminative Optimization20170806 Discriminative Optimization
20170806 Discriminative Optimization
Takuya Minagawa
 
20160417dlibによる顔器官検出
20160417dlibによる顔器官検出20160417dlibによる顔器官検出
20160417dlibによる顔器官検出
Takuya Minagawa
 
第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料
第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料
第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料
Takuya Minagawa
 
A Machine Learning Framework for Programming by Example
A Machine Learning Framework for Programming by ExampleA Machine Learning Framework for Programming by Example
A Machine Learning Framework for Programming by ExampleKoji Matsuda
 
Point net
Point netPoint net
Point net
Fujimoto Keisuke
 

What's hot (8)

Arに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーションArに対する古典分子動力学シミュレーション
Arに対する古典分子動力学シミュレーション
 
SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化SchracVisualizeによる波動関数の可視化
SchracVisualizeによる波動関数の可視化
 
水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法水素原子に対するSchrödinger方程式の数値解法
水素原子に対するSchrödinger方程式の数値解法
 
20170806 Discriminative Optimization
20170806 Discriminative Optimization20170806 Discriminative Optimization
20170806 Discriminative Optimization
 
20160417dlibによる顔器官検出
20160417dlibによる顔器官検出20160417dlibによる顔器官検出
20160417dlibによる顔器官検出
 
第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料
第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料
第34回CV勉強会「コンピュテーショナルフォトグラフィ」発表資料
 
A Machine Learning Framework for Programming by Example
A Machine Learning Framework for Programming by ExampleA Machine Learning Framework for Programming by Example
A Machine Learning Framework for Programming by Example
 
Point net
Point netPoint net
Point net
 

Similar to New tf.keras

Rakuten20181027
Rakuten20181027Rakuten20181027
Rakuten20181027
Natsutani Minoru
 
20140131 R-CNN
20140131 R-CNN20140131 R-CNN
20140131 R-CNN
Takuya Minagawa
 
[Jjug]java small object programming
[Jjug]java small object programming[Jjug]java small object programming
[Jjug]java small object programmingYuichi Hasegawa
 
文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-
文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-
文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-
Takahiro Kubo
 
run Keras model on opencv
run Keras model on opencvrun Keras model on opencv
run Keras model on opencv
Takuya Minagawa
 
Pn learning takmin
Pn learning takminPn learning takmin
Pn learning takmin
Takuya Minagawa
 
LiDAR点群と画像とのマッピング
LiDAR点群と画像とのマッピングLiDAR点群と画像とのマッピング
LiDAR点群と画像とのマッピング
Takuya Minagawa
 
20230105_TITECH_lecture_ishizaki_public.pdf
20230105_TITECH_lecture_ishizaki_public.pdf20230105_TITECH_lecture_ishizaki_public.pdf
20230105_TITECH_lecture_ishizaki_public.pdf
Kazuaki Ishizaki
 
ORB-SLAMを動かしてみた
ORB-SLAMを動かしてみたORB-SLAMを動かしてみた
ORB-SLAMを動かしてみた
Takuya Minagawa
 
20180424 orb slam
20180424 orb slam20180424 orb slam
20180424 orb slam
Takuya Minagawa
 
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
Daiyu Hatakeyama
 
BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈
BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈	BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈
BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈
順也 山口
 
メディアコンテンツを支えるデータストアサービスをAWSで
メディアコンテンツを支えるデータストアサービスをAWSでメディアコンテンツを支えるデータストアサービスをAWSで
メディアコンテンツを支えるデータストアサービスをAWSで
Yasuhiro Murata
 
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
株式会社メタップスホールディングス
 
Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門
Tatsuya Tojima
 
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and ArchitectureMachine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Takuya Minagawa
 
「最近傍検索とその応用」#yjdsw2
「最近傍検索とその応用」#yjdsw2「最近傍検索とその応用」#yjdsw2
「最近傍検索とその応用」#yjdsw2
Yahoo!デベロッパーネットワーク
 
Interop2017
Interop2017Interop2017
Interop2017
tak9029
 
日本語における自然言語解析とその応用 〜COTOHA VA & API〜
日本語における自然言語解析とその応用 〜COTOHA VA & API〜日本語における自然言語解析とその応用 〜COTOHA VA & API〜
日本語における自然言語解析とその応用 〜COTOHA VA & API〜
ネクストスケープ
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
Jiro Nishitoba
 

Similar to New tf.keras (20)

Rakuten20181027
Rakuten20181027Rakuten20181027
Rakuten20181027
 
20140131 R-CNN
20140131 R-CNN20140131 R-CNN
20140131 R-CNN
 
[Jjug]java small object programming
[Jjug]java small object programming[Jjug]java small object programming
[Jjug]java small object programming
 
文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-
文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-
文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-
 
run Keras model on opencv
run Keras model on opencvrun Keras model on opencv
run Keras model on opencv
 
Pn learning takmin
Pn learning takminPn learning takmin
Pn learning takmin
 
LiDAR点群と画像とのマッピング
LiDAR点群と画像とのマッピングLiDAR点群と画像とのマッピング
LiDAR点群と画像とのマッピング
 
20230105_TITECH_lecture_ishizaki_public.pdf
20230105_TITECH_lecture_ishizaki_public.pdf20230105_TITECH_lecture_ishizaki_public.pdf
20230105_TITECH_lecture_ishizaki_public.pdf
 
ORB-SLAMを動かしてみた
ORB-SLAMを動かしてみたORB-SLAMを動かしてみた
ORB-SLAMを動かしてみた
 
20180424 orb slam
20180424 orb slam20180424 orb slam
20180424 orb slam
 
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
 
BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈
BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈	BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈
BERT の解剖学: interpret-text による自然言語処理 (NLP) モデル解釈
 
メディアコンテンツを支えるデータストアサービスをAWSで
メディアコンテンツを支えるデータストアサービスをAWSでメディアコンテンツを支えるデータストアサービスをAWSで
メディアコンテンツを支えるデータストアサービスをAWSで
 
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
 
Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門
 
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and ArchitectureMachine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
 
「最近傍検索とその応用」#yjdsw2
「最近傍検索とその応用」#yjdsw2「最近傍検索とその応用」#yjdsw2
「最近傍検索とその応用」#yjdsw2
 
Interop2017
Interop2017Interop2017
Interop2017
 
日本語における自然言語解析とその応用 〜COTOHA VA & API〜
日本語における自然言語解析とその応用 〜COTOHA VA & API〜日本語における自然言語解析とその応用 〜COTOHA VA & API〜
日本語における自然言語解析とその応用 〜COTOHA VA & API〜
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
 

Recently uploaded

LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
t m
 
論文紹介: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
 
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
 
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
 
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさJSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
0207sukipio
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
Takayuki Nakayama
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
Matsushita Laboratory
 

Recently uploaded (8)

LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
 
論文紹介: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
 
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
 
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.
 
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさJSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
JSAI_類似画像マッチングによる器への印象付与手法の妥当性検証_ver.3_高橋りさ
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
 

New tf.keras