Upload
taegyun-jeon
View
2.607
Download
2
Embed Size (px)
Citation preview
Taegyun Jeon
TensorFlow Dev Summit Extended Seoul / 2017.02.22
R&D Center, Satrec Initiative
TensorFlow:
TensorBoard & Keras
GDG Meetup in February
Contents
Integrating Keras & TensorFlow: The Keras Workflow, Expanded▫ Speaker: Francois Chollet
Hands-on TensorBoard▫ Speaker: Dandelion Mané
▫ Code & Slide: https://goo.gl/San2uR
All contents are provided from TensorFlow Dev Summit 2017(https://events.withgoogle.com/tensorflow-dev-summit/)
Page 2[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras
Keras
An API spec for building deep learning models across many platforms
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 3
Keras의인기비결?
간편함
간결함
TF의잦은 API 변경
연구자와개발자의의사소통도구
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 4
tf.keras
Keras는결국 TensorFlow의품으로!
TensorFlow layers = Keras layers
Keras Model▫ Sequence model and functional model API
TensorFlow 기능과통합가능
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 5
https://www.tensorflow.org/api_docs/python/tf/contrib/learn/Experiment
Keras 사용자들에게어떤일들이?
TensorFlow와 Keras사이에서고민하지않으셔도됩니다.
TF와 Keras의장단점을파악해서섞어서쓰세요.
Distributed Training, Cloud ML, Hyperparameter setting, TF-Serving
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 6
https://blog.keras.io/keras-as-a-simplified-interface-to-tensorflow-tutorial.html
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 7
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 8
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 9
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 10
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 11
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 12
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 13
Keras Example: Video QA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 14
Keras Example: Visual VQA
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 15
More Examples
Keras Blog▫ https://blog.keras.io/
Keras API (keras.applications)▫ https://keras.io/applications/
Keras Example Directories▫ https://github.com/fchollet/keras/tree/master/examples
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 16
Keras: Summary
TF 사용자: 손쉬운 high-level api 사용가능
Keras 사용자: 모델만 keras로만들고이후운영은 TF로가능
버전변경계획▫ tf.contrib.keras (TF 1.1 / 올해 3월중)
▫ tf.keras (TF 1.2)
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 17
TensorBoard
TensorBoard를이용해서얻는장점▫ Debug: 내부를알기힘든딥러닝모델을눈으로확인
▫ Hyperparameter Tuning
▫ Visualize inference results
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 18
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 19
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 20
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 21
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 22
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 23
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 24
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 25
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 26
엄청복잡해보이네요
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 27
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 28
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 29
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 30
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 31
이제레이어별로깔끔해졌습니다.
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 32
이전과비교해봐도눈에잘들어옵니다
TensorBoard: MNIST Example
tf.summary.scalar
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 33
tf.summary.image
tf.summary.audio tf.summary.histogram
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 34
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 35
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 36
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 37
정확도가엉망이군요!
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 38
Cross-entropy도뭔가이상하죠?
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 39
Convolution layer가변하지않았음을알수있습니다.
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 40
Histogram도역시마찬가지군요
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 41
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 42
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 43
이제제대로학습이되는군요
TensorBoard: MNIST Example
Hyperparameter search
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 44
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 45
다양한 run을기록
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 46
Hyperparameter를 찾을땐epoch을조금만설정해서
초기성능만보고ckpt 관리및추가학습
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 47
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 48
TensorBoard: MNIST Example
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 49
TensorBoard
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 50
TensorBoard: Summary
Debug▫ name_scope 정의와 tensor의 name 붙이기를생활화
▫ Summary 기능을활용
• Scalar, Image, Audio, Histogram
Hyperparameter search▫ 다양한 run을짧게돌려보는것을권장
▫ 파라미터뿐만아니라, 모델형태에도적용가능
Embedding visualization▫ 표현하기힘든내용은가시화!
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 51
Q & A
Any Questions?
[TensorFlow Dev Summit Extended] TensorFlow: TensorBoard & Keras Page 52