SlideShare a Scribd company logo
Tensorflow
Python API Upgrade
( ~0.12 → 1.0~ )
※コード修正作業について、
メモ程度に作りました
作成者:アラサー独身男性
背景
• Tensorflow1.0が正式リリース (2017.2.15)
• Tensorflow 0.XX系から1.XXにおいて高速化?
• Tensorflow1.0では0.XX系より、
PythonAPIの呼び出しが色々変化している
• 本資料ではTensorflow1.0へソースコード変換の
メモを纏めている
移行作業 (コード自動変換)
• Githubからtf_upgrade.pyのソースコードを取得
※Linuxコマンドを打てば簡単に取得できる
[tf_upgrade.py 取得のLinuxコマンド]
wget https://raw.githubusercontent.com/tensorflow/tensorflow/master/tensorflow/tools/compatibility/tf_upgrade.py
[Github]
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/compatibility
移行作業 (コード自動変換)
• tf_upgrade.pyを以下のコマンドで実行
[ソースコード変換のLinuxコマンド]
python3 tf_upgrade.py --infile 入力ファイル --outfile 出力ファイル
[例]
・Ver0.XX系のファイル: tensorflow0_12.py
・Ver1.00以降のファイル:tensorflow1_00.py
python3 tf_upgrade.py --infile tensorflow0_12.py --outfile tensorflow1_00.py
移行作業 (コード自動変換)
• 指定した出力ファイルが生成されており、
report.txtに履歴が残されていれば、
自動変換部分のコード変換は成功している。
• 例(report.txt)
移行作業 (コード手動変換)
• 移行作業の制限事項として、
RNN等のパッケージは手作業で修正する必要があり
[例(RNNセル)]
・0.XX系(修正前)
tf.nn.rnn_cell
・1.0以降(修正後)
tf.contrib.rnn.core_rnn_cell
[例(双方向RNN)]
・0.XX系(修正前)
tf.nn.bidirectional_rnn
・1.0以降(修正後)
tf.contrib.rnn.static_bidirectional_rnn
引用
• 本家(Transitioning to TensorFlow 1.0 )
https://www.tensorflow.org/install/migration
• ブログ記事(腹腹開発:旧バージョンのTensorFlowコードを 1.0 で動作するように変更する )
https://fight-tsk.blogspot.jp/2017/02/tensorflow-10.html
お願い
• スライドに書かれていない有益な情報があれば
情報提供をお願いします。

More Related Content

What's hot

3分でサーバオペレーションコマンドを作る技術
3分でサーバオペレーションコマンドを作る技術3分でサーバオペレーションコマンドを作る技術
3分でサーバオペレーションコマンドを作る技術
Kei IWASAKI
 
mocloud カスタムDockerイメージ ハンズオン
mocloud カスタムDockerイメージ ハンズオンmocloud カスタムDockerイメージ ハンズオン
mocloud カスタムDockerイメージ ハンズオン
Yukihiko SAWANOBORI
 
Wtidev 0430 tmoktia
Wtidev 0430 tmoktiaWtidev 0430 tmoktia
Wtidev 0430 tmoktia
Tomohiko Okita
 
2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT
Naoto Gohko
 
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築
Atsuo Ishimoto
 
オープンCAEとPython
オープンCAEとPythonオープンCAEとPython
オープンCAEとPython
TatsuyaKatayama
 

What's hot (6)

3分でサーバオペレーションコマンドを作る技術
3分でサーバオペレーションコマンドを作る技術3分でサーバオペレーションコマンドを作る技術
3分でサーバオペレーションコマンドを作る技術
 
mocloud カスタムDockerイメージ ハンズオン
mocloud カスタムDockerイメージ ハンズオンmocloud カスタムDockerイメージ ハンズオン
mocloud カスタムDockerイメージ ハンズオン
 
Wtidev 0430 tmoktia
Wtidev 0430 tmoktiaWtidev 0430 tmoktia
Wtidev 0430 tmoktia
 
2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT2016 0626 ubuntu 1604 LTS party LT
2016 0626 ubuntu 1604 LTS party LT
 
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築
 
オープンCAEとPython
オープンCAEとPythonオープンCAEとPython
オープンCAEとPython
 

Similar to Tensorflow pythonapi upgrade(~0.12→1.0~)

Clrh 111015 wf45
Clrh 111015 wf45Clrh 111015 wf45
Clrh 111015 wf45
Tomoyuki Obi
 
ゼロからはじめるTerraformでのDevOps2021
ゼロからはじめるTerraformでのDevOps2021ゼロからはじめるTerraformでのDevOps2021
ゼロからはじめるTerraformでのDevOps2021
Wataru Unno
 
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Sphinxで作る貢献しやすいドキュメント翻訳の仕組みSphinxで作る貢献しやすいドキュメント翻訳の仕組み
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Takayuki Shimizukawa
 
TensorFlow Operation 作ってみた
TensorFlow Operation 作ってみたTensorFlow Operation 作ってみた
TensorFlow Operation 作ってみた
Takuya Sakamoto
 
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugjPhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
Seiya Mizuno
 
