【西瓜书】5.神经网络

1.概念
  • 有监督学习
  • 正向传播:输入样本---输入层---各隐层---输出层
  • 反向传播:误差以某种形式在通过隐层向输入层逐层反转,并将误差分摊给各层的所有单元,以用于修正各层的权值
  • 激活函数:也叫阶跃函数,目的是引入非线性因素,有很多种激活函数,如sigmoid,relu,使用情景如下

  • 激活函数作用:如果没有激活函数,则不管有几个隐藏层,都只能表示线性切割,即与单层神经网络相同,而通过使用激活函数,神经网络的每一层都可以学习输入数据的非线性变换,这使得整个网络能够逼近任何复杂的函数。解释如下图。

1.感知机(处理二分类问题)
1.1.概念及与线性回归模型的比较

1.2.梯度下降思想调整感知机参数w和b:

(1)损失函数为误分点到超平面距离的和 

书上推理补充:

3.多层前馈神经网络
3.1.思想:

        任意复杂连续函数都是n个一般线性函数的叠加,即感知机相当于一个线性函数,那增加n个隐层就可表示任意复杂连续函数。

3.2.区分

(1)感知机为单层网络

(2)加一个隐层为两层网络,也叫单隐层网络

3.3.误差逆传播算法BP算法

(1)用于多层前馈神经网络或其他类型网络,采用链式法则计算各层参数的梯度,然后使用梯度下降法来更新参数,以减小误差。

(2)损失函数为每个预测y值与样本实际y值之差绝对值的和

3.4.标准BP算法与累计BP算法

        类似随机梯度下降(每次迭代中仅使用一个样本来计算梯度)、标准梯度下降(整个数据集来计算梯度)

  • 标准BP算法:更新频繁;需要更多次数迭代
  • 累计BP算法:读取整个训练集后才更新,频率低;更快获得较好解(数据集大更明显)

3.5.过拟合解决方案

        过拟合表现:训练误差持续降低测试误差可能上升

(1)早停:

  • 若训练误差降低但测试误差上升,则停止
  • 返回最小测试误差的权重和偏置(阈值)

(2)正则化:

  • 增加描述网络复杂度的部分,eg权重和阈值的平方和,想要这部分也小一点,别太复杂
  • 损失函数变为了\lambda*经验误差+(1-\lambda)*网络复杂度,其中经验误差就是我们上面一直用的损失函数,即预测y与实际y值的差和
4.全局最小与局部极小

        在神经网络中,我们对样本进行训练,对于训练得到的结果,我们通过损失函数计算调整权重和阈值,在这个过程中,不管是感知机还是多层前馈网络使用的都是梯度下降策略,希望找到损失函数在某个参数(权重或阈值)方向上的是极小值的点,也就是寻找损失函数在某参数上偏导为0的点,若不为0,则调整该参数使得在损失函数上的取值向最低点靠近。在这个过程中,涉及到一个全局最小和一个局部极小的概念,即如果有多个极小点,那么根据梯度下降很可能找到的是一个局部最小点,而不是全局最小点。解决方案如下:

  • 多组不同参数值的神经网络出发
  • 模拟退火算法,每一步有一定概率接受比当前更差的结果
  • 随机梯度下降,在梯度为0时计算出来的梯度仍可能不为0
5.其他神经网络

(1)PBF网络:单隐层、径向基函数作为隐层神经元激活函数

(2)ART 网络:无监督学习策略、输出神经元相互竞争,每一时刻仅有一个神经元被激活、可塑性-稳定性

(3)SOM 网络:竞争型、无监督神经网络、将高维数据映射到低维空间(通常为2维)同时保持输入数据在高维空间的拓扑结构

(4)级联相关网络

(5)Elman 网络:不同于前馈神经网络,elman是一种递归神经网络,神经元的输出反馈回来作为输入信号

(6)Boltzmann 机:基于能量的模型

6.深度学习模型

        模型深度和宽度都较大,其中增加隐层的数目比增加隐层神经元的数目更有效,由于复杂则难以直接用经典算法(例如标准BP算法)进行训练。

训练方法:

(1)无监督逐层训练:预训练(训练时将上一层隐层结点的输出作为输入)+微调(一般使用BP算法),可以先找到局部看起来比较好的设置, 然后再基于这些局部较优的结果联合起来进行全局寻优

(2)权共享:一组神经元使用相同的连接权值,卷积神经网络就是这样

**卷积神经网络:

(1)卷基层:含n个特征映射,每个特征映射为由多个神经元构成的“平面”

(2)采样层:汇合层,减少数据量的同时保留有用信息

(3)连接层:每个神经元被全连接到上一层每个神经元, 本质就是传统的神经网络

激活函数采用修正线性函数relu;可用bp算法训练;每一层的权值都相同,好训练

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/676424.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

特征工程技巧——字符串编码成数字序列

这段时间在参加比赛,发现有一些比赛上公开的代码,其中的数据预处理步骤值得我们参考。 平常我们见到的都是数据预处理,现在我们来讲一下特征工程跟数据预处理的区别。 数据预处理是指对原始数据进行清洗、转换、缩放等操作,以便为…

深入理解序列化:概念、应用与技术

在计算机科学中,序列化(Serialization)是指将数据结构或对象状态转换为可存储或传输的格式的过程。这个过程允许将数据保存到文件、内存缓冲区,或通过网络传输至其他计算机环境,不受原始程序语言的限制。相对地&#x…

MySQL(三) - 基础操作

