深度学习基础2: tensorflow 2.0 VS 1.x

目录

  • tensorflow 2.0架构
  • Tensorflow2.0—简化的模型开发流程
  • Tensorflow2.0—强大的跨平台能力
  • Tensorflow2.0—强大的研究实验
  • Tensorflow1.x 与 Tensorflow2.0
  • Tensorflow-keras与keras区别
  • Tensorflow-keras与keras如何选择

tensorflow 2.0架构

深度学习基础2: tensorflow 2.0 VS 1.x_第1张图片

Tensorflow2.0—简化的模型开发流程

  1. 使用tf.data加载数据
  2. 使用tf.keras构建模型,也可以使用premade estimator来验证模型;使用tensorflow hub进行迁移学习
  3. 使用eager mode继续宁运行和调试(2.0默认开启,而1.3需手动打开)
  4. 使用分发策略来进行分布式训练
  5. 导出到SavedModel
  6. 使用Tensorflow serve、Tensorflow Lite、Tensorflow.js部署模型

Tensorflow2.0—强大的跨平台能力

  1. Tensorflow服务:直接使用HTTP/REST或GPRC/协议缓冲区
  2. Tensorflow Lite----可部署在Android\iOS和嵌入式系统上
  3. Tensorflow.js----在javascript中部署模型
  4. 其它语言:C, Java, Go, C#, Rust, R,…

Tensorflow2.0—强大的研究实验

  1. Keras功能的API和子类API,允许创建复杂的拓扑结构
  2. 自定义训练逻辑,使用tf.GradientTape和tf.custom_gradient进行更细粒度的控制
  3. 低层API自始至终可以与高层结合,完全的可定制
  4. 高级扩展:Ragged Tensors、Tensor2Tensor等

Tensorflow1.x 与 Tensorflow2.0

深度学习基础2: tensorflow 2.0 VS 1.x_第2张图片

Tensorflow-keras与keras区别

  1. Tf.keras全面支持eager mode
  2. 只是用keras.Sequential和keras.Model时没影响
  3. 自定义Model内部运算逻辑的时候会有影响
  4. Tf低层可以使用keras的model.fit等抽象
  5. 适用于研究人员
  6. Tf.keras支持基于tf.data的模型训练
  7. Tf.keras支持TPU训练
  8. Tf.keras支持tf.distribution中的分布式策略
  9. 其它特性:tf.keras可以与tensorflow中的estimator集成;tf.keras可以保存为SavedModel

Tensorflow-keras与keras如何选择

  1. 如果想用tf.keras的任何一个特性,那么选择tf.keras
  2. 如果后端互换很重要,那么选keras
  3. 如果都不重要,那随便

你可能感兴趣的:(深度学习DL_CV,深度学习DL_NLP)