机器学习 西瓜书 Day05 神经网络(NN)

作者: 皇家马德里主教练齐达内 | 来源:发表于2018-05-13 21:14 被阅读14次

p97- p107
今天去看复仇者联盟了,不错的片子,所以少看了5页,明天补上。:)

第五章 神经网络

5.1 神经元模型

M-P神经元模型:
神经元接受n个神经元的输入信号,各个带权重。
将总输入值与该神经元的阈值比较,然后通过激活函数处理以产生输出
见图p97
每个神经元输出y = f(∑wixi - θ)。

理想的激活函数是阶跃函数sgn(x),但不连续不光滑。
因此实际常用sigmoid函数作为激活函数。

5.2 感知机和多层网络

感知机:两层神经元组成。
输入层:接受外界信号,传递给输出层
输出层:M-P神经元,亦称“阈值逻辑单元”

感知机能够很容易地通过改变w1,w2,θ,实现与或非运算。

感知机通过学习来确定wi,θ:过程见p99。
引出了学习率。

可以证明:如果两类模型是线性可分的,那感知机的学习过程一定会收敛。(见p100 形象的图)。否则会发生震荡。

要解决非线性可分,需要考虑使用多层神经元。见p100 图5.5

输入层与最终输出层之间的层:隐含层。

多层前向反馈神经网络:图5.6
注:前向指拓补结构不含有回路与环

总结:神经网络学到的东西,蕴含在连接权与阈值中。

5.3 误差逆传播算法(BP)

训练多层神经网络:BP算法(反向传播算法)
迭代的过程,每一次更新各个参数
BP算法基于梯度下降:以目标的负梯度方向对参数进行调整。

具体方法:见p103。
具体伪代码:见p104。
最终是为了最小化累积误差。

标准BP vs 累积BP:
标准BP每次只针对一个数据,参数更新频繁,需要更多的迭代。
累积BP相反。

注:读取数据集一遍-称为进行了一轮学习。

BP表示能力强大,就会带来过拟合,两种缓解方案:
1.早停:数据集分为训练集和验证集,若训练值误差降低而验证集增高,就停,返回具有最小验证集误差的连接权和阈值。
2.正则化:在误差目标函数E中加入正则化项,如权值平方和(描述网格复杂度)。

5.4 全局最小和局部最小

梯度下降可能会跳入局部最小
三种解决方案:
1.多组不同参数值初始化多个神经网络,去误差最小的解做最终参数。
2.“模拟退火”:在每一步都以一定的概率接受比当前解更差的结果。随迭代进行,接受概率变小,以保证稳定。
3.随机梯度下降

遗传算法也常用来训练NN

5.5 其他常见神经网络

5.1 RBF网络

单隐层前向反馈神经网络
使用径向基函数作为隐层神经元激活函数
输出层是隐层神经元的线性组合

两步训练RBF:1)确定中心ci 2) 使用BP确定w,c

相关文章

  • 机器学习 西瓜书 Day05 神经网络(NN)

    p97- p107今天去看复仇者联盟了,不错的片子,所以少看了5页,明天补上。:) 第五章 神经网络 5.1 神经...

  • 数据挖掘topic

    1.机器学习算法 常用算法公式汇总 西瓜书 神经网络: neural-networks-and-deep-lear...

  • 【西瓜书】第5章 神经网络

    神经网络是一种模拟人脑的神经网络,以期能够实现人工智能的机器学习技术,在学习中主要参考西瓜书、python神经网络...

  • 神经网络:

    神经网络NN

  • 深度学习概念和基础

    深度学习是以神经网络为基础的,神经网络是机器学习的一种算法。 关于机器学习中的神经网络: 机器学习之神经网络1前向...

  • 神经网络实现过程

    神经网络实现过程: 准备数据集,提取特征,作为输入喂给神经网络(Neural Network, NN) 搭建NN结...

  • 神经网络简述

    一、什么是神经网络 机器学习中谈论的神经网络是指“神经网络学习”,或者说,是机器学习和神经网络这两个学科领域的交叉...

  • 神经网络简述

    一、什么是神经网络 机器学习中谈论的神经网络是指“神经网络学习”,或者说,是机器学习和神经网络这两个学科领域的交叉...

  • 2019-08-10

    CNN卷积神经网络 import torch import torch.nn as nn #为了简化,直接利用...

  • Pytorch 搭建简单的神经网络

    nn.Module torch.nn 是专门为深度学习设计的模块,核心数据结构是Module,既可以表示神经网络中...

网友评论

    本文标题:机器学习 西瓜书 Day05 神经网络(NN)

    本文链接:https://www.haomeiwen.com/subject/qsxrdftx.html