Out of curiosity, ask the other people in the conference room who has already developped neural networks: you will see a lot of hands up. Then ask them how many of those models run in production: epic fail.
Come and see a solution to train and deploy TensorFlow models in the cloud using Google CloudML.
Sylvain Lequeux - Xebia
https://dataxday.fr/
Video available: https://www.youtube.com/watch?v=oDpBRdjwNik
17. 17
Built-in models
There are pre-trained models
▼ Saves time for training
Param count approximation
▼ InceptionV3 : 23M
▼ VGG16 : 138M
Included into Tensorflow & Keras
Adapted architecture
▼ Conflutional
▼ MaxPooling
▼ Reccurrent
▼ ...
@DataXDay
19. Export model
Or How to Reuse
Weight stored in-memory
▼ Need to retrain each time you start
▼ Non-deterministic behaviour
Use Protobuf format to store model
▼ Google’s data exchange format
▼ Stores weights and architecture
Model Directory
saved_model.pb
variables directory
19
@DataXDay
28. Transfer learning [...] is a research
problem in machine learning that
focuses on storing knowledge gained
while solving one problem and applying
it to a different but related problem.
28
@DataXDay
29. Transfer learning
Retraining without retraining
First layers learn basic features
▼ Lines
▼ Colors
▼ ...
End layers learn complex features
▼ Objects
▼ Complex shapes
▼ …
Transfer learning is 2-steps :
▼ Freeze first layers
▼ Train new end layers
Layer 1
Layer 2
Layer N Layer N’
29
@DataXDay
30. Online training
Infinite power
▼ Define a setup.py file
▼ Define a config.yml file
▽ This could be done directly in step 3 by
passing args
▽ Defines CPU/GPU/TPU usage
▽ Defines runtime version
▽ ...
▼ Run it
▽ Using gcloud command line
▽ Use -- to separate gcloud args from your
job’s args
30
@DataXDay