[吃瓜教程]南瓜书第5章神经网络

1.M-P神经元

M-P神经元,全称为McCulloch-Pitts神经元,是一种数学模型,用于模拟生物神经元的功能。这个模型是由Warren McCulloch和Walter Pitts在1943年提出的。它是人工智能和计算神经科学领域中非常重要的早期模型。
M-P神经元接收n个输入(通常来自其他神经元),并给各个输入赋予权重计算加权和,然后和自身特有的阈值 θ \theta θ进行比较(作减法),最后经过激活函数(模拟“抑制”和“激活”)处理得到输出(通常是给下一个神经元)
y = f ( ∑ i = 1 n w i x i − θ ) = f ( w T x + b ) y=f(\sum_{i=1}^nw_ix_i-\theta)=f(w^Tx+b) y=f(i=1nwixiθ)=f(wTx+b)
单个M-P神经元:感知机(sgn作激活函数)、对数几率回归(sigmoid作激活函数)
多个M-P神经元:神经网路

2.感知机(分类模型)

2.1 sgn函数

sgn 函数,或称为符号函数(sign function):是一个数学函数,用于确定一个实数的符号。sgn 函数的定义如下:

  • 当x>0时,sgn(x)=1
  • 当x=0时,sgn(x)=0
  • 当x<0时,sgn(x)=-1
    图像如下:
    在这里插入图片描述

2.2 感知机

1)模型
其具体公式如下:
y = s g n ( w T w − θ ) = { 1 , w T x − θ > = 0 0 , w T x − θ < 0 y=sgn(w^Tw-\theta) =\begin{cases} 1& ,{w^Tx-\theta>= 0}\\ 0& ,{w^Tx-\theta<0} \end{cases} y=sgn(wTwθ)={10,wTxθ>=0,wTxθ<0
其中, x ∈ R N x\in \mathbb{R}^N xRN为样本的特征向量,是感知机模型的输入, w , θ w,\theta w,θ是感知机模型的参数, w ∈ R n w\in \mathbb{R}^n wRn为权重, θ \theta θ 为阈值

从几何的角度来说,给定一个线性可分的数据集T,感知机的学习目标是求得能对数据集T中的正负样本完全正确划分的超平面,其中 w T x − θ w^Tx-\theta wTxθ即为超平面方程。
n维空间的超平面 ( w T x + b = 0 , 其中 w , x ∈ R n ) (w^Tx+b=0,其中w,x \in \mathbb R^n) (wTx+b=0,其中w,xRn):

  • 超平面方程不唯一
  • 法向量w垂直于超平面
  • 法向量w和位移项b确定一个唯一超平面
  • 法向量w指向的那一半空间为正空间,另一半为负空间

缺点: 只能解决线性可分的问题
模型图如下所示,只包含一个输入层和一个输出层。
在这里插入图片描述

2)策略
感知机的学习策略是,随机初始化 w , b w,b w,b,将全体训练样本带入模型找出误分类样本,假设此时误分类样本的集合为 M ⊆ T M\subseteq T MT对任意一个误分类样本 ( x , y ) ∈ M (x,y)\in M (x,y)M来说,当 w T x − θ > = 0 w^Tx-\theta >=0 wTxθ>=0时,模型输出值为 y ^ = 1 \hat y=1 y^=1,样本真实标记为y=0;繁殖,当 w T x − θ < 0 w^Tx-\theta<0 wTxθ<0时,模型输出值为 y ^ \hat y y^=0,样本真实标记为y=1。综合两种情况可知,以下公式恒成立
( y ^ − y ) ( w T x − θ ) > = 0 (\hat y-y)(w^Tx-\theta)>=0 (y^y)(wTxθ)>=0
所以,给定数据集T,其损失函数可以定义为:
L ( w , θ ) = ∑ x ∈ M ( y ^ − y ) ( w T x − θ ) L(w,\theta)=\sum_{x\in M}(\hat y-y)(w^Tx-\theta) L(w,θ)=xM(y^y)(wTxθ)
此时损失函数是非负的。如果没有误分类点,损失函数值为0.而且,误分类点越少,误分类点离超平面越近,损失函数值就越小。
损失函数还可以进一步优化,将 θ \theta θ并入 w w w向量中成为第n+1维0,其中x的第n+1维恒为-1。那么损失函数进一步简化为:
L ( w ) = ∑ x ∈ M ( y ^ − y ) w T x L(w)=\sum_{x\in M}(\hat y-y)w^Tx L(w)=xM(y^y)wTx
3)算法
当误分类样本集合M固定时,可以球的损失函数 L ( w ) L(w) L(w)的梯度为
∇ w L ( w ) = ∑ x i ∈ M ( y ^ i − y i ) x i \nabla_wL(w)=\sum_{x_i\in M}(\hat y_i-y_i)x_i wL(w)=xiM(y^iyi)xi
学习算法具体采用的是随机梯度下降法,也即极小化过程中不是一次使M中的所有误分类点的梯度下降,而是一次随机选取一个误分类点使其梯度下降。所以权重 w w w的更新公式为:
w ← w + Δ w w \leftarrow w+\Delta w ww+Δw
Δ w = − η ( y ^ i − y i ) x i = η ( y i − y ^ i ) x i \Delta w=-\eta(\hat y_i-y_i)x_i=\eta(y_i-\hat y_i)x_i Δw=η(y^iyi)xi=η(yiy^i)xi
其中 η \eta η为学习率,最终解出来的w通常不唯一。
从几何角度方便理解一点,如下图所示,
在这里插入图片描述
可以看到红线和绿线都可以把正负样本分开,它们代表了两组 w w w,因此说明解不唯一。