一、索引 由于我们在使用数据库的时候,大部分操作的都是查询操作,但是我们每一次进行查询都需要遍历一遍表中所有数据,这会花费O(n)的时间,因此数据引入了“索引” 也就是在底层使用了数据结构来进行优化查询的操作,但…

C++ Primer 第五版 第15章 面向对象程序设计

面向对象程序设计基于三个基本概念:数据抽象、继承和动态绑定。 继承和动态绑定对编写程序有两方面的影响:一是我们可以更容易地定义与其他类相似但不完全相同的新类;二是在使用这些彼此相似的类编写程序时,我们可以在一定程度上…

java面试题及答案2024,java2024最新面试题及答案(之一)

发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Ja…

day26-单元测试

1. 单元测试Junit 1.1 什么是单元测试?(掌握) 1.2 Junit的特点?(掌握) 1.3 基本用法:(掌握) 实际开发中单元测试的使用方式(掌握) public class …

开源利器AnythingLLM:你的私人ChatGPT构建利器,支持主流多种大模型

开源利器AnythingLLM:你的私人ChatGPT构建利器,支持主流多种大模型 博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备…

阿里云服务器接入百度云防护后显示502原因

最近,发现很多使用了阿里云服务器的网站出现502的情况 经百度云防护技术排查发现阿里云机房对百度云防护的IP进行了拦截,原因近期可能是百度云防护的IP请求过于频繁,导致阿里云机房策略把百度云的IP当成了攻击IP。 解决办法是提交工单让阿里…

ProxySQL + MySQL MGR 实现读写分离实战

文章目录 前言1、ProxySQL 介绍1.1、ProxySQL 如何工作1.2、ProxySQL 工作原理 2、ProxySQL 安装与读写分离实战2.1、ProxySQL 安装2.2、读写分离配置2.3、读写分离实战2.4、SpringBoot 整合 前言 该文章实践之前,需要搭建MySQL MGR集群,关于 MySQL MGR…

企业高性能WEB服务器--nginx(持续更新参数)

目录 1、nginx介绍 2、nginx web服务 3、配置nginx服务 3.1、软件安装 3.2、介绍配置文件 3.2.1、mine.types文件 3.2.2、nginx.conf文件 worker_processes参数 events 块 worker_connections: -- 一个工作者可以处理的最大连接数 http 块 server块: 3.…

LINUX系统编程:信号(1)

目录 什么是信号? 为什要有信号呢? 进程接受信号的过程 1.信号的产生 1.1kill命令产生信号 1.2键盘产生信号 1.3系统调用接口 1.3.1killl() 1.3.2raise() 1.3.3abort() 1.4软件条件 1.5异常 1.6对各种情况产生信号的理解 1.6.1kill命令 1…

基于网关的ip频繁访问web限制

一、前言 外部ip对某一个web进行频繁访问,有可能是对web进行攻击,现在提供一种基于网关的ip频繁访问web限制策略,犹如带刀侍卫,审查异常身份人员。如发现异常或者暴力闯关者,即可进行识别管制。 二、基于网关的ip频繁访…

时序预测 | Matlab灰色-马尔科夫预测

目录 预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab灰色-马尔科夫预测 灰色马尔科夫预测(Grey-Markov Prediction)是一种用于时间序列预测的方法,它结合了灰色系统理论和马尔科夫链模型。灰色系统理论是一种非参数化的预测方法…

必看!硬核科普!什么是冻干?可以当主食喂的猫咪冻干分享

冻干猫粮作为近年来备受推崇的高品质选择,吸引了越来越多养猫人的目光。有着丰富养猫经验的我,早已开始采用冻干喂养。新手养猫的人可能会对冻干猫粮感到陌生,并产生疑问:这到底是什么?猫咪冻干可以天天喂吗&#xff1…

重新定义你的上网体验,微软WowTab助你一臂之力!

大家好,我是 Java陈序员。 浏览器是我们日常生活工作中必备的工具软件,使用非常频繁。 目前很多浏览器的新标签页虽然说功能齐全,但是充斥着广告和各种无效的信息,十分影响体验! 今天,给大家安利一个浏览…

react 中使用 swiper

最近项目中需要用到轮播图,我立马想起了 swiper ,那么本文就来带大家体验一下如何在 React 中使用这个插件,使用的是 函数组 hooks 的形式。 需求非常简单,就是一个可以自动播放、点击切换的轮播图(跑马灯&#xff0…

基于jeecgboot-vue3的Flowable流程-待办任务(二)

因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。 接下来讲待办的流程处理 1、根据这个vue3新的框架,按钮代码如下: /*** 操作栏*/function getTableAction(record) {return [{label: 处理,onClick: handleProcess…

洗地机品牌哪个牌子好?避坑必读精析4大热门品牌优缺点

科技越发达,生活就越便捷。以打扫卫生为例,越来越多的人放弃了传统的扫把和拖把,转而选择更轻松的清洁家电,比如洗地机。洗地机不仅高效,还具有智能化设计,可以让清洁变得轻松。它强大的吸尘功能能够轻松应…

水位雨量监测站解析

水位雨量监测站是一种集水位和雨量监测功能于一体的重要气象和水文监测设备。其设计和功能旨在实时、准确地监测和记录河流水位、降雨量等关键数据,为气象、水文、环保等领域提供重要的信息支持。以下是关于水位雨量监测站的详细扩写: 系统组成 水位雨…

Midjourney绘画参数设置详解

在数字艺术和设计领域,Midjourney是一款强大的绘画工具,它允许艺术家和设计师以数字方式创作出精美的图像。为了充分发挥Midjourney的潜力,正确设置其绘画参数至关重要。本文将深入探讨Midjourney的绘画参数设置,帮助用户更好地掌…