第五章 神经网络

一、神经网络

神经网络是模拟人脑神经系统的计算模型,由大量简单的处理单元(神经元)相互连接而成。它能通过学习数据自动调整参数,完成分类、预测等任务。

二、神经元模型:神经网络的基础

神经元是神经网络的基本单元,就像大脑中的神经细胞。每个神经元接收输入信号,处理后产生输出。

1. 工作原理

神经元接收来自其他神经元的输入信号,每个输入有权重(表示重要性),总输入减去阈值后,通过激活函数决定输出。激活函数就像"开关",控制神经元是否"兴奋"。

2. 数学表示

3. 激活函数

阶跃函数:理想中的激活函数,输出 0 或 1(不连续)

Sigmoid函数:实际常用,将输入压缩到 (0,1) 之间,连续可导

三、感知机(Perceptron)

1. 结构

最简单的神经网络:只有输入层和输出层

输出层使用阶跃函数作为激活函数

2. 学习规则(重点公式)

对于每个训练样本 (x,y),如果预测错误(y^≠y),则更新权重:

η:学习率,控制更新步长

y−y^​:误差信号
若感知机对训练样例(x,y)预测正确,即y=y^,则感知机不发生变化,否则将根据错误的程度进行权重调整.

3. 局限性

感知机只能解决线性可分问题(如与、或、非)

无法处理异或(XOR)等非线性问题

四、多层前馈神经网络

1. 结构

包含输入层、隐藏层、输出层

每层神经元与下一层全连接

层与层之间不存在跨层或反馈连接

2. 表达能力

只要隐藏层神经元足够多,可以逼近任意复杂度的连续函数

五、误差逆传播算法(BP算法)

BP算法是训练多层网络的关键,通过反向传播误差来调整权重和阈值,使网络输出接近真实值。

1. 工作流程

  1. 前向传播:输入信号通过网络计算输出。

  2. 计算误差:比较输出与真实值。

  3. 反向传播:从输出层到隐层,根据误差调整参数。

2. 关键公式

δ:误差信号,表示该神经元对总误差的"责任"

从输出层开始,逐层向前传递误差,并更新权重

使用梯度下降法最小化误差

3.通俗解释

BP算法就像"纠错学习"------网络先猜答案,然后根据错误反向调整每个连接的"强度",逐步改进。

五、全局最小与局部极小:训练中的挑战

神经网络训练时,目标是最小化误差,但可能陷入局部最优(像在山谷中找不到最低点),而非全局最优。

问题描述:误差函数可能有多个"低点",局部极小是局部最低点,全局最小是整体最低点。图5.10直观展示了这一点。

解决策略:多种方法,如用不同初始参数多次训练、模拟退火(以概率接受更差解跳出局部极小)、随机梯度下降(加入随机性)等。

六、其他常见神经网络:扩展应用

RBF网络:使用径向基函数作为激活函数,适合函数逼近。训练分两步:确定中心,然后用BP调整参数。

ART网络:自适应谐振理论,能增量学习,避免忘记旧知识。它通过竞争机制动态添加神经元。

SOM网络:自组织映射,用于降维和可视化,保持数据拓扑结构。如图5.11所示,神经元在二维网格上竞争。

级联相关网络:结构自适应,训练时动态添加隐层神经元。图5.12展示了训练过程。

Elman网络:递归神经网络,允许反馈连接,能处理时间序列数据。

Boltzmann机:基于能量的模型,包括受限Boltzmann机(RBM),用于深度学习预训练。

七、深度学习:神经网络的进化

深度学习是神经网络的延伸,通过增加隐层数提升模型能力。

核心思想:使用多隐层网络进行特征学习,自动从数据中提取高层特征。例如,深度信念网络(DBN)用RBM堆叠预训练,卷积神经网络(CNN)用权共享减少参数,如图5.15用于手写数字识别。

优势:深度学习能处理复杂任务,如图像识别,避免手动设计特征。

相关推荐
Mark-Wang4 分钟前
每天介绍一家新质生产力公司4
人工智能
AI视觉网奇17 分钟前
智能办公 大模型总结
人工智能
AIGC大时代42 分钟前
有些内容AI写得再顺都不一定稳,这8个地方导师一问就露馅
人工智能·codex·ai工具·aiwritepaper·ai学术写作
CODER03041 小时前
Anaconda和Mamba创建环境管理包常用命令合集
python·深度学习·conda·虚拟环境·mamba·常用命令大全
skywalk81631 小时前
我现在手里有comate、dumate、 workbuddy和trae四个agent,你看这四个任务怎么分合适?
人工智能·deepseek
用户0617708544951 小时前
Agent 办事失败兜底技术实现方案:从失败模型到生产级容错体系
人工智能
是大乔家的1 小时前
网文分销商必备神器:用知漫剧快速将授权小说转化为连载视频引流
人工智能
ITmaster07311 小时前
面试官坏笑:“你用 AI 编程一年了,怎么保证 Claude Code 写出来的代码是对的?”我:“直接上 Claude Fable 5 啊!”
人工智能
英雄6271 小时前
给 DeepSeek Harness Web 写了一个美化插件
人工智能
dogstarhuang1 小时前
OpenAI GPT-5.6 降价后如何重算 API 账单?多模型路由与成本治理实战
服务器·网络·人工智能·大模型·api·ai应用开发·接口管理