神经网络与机器学习 笔记—多层感知器(MLP)
多层感知器(MLP)
Rosenblatt感知器和LMS算法,都是单层的并且是单个神经元构造的神经网络,他们的局限性是只能解决线性可分问题,例如Rosenblatt感知器一直没办法处理简单异或问题。然而日常生活中大多数问题不是线性可分的,都是多维度且无法直接进行线性分类。为了增加神经网络对这一类问题的泛化能力,出现了多层感知器(多层神经网络)的概念。
多层感知器基本特征:
网络中每个神经元模型包含一个可微的非线性激活函数。
网络中包括一个或多个隐藏在输入和输出神经节点之间的层。
网络展示出高度的连接性,其强度是由网络的突触权值决定的。
训练多层感知器的一个流行方法是反向传播算法,训练分为如下两个阶段:
- 前向阶段,网络的突触权值是固定的,输入信号在网络中一层一层传播,直到到达输出端。因此,在这一阶段,输入信号的影响限制在网络中激活隐藏神经元和输出神经元上。
- 反向阶段,通过比较网络的输出和期望输出产生一个误差信号。得到的误差信号再次通过网络一层一层传播,但是这一次传播是在反方向上进行的。在第二阶段,对于网络的突触权值进行不断的修正。对于输出层权值的修正计算是直接的,但是对于隐藏层来说则更有挑战性。
具有两个隐藏层的多层感知器结构图
- 函数信号。函数信号是从网络输入端而来的一个输入信号(刺激),通过网络(一个神经元接一个神经元)向前传播,到达网络输出端即成为一个输出信号。
- 误差信号。一个误差信号产生于网络的一个输出神经元,并通过网络(一层接一层)反向传播。我们称之为“误差信号”是因为网络的每一个神经元对他的计算都以这种或那种形式涉及误差依赖函数。
输出神经元构成网络的输出层。余下的神经元构成网络的隐藏层。因此隐藏层单元并不是网络输出或输入的一部分-因此他们被称为“隐藏”的。第一隐藏层的信号是从由传感单元(源节点)构成的输入馈给的;而第一隐藏层的输出结果又应用于下一个隐藏层;网络的其余部分依此类推。
多层感知器每一个隐藏层或输出层神经元的作用是进行两种计算:
- 计算一个神经元的输出处出现的函数信号,它表现为关于输入信号以及与该神经元相关的突触权值的一个连续非线性函数。
- 计算梯度向量(即误差曲面对链接于一个神经元输入的权值的梯度)的一个估计,他需要反向通过网络。
隐藏神经元的功能
隐藏神经元扮演着特征检测算子(feature detector)的角色;他们在多层感知器的运转中起着决定性作用。随着学习过程通过多层感知器不断进行,隐藏神经元开始逐步“发现”刻画训练数据的突出特征。它们是通过将输入数据非线性变换到新的称为特征空间的空间而实现的。例如,在模式分类问题中,感兴趣的类在这个新的空间中可能比原始输入数据空间中更容易分隔开。甚至,正事通过监督学习形成的这一特种空间将多层感知器和Rosenblatt感知器区分开来。
多层感知器监督学习的两种不同方式 批量学习和在线学习
批量学习(离线学习)
在监督学习的批量方法中,多数感知器的突触权值的调整在训练样本集合的所有样例都出现后进行,这构成了训练的一个回合(epoch)。换句话说,批量学习的代价函数是由平均误差能量定义的。多层改制器的突触权值的调整是以回合-回合为基础的。批量学习的有点是 对梯度向量的精确估计;学习过程的并行性。然而从实际观点看,批量学习有着存储需求。从统计的角度看,批量学习可以看成是某种形式的统计推断。因此它很适合于解非线性回归问题。
在线学习
在监督学习的在线方法下,对于多层感知器突触权值的调整是以样例-样例为基础的。用来最小化的代价函数是全体瞬时误差能量。但是这样的过程也违反了在线学习的并行性。在线学习方法被称为随机方法。这一随机性具有所希望的学习过程不容易陷入局部极小值点的效果,这是在线学习好于批量学习的明确意义所在。在线学习的另一个有点在于它比批量学习需要的存储量要少得多。同时它能够追踪训练数据的小的改变,尤其是产生数据的环境是不稳定的情况下。目前在线学习依然是主流方法。
神经网络与机器学习 笔记—多层感知器(MLP)的更多相关文章
- 神经网络与机器学习 笔记—Rosenblatt感知器收敛算法C++实现
Rosenblatt感知器收敛算法C++实现 算法概述 自己用C++实现了下,测试的例子和模式用的都是双月分类模型,关于双月分类相关看之前的那个笔记: https://blog.csdn.net/u0 ...
- 4.2tensorflow多层感知器MLP识别手写数字最易懂实例代码
自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取: https://www.cnblogs.com/bclshuai/p/11380657.html 1.1 多层感知器MLP(m ...
- "多层感知器"--MLP神经网络算法
提到人工智能(Artificial Intelligence,AI),大家都不会陌生,在现今行业领起风潮,各行各业无不趋之若鹜,作为技术使用者,到底什么是AI,我们要有自己的理解. 目前,在人工智能中 ...
- TFboy养成记 多层感知器 MLP
内容总结与莫烦的视频. 这里多层感知器代码写的是一个简单的三层神经网络,输入层,隐藏层,输出层.代码的目的是你和一个二次曲线.同时,为了保证数据的自然,添加了mean为0,steddv为0.05的噪声 ...
- keras—多层感知器MLP—MNIST手写数字识别
一.手写数字识别 现在就来说说如何使用神经网络实现手写数字识别. 在这里我使用mind manager工具绘制了要实现手写数字识别需要的模块以及模块的功能: 其中隐含层节点数量(即神经细胞数量)计算 ...
- keras—多层感知器MLP—IMDb情感分析
import urllib.request import os import tarfile from keras.datasets import imdb from keras.preprocess ...
- tensorflow学习笔记——自编码器及多层感知器
1,自编码器简介 传统机器学习任务很大程度上依赖于好的特征工程,比如对数值型,日期时间型,种类型等特征的提取.特征工程往往是非常耗时耗力的,在图像,语音和视频中提取到有效的特征就更难了,工程师必须在这 ...
- RBF神经网络学习算法及与多层感知器的比较
对于RBF神经网络的原理已经在我的博文<机器学习之径向基神经网络(RBF NN)>中介绍过,这里不再重复.今天要介绍的是常用的RBF神经网络学习算法及RBF神经网络与多层感知器网络的对比. ...
- MLPclassifier,MLP 多层感知器的的缩写(Multi-layer Perceptron)
先看代码(sklearn的示例代码): from sklearn.neural_network import MLPClassifier X = [[0., 0.], [1., 1.]] y = [0 ...
随机推荐
- 通达OA 页面敏感信息-2013/2015版本
参考 http://wiki.0-sec.org/0day/%E9%80%9A%E8%BE%BEoa/4.html 漏洞影响 2013.2015版本 复现过程 POC: http://0-sec.or ...
- [源码分析] 消息队列 Kombu 之 Consumer
[源码分析] 消息队列 Kombu 之 Consumer 目录 [源码分析] 消息队列 Kombu 之 Consumer 0x00 摘要 0x01 综述功能 0x02 示例代码 0x03 定义 3.1 ...
- FreeBSD 如何安装软件
1:概括FreeBSD捆绑了丰富的系统工具集合作为基础系统的一部分.此外,FreeBSD提供了两种用于安装第三方软件的补充技术:FreeBSD Ports Collection,用于从源代码安装,以及 ...
- 对话对话每日互动CEO方毅:数据智能应用的过去、现在和未来每日互动CEO方毅:数据智能应用的过去、现在和未来
2008年,大数据的概念被首次提出,麦肯锡全球研究所给出的定义是:大数据是在一种获取.存储.管理.分析方面大大超出了传统数据库软件工具能力范围的数据集合. 2014年,"数据智能" ...
- 从零开始编写一个BitTorrent下载器
从零开始编写一个BitTorrent下载器 BT协议 简介 BT协议Bit Torrent(BT)是一种通信协议,又是一种应用程序,广泛用于对等网络通信(P2P).曾经风靡一时,由于它引起了巨大的流量 ...
- Day2:Windows常用快捷键与基本的Dos命令
Windows常用快捷键 必须掌握: Ctrl+C:复制 Ctrl+V:粘贴 Ctrl+Z:撤销 Ctrl+S:保存 Win键+R:运行(run) alt+F4:关闭窗口/页面 Ctrl+A:全选 C ...
- 攻防世界 reverse 新手练习区
1.re1 DUTCTF IDA shift+F12 查看字符串 DUTCTF{We1c0met0DUTCTF} 2.game ZSCTF zsctf{T9is_tOpic_1s_v5ry_int7r ...
- python3 elf文件解析
原地址:https://github.com/guanchao/elfParser 作者是用python2写的,现在给出我修改后的python3版本.(测试发现有bug,以后自己写个,0.0) 1 # ...
- ubuntu修改默认启动内核
一.序言 新换的笔记本由于太新的主板芯片,驱动还没有完善.每次升级系统内核都要小心谨慎.经常发生部分硬件驱动失败的事情.系统Ubuntu 20.04.2 LTS x86_64 ,我现在使用的两个版本的 ...
- 一文读懂MySql主从复制机制
作为一个关系型数据库,MySQL内建地提供数据复制机制,这使得在使用时,可以基于其复制机制实现高可用架构等高级特性,从而使得MySQL无需借助额外的插件或其他工具就具备适用于生产环境.这是MySQL得 ...