《深度学习》—— 神经网络模型中的损失函数及正则化惩罚和梯度下降

文章目录

前言

  • 在神经网络中,损失函数正则化惩罚梯度下降是三个关键的概念,它们共同作用于网络的训练过程,以提升网络的性能和泛化能力。
  • 神经网络模型结构如下图所示:
  • 在构建好一个神经网络模型后,为了让模型得出的结果更加的准确,那么必须对模进行训练,找到最接近真实结果的模型
  • 定义损失函数用来判断模型预测的结果和真实值的误差,在对损失函数添加正则化惩罚项,提高对输入数据的拟合效果,达到好的泛化能力
  • 为了达到最小的误差值,需要运用梯度下降的方法来找到模型中最优的权重参数

一、损失函数

  • 损失函数是用来评估神经网络预测值与实际值之间差异的函数 。通过最小化损失函数的值,网络可以学习到如何更好地进行预测。不同类型的任务需要不同类型的损失函数,常见的损失函数包括:
    • 交叉熵损失函数
    • 均方差损失函数
    • 0-1损失函数
    • 平均绝对差损失函数
    • 合页损失函数
  • 示例:多分类的情况下,如何计算损失值呢?
    • softmax交叉熵损失函数多用于实现分类问题,用于多分类公式如下:
      • yi表示第 i 个预测的结果值
    • 下面是猫、狗、羊的照片,标签分别为0、1、2
    • 如果我们传入猫的照片进行训练,训练过程如下图所示:
    • 首先先对训练后的各目标结果进行e的指数倍放大
    • 再将其值进行归一化,得到各个结果的概率
    • 最后通过损失函数计算出每个标签结果上的损失值
    • 由于我们输入的是猫的照片进行训练,所以只需要关注第一个输出神经元的结果,如果损失值越小,说明越靠近真实结果,模型的效果也就越好

二、正则化惩罚

  • 正则化是一种减少过拟合的技术 ,它通过向损失函数中添加一个正则化项来实现。正则化项通常是对模型参数(如权重)的某种形式的惩罚,旨在限制模型的复杂度,从而提高其泛化能力。常见的正则化方法包括:

    • L1正则化:向损失函数中添加权重绝对值的和作为惩罚项。L1正则化有助于产生稀疏的权重矩阵,即许多权重为零,这有助于模型的解释性,并可能减少计算量。

    • 公式如下:

    • L2正则化:向损失函数中添加权重平方和的一半作为惩罚项。L2正则化有助于减小权重的值,从而防止模型过于复杂,避免过拟合。

    • 公式如下:

      • 各参数的含义与L1正则化中的相同
  • 下面通过一个实例来说明为什么要增加正则化惩罚:

    • w1和w2与输入的乘积都为1,但w2 与每一个输入数据进行计算后都有数据,使得w2会学习到每一个特征信息。
    • 而w1只和第1个输入信息有关系,容易出现过拟合现象,因此w2的效果会比w1 好
    • 因此需要引入正则化惩罚项来避免第一种权重值的情况

三、梯度下降

  • 损失函数具有良好的梯度信息,使得优化算法(如梯度下降)能够有效地更新模型参数
  • 在神经网络中,我们希望通过调整网络参数(如权重和偏置)来降低损失函数的值。梯度下降算法通过计算损失函数关于网络参数的梯度,并沿着梯度的反方向更新参数,从而逐步逼近损失函数的最小值。
  • 具体步骤如下:
    • 1.计算梯度:首先,需要计算损失函数关于每个参数的梯度。这通常通过反向传播算法(Backpropagation)来实现,该算法从网络的输出层开始,逐层计算梯度,直到到达输入层。
    • 2.更新参数 :然后,使用计算得到的梯度来更新网络的参数。更新规则通常遵循以下形式:
    • 3.重复迭代:不断重复上述步骤,直到满足某个停止条件(如达到最大迭代次数、损失函数值低于某个阈值或梯度接近于零)
  • 用下图来解释梯度下降的过程:
    • 参数取不同的初始值,可能会得到不同的最小损失值,但是每个初始的参数只是得到了此模型局部的最小损失值
    • 就好像当你处在一个谷底时,只会认为此时的位置是最低的,但并不知道其他的低谷处还有更低的位置
    • 梯度下降就是通过不断地寻找梯度方向和计算得到不同的损失值,直到找到最优和满足条件的值为止
相关推荐
明志数科14 分钟前
具身智能数据工程观察:“数据筑基“时代的数据底座建设路径
人工智能·机器人
m0_614523551 小时前
普通视频怎么做多场景一镜到底:路线设计、逐段衔接与整体验收
人工智能·音视频
海宇服务2 小时前
零信任架构实战:基于海宇对外投资历史查询服务构建自动化供应商准入网关
运维·人工智能·架构·自动化
东风破_2 小时前
别急着上 Agentic RAG:先用 LangGraph 把最小 RAG 跑明白
人工智能
LaughingZhu2 小时前
Product Hunt 每日热榜 | 2026-09-12
人工智能·深度学习·神经网络·搜索引擎·百度
天真小巫2 小时前
2026.9.13总结(工作量日益繁重的当下,AI如何提效)
人工智能
Zguigo2 小时前
【CUDA1】GPUvsCPU,CUDA Kernel
人工智能·pytorch·深度学习
thesky1234562 小时前
用 ONNX Runtime 把 PyTorch 模型变成跨平台极速推理引擎:导出、优化、量化完整实
人工智能·深度学习·模型部署
米小虾3 小时前
把 KV Cache 从 3514 字节压到 890 字节:DeepSeek V4.1-Flash 动了什么,又没动什么
人工智能
锋行天下3 小时前
LangGraph 进阶:Command + Send 动态控制流、并行 Map-Reduce 实战与踩坑
人工智能