3.神经网络

为了解决线性不可分的数据集(其他的当个神经元的模型也可以结局线性不可分的数据集,只是感知机不可以),提出了由多个神经元构成的神经网络,且用通用近似定理可以证明:只需一个包含足够多神经元的隐层,多层前馈网络(最经典的神经网络之一)就能以任意精度逼近任意复杂度的连续函数。
优点:
既能做回归,也能做分类,而且不需要复杂的特征工程。
需要考虑的问题:

  • 对于具体场景,神经网络该做多深,多宽?(没有理论支撑,都是实践经验)
  • 对于具体场景,神经网络的结构该如何设计才最合理(没有强理论指导)
  • 对于具体场景,神经网络的输出结果该如何解释?(模型的可解释性可以用来指导特征调整)

经典神经网络——多层前馈网络:
每层神经元与下一层神经元全互连,神经元之间不存在同层连接,也不存在跨层连接。
在这里插入图片描述
将神经网络(NN)看作一个特征加工函数
x ∈ R d → N N ( x ) → y = x ∗ ∈ R l x\in R^d \rightarrow NN(x) \rightarrow y=x^* \in R^l xRdNN(x)y=xRl
回归:后面接一个 R l → R R^l \rightarrow R RlR的 神经元
y = w T x ∗ + b y=w^Tx^*+b y=wTx+b
分类:后面接一个 R l → [ 0 , 1 ] R^l \rightarrow [0,1] Rl[0,1]的神经元,例如激活函数为sigmoid函数的神经元
y = 1 1 + e − ( w T x ∗ + b ) y=\frac{1}{1+e^{-(w^Tx^*+b)}} y=1+e(wTx+b)1
神经网络可以自动提取特征不用人为的手工设计特征。
神经网络训练方法——BP算法:
在20世纪80年代之前,尽管神经网络已经存在一段时间,但其实际应用受到了限制,主要原因在于无法有效地训练多层神经网络
在这个背景下,1986年,David E. Rumelhart, Geoffrey E. Hinton, 和 Ronald J. Williams在他们的论文《Learning representations by back-propagating errors》中提出了反向传播算法。这一算法为多层前馈神经网络的训练提供了一个有效的方法,使得神经网络可以在更多复杂问题上展现出强大的表现力。
BP算法是一种基于随机梯度下降的参数更新算法。反向传播算法在处理多层神经网络时,通过链式法则有效地计算梯度,而随机梯度下降则用于基于这些梯度更新权重。反向传播算法与随机梯度下降相辅相成,共同实现了多层神经网络的高效训练。
下面是以输入层第i个神经元与隐层第h个神经元之间的连接全 v i h v_{ih} vih为例推导一下:
损失函数
E k = 1 2 ∑ j = 1 l ( y ^ j k − y j k ) 2 E_k=\frac12\sum^l_{j=1}(\hat y^k_j-y^k_j)^2 Ek=21j=1l(y^jkyjk)2
Δ v i h = − η ∂ E k ∂ v i h \Delta v_{ih}=-\eta \frac{\partial{E_k}}{\partial{v_{ih}}} Δvih=ηvihEk
用链式求导得到
∂ E k ∂ v i h = ∑ j = 1 l ∂ E k ∂ y ^ j k ∗ ∂ y ^ j k ∂ β j ∗ ∂ β j ∂ b h ∗ ∂ b h ∂ α h ∗ ∂ α h ∂ v i h \frac{\partial{E_k}}{\partial{v_{ih}}}=\sum^l_{j=1}\frac{\partial{E_k}}{\partial{\hat y^k_j}}*\frac{\partial{\hat y^k_j}}{\partial{\beta_j }}*\frac{\partial{\beta_j }}{\partial{b_h}}*\frac{\partial{b_h}}{\partial{\alpha_h}}*\frac{\partial{\alpha_h}}{\partial{v_{ih}}} vihEk=j=1ly^jkEkβjy^jkbhβjαhbhvihαh

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[数据集][目标检测]轮椅检测数据集VOC+YOLO格式13826张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;13826 标注数量(xml文件个数)&#xff1a;13826 标注数量(txt文件个数)&#xff1a;13826 标…

