深度学习入门 之 Tensorflow学习笔记(一)

介绍:

tensorflow是一个基于数据流编程的符号数学系统,被广泛应用于各类机器学习算法的编程实现。简单来说就是使用tensorflow建立一个算法结构,之后放入数据,不断循环结构改变参数,最终得到一个较为完善的神经网络结构。神经网络不同层次间是对特征的处理,将一个特征变为另外一个特征,tensorflow的最终目的就是模拟出预测的曲线。

1、optimizer优化器

“优化器是引导神经网络更新参数的工具,深度学习在计算出损失函数之后,需要利用优化器来进行反向传播,完成网络参数的更新。在这个过程中,便会使用到优化器,优化器可以利用计算机数值计算的方法来获取损失函数最小的网络参数。在深度学习中,不同的优化器只是定义了不同的一阶动量和二阶动量,一阶动量是与梯度相关的函数,二阶动量是与梯度平方相关的函数。常用的优化器主要有随机梯度下降法、Momentum、AdaGrad、RMSProp和Adam优化器。”

各种不同的优化器他们的学习特点大致如下:

深度学习入门 之 Tensorflow学习笔记(一)_第1张图片

2、可视化神经网络方法(tensorboard)

也就是我们经常看见的数据输入流程图的方式,包含input、layer、loss等,可以将其输出到一个文件内,之后用浏览器打开。

3、过拟合问题

就是说神经网络模型想要在现有小数据量下达到最小误差,可能就出现了拟合曲线弯曲等,当增加数据量后会出现误差增大的现象。一般我们将神经网络模型精简为Y=Wx,其中W是要学习的参数,我们就是通过使用一些公式达到使拟合曲线避免过拟合的问题。在神经网络中经常会使用到Dropout regularization的方法:先随机使用小部分的数据进行学习,逐步增加数据量。

4、循环神经网络RNN

“前面数据对后面有影响”,只要数据是按照顺序排列的就可以使用RNN,有个弊端就是“记忆短暂”,无法记忆长久数据。就很像小于1的数累乘接近零(梯度消失),大于1的数累乘接近无穷(梯度爆炸)。可以使用LSTM (long short term memory,“长短期记忆”)来克服这个弊端。

深度学习入门 之 Tensorflow学习笔记(一)_第2张图片

LSTM在普通RNN上做了一个手脚,即“要不要考虑某些数据的影响”。

5、自编码(Autoencoder)

指神经网络的非监督学习模式。是一种“压缩-解压缩”的过程,比如输入一张高清的图片,我们可以使用自编码从中提取精华信息,就可以使用其他的数据分析神经网络模型进行处理。全程只用到输入数据本身,不涉及数据的标签,因此称为神经网络的非监督形式。

6、批标准化(Batch Normalization)

将分散的数据统一,也是优化神经网络的一种方法。具有统一规格的数据能让机器学习更容易学习到数据之间的关系。数据差异大时应当进行批标准化。

深度学习入门 之 Tensorflow学习笔记(一)_第3张图片

深度学习入门 之 Tensorflow学习笔记(一)_第4张图片

7、迁移学习

“站在巨人的肩膀上继续学习”,在解决一个问题是,从头还是往往非常麻烦,因此我们常借助已知的一些学习模型来简化工作量。

 

 


 

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