TensorFlow Dev Summit 2017 요약
-
Upload
jin-joong-kim -
Category
Software
-
view
1.151 -
download
9
Transcript of TensorFlow Dev Summit 2017 요약
tf.Session()
agenda = tf.summary.merge(dev.summit, 2017)
sess.run(agenda)
KeynoteDistBelief -> TensorFlow
제품 뿐 아니라 연구 레벨에서까지 광범위하게 사용 가능
RNN 등의 복잡한 모델까지 커버 가능하다
CPU, GPU, TPU, Android, iOS, Raspberry Pi 등 다양한 플랫폼 지원
구Ú 클라우드에서도 사용 가능
Python, C++, Java, Go, Haskell, R ...
텐서보드 짱짱맨
Keynote
Keynote
Keynote
Keynote - TensorFlow 1.058배 빨라짐
XLA (Accelerated Linear Algebra), JIT
하이레벨 API 제공
Layers
Keras
Estimator
Canned Estimators
API 안정화
Keynote - TensorFlow 1.0
Keynote - TensorFlow 1.0
TensorBoardScalars
Images
Audio
Graphs
Distributions
Histogram
Embeddings
TensorBoard
Future for TensorBoardTensorFlow Debugger Integration
Plugins
Org-scale TensorBoard
TensorFlow at DeepMindChoosing a Platform
Flexibility
Usability
Scalability
Performance
Production Readiness
TensorFlow at DeepMindData Center Cooling
Gorila (DistBelief -> TensorFlow)
AlphaGo
WaveNet
Text to Speech
Music Generation
Learning to Learn
TensorFlow at DeepMind
TensorFlow at DeepMind
TensorFlow at DeepMind
Mobile and EmbeddedARM
CEVA
Movidius
IBM Power Systems
Intel
Qualcomm
Mobile and EmbeddedAndroid
tensor�ow/examples/android
TF Classify, TF Detect, TF Stylize
iOS
tensor�ow/contrib/ios_examples
Inception image labeling
Raspberry Pi
tensor�ow/contrib/pi_examples/label_image
tensor�ow/contrib/pi_examples/camera
Mobile and EmbeddedInception v3 is 93 MB!
Inception v1 quantized is just 7 MB
Exporting Models
Freeze graph
Graph Transform Tool
Quantize weights
Quantize calculations
Memory mapping
Mobile and Embedded12 MB increase, before tuning
2 MB increase, after tuning for Inception v3
Selective registration -DSELECTIVE_REGISTRATION
Distributed TensorFlow
Distributed TensorFlowwith tf.device("/job:ps/task:0/cpu:0"): W = tf.Variable(...) b = tf.Variable(...) with tf.device("/job:worker/task:0/gpu:0"): output = tf.matmul(input, W) + b loss = f(output)
Distributed TensorFlowcluster = tf.train.ClusterSpec({ "worker": ["192.168.0.1:2222", ...], "ps": ["192.168.1.1:2222", ...]}) server = tf.train.Server( cluster, job_name="worker", task_index=0) with tf.Session(server.target) as sess: ...
TensorFlow EcosystemData Processing (TFRecords)
Apache Beam : Native support
Hadoop MR and Spark
Cluster Manager
Kubernetes, Hadoop, MESOS, Slurm
Distributed Storage
Hadoop HDFS, Google Cloud Storage, AWS EFS
Serving
TensorFlow EcosystemPython -> Training
C
C++
Go
Haskell
Rust
Java
Serving Models
Serving Models
Serving ModelsOnline, low latency
Mutiple models in a single process
Mutiple versions of a model loaded over time
Compute cost varies in real-time to meet productdemand
auto-scale with CloudML, Docker & K8s
Aim for the ef�ciency of mini-batching at trainingtime ...
ML Toolkitsmodel = KMeansClustering(num_clusters=1000) model.fit( input_fn=numpy_input_fn(points, num_epochs=None), steps=1000) clusters = model.clusters() assignments = model.predict_cluster_idx( input_fn=numpy_input_fn(test_points))
ML ToolkitsLinearClassi�er
LinearRegressor
LogisticRegressor
KMeansClustering
WALSModel
SVM
TensorForestEstimator
DNN, RNN, LSTM, Wide & Deep, ...
ML Toolkitstensor�ow/contrib/learn/python/learn
classifier = tf.contrib.learn.DNNClassifier( feature_columns=feature_columns, hidden_units=[10, 20, 10], n_classes=3, model_dir="/tmp/iris_model") classifier.fit(x=training_set.data, y=training_set.target, steps=2000) accuracy_score = classifier.evaluate( x=test_set.data, y=test_set.target)["accuracy"]
ETCXLA: TensorFlow, Compiled!
Skin Cancer Image Classi�cation
Sequence Models and the RNN API
TensorFlow in Medicine
Wide & Deep Learning
Magenta: Music and Art Generation
Fast, Flexible, TensorBoard, Community
Science -> Engineering
sess.close()