5 Python深度学习实践

2020-03-01 217浏览

  • 1.深度学习实践 from Tensorflow to AI-Hub 王顺 – Google Cloud
  • 2.目录 CONTENTS 从零开始 初步修改 业务升级 实践指南
  • 3.1 从hello world开始 以深度学习的第一个案例MNIST为例 学习Tensorflow框架的使用及代码编写风格
  • 4.理解TF
  • 5.Mac CPU运行结果
  • 6.GPU运行结果
  • 7.TPU运行结果
  • 8.TPU的创建和使用
  • 9.TPU训练MNIST的改动
  • 10.TPU训练MNIST的改动 resolver = tf.distribute.cluster_resolver.TPUClusterResolver() tf.tpu.experimental.initialize_tpu_system(resolver) tpu_strategy = tf.distribute.experimental.TPUStrategy(resolver)https://www.tensorflow.org/guide/distribute_strategy
  • 11.2 初步修改 针对第一个python代码执行、思考和改进 如何能做的更好?
  • 12.TPU Pod
  • 13.BERT 训练时间短https://github.com/google-research/bert
  • 14.
  • 15.Data
  • 16.数据不均 • Why are my tip predictions bad in the morning hours? Chicago Taxi Cab Dataset 16
  • 17.Tensorflow/Keras中的网络
  • 18.Custom training with TPUs •https://www.tensorflow.org/tutorials/distribute/tpu_custom_training
  • 19.3 业务升级 以上已经针对MNIST做了一些深入学习 接下来思考如何满足实际业务上的需要
  • 20.LEGO积木
  • 21.Component:ExampleGen Inputs and Outputs CSV TF Record Raw Data Configuration examples = csv_input(os.path.join(data_root, 'simple')) example_gen = CsvExampleGen(input_base=examples) Example Gen Split TF Record Data Training Eval 22
  • 22.Component:StatisticsGen Inputs and Outputs ExampleGen Configuration statistics_gen = StatisticsGen(input_data=example_gen.outputs.examples) Data Visualization StatisticsGen Statistics 23
  • 23.Component:SchemaGen Inputs and Outputs StatisticsGen Configuration infer_schema = SchemaGen(stats=statistics_gen.outputs.output) Statistics Visualization SchemaGen Schema 24
  • 24.Component:ExampleValidator Inputs and Outputs StatisticsGen Configuration SchemaGen Statistics Schema validate_stats = ExampleValidator( stats=statistics_gen.outputs.output, schema=infer_schema.outputs.output) Visualization Example Validator Anomalies Report 25
  • 25.Component:Transform Inputs and Outputs ExampleGen Data Configuration SchemaGen Code Schema Code Transform Transform Graph Transformed Data Trainer transform = Transform( input_data=example_gen.outputs.examples, schema=infer_schema.outputs.output, module_file=taxi_module_file) for key in _DENSE_FLOAT_FEATURE_KEYS:outputs[_transformed_name(key)] = transform.scale_to_z_score( _fill_in_missing(inputs[key])) # ... outputs[_transformed_name(_LABEL_KEY)] = tf.where( tf.is_nan(taxi_fare), tf.cast(tf.zeros_like(taxi_fare), tf.int64), # Test if the tip was > 20% of the fare. tf.cast( tf.greater(tips, tf.multiply(taxi_fare, tf.constant(0.2))), tf.int64)) # ... 26
  • 26.Component:Trainer Inputs and Outputs Transform Data SchemaGen Configuration Code Schema Transform Graph Trainer trainer = Trainer( module_file=taxi_module_file, transformed_examples=transform.outputs.transformed_examples, schema=infer_schema.outputs.output, transform_output=transform.outputs.transform_output, train_steps=10000, eval_steps=5000, warm_starting=True) Model(s) Evaluator Model Validator PusherCode:Just TensorFlow :) 27
  • 27.Component:Evaluator Inputs and Outputs ExampleGen Data Configuration Trainer model_analyzer = Evaluator( examples=examples_gen.outputs.output, eval_spec=taxi_eval_spec, model_exports=trainer.outputs.output) Model Evaluator Visualization Evaluation Metrics 28
  • 28.Component:ModelValidator Inputs and Outputs ExampleGen Data Configuration Trainer model_validator = ModelValidator( examples=examples_gen.outputs.output, model=trainer.outputs.output, eval_spec=taxi_mv_spec) Model (x2) Model Validator ● Validation Outcome Configuration options ○ Validate using current eval data ○ “Next-day eval”, validate using unseen data 29
  • 29.Component:Pusher Inputs and Outputs Model Validator Validation Outcome Configuration pusher = Pusher( model_export=trainer.outputs.output, model_blessing=model_validator.outputs.blessing, serving_model_dir=serving_model_dir) Pusher Pusher Pusher Deployment Options ● Block push on validation outcome ● Push destinations supported today ○ Filesystem ○ TF Serving model server 30
  • 30.4 实践指南 实践经验小结
  • 31.1. Data 单击此处添加标题
  • 32.2. Tensorboard
  • 33.3. Fine tune
  • 34.4. checkpoint
  • 35.5. Pipeline TFX Config Airflow Runtime Kubeflow Runtime Example Validator StatisticsGen TensorFlow Serving SchemaGen Evaluator TensorFlow Hub Training + Eval Data ExampleGen Transform Trainer Model Validator Pusher TensorFlow Lite TensorFlow JS Metadata Store
  • 36.6. 协作
  • 37.Takeaways • 在不同设备上执行训练 • 基于AI产品的全流程 • 深度学习实践: • • • • 质量 效率 专注 稳定 • 参与和行动!!!
  • 38.THANK YOU 希望对大家有所帮助和启发