Tensorgo
TensorgoTensorgo
Tensorgo
YoshitomoYasuno
 
Visual Studio による開発環境・プログラミングの進化
Visual Studio による開発環境・プログラミングの進化Visual Studio による開発環境・プログラミングの進化
Visual Studio による開発環境・プログラミングの進化
Fujio Kojima
 
8時間耐久 PHP構築の教室
8時間耐久 PHP構築の教室8時間耐久 PHP構築の教室
8時間耐久 PHP構築の教室
Yusuke Ando
 
Tensorflow dynamically loadable XLA plugin ソースコード解析
Tensorflow  dynamically loadable XLA plugin ソースコード解析Tensorflow  dynamically loadable XLA plugin ソースコード解析
Tensorflow dynamically loadable XLA plugin ソースコード解析
Mr. Vengineer
 
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
y-uti
 
20230128.pptx
20230128.pptx20230128.pptx
20230128.pptx
ssuserdad311
 
Assembler
AssemblerAssembler
Assembler
aksechack0001
 
Fn project爆誕
Fn project爆誕Fn project爆誕
Fn project爆誕
Hiroshi Hayakawa
 
20201127 .NET 5
20201127 .NET 520201127 .NET 5
20201127 .NET 5
Takayoshi Tanaka
 
Dart / Flutter コードファイルジェネレート入門
Dart / Flutter コードファイルジェネレート入門Dart / Flutter コードファイルジェネレート入門
Dart / Flutter コードファイルジェネレート入門
cch-robo
 
TensorFlow計算グラフ最適化処理
TensorFlow計算グラフ最適化処理TensorFlow計算グラフ最適化処理
TensorFlow計算グラフ最適化処理
Atsushi Nukariya
 
[DL Hacks]色々と進化しているTensorFlow - 紹介編 -
[DL Hacks]色々と進化しているTensorFlow - 紹介編 -[DL Hacks]色々と進化しているTensorFlow - 紹介編 -
[DL Hacks]色々と進化しているTensorFlow - 紹介編 -
Deep Learning JP
 
最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm
晃 遠山
 
Phoenixでblog作った
Phoenixでblog作ったPhoenixでblog作った
Phoenixでblog作った
Norifumi Kawamoto
 

Similar to Tensorflow pythonapi upgrade(~0.12→1.0~) (20)

Clrh 111015 wf45
Clrh 111015 wf45Clrh 111015 wf45
Clrh 111015 wf45
 
ゼロからはじめるTerraformでのDevOps2021
ゼロからはじめるTerraformでのDevOps2021ゼロからはじめるTerraformでのDevOps2021
ゼロからはじめるTerraformでのDevOps2021
 
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Sphinxで作る貢献しやすいドキュメント翻訳の仕組みSphinxで作る貢献しやすいドキュメント翻訳の仕組み
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
 
TensorFlow Operation 作ってみた
TensorFlow Operation 作ってみたTensorFlow Operation 作ってみた
TensorFlow Operation 作ってみた
 
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugjPhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
 
Tensorgo
TensorgoTensorgo
Tensorgo
 
Visual Studio による開発環境・プログラミングの進化
Visual Studio による開発環境・プログラミングの進化Visual Studio による開発環境・プログラミングの進化
Visual Studio による開発環境・プログラミングの進化
 
8時間耐久 PHP構築の教室
8時間耐久 PHP構築の教室8時間耐久 PHP構築の教室
8時間耐久 PHP構築の教室
 
Tensorflow dynamically loadable XLA plugin ソースコード解析
Tensorflow  dynamically loadable XLA plugin ソースコード解析Tensorflow  dynamically loadable XLA plugin ソースコード解析
Tensorflow dynamically loadable XLA plugin ソースコード解析
 
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
 
20230128.pptx
20230128.pptx20230128.pptx
20230128.pptx
 
Assembler
AssemblerAssembler
Assembler
 
Fn project爆誕
Fn project爆誕Fn project爆誕
Fn project爆誕
 
20201127 .NET 5
20201127 .NET 520201127 .NET 5
20201127 .NET 5
 
Dart / Flutter コードファイルジェネレート入門
Dart / Flutter コードファイルジェネレート入門Dart / Flutter コードファイルジェネレート入門
Dart / Flutter コードファイルジェネレート入門
 
TensorFlow計算グラフ最適化処理
TensorFlow計算グラフ最適化処理TensorFlow計算グラフ最適化処理
TensorFlow計算グラフ最適化処理
 
[DL Hacks]色々と進化しているTensorFlow - 紹介編 -
[DL Hacks]色々と進化しているTensorFlow - 紹介編 -[DL Hacks]色々と進化しているTensorFlow - 紹介編 -
[DL Hacks]色々と進化しているTensorFlow - 紹介編 -
 
最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm
 
Phoenixでblog作った
Phoenixでblog作ったPhoenixでblog作った
Phoenixでblog作った
 

Tensorflow pythonapi upgrade(~0.12→1.0~)