【深度学习】前馈神经网络

一、前馈神经网络

思维导图

【深度学习】前馈神经网络_第1张图片

线性问题分为两个:

1.与门

【深度学习】前馈神经网络_第2张图片 

IN IN OUT
1 1 1
1 0 0
0 1 0
0 0 0

2.或门

【深度学习】前馈神经网络_第3张图片

IN IN OUT
1 1 1
1 0 1
0 1 1
0 0 0

非线性问题:

异或门

【深度学习】前馈神经网络_第4张图片

IN IN OUT
1 1 0
1 0 1
0 1 1
0 0 0

方便学习理解的工具:

神经网络可视化工具Tensorflow_playground

 链接:http://playground.tensorflow.org/#activation=tanh&batchSize=10&dataset=circle®Dataset=reg-plane&learningRate=0.03®ularizationRate=0&noise=0&networkShape=4,2&seed=0.99735&showTestData=false&discretize=false&percTrainData=50&x=true&y=true&xTimesY=false&xSquared=false&ySquared=false&cosX=false&sinX=false&cosY=false&sinY=false&collectStats=false&problem=classification&initZero=false&hideText=false

【深度学习】前馈神经网络_第5张图片 

激活函数 

1.基本概念

神经网络中的每个神经元节点接受上一层神经元的输出值作为本神经元的输入值,并将输入值传递给下一层,输入层神经元节点会将输入属性值直接传递给下一层(隐层或输出层)。在多层神经网络中,上层节点的输出和下层节点的输入之间具有一个函数关系,这个函数称为激活函数。

【深度学习】前馈神经网络_第6张图片

2.几种常用函数 

①sigmod函数

函数公式和图表如下图

sigmod函数公式
sigmod函数图

特点:
它能够把输入的连续实值变换为0和1之间的输出,特别的,如果是非常大的负数,那么输出就是0;如果是非常大的正数,输出就是1.
缺点:

 sigmod函数要进行指数运算,这个对于计算机来说是比较慢的。

在深度神经网络中梯度反向传递时导致梯度爆炸和梯度消失,其中梯度爆炸发生的概率非常小,而梯度消失发生的概率比较大。

Sigmoid 的 output 不是0均值(即zero-centered)。

②tanh函数

tanh函数公式和曲线如下

tanh函数公式
tanh函数图

 一般二分类问题中,隐藏层用tanh函数,输出层用sigmod函数。

③ReLU函数

ReLU函数公式和曲线如下

relu函数公式
relu函数图

④Leaky ReLU函数(PReLU)

prelu公式
prelu函数图

前馈神经网络

下图为简单的前馈神经网络图:

多层前馈神经网络 

神经网络中涉及的多个概念:

L:表示神经网络的层数
m^l:表示第 l 层神经元个数
f_l(.):表示第 l 层神经元的激活函数
W^l:表示第 l-1 层到第 l 层的权重矩阵
b^l:表示第 l-1 层到第 l 层的偏置
z^l:表示第 l 层神经元的净输入(净活性值)
a^l:表示第l层的神经元输出(活性值)

反向传播算法流程

图片名称

你可能感兴趣的:(深度学习,神经网络,机器学习)