当前位置: 首页 > news >正文

西瓜书之神经网络

一,神经元模型

所谓神经网络

目前用得最广泛的一个定义是“神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统真实世界物体所做出的交互反应”。

M-P神经元

M-P神经元:接收n个输入(通常是来自其他神经元),并给各个输入赋予权重计算加权和,然后和自身特有的阈值θ进行比较(作减法),最后经过激活函数f(模拟“抑制"和“激活”)处理得到输出(通常是给下一个神经元)

神经元的基本形式:

1.png

 

 西瓜的一系列特征通过线性组合相加

 通过上述两种激活函数(activation function)——挤压函数(非线性模型)

来产生相应地输出。

  • 与线性分类十分相似,神经元模型最理想的激活函数也是阶跃函数,
  • 即将神经元输入值与阈值的差值映射为输出值1或0,若差值大于零输出1,对应兴奋;
  • 若差值小于零则输出0,对应抑制。

但阶跃函数不连续,不光滑,故在M-P神经元模型中,也采用Sigmoid函数来近似,

 Sigmoid函数将较大范围内变化的输入值挤压到 (0,1) 输出值范围内,所以也称为挤压函数(squashing function)。

 将多个神经元按一定的层次结构连接起来,就得到了神经网络

它是一种包含多个参数的模型,比方说10个神经元两两连接,则有100个参数需要学习(每个神经元有9个连接权以及1个阈值),若将每个神经元都看作一个函数,则整个神经网络就是由这些函数相互嵌套而成。

 

二,感知机与多层网络

感知机(Perceptron)是由两层神经元组成的一个简单模型,但只有输出层是M-P神经元

即只有输出层神经元进行激活函数处理,也称为功能神经元;

输入层只是接受外界信号(样本属性)并传递给输出层(输入层的神经元个数等于样本的属性数目),而没有激活函数。

激活函数为sgn (阶跃函数)的神经元

 

 

 感知机的几何解释:

感知机学习策略

  • 假设训练数据集是线性可分的,感知机学习的目标是求得一个能够将训练集正实例点和负实 例点完全正确分开的超平面。
  • 为了找出这样的超平面S,即确定感知机模型参数w和b,需要确定一个学习策略, 即定义损失函数并将损失函数极小化。
  • 损失函数的一个自然选择是误分类点的总数。但是,这样的损失函数不是参数w和b的连续可导函数,不易优化,所以感知机采用的损失函数为误分类点到超平面的总距离。

 

可以把(bias)并到里面

 求解

已知损失函数的梯度:

 

 

 前馈网络:

由于像感知机这种单个神经元分类能力有限, 只能分类线性可分的数据集,

对于线性不可分的数据集则无能为力, 但是多个神经元构成的神经网络能够分类线性不可分的数据集(西瓜书上异或问题的那个例子),且有理论证明(通用近似定理):只需一个包含足够多神经元的隐层, 多层前馈网络(最经典的神经网络之一)就能以任意精度逼近任意复杂度的连续函数。
 

  神经网络既能做回归, 也能做分类, 而且不需要复杂的特征工程

要解决非线性可分问题,需考虑使用多层功能神经元.例如下图中这个简单的两层感知机就能解决异或问题.在下图a中,输出层与输入层之间的一层神经元,被称为隐层或隐含层,隐含层和输出层神经元都是拥有激活函数的功能神经元.

 

 常见的神经网络是形如下图所示的层级结构,每层神经元与下一层神经元全互连,神经元之间不存在同层连接,也不存在跨层连接.这样的神经网络结构通常称为“多层前馈神经网络”

 其中输入层神经元仅是接受输入,不进行函数处理,隐层与输出层包含功能神经元."连接权"以及每个功能神经元的阈值;神经网络“学”到的东西,蕴涵在连接权与阈值中.

三,误差逆传播算法(BP)icon-default.png?t=N6B9https://blog.csdn.net/NickHan_cs/article/details/112295451?ops_request_misc=&request_id=&biz_id=102&utm_term=%E8%AF%AF%E5%B7%AE%E9%80%86%E4%BC%A0%E6%92%AD%E8%AE%A1%E7%AE%97&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~sobaiduweb~default-0-112295451.268^v1^control&spm=1018.2226.3001.4450

 

http://www.lryc.cn/news/131989.html

相关文章:

  • C++进阶 特殊类的设计
  • NLP序列标注问题,样本不均衡怎么解决?
  • 大端和小端
  • C++快速回顾(二)
  • 【LVS】1、LVS负载均衡群集
  • el-tree 懒加载树
  • 到江西赣州ibm维修服务器之旅-联想X3850 x6黄灯故障
  • VMware 虚拟机三种网络模式详解
  • ASP.NET指定变量数据类型,速度提高了100倍
  • PyArmor 一键加密
  • redis--持久化
  • 管理外部表
  • 数字图像处理-AWB跳变
  • DNNGP、DeepGS 和 DLGWAS模型构成对比
  • postgresSQL 配置文件设置
  • 【bug】Unity无法创建项目
  • 跨境外贸业务,选择动态IP还是静态IP?
  • Hlang社区-社区导航栏实现
  • Kestrel和ISS服务器下的配置
  • uniapp选择只选择月份demo效果(整理)
  • 微信ipad协议8.0.40 加好友功能
  • 如何通过本地搭建wamp服务器并实现无公网IP远程访问
  • matlab使用教程(19)—曲线拟合与一元方程求根
  • 【Go 基础篇】Go语言关键字和预定义标识符解析:探索编程的基石与核心要素
  • 微服务与Nacos概述-6
  • 不是说嵌入式是风口吗,那为什么工作还那么难找?
  • 【二叉树】114. 二叉树展开为链表
  • docker的安装与基础使用
  • python+django+mysql高校校园外卖点餐系统--计算机毕设项目
  • 获取excel中的图片(包含wps中嵌入单元格图片)