当前课程知识点:计算思维与人工智能基础 >  第三部分:python基础 >  第九章:TensorFlow基础 >  9.3TensorFlow的数据应用

返回《计算思维与人工智能基础》慕课在线视频课程列表

9.3TensorFlow的数据应用在线视频

下一节:9.4 TensorFlow的设备应用

返回《计算思维与人工智能基础》慕课在线视频列表

9.3TensorFlow的数据应用课程教案、知识点、字幕

之后

AlexNet模型

VGG模型

GoogleLeNet

ResNet模型相继被提出

那么在图像

音频等领域呢

都取得了很好的什么效果

那么从时间点

从2012年AlexNet提出

然后14年是VGG

15年是ResNet

那么16年是AlphaGo

2018年是BERT

到2019年的Tensorflow的发布

是这样的一个过程

那么深度学习的特点

主要就是一个数据量大

像我们最早使用的MNIST

是有70000张图片

那么后面的ImageNet数据集

就是有14000000万张图片

网络的规模呢

也就是网络的层数也越来越多

从8层到我们的121层

随着这个网络层数的增加呢

那么网络的计算量

按指数的积来增长的

我们常用的深度学习框架

我们给大家介绍一下

那一个就是我们的

TrensorFlow

另外呢

有那个Pytorch

Pytorch是

Pytorch是

facebook创建的

基于lua编写的torch库的

python实现的深度学习

另外一个就是

PaddlePaddle

是我们国内百度自主研发的一个

开源的深度学习框架

那么这个都是我们常用的这三种

TrensorFlow

TrensorFlow

Pytorch

和PaddlePaddle

他的使用的用户数以及他的关注度呢?

那也是有一些差异的

那么TrensorFlow

和我们的PyTorch

Paddle

他都是有一个数量级的一个差别

最早的一些深度学习框架

我们给大家介绍

首先的最早的深度框架呢

Theano

他是一个最早的深度学习框架

它是由这个

Yoshua Bengio

和恩蒙特利大学的研究小组

于2007年创建的

但是他开发的这个效率比较低

模型编译时间比较长

目前已经停止维护了

另外一个就是

普遍使用的

Scikit-learm

Scikit-learm

他是一部完整的

面向机器学习的一个框架

里面有我们常用的机器算法

模型都在里面

但是呢他不是针对神经网络而设计

所以它也不支持GPU的一个加速啊

另外一个就是Caffe

Caffe是华人贾扬清和

伯克利人工智能实验室研发的

主要是面向卷积神经网络。

它是第一个面向深度学习的框架

那么Keras的出现呢

降低了深度学习的门槛

那他们在网络的构建上的更灵活

那么效率会更高一些

下面我们看一下

TrensorFlow

2.0的改进

也就是2.0和1.0

还有什么样的一个主要的区别呢

首先我们看一下

TrensorFlow

1.0的基本的概念

图就是表示我们计算任务的啊

也就是我们要做的一些操作

那么用有向图来去描述出来

我们绘画就是一个

图必须要放在绘画里面

才能进行什么启动Session

才能进行什么启动Session

Tensor就是表示的数据

我们数据的不同的

它翻译过来是个张量

可以是一维的二维的更多维

变量其实我们比较熟悉的

那么就是记录一些数据和状态

那就是我们计算的一个容器

另外的feed和这个fetch

就是为任意的操作

复制或者从中获取数据

那么在1.0里面有这样的概念

我们这个张量

那我们在

1.0 2.0概念是一样的

1.0 2.0概念是一样的

那么它就是一阶张量

可以理解为成一个向量

那么一个数据

他就是一个值组成一个标量

也是

那么张量可以是标量可以是向量

比如二维那他就变成矩阵

三维就是变成一个立体

那么那四维的话就可以有这些什么啊

立方体组成了一个向量

那么五维就是立方体组成一个平面

那么六维值立方体

再组成另一个立方体依此类推

大概这样去理解张量

那么张量就可以在不同维度上的

一个数据的一个描述

那么在这里面的话是

另外一个我们可以看到的图

TrensorFlow是一个有向图

那么任何的计算任务的

抽象的一个描述

那我们也把它叫做数据流图

TrensorFlow1中

首先定义好数据流图

然后再创建会话

就是刚才我们说的

Session来执行者这个图

TrensorFlow2呢

他是采用了动态图的机制

所以不用预先定义好这个静态图

比如说我们有一个什么呀计算任务

是这样子的

我们可以看到是输入输入

然后那两个数值进行什么样积和

然后再把这个结果进行加

那么这样的一个表达式

那么这个表达式

可以用这个图来去描述

那么在这个1.0里面

就会有一个会话

那么就是tf.Session

Session里面

Session里面

有一个方法run

把我们这个流图

放到这个run里面呢

我们才能有一个结果

2.0采用这个动态

这个图的技术就去掉它了

而是把这个

就是把这个

tf.Session被放到

这个兼容模块里

tensorflow.

compat.v1中

那么这个模块有完整的

TensorFlow.x的API

也就说我们TrensorFlow

1.0的代码可以在2.0里面去执行

怎么样呢

我们需要把这一句加上

加上以后他在里面就有1.0API

他就可以执行

