[TOC]

概述

文章参考:http://c.biancheng.net/view/1881.html

我们先看一个网站:http://www.image-net.org/

文章参考:https://www.cnblogs.com/nickchen121/p/10840284.html

文章参考:https://blog.csdn.net/markmin214/article/details/90523706

文章参考:https://zhuanlan.zhihu.com/p/59507137

Tensorflow介绍

Tensorflow是Google研发的第二代人工智能系统。是一个进行图像识别和分类的开源软件库。

Tensorflow采取数据流图,用于数值计算的开源库。

功能强大。支持多重平台-GPU、CPU、移动设备

最初用于深度学习,变得愈来越强大,变得越来越通用。

Tensorflow是什么

Tensorflow是数据流图,其中包括节点和线。节点用于处理数据、线用于处理节点之间的输入输出关系。线上用于传输张量。节点可以被分配到各种设备进行进行执行。

节点- 处理数据

线- 节点之间的输入输出关系

线上运输的是张量(Tensor) Tensor其实是所有的N维数据

节点被分配到各种计算设备上执行

Tensorflow特性

1、高度的灵活性

2、真正的可移植性

3、产品和科研相结合

4、自动求微分

5、多语言支持

6、性能最优化

使用TensorFlow的步骤:

  • 模型训练
  • TensorBoard
  • 模型的保存与部署
  • 分布式训练
  • Tfds/tfhub
  • tensor2tensor

数据集的学习

Tensorflow的特性

版本变动

Tensorflow2.0新特性

新特性:动态图机制(Eager Execution)

Tensorflow1.x–延迟执行机制(deferred execution)或者也叫静态图机制。 主要分为两个阶段:构建阶段、执行阶段

Tensorflow1.0的静态图只需要创建一次,就可以重复使用、而且静态图在运行之前,可以进行优化。效率会更高。

所以Tensorflow2.0保留了静态图机制,我们可以在程序的调试阶段使用动态图,快速建立模型,调试及程序;然后在程序的部署阶段,采用静态图机制,从而提供模型的性能和部署能力。

新特性:清理整合API

新特性:全新架构设计

Tensorflow2.0的开发流程

1、使用tf.data加载数据。利用tf.feature tf.columns 进行描述特征。

2、使用tf.keras构建模型,也可以使用premade esmtimator来验证模型

如果不想从头构建模型,也可以使用tensorflow hub进行迁移学习。来训练keras和premade esmtimator的模型。

3、使用eager mode进行运行和调试。

4、Distribution Strategy来进行使用分发策略来进行分布式的训练

5、导出到SavedModel(导出模型)

6、使用Tensorflow Serving支持在本机和云端部署模型。 Tesorflow Lite针对移动设备进行模型、Tensorflow.js部署在浏览器和node server端。Other Language Binding。

新特性:多环境支持、支持分布式

框架对比