神经网络是模仿生物神经元层级结构的非线性计算模型是深度学习的核心基础核心能力是通过多层非线性变换自动学习数据的层级化特征 —— 从低级的边缘、纹理到高级的语义、物体结构无需人工设计特征1.神经网络的基本构成部分1.1 神经元神经元在左边会接受 n 个数作为输入然后在右边产生一个数的输出。这个神经元由参数 w 和 b 以及激活函数 f 构成。神经元有三个输入对应的三个权重分别为。我们会计算一个乘积和然后将这个值与偏置相加。这相当于输入有四个其中第四个恒为1而第四个输入对应的权重为这样偏置的计算可以统一到前面计算乘积和的步骤中。接着这个乘积和会经过一个非线性的激活函数然后就会得到这一个神经元的输出。计算公式为1.2 单层神经网络利用多个这样的神经元联系在一起可以构成一个只有一层的的神经网络1.3 多层神经网络单层神经网络可以继续叠加类似的层变成一个多层的神经网络其中每层都有若干个神经元。计算的时候从最左边的输入开始依次计算每一层的结果其中每一层的输出结果会作为下一层的输入这就是前向计算通常把在输入之上添加的多层网络称之为隐藏层输入部分称之为输入层为了得到输出结果我们需要在神经网络最右边再网络的最后一层即输出层输入层接收输入特征隐藏层进行数据处理和特征转换。隐藏层的神经元个数通常是一个超参数输出层输出结果通常用于分类任务如Softmax或回归任务如线性回归1.4 非线性激活函数如果神经网络中并没有激活函数神经网络中就只存在线性运算了比如对于两层的神经网络两层的运算其实可以被表示成单层的运算也就是说在这样情况下多层网络和单层网络的表达能力是相同的。因此我们需要引入非线性的激活函数这样可以防止多层神经网络塌缩为一层的神经网络我们也可以通过更加复杂的激活函数来加强多层网络的表达能力。常见的激活函数1.Sigmoid公式优点输出有界梯度计算简单导数为适合二分类任务的输出层。缺点输入绝对值 5 时导数趋近于 0存在严重梯度消失输出非零均值权重收敛慢指数运算计算成本高。2.Tanh双曲正切函数公式特点零均值输出解决了 Sigmoid 的非零均值缺陷收敛速度显著快于 Sigmoid早期广泛用于 RNN/LSTM。缺点仍存在梯度消失问题输入绝对值 3 时导数趋近于 0仍有指数运算成本。3.Softmax 函数公式n为类别总数核心特点将多维度输入转化为归一化的类别概率分布是多分类任务的标准输出层激活函数仅用于网络输出层隐藏层几乎不使用。1.5 输出形式不使用激活函数直接线性输出使用sigmoid激活函数使用softmax激活函数2.神经网络的训练方式训练流程数据准备 → 搭模型 → 选损失 / 优化器 → 前向算损失 → 反向算梯度 → 优化器更新参数 → 多轮迭代 验证 早停 → 测试评估2.1 数据准备收集数据清洗去脏数据、异常值、重复标注分类 / 回归标签划分训练集 / 验证集 / 测试集70%/20%/10%预处理归一化 / 标准化比如缩到 0~1 或均值 0 方差 1编码one-hot、词嵌入增强图像翻转、裁剪文本随机删词2.2 构建网络结构定义模型选择网络类型MLP、CNN、RNN、Transformer…堆叠层线性层 / 卷积层激活函数ReLU/GELU池化、Dropout、BN防止过拟合定义前向传播输入 → 逐层计算 → 输出预测值2.3 选择损失函数回归均方误差分类交叉熵2.4 选择优化器梯度下降法目标是最小化损失函数核心思想是沿损失函数梯度的反方向迭代更新参数逐步逼近损失函数的全局最小值方向损失函数上升最快的方向大小上升的速率斜率公式α是学习率控制每一步走多远批量梯度下降BGD更新规则用全部m个样本计算梯度再更新参数每轮迭代用所有数据公式同上述线性回归示例优点梯度计算稳定、无噪声收敛到全局最优凸函数缺点超慢、内存开销大大数据集无法一次性载入适用小数据集、凸损失函数如简单线性回归。随机梯度下降SGD更新规则每次只用 1 个随机样本计算梯度立即更新参数1 样本 1 次更新公式优点速度极快、适合大数据逐样本更新内存友好可跳出局部最优缺点梯度噪声大、震荡严重单样本梯度不准收敛到最优附近后难收敛适用大数据集、在线学习、深度学习标准 SGD。小批量梯度下降Mini-Batch GD更新规则每次用 1 个小批量batchb个样本1bm计算梯度更新参数公式优点BGDSGD 折中——速度快、梯度噪声小、收敛稳定GPU 并行高效缺点需调batch size常见 32/64/128适用几乎所有深度学习场景CNN/Transformer工业界默认首选。算法数据使用速度梯度噪声收敛性适用场景BGD全量样本最慢无稳定到全局最优小数据、凸函数SGD单样本最快极大震荡、难精调在线学习、大数据Mini-Batch小批量32/64快小稳定、易收敛深度学习、工业界2.5 前向传播输入一个 batch 数据从第一层到最后一层逐层计算得到预测值 y^​计算损失 J2.6 反向传播核心逻辑先算输出层误差再反向逐层传递误差最后用误差算出所有参数的梯度和梯度下降是互补关系BP 算梯度梯度下降更新参数二者配合完成神经网络训练输出层误差方程BP1作用计算输出层的误差项δL是反向传播的起点含义输出层的误差 损失对输出层激活值的偏导 × 输出层激活函数的导数分类任务最常用的组合交叉熵损失 Softmax 激活这个公式会简化为预测值减真实值无梯度衰减完美规避梯度消失是工程首选。误差反向传播方程BP2作用将后一层的误差传递到前一层实现误差的反向流动是 BP 的核心含义当前层的误差 后一层权重的转置 × 后一层误差 × 当前层激活函数的导数关键误差从输出层往输入层逐层传递每一层的误差仅依赖后一层的误差和当前层的激活导数无需重复计算极大提升了效率偏置的梯度方程BP3作用用当前层的误差项直接算出偏置bl的梯度含义偏置的梯度完全等于当前层的误差项无需额外计算权重的梯度方程BP4作用用当前层的误差项和上一层的激活输出算出权重Wl的梯度含义权重的梯度 当前层误差 × 上一层激活输出的转置关键前向传播时已经保存了每一层的al−1反向传播时直接复用无需重复计算2.7 参数更新用反向传播算出的梯度按优化器规则实际更新参数2.8 循环训练 验证 早停对多个 Epoch 循环遍历所有 batch前向 → 反向 → 更新每轮结束用验证集算 loss/acc监控训练集 loss不断下降验证集 loss下降后平稳上升 过拟合早停验证集不涨了就停最后用测试集评估最终性能从未见过的数据3.常见的神经网络结构3.1 卷积神经网络CNN定义卷积神经网络是一种通过局部连接、权值共享和池化操作来高效、分层地提取输入数据空间特征的神经网络架构结构组成输入层输入图像卷积层特征提取激活层引入非线性变换池化层降维、防止过拟合输入层在处理图像的CNN中输入层一般代表了一张图片的像素矩阵。可以用三维矩阵代表一张图片。三维矩阵的长和宽代表了图像的大小而三维矩阵的深度代表了图像的色彩通道。比如黑白图片的深度为1而在RGB色彩模式下图像的深度为3在输入层进行输入时便是将对应图片的三个通道的矩阵进行输入卷积层卷积操作的完整过程卷积核在输入特征图上按设定的步长滑动每滑动到一个位置卷积核的权重和对应区域的像素值逐元素相乘再求和加上偏置得到输出特征图的一个像素值滑动完成后生成一张新的特征图输出通道数 卷积核的个数。单通道输入单卷积核多通道输入单卷积核多通道输入多卷积核池化层通过对特征图进行下采样来降低维度、增强模型鲁棒性最大池化平均池化输入特征图最大池化平均池化说明边缘检测图保留边缘强弱化边缘最大池化更适合背景均匀图随机选点保持均匀平均池化更稳定稀疏激活图保留激活点稀释信号最大池化更有效全连接层将卷积 / 池化提取的特征映射到输出类别数学表示输出 输入 * 权重矩阵 偏置向量作用特征整合将卷积/池化提取的局部特征整合为全局特征输出固定大小向量用于后续任务分类决策将学到的特征映射到具体类别或数值完成分类/回归等最终决策特征降维将高维特征映射到低维空间实现特征选择、减少计算量、防止过拟合3.2Transformer定义一种用于自然语言处理NLP和其他序列到序列任务的深度学习模型架构神经网络组成1.input embedding