Python学习笔记28:进阶篇(十七)常见标准库使用之质量控制中的代码质量与风格第二部分

前言 本文是根据python官方教程中标准库模块的介绍&#xff0c;自己查询资料并整理&#xff0c;编写代码示例做出的学习笔记。 根据模块知识&#xff0c;一次讲解单个或者多个模块的内容。 教程链接&#xff1a;https://docs.python.org/zh-cn/3/tutorial/index.html 质量控制…

【浦语大模型开源探索】InternLM实战营第二期:技术笔记与全链路解析

本次课程链接在GitHub上&#xff1a; InternLM/Tutorial at camp2 (github.com) 第一次课程录播链接&#xff1a; 书生浦语大模型全链路开源体系_哔哩哔哩_bilibili InternLM2技术报告&#xff1a; arxiv.org/pdf/2403.17297.pdf 一、书生浦语大模型全链路开源体系笔记 Int…

太速科技-FMC209-基于FMC的4路125MAD输入、2路1GDA输出子卡

FMC209-基于FMC的4路125MAD输入、2路1GDA输出子卡 一、板卡概述 本子卡基于FMC连接器实现4路125M采样率AD输出&#xff0c;两路1G采样率DA输出子卡&#xff0c;板卡默认由FMC连接器12V供电&#xff0c;支持外参考时钟&#xff0c;外输入时钟&#xff0c;外触发。 …

交互未来入选“北京市通用人工智能产业创新伙伴计划”模型伙伴

在“开启数智新时代&#xff0c;共享数字新未来”的宏大主题下&#xff0c;2024全球数字经济大会于近日盛大开幕&#xff0c;汇聚全球智慧&#xff0c;共谋数字经济新篇章。大会首日&#xff0c;备受瞩目的人工智能专题论坛率先拉开帷幕&#xff0c;以“应用即未来——大模型赋…

视频太大发不出去怎么处理,视频太大发不了邮件怎么办

在数字化时代&#xff0c;视频已成为我们分享生活、传递信息的重要方式。然而&#xff0c;当遇到视频文件过大&#xff0c;无法发送或分享时&#xff0c;你是否感到困扰&#xff1f;别担心&#xff0c;本文将为你揭秘轻松解决视频太大发不了的问题。 电脑频编辑器可以用于简单的…

图书借阅小程序论文(设计)开题报告

一、课题的背景和意义 近些年来&#xff0c;随着移动互联网巅峰时期的来临&#xff0c;互联网产业逐渐趋于“小、轻、微”的方向发展&#xff0c;符合轻应用时代特点的各类技术受到了不同领域的广泛关注。在诸多产品中&#xff0c;被誉为“运行着程序的网站”之名的微信小程序…

【大数据】—量化交易实战案例(海龟交易策略)

声明&#xff1a;股市有风险&#xff0c;投资需谨慎&#xff01;本人没有系统学过金融知识&#xff0c;对股票有敬畏之心没有踏入其大门&#xff0c;今天用另外一种方法模拟炒股&#xff0c;后面的模拟的实战全部用同样的数据&#xff0c;最后比较哪种方法赚的钱多。 海龟交易…

LaTeX表格灵活设置列宽

一些基本的插入表格的操作见&#xff1a;https://blog.csdn.net/gsgbgxp/article/details/129457872 遇到问题先查阅《IShort》和刘海洋老师的《LaTeX入门》。 设置表格列宽基础操作&#xff08;不借助tabularx&#xff09; 先从一个简单表格开始 \begin{table}[!h]\centeri…

软件确认测试和系统测试包括哪些测试内容?有什么区别?

