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

文章目录

前言

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

一、损失函数

  • 损失函数是用来评估神经网络预测值与实际值之间差异的函数 。通过最小化损失函数的值,网络可以学习到如何更好地进行预测。不同类型的任务需要不同类型的损失函数,常见的损失函数包括:
    • 交叉熵损失函数
    • 均方差损失函数
    • 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.重复迭代:不断重复上述步骤,直到满足某个停止条件(如达到最大迭代次数、损失函数值低于某个阈值或梯度接近于零)
  • 用下图来解释梯度下降的过程:
    • 参数取不同的初始值,可能会得到不同的最小损失值,但是每个初始的参数只是得到了此模型局部的最小损失值
    • 就好像当你处在一个谷底时,只会认为此时的位置是最低的,但并不知道其他的低谷处还有更低的位置
    • 梯度下降就是通过不断地寻找梯度方向和计算得到不同的损失值,直到找到最优和满足条件的值为止
相关推荐
冷眼看人间恩怨36 分钟前
【话题讨论】AI时代程序员核心力:技术深耕,跨界学习,软硬兼备
人工智能·学习·aigc
智能涌现1 小时前
利基网站收入报告(更新至十月)
人工智能·语言模型·自然语言处理·chatgpt
csdnzzt1 小时前
一文入门生成式AI(理解ChatGPT的原理)
人工智能·chatgpt
TechQuester1 小时前
OpenAI 刚刚推出 o1 大模型!!突破LLM极限
人工智能·python·gpt·算法·chatgpt
jndingxin2 小时前
OpenCV结构分析与形状描述符(19)查找二维点集的最小面积外接旋转矩形函数minAreaRect()的使用
人工智能·opencv·计算机视觉
AI in Bio2 小时前
预训练蛋白质语言模型ESM-2保姆级使用教程
人工智能·语言模型
成都古河云2 小时前
智慧园区:解析集成运维的未来之路
大数据·运维·人工智能·科技·5g·安全
真-忒修斯之船2 小时前
搭配Knowledge Graph的RAG架构
人工智能·大模型·llm·知识图谱·graph·rag·knowledgegraph
CodingPioneer3 小时前
RK3588人工智能学习笔记-WSL中使用RKNN-ToolKit2
人工智能·笔记·学习
Linux猿3 小时前
Pytorch Lightning框架
人工智能·pytorch·python