神经网络学习规则4| 学习笔记

简介: 快速学习神经网络学习规则4。

开发者学堂课程【机器学习算法 :神经网络学习规则4】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/535/detail/7232


神经网络学习规则4

 

内容介绍

一、连续感知器学习规则:δ 规则

二、损失函数

三、梯度与梯度下降法

四、δ 规则

 

一、连续感知器学习规则:δ 规则

Delta学习规则( δ Learning Rule ) : 1986年,由认知心理学家 McCelland 和 Rumellhart 在神经网络训练中引入了学习规则。一种简单的有导师学习算法,该算法根据神经元的实际输出与期望输出差别来调整连接权。

Delta 学习规则的思路如下:系统首先用一个输入向量,输入网络结构,得到一个输出向量;每个输入向量都有一个对应的期望输出向量、或者称作是目标向量;比较实际输出向量与期望输出向量的差别,若没有差别,就不再继续学习:否则,连接的权重修改对应的差值( delta 差)。

image.png

 

二、损失函数

损失函数( Loss Function) :用于衡量最优的策略,通常是一个非负实值函数。 机器学习试图通过不断的学习, 建立一个可以很好预测现实结果的模型,损失函数则是用来衡量预测结果和真实结果之间的差距,其值越小,代表预测结果和真实结果越一致。 损失函数越合适,通常模型的性能越好。通过各种方式缩小损失函数的过程被称作优化。损失函数记做 L(Y,f(x))。

1、0-1损失函数(0-1 LF) :预测值和实际值精确相等则“没有损失”为0,否则意味着“完全损失” ,为1预测值和实际值精确相等有些过于严格,可以采用两者的差小于某个阈值的方式。

 image.png

image.png

image.png

Y 值是我的期望输出,f(x) 是我的实际输出,对L来讲就是精确匹配,严格要求的。对 L’来讲就是我的阈值是0.5,那就意味着说我的实际输出和我的预期输出的差的绝对值小于0.5的话就是没损失,大于0.5就是有损失。对L来讲,两个不完全相等就是有损失。比如说我的期望输出是0,实际输出是0.3的时候,实际上比较接近了,对严格的0-1损失函数来讲,它就是完全损失的,认为这个是错误的。对于我这个阈值为0.5的L来讲,因为预期输出和实际输出的差是小于0.5的,所以我认为这两个是一样的。可以看出严格损失的和设一个阈值是有区别的

2、绝对值损失函数( Absolute LF ) : 预测结果与真实结果差的绝对值。简单易懂,但是计算不方便。

image.png

3、平方损失函数( Quadratic LF ) : 预测结果与真实结果差的平方。

image.png

4、平方损失函数优势有:

(1)每个样本的误差都是正的,累加不会被抵消.

(2)平方对于大误差的惩罚大于小误差

(3)数学计算简单、友好,导数为一次函数

image.png

还是刚才的例子,Y 为预期输出,f(x) 为实际输出。以第一行为例,差为0.3则它的平方损失函数为0.09,它实际上将这个0.3给放大了。

4、对数损失函数( Logarithmic LF )或对数似然损失函数(log-likehood loss function) : 对数函数具有单调性,在求最优化问题时,结果与原始目标一致。 可将乘法转化为加法,简化计算:

image.png

5、指数损失函数( Exponential LF )或对数似然损失函数(log-likehood loss function) :单调性、非负性的优良性质,使得越接近正确结果误差越小

image.png

6、折叶损失函数( Hinge LF) : 也称铰链损失,对于判定边界附近的点的惩罚力度较高,常见于 SVM

image.png

7、不同的损失函数有不同的特点,适用于不同的场景:

(1)0-1 :理想状况模型

(2)Log:逻辑回归、交叉熵            

(3)Squared :线性回归

(4)Exponential : AdaBoosting

(5)Hinge : SVM、soft margin

image.png

 

三、梯度与梯度下降法

梯度( Gradient ) :是一个向量,表示某一函数在该点处的方向导数沿者该方向取得最大值。即函数在该点处沿着该方向变化最快,变化率最大。

梯度下降法( Gradient Descent) ; 一种最优化算法,也称为最速下降法。沿着负梯度方向去减小函数值从而接近目标值。

损失函数优化:梯度下降法

确定了损失函数,就需要对损失函数进行优化,求最小值,以平方损失函数(Quadratic LF)为例:

image.png

求 L 的梯度:

image.png

假设激活函数选用了 sigmoid 函数 image.png,求此时 L 的梯度:

image.png

 

四、δ 规则

δ 规则的学习信号为:image.png

δ 规则的推导:由输出值与期望输出值的最小二次方误差条件,推导 δ 规则。

输出值与期望输出值的二次方误差为:image.png

学习的目的就是为了让实际输出值与期望输出值的差最小,即求使E最小的权值 W。根据之前的损失函数和梯度、梯度下降法可以知道, W 沿着梯度的负方向(最小值)按照步长image.png(学习速率)变化,会快速逼近最小值,即有:

image.png 

image.png

 

相关文章
|
2天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】32. 卷积神经网络之稠密连接网络(DenseNet)介绍及其Pytorch实现
【从零开始学习深度学习】32. 卷积神经网络之稠密连接网络(DenseNet)介绍及其Pytorch实现
|
2天前
|
机器学习/深度学习
【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介
【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介
【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介
|
2天前
|
机器学习/深度学习 自然语言处理 算法
【从零开始学习深度学习】49.Pytorch_NLP项目实战:文本情感分类---使用循环神经网络RNN
【从零开始学习深度学习】49.Pytorch_NLP项目实战:文本情感分类---使用循环神经网络RNN
|
2天前
|
机器学习/深度学习
【从零开始学习深度学习】37. 深度循环神经网络与双向循环神经网络简介
【从零开始学习深度学习】37. 深度循环神经网络与双向循环神经网络简介
|
2天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】31. 卷积神经网络之残差网络(ResNet)介绍及其Pytorch实现
【从零开始学习深度学习】31. 卷积神经网络之残差网络(ResNet)介绍及其Pytorch实现
|
2天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】30. 神经网络中批量归一化层(batch normalization)的作用及其Pytorch实现
【从零开始学习深度学习】30. 神经网络中批量归一化层(batch normalization)的作用及其Pytorch实现
|
2天前
|
机器学习/深度学习 算法 PyTorch
【从零开始学习深度学习】50.Pytorch_NLP项目实战:卷积神经网络textCNN在文本情感分类的运用
【从零开始学习深度学习】50.Pytorch_NLP项目实战:卷积神经网络textCNN在文本情感分类的运用
|
2天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】36. 门控循环神经网络之长短期记忆网络(LSTM)介绍、Pytorch实现LSTM并进行训练预测
【从零开始学习深度学习】36. 门控循环神经网络之长短期记忆网络(LSTM)介绍、Pytorch实现LSTM并进行训练预测
|
2天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】35. 门控循环神经网络之门控循环单元(gated recurrent unit,GRU)介绍、Pytorch实现GRU并进行训练预测
【从零开始学习深度学习】35. 门控循环神经网络之门控循环单元(gated recurrent unit,GRU)介绍、Pytorch实现GRU并进行训练预测
|
2天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】29.卷积神经网络之GoogLeNet模型介绍及用Pytorch实现GoogLeNet模型【含完整代码】
【从零开始学习深度学习】29.卷积神经网络之GoogLeNet模型介绍及用Pytorch实现GoogLeNet模型【含完整代码】