【大模型】深度学习之神经网络
神经网络是深度学习的核心模型,其灵感来源于人脑神经元的连接方式,通过模拟生物神经系统的信息处理机制,实现对复杂数据的学习与建模。它由大量人工神经元(节点)通过权重连接形成网络结构,能够自动从数据中学习特征规律,在图像识别、自然语言处理、语音识别等领域实现了突破性进展。
一、神经网络的基本概念与生物类比
神经网络的设计源于对生物神经元的模仿:
- 生物神经元:由细胞体、树突(接收信号)、轴突(传递信号)组成,当树突接收的信号总和超过阈值时,神经元会被激活并通过轴突传递信号给其他神经元。
- 人工神经元:简化了生物神经元的结构,核心功能是“接收输入→加权计算→激活输出”,是神经网络的基本组成单元。
二、人工神经元(感知机)的结构与原理
单个人工神经元(也称“感知机”)是神经网络的最小单元,其结构可拆解为4个核心部分:
1. 输入(Input)
接收外部数据或其他神经元的输出,记为 x1,x2,...,xnx_1, x_2, ..., x_nx1,x2,...,xn(例如图像的像素值、文本的词向量)。
2. 权重(Weight)与偏置(Bias)
- 权重(w1,w2,...,wnw_1, w_2, ..., w_nw1,w2,...,wn):衡量每个输入的重要性,类比生物神经元中突触的连接强度(权重越大,对应输入对输出的影响越强)。
- 偏置(bbb):调整神经元的激活阈值,类比生物神经元的“激发阈值”(避免输入全为0时输出为0,增加模型灵活性)。
3. 加权求和(Linear Combination)
对输入与权重进行线性组合,再加上偏置,得到“净输入”:
z=w1x1+w2x2+...+wnxn+b=∑i=1nwixi+b z = w_1x_1 + w_2x_2 + ... + w_nx_n + b = \sum_{i=1}^n w_ix_i + b z=w1x1+w2x2+...+wnxn+b=i=1∑nwixi+b
4. 激活函数(Activation Function)
对净输入 zzz 进行非线性变换,输出神经元的最终信号(aaa)。其核心作用是引入非线性——若没有激活函数,无论网络有多少层,最终都等价于单层线性模型,无法学习复杂数据的非线性规律。
常用激活函数:
- Sigmoid:将输出压缩到(0,1),适用于二分类输出层,但易导致梯度消失(输入过大/过小时导数接近0)。
σ(z)=11+e−z \sigma(z) = \frac{1}{1 + e^{-z}} σ(z)=1+e−z1
- Tanh:将输出压缩到(-1,1),均值为0,比Sigmoid更常用,但同样存在梯度消失问题。
tanh(z)=ez−e−zez+e−z \tanh(z) = \frac{e^z - e^{-z}}{e^z + e^{-z}} tanh(z)=ez+e−zez−e−z
- ReLU(Rectified Linear Unit):输入为正时输出自身,否则输出0,计算高效且缓解梯度消失,是目前最常用的激活函数。
ReLU(z)=max(0,z) \text{ReLU}(z) = \max(0, z) ReLU(z)=max(0,z)
- Leaky ReLU:对ReLU的改进,输入为负时保留小斜率(如0.01),避免“神经元死亡”(部分神经元永久输出0)。
三、神经网络的层级结构
神经网络由多层人工神经元连接而成,按功能可分为3类层级:
1. 输入层(Input Layer)
- 直接接收原始数据(如图像的像素矩阵、文本的词向量序列),无计算过程,仅传递输入。
- 神经元数量等于输入数据的维度(例如:32×32的RGB图像,输入层神经元数为32×32×3=3072)。
2. 隐藏层(Hidden Layer)
- 位于输入层与输出层之间,是网络“学习特征”的核心,通过多层叠加实现“特征从低级到高级”的提取(例如:图像识别中,浅层隐藏层学习边缘/纹理,深层学习部件/物体)。
- 层数和每层神经元数量是模型的关键超参数:
- 层数越多(“深度越深”),网络拟合复杂规律的能力越强,但训练难度和过拟合风险也越高;
- 神经元数量过少可能导致欠拟合(无法学习数据规律),过多则可能过拟合(记住噪声)。
3. 输出层(Output Layer)
- 输出模型的最终结果,神经元数量由任务决定:
- 二分类任务:1个神经元(输出0/1或概率,如Sigmoid激活);
- 多分类任务:( k ) 个神经元(( k ) 为类别数,如Softmax激活,输出每个类别的概率);
- 回归任务:1个神经元(输出连续值,如房价预测,通常无激活函数)。
四、神经网络的工作原理:前向传播与反向传播
神经网络的训练过程分为两个核心阶段:
1. 前向传播(Forward Propagation)
- 定义:从输入层到输出层的“信号传递”过程,计算模型的预测结果。
- 过程:输入数据通过隐藏层逐层计算(加权求和+激活),最终从输出层得到预测值 y^\hat{y}y^。
- 示例:假设网络为“输入层(2个神经元)→隐藏层(1层,2个神经元)→输出层(1个神经元)”,则前向传播为:
- 隐藏层神经元输出:
a11=σ(w111x1+w121x2+b11)a_1^1 = \sigma(w_{11}^1x_1 + w_{12}^1x_2 + b_1^1)a11=σ(w111x1+w121x2+b11)
a21=σ(w211x1+w221x2+b21)a_2^1 = \sigma(w_{21}^1x_1 + w_{22}^1x_2 + b_2^1)a21=σ(w211x1+w221x2+b21) - 输出层神经元输出:
y^=σ(w12a11+w22a21+b2)\hat{y} = \sigma(w_1^2a_1^1 + w_2^2a_2^1 + b^2)y^=σ(w12a11+w22a21+b2) (wlw^lwl表示第lll层的权重)
- 隐藏层神经元输出:
2. 反向传播(Backward Propagation)
- 定义:通过计算“预测值与真实值的误差”,反向调整各层权重和偏置,最小化误差的过程(核心是梯度下降算法)。
- 步骤:
- 计算损失:用损失函数(如均方误差MSE、交叉熵CE)衡量预测值 y^\hat{y}y^ 与真实值 yyy 的差距(损失 LLL);
- 反向求导:通过链式法则,从输出层到输入层逐层计算损失对各权重/偏置的梯度(∂L∂w\frac{\partial L}{\partial w}∂w∂L、∂L∂b\frac{\partial L}{\partial b}∂b∂L);
- 更新参数:根据梯度方向,用优化器(如SGD、Adam)调整权重和偏置(例如:w=w−η⋅∂L∂ww = w - \eta \cdot \frac{\partial L}{\partial w}w=w−η⋅∂w∂L,η\etaη 为学习率)。
五、常见神经网络类型及应用
根据结构和任务的不同,神经网络衍生出多种变体,以下是最具代表性的类型:
1. 多层感知机(MLP,Multi-Layer Perceptron)
- 结构:全连接网络(每层神经元与下一层所有神经元连接),仅包含输入层、隐藏层、输出层。
- 特点:适用于处理低维结构化数据(如表格数据),但对高维数据(如图像、文本)效率低(参数过多)。
- 应用:信用卡欺诈检测、房价预测、简单分类任务。
2. 卷积神经网络(CNN,Convolutional Neural Network)
- 核心创新:引入卷积层和池化层,利用“局部感受野”“权值共享”减少参数,擅长提取空间特征(如图像的局部纹理、形状)。
- 关键结构:
- 卷积层:用卷积核(过滤器)滑动计算局部区域的加权和,提取局部特征(如边缘、角点);
- 池化层:对卷积结果降采样(如最大池化取区域最大值),减少数据量并增强鲁棒性;
- 全连接层:将卷积层输出的特征映射 flatten 后,通过MLP输出结果。
- 应用:图像分类(ResNet、VGG)、目标检测(YOLO、Faster R-CNN)、人脸识别、医学影像分析。
3. 循环神经网络(RNN,Recurrent Neural Network)
- 核心创新:引入“时序记忆”,通过神经元与自身的循环连接,处理序列数据(如文本、语音、时间序列)。
- 改进版本:
- LSTM(长短期记忆网络):解决RNN的“梯度消失/爆炸”问题,能捕捉长距离时序依赖(如“上下文语义”);
- GRU(门控循环单元):简化LSTM结构,训练效率更高。
- 应用:机器翻译、文本生成、语音识别、股票价格预测。
4. Transformer
- 核心创新:基于“自注意力机制”,能直接捕捉序列中任意两个元素的依赖关系(无需像RNN那样按顺序处理),并行计算效率远超RNN。
- 结构:由编码器(提取输入特征)和解码器(生成输出)组成,每个模块包含多头自注意力层和前馈网络。
- 应用:NLP领域的革命性模型(如BERT、GPT系列),支持文本翻译、问答系统、文本摘要、大语言模型(LLM)。
5. 生成对抗网络(GAN,Generative Adversarial Network)
- 核心思想:由“生成器”和“判别器”两个网络对抗训练:
- 生成器:生成类似真实数据的样本(如假图像、假文本);
- 判别器:区分样本是真实数据还是生成器伪造的。
- 应用:图像生成(如GAN生成逼真人脸)、风格迁移(将照片转为油画风格)、数据增强。
六、神经网络的训练挑战与优化技术
训练深层神经网络时,常面临过拟合、梯度消失/爆炸等问题,需通过以下技术优化:
- 正则化:限制模型复杂度(如L1/L2正则化惩罚大权重,Dropout随机丢弃部分神经元);
- 批归一化(Batch Normalization):对每层输入标准化,加速训练收敛,缓解梯度问题;
- 学习率调度:动态调整学习率(如衰减学习率、自适应学习率Adam),避免参数更新震荡;
- 数据增强:通过旋转、裁剪等方式扩充训练数据,提升模型泛化能力。
七、神经网络的发展与意义
- 发展历程:
- 1957年:感知机(单层神经网络)提出,奠定基础;
- 1986年:反向传播(BP)算法解决多层网络训练问题;
- 2012年:AlexNet(深层CNN)在ImageNet竞赛中碾压传统方法,标志深度学习复兴;
- 2017年:Transformer提出,推动NLP领域革命(如GPT、BERT)。
- 核心意义:实现“端到端学习”(从原始数据直接输出结果,无需人工设计特征),极大推动了AI在复杂任务中的应用,是当前计算机视觉、自然语言处理等领域的核心技术。
总之,神经网络通过模拟人脑的连接结构,结合海量数据和强大计算能力,实现了对复杂规律的自动学习,成为深度学习的“引擎”,并持续推动人工智能的突破。