是这样一个过程

那我们可以看到

这也是一个Session图

Tensor

变量这是一个操作

那么这就是一个有向图

那么

TrensorFlow2.0里面

它把

Keras纳入我们

TrensorFlow

里面的库里面

它作为这个构建和训练模型的

一个中央的API

那么让他提供一些构建

神经网络的一些API

比如说他的顺序列化

函数化、子类化

他都可以进行他的立即执行

取消了session.run

所以建议使用函数

而不是使用会话

而不是使用会话

那么也取消了一些变量。

比如说

Variable scope

要用到的

tf.global_

variables_

variables_

initializer和

tf.get_glbal-

step之类的

直接辅助方法的全局变量

通通都tf.Varible

对变量进行追踪

还清除了一些API

我们来看一个例子

那么这个就是

TrensorFlow

1.0的时候

我们要给付一个A B把两个常量

然后呢

我们c我们定义A加B

其实这就定义了个最简单的

其实这就定义了个最简单的

一个静态的一个数据流图

那我们通过在

引入Session

然后把我们定义c

放到sess.run

方法来去执行它

方法来去执行它

这就是TrensorFlow

1.0的代码的思路和过程

那么2.0的就简单一些

那么导入2.0以后呢

我们直接用我们第一个常量

我们直接用我们第一个常量

第一个常量

第一个流图

我们直接就可以支持一个动态的流

所以我们直接可以是吧执行输出

是这样子的

2.0呢

那我们可以引入什么呀

引入我们的keras

引入到我们

TrensorFlow库里面

所以我们就可以

创建一个tensor

然后呢我们可以进行对他建立

序列化的一个神经网络模型

那么第一层

那么这里面有两个神经元

那么这里面有两个神经元

那么这是激活函数

那么这是激活函数

来去构建我们的模型

这是这样子的

在2.0的框架里面

我们可以有三块

我们可以有三块

一块就是训练

一块模型的存储

还有一块部署

那么大的来说就是训练和部署

训练就可以通过训练集

那么训练集

利用我们的Keras

一些给定的模型的一些函数

那么来去构建我们的模型

可以在我们训练的时候在

CPU GPU TPU

训练的时候流图呢

其实可以通过

Tensorboard来进行展示

Tensorboard来进行展示

展示我们可以存储模型

放在这个模型库里

那么部署的时候

即可以部署到Serving

也可以部署到我们边缘计算端

也就是我们的Android

IOS

IOS

Raspberry Pi这样的方式

Raspberry Pi这样的方式

也可以部署到浏览器端

通过TensorFlow.JS

好的

关于TrensorFlow

1.0 2.0的区别

我们就给大家介绍到这里

计算思维与人工智能基础课程列表:

第一部分:计算思维

-1.计算思维的提出

-2.计算思维的要素与应用

-3.培养计算思维

-4.智能时代的教师与教学

-章测试

第二部分:人工智能

-1.人工智能的发展

-2.人工智能的实现与机器学习

-3.人工智能产业

-章测试

第三部分:python基础

-第一章:python简介

--1.1python的介绍

--1.2.anaconda的安装

--章测试

-第二章:编码规范

--2.1 python编码规范

--2.2常量和变量

--章测试

-第三章:数据类型

--3.1数据类型概述

--3. 2.数据转换

--3.3数据类型区别

--章测试

-第四章:基本运算

--4.1.基本运算符

--4.2比较运算符

--4.3逻辑运算符

--4.4位运算符

--4.5成员运算符与身份运算符

--4.6运算符的优先级

--章测试

-第五章:程序控制结构

--5.1顺序结构

--5.2条件结构

--5.3循环结构

--5.4跳转结构

--5.5异常处理

--章测试

-第六章:函数、模块与面向对象

--6.1函数的定义与调用

--6.2面向对象

--6.3魔法函数的应用

--6.4模块与包

--章测试

-第七章:文件操作

--7.1文件的打开与读取

--7.2文件的写入

--7.3CSV模块的应用

--章测试

-第八章:python生态库

--8.1第三方库的安装

--8.2标准库-Os库与Sys库

--8.3.标准库-Time库

--8.4标准库-Random库

--8.5标准库-Turtle库

--8.6第三方库-词云库

--8.7第三方库-pyinstaller库

--8.8第三方库-numpy库(上)

--8.9第三方库-numpy库(下)

--8.10第三方库-pandas库

--8.11第三方库-matplotlib库

--章测试

-第九章:TensorFlow基础

--9.1TensorFlow简介

--9.2TensorFlow 2.0的改进

--9.3TensorFlow的数据应用

--9.4 TensorFlow的设备应用

--9.5.TensorFlow中常用操作

--章测试

-第十章:实例分析与实践

--10.1认识回归问题

--10.2房价的预测

--10.3手写数字识别

--10.4卷积神经网络的介绍

--10.5全连接网络的搭建

--10.6卷积神经网络的实现服饰图片的分类

--10.7LeNet的介绍

--章测试

-第十一章:人工智能在自然语言中的应用

--11.1自然语言处理

--11.2命名实体识别技术

--11.3词向量表示

--11.4自然语言处理的挑战及应用

--章测试

9.3TensorFlow的数据应用笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。