一、软件确认测试 软件确认测试&#xff0c;顾名思义&#xff0c;是为了确认软件的正确性和完整性而进行的测试过程。它旨在验证软件是否符合用户需求和软件开发规范。测试内容包括&#xff1a; 1、功能确认&#xff1a;通过对软件各项功能进行测试&#xff0c;验证其是否按照…

c语言----队列

很久没有写文章了。因为放假了嘛&#xff0c;给自己稍微放松了一下&#xff0c;所以最近的更新很慢。呜呜下一次一定改。然后咧。今天我想与大家分享的是队列。虽然这个知识点我们应该在讲了堆的实现就应该写的&#xff0c;但是后面忘了&#xff0c;以为自己是写了的。但是昨天…

sql查询练习

1.表的结构 课程表&#xff1a;课程编号cid&#xff0c;课程名称canme&#xff0c;老师tid&#xff0c; 教师表&#xff1a;教师tid&#xff0c;教师姓名tname 分数表&#xff1a;学生student_sid&#xff0c;课程 cours_id&#xff0c;&#xff0c;分数score 学生表&#xff…

DC/AC电源模块为现代电子设备提供稳定的能源

BOSHIDA DC/AC电源模块为现代电子设备提供稳定的能源 DC/AC电源模块是一种重要的电子设备&#xff0c;它为现代电子设备提供稳定的能源。在今天的高科技社会中&#xff0c;电子设备已经成为人们生活和工作的重要组成部分。从家用电器到计算机、手机、汽车和航天航空设备&…

基于antv x6实现的组织架构图

X6 是基于 HTML 和 SVG 的图编辑引擎&#xff0c;基于 MVC 架构&#xff0c;用户更加专注于数据逻辑和业务逻辑。 一、业务背景 将组织树形结构图形化&#xff0c;更直观的展示个人所在的组织架构。 二、功能点 组织结构按需渲染&#xff0c;支持层级展开、收缩按需求自定义…

【软件测试】之黑盒测试用例的设计

&#x1f3c0;&#x1f3c0;&#x1f3c0;来都来了&#xff0c;不妨点个关注&#xff01; &#x1f3a7;&#x1f3a7;&#x1f3a7;博客主页&#xff1a;欢迎各位大佬! 文章目录 1.测试用例的概念2.测试用例的好处3. 黑盒测试用例的设计3.1 黑盒测试的概念3.2 基于需求进行测…

AI绘画Stable Diffusion画全身图总是人脸扭曲?ADetailer插件实现一键解决!

大家好&#xff0c;我是向阳 你是否遇到过SD生成的人物脸部扭曲、甚至令人恶心的情况&#xff1f;也曾感到束手无策&#xff1f;别担心&#xff0c;这份教程专为你而来。 在使用SD生成人物全身照时&#xff0c;你可能经常发现人物的脸部会出现扭曲问题。这是因为人物面部像素…

【前端】IntersectionObserver 实现图片懒加载和无限滚动

【前端】IntersectionObserver 实现图片懒加载和无限滚动 在前端开发中&#xff0c;性能优化是一个重要的考量因素。随着现代网页和应用的复杂性增加&#xff0c;确保页面快速加载和流畅运行变得越来越重要。本文将介绍一种强大的工具——IntersectionObserver API&#xff0c…

LabVIEW新能源汽车电池性能测试系统

新能源汽车的核心部件之一是电池&#xff0c;其性能直接关系到整车的续航里程、安全性和寿命。为了确保电池的性能和可靠性&#xff0c;测试是必不可少的环节。本文介绍了一种基于LabVIEW的新能源汽车电池性能测试系统&#xff0c;通过LabVIEW与数据采集设备的无缝集成&#xf…

Unity 实现UGUI 简单拖拽吸附

获取鼠标当前点击的UI if(RectTransformUtility.RectangleContainsScreenPoint(rectTransform, Input.mousePosition)) {return rectTransform.gameObject; } 拖拽 在Update 中根据鼠标位置实时更新拖拽的图片位置。 itemDrag.transform.position Input.mousePosition; …

秒拿AI模型API Key!Chat2DB AI模型切换实用秘籍

智谱AI&#xff08;ZhiPu AI&#xff09; 智谱 AI 是由清华大学计算机系技术成果转化而来的公司&#xff0c;致力于打造新一代认知智能通用模型。 1.申请调用权限 智谱AI开放平台网址&#xff1a;https://open.bigmodel.cn/ 点击开始使用&#xff0c;进行登录/注册。 智谱A…