Slide 1

Slide 1 text

TensorFlow 2.0 超⼊⾨ 板垣 正敏 @Python機械学習勉強会in新潟・TFUG Niigata 合同勉強会 2019/11/2

Slide 2

Slide 2 text

ディープラーニングの仕組み

Slide 3

Slide 3 text

Perceptron " # " # = (" " + # # + ) , ︓重み(Weights) ︓バイアス ( )︓活性化関数

Slide 4

Slide 4 text

Forward/Back Propagation Input Prediction Grand Truth Loss Function Loss W W W W Optimizer

Slide 5

Slide 5 text

TensorFlow と Keras その歴史

Slide 6

Slide 6 text

History of Deep Learning Frameworks 2019 2018 2017 2016 2015 2002 2007 Torch Theano Keras Chainer TensorFlow Caffe 2014 PyTorch Caffe2

Slide 7

Slide 7 text

Keras と TensorFlow の関係 Keras Theano Tensor Flow CNTK

Slide 8

Slide 8 text

TensorFlow 1.0 のプログラミング

Slide 9

Slide 9 text

Define and Run https://cv-tricks.com/artificial-intelligence/deep-learning/deep-learning-frameworks/tensorflow-tutorial/ import tensorflow as tf import numpy as np # Create Sample Data trainX = np.linspace(-1, 1, 101) trainY = 3 * trainX + np.random.randn(*trainX.shape) * 0.33 # Place Holder X = tf.placeholder("float") Y = tf.placeholder("float") # Build a model w = tf.Variable(0.0, name="weights") y_model = tf.multiply(X, w) cost = (tf.pow(Y-y_model, 2)) train_op = tf.train.GradientDescentOptimizer(0.01).minimize(cost) # Train a model init= tf.global_variables_initializer() with tf.Session() as sess: sess.run(init) for i in range(100): for (x, y) in zip(trainX, trainY): sess.run(train_op, feed_dict={X: x, Y: y}) print(sess.run(w))

Slide 10

Slide 10 text

TensorFlow 2.0 の特徴

Slide 11

Slide 11 text

5 Important Changes Coming with TensorFlow 2.0 (1) Eager Execution by Default (2) Keras as the high-level API (3) API Cleanup (4) TF datasets (5) You can still run TensorFlow 1.x code with 2.0 release https://levelup.gitconnected.com/5-important-changes-coming-with-tensorflow-2-0-e6bb172c5fdf

Slide 12

Slide 12 text

TensorFlow 2.0 ハンズオン

Slide 13

Slide 13 text

Colab で TensorFlow 2.0をつかう %tensorflow_version 2.x というマジックコマンドを使⽤ ただし、まもなく逆に 1.x が 必要に

Slide 14

Slide 14 text

初歩の初歩 MNIST with DNN š ディープラーニングの “Hello World!” š TensorFlowでのモデル構築標準APIとなっているKerasを使⽤ š 元のページ š https://www.tensorflow.org/tutorials/quickstart/beginner š Google Colaboratory で開くには š https://colab.research.google.com/github/tensorflow/docs/blob/master/site/ja /tutorials/quickstart/beginner.ipynb

Slide 15

Slide 15 text

いきなりエキスパート š MINSTをTensorFlow 2.0でエキスパート⾵にやるとどうなるか︖ š td.data を使って訓練⽤データをハンドリング š モデルはtf.keras.Modelをサブクラス化 š 訓練ループは⾃分で書く š 元のページ š https://www.tensorflow.org/tutorials/quickstart/advanced š Google Colaboratoryで開くには š https://colab.research.google.com/github/tensorflow/docs/blob/master/site/ja /tutorials/quickstart/advanced.ipynb

Slide 16

Slide 16 text

もう少し詳しく・・・ š カスタマイズの基礎︓テンソルと演算 š 元のページ š https://www.tensorflow.org/tutorials/customization/basics š Google Colaboratoryで開く š https://colab.research.google.com/github/tensorflow/docs/blob/master/site/ja /tutorials/customization/basics.ipynb

Slide 17

Slide 17 text

もっと知りたい⽅は š Deep Learning初⼼者の⽅は š Kerasを使ったチュートリアルを š https://www.tensorflow.org/tutorials/keras/ š TensorFlow 2.0についてもっと知りたい⽅は š TensorFlow Guideの中の2.0についての解説(英語) š https://www.tensorflow.org/guide/effective_tf2 š TensorFlow Tutorials/Customizationの他のノートブックを š https://www.tensorflow.org/tutorials/customization/

Slide 18

Slide 18 text

おわりに

Slide 19

Slide 19 text

いろいろと募集中です š Python機械学習勉強会in新潟 ・TensorFlow Users Group Niigataで š 発表してくださる⽅ š 運営を⼿伝ってくださる⽅ š TensorFlow Users Group のドキュメント翻訳プロジェクトで š ノートブックなどの翻訳をしてくださる⽅ š 翻訳のレビューをしてくださる⽅