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

【机器学习西瓜书学习笔记——神经网络】

机器学习西瓜书学习笔记【第五章】

  • 第五章 神经网络
    • 5.1神经元模型
    • 5.2 感知机与多层网络
      • 学习
      • 感知机
      • 学习率
      • 成本/损失函数
      • 梯度下降
    • 5.3 BP神经网络(误差逆传播)
    • 5.4 全局最小与局部极小
    • 5.5 其他常见神经网络
      • RBF网络
        • RBF 与 BP 最重要的区别
      • ART网络

第五章 神经网络

5.1神经元模型

神经网络的最基本的构成元素是神经元。生物神经网络中各个网络之间相互连接,通过神经递质相互传递信息。如果某个神经元接收了足够多的神经递质(乙酰胆碱),那么其点位变会积累地足够高,从而超过某个阈值。超过这个阈值之后,这个神经元变会被激活,达到兴奋的状态,而后发送神经递质给其他的神经元

MP神经元模型

img

激活函数

函数的值域是(0,1),即函数值落在0到1之间。S函数的性质有可以将较大范围内变化的输入值压缩到**(0,1)区间内,因此也被成为挤压函数**。

img

5.2 感知机与多层网络

学习

学习:从已知数据中学得模型(确定权重 ω i {\omega}_{i} ωi

本质:不断更改权重( ω i {\omega}_{i} ωi),使得模型求出的预测值尽可能地接近真实值。

感知机

感知机:两层神经元组成。

img

通过感知机实现逻辑运算,在MP神经元模型中,有输出:

y = f ( ∑ i ω i x i − θ ) y=f({\textstyle \sum_{i}^{}} {\omega }_{i}{x}_{i}-\theta ) y=f(iωixiθ)

假设激活函数为阶跃函数 s g n ( x ) sgn(x) sgn(x)

KaTeX parse error: {equation} can be used only in display mode.\geKaTeX parse error: Expected 'EOF', got '}' at position 3: 0;}̲\\ 1& \text{x<0…

通过制定权重和阈值得到可以进行逻辑运算的感知机,那么如果给定训练数据集,同样我们可以通过学习得到相应地权重和阈值。
阈值b可以看做是一个输入固定为-1.0对应连接权重ωn+1的哑结点。通过这样定义阈值,则可以将学习权重和阈值简化为只学习权重。

感知机的学习规则很简单,对于训练样本(x,y),若感知机当前的输出为y’,则感知机的权重调整如下:

Δ ω i = η ( y − y ′ ) x i \Delta{\omega }_{i}=\eta (y-y'){x}_{i} Δωi=η(yy)xi

ω i ← ω i + Δ ω i {\omega }_{i}\gets{\omega }_{i}+\Delta{\omega }_{i} ωiωi+Δωi

其中, η {\eta} η学习速率。若感知机对样本的预测正确的话,即** y ′ y' y= y y y**,则感知机不发生任何变化。若其预测错误,则根据错误的程度进行相应权重的调整。

img

左面三个是通过线性分割实现,而最右侧的异或则无法通过线性分割实现。

学习率

学习率是每次迭代中成本函数最小化的量,梯度下降到成本函数最小值所对应的速率就是学习率。

img

成本/损失函数

当建立一个神经网络的时候,神经网络会试图将输出预测尽可能地接近实际值。使用成本函数函数来衡量网络的准确性。成本函数会在发生错误的时候处罚网络。
目的是为了能够提高我们的预测精度,减少误差,从而最大限度的降低成本。最优化的输出即使成本/损失函数最小的输出。

梯度下降

梯度下降是最小化成本的优化算法,找到最小化的损失函数和模型参数值。

5.3 BP神经网络(误差逆传播)

①BP神经网络等于叠加多个感知机来实现非线性可分。(最少3层)

②梯度下降策略:以目标的负梯度方向对参数进行调整(此外还有牛顿法、最小二乘法等策略)

③第K个训练例的均方误差:

④更新权重

基本原理与感知机相同。

神经网络的思路总结:

  • 搜集数据集( x i {x}_{i} xi,y),将 x i {x}_{i} xi代入初始的神经网络模型,计算估计值 y ^ \hat{y} y^

  • 根据 y ^ \hat{y} y^与y的差异不断更改权重 ω i {\omega}_{i} ωi,使其误差尽可能的小(梯度下降)

  • 大量数据训练后,再输入新的数据x,模型就可以求出y用于分类/预测/评价了

5.4 全局最小与局部极小

  • 局部最小值是在某一区域内,函数的取值达到了最小,但是如果将这个区域扩展到定义域上来,那么这个局部最小值就不一定是最小的。

  • 全局最小值,是在定义域内,函数值最小。全局最小一定是局部最小值,但“局部极小 ” 不一定是“全局最小 ”。因此我们的目标是找到 “ 全局最小 ”。

  • 可能存在多个局部极小值,但却只会有一个全局最小值。

    img

5.5 其他常见神经网络

RBF网络

  • BP 网络
img
  • RBF 网络:
img
  • **径向基函数:**是一个取值仅依赖于到原点距离的实值函数。此外,也可以按到某一中心点c的距离来定义。
  • **RBF 网络结构:**RBF Network 通常只有三层。输入层、中间层计算输入 x 矢量与样本矢量 c 欧式距离的值,输出层算它们的线性组合。
  • 训练 RBF 网络步骤:
    • 第一步,确定神经元中心,常用的方法包括随机采样、聚类。
    • 第二步,利用 BP 算法来确定参数。
    • img
RBF 与 BP 最重要的区别

1 中间层神经元的区别。

  • RBF: 神经元是一个以gaussian函数为核函数的神经元。

2 中间层数的区别。

  • 中间层只有一层。经过训练后每一个神经元得以确定输入权重:即每一个神经元知道要在什么样的输入值下引起最大的响应。

3 运行速度的区别。

  • 原因是因为层数,层数越少,需要确定的权重(weight)越少,越快。
  • 为什么三层可以做这么多层的事儿?原因是核函数的输出: 是一个局部的激活函数。在中心点那一点有最大的反应;越接近中心点则反应最大,远离反应成指数递减。

ART网络

  • **竞争型学习:**是神经网络中一种常用的无监督学习策略,在使用该策略时,网络的输出神经元相互竞争,每一时刻仅有一个竞争获胜的神经元被激活,其他神经元的状态被抑制,这种机制也称 “胜者通吃” 原则。ART 就是竞争型学习的重要代表。

  • ART 网络:

    该网络由比较层、识别层、识别阈值和重置模块构成。

    • 比较层:负责接收输入样本,并将其传递给识别层神经元。
    • 识别层:识别层每个神经元对应一个模式类,神经元数目可在训练过程中动态增长以增加新的模式类。
img img
  • **阈值:**显然,识别阈值对 ART 网络的性能有重要影响,当识别阈值较高时,输入样本会被分成较多、较精细的模式类,而如果识别阈值较低,则会产生比较少、比较粗略的模式类。
  • **ART 优点:**可进行增量学习或在线学习。

SOM网络

级联相关网络

Elman网络

Boltzmann机

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C++第三十一弹---C++继承机制深度剖析(下)
  • 【网络编程】网络原理(一)
  • 政务服务技能竞赛规则流程方案
  • WINDOWS搭建nps/npc服务器
  • dpdk实现udp协议栈
  • 各地级市能源消费总量、夜间灯光值数据(2000-2022年)
  • 【雅思考试】-- Day4 - 单词
  • 人生苦短,我用 Python,AI 模型助力高效数据提取
  • C# 中读取byte[]转化成数字
  • 【网络】网络编程套接字(二)
  • 基于C#调用文心一言大模型制作桌面软件(可改装接口)
  • HarmonyOS鸿蒙开发学习:鸿蒙基础-基础环境-ArkTS-组件-样式
  • C++ exe程序内存占用分析之Linux篇
  • Java 设计模式之策略模式 (Strategy Pattern) 详解
  • 【C语言篇】猜数字游戏(赋源码)
  • JavaScript-如何实现克隆(clone)函数
  • 【剑指offer】让抽象问题具体化
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • Docker 笔记(2):Dockerfile
  • Flex布局到底解决了什么问题
  • flutter的key在widget list的作用以及必要性
  • PHP 7 修改了什么呢 -- 2
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • sessionStorage和localStorage
  • uni-app项目数字滚动
  • 那些被忽略的 JavaScript 数组方法细节
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 深入 Nginx 之配置篇
  • 深入浏览器事件循环的本质
  • linux 淘宝开源监控工具tsar
  • 树莓派用上kodexplorer也能玩成私有网盘
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • ​马来语翻译中文去哪比较好?
  • ​数据结构之初始二叉树(3)
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • $LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
  • (02)Hive SQL编译成MapReduce任务的过程
  • (1)STL算法之遍历容器
  • (11)MSP430F5529 定时器B
  • (160)时序收敛--->(10)时序收敛十
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (笔试题)合法字符串
  • (数据大屏)(Hadoop)基于SSM框架的学院校友管理系统的设计与实现+文档
  • (四) Graphivz 颜色选择
  • (算法)前K大的和
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (学习日记)2024.01.19
  • (一)基于IDEA的JAVA基础1
  • (转)IOS中获取各种文件的目录路径的方法
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET框架类在ASP.NET中的使用(2) ——QA
  • .Net面试题4