【李沐深度学习笔记】损失函数

news/2024/9/13 10:12:16/文章来源:https://blog.csdn.net/qq_30204431/article/details/133428680

课程地址和说明

损失函数p2
本系列文章是我学习李沐老师深度学习系列课程的学习笔记,可能会对李沐老师上课没讲到的进行补充。

损失函数

损失函数是用来衡量预测值 y ^ \hat{y} y^ y ′ y' y与真实值 y y y的差别,下面给出常见的损失函数类型:

均方损失函数(L2 LOSS)


【注】蓝色的线是它的二次函数图像,绿色的线是它的似然函数 e − l e^{-l} el, 它的似然函数为高斯分布,橙色的线表示的是损失函数的梯度。当预测值 y ′ y' y和真实值 y y y距离比较远的时候,则损失函数的梯度比较大,参数更新比较多,当预测值越来越靠近真实值,损失函数的梯度会变得越来越小。

【提问】请用通俗的语言解释一下何为似然函数,其用途是什么,什么是高斯分布?
【chatGPT回答】好的,我会尽量用简单的话来解释这些概念。

  • 似然函数
    想象你有一个盒子,里面混合了红球和蓝球。你闭上眼睛摸出了10个球,结果有7个红球和3个蓝球。现在你想知道这个盒子中红球和蓝球的比例,但是你不能直接去数每种球有多少个。
    似然函数就是一个帮你估计这个比例的方法。你根据摸出的球的比例,反过来估计整个盒子里红球和蓝球的比例。似然函数描述了在不同的比例假设下,观察到现有数据(你摸出的10个球的颜色)的可能性。
    用途:似然函数在统计学和机器学习中经常用于参数估计。例如,我们想要估计一个模型的参数,可以通过找到使似然函数最大的参数值来实现。
  • 高斯分布
    高斯分布,也叫正态分布或“钟形曲线”,是一种描述数据分布的方式,特点是中间最高,两边逐渐减小,形状像一个钟。例如,人类的身高分布:大部分人的身高都集中在平均值附近,少数人的身高非常矮或非常高。
    为什么我们经常听到高斯分布?因为在现实生活中,许多随机现象的分布都接近或遵循高斯分布。例如,实验测量误差、人们的考试成绩等。
    高斯分布可以由两个参数描述:均值(平均值)和标准差(描述数据的离散程度)。
    希望这些解释对您有帮助!
    【提问】请加一些具体示例和数学计算
    【chatGPT回答】好的,我们再进一步详细探讨这两个概念。
  • 似然函数
    设想一个简单的场景:你有一枚不公正的硬币,抛出正面的概率是 p p p,抛出反面的概率是 1 − p 1-p 1p。现在你抛了这枚硬币3次,结果观测到了2次正面和1次反面。那么,似然函数就是描述在给定不同的 p p p值(也就是正面出现的概率)下,观察到这组数据(2次正面,1次反面)的概率。
    数学上,这个似然函数可以写成:
    L ( p ) = p 2 ( 1 − p ) L(p) = p^2(1-p) L(p)=p2(1p)
    如果你想知道哪个 p p p值最有可能,就需要找到使得 L ( p ) L(p) L(p)最大的 p p p值。
  • 高斯分布:
    高斯分布的数学形式是:
    f ( x ) = 1 σ 2 π e − 1 2 ( x − μ σ ) 2 f(x) = \frac{1}{\sigma \sqrt{2\pi}} e^{-\frac{1}{2}(\frac{x-\mu}{\sigma})^2} f(x)=σ2π 1e21(σxμ)2
    其中, μ \mu μ是均值, σ \sigma σ是标准差。
    示例:假设某高中学生的数学考试成绩遵循高斯分布,均值是70分,标准差是10分。那么,一个学生分数是80分的概率密度是:
    f ( 80 ) = 1 10 2 π e − 1 2 ( 80 − 70 10 ) 2 f(80) = \frac{1}{10 \sqrt{2\pi}} e^{-\frac{1}{2}(\frac{80-70}{10})^2} f(80)=102π 1e21(108070)2
    计算这个值,你就能知道80分这个成绩在整个分布中的相对位置。
    需要注意的是,上述给出的是概率密度,不是概率。如果想知道一个学生考分数在70到80分之间的概率,需要对上述函数在这个区间内积分。
    希望这些具体的示例和数学计算可以帮助你更好地理解这两个概念!

当预测值和真实值离得较远的时候,不一定要用大梯度来更新参数,所以用下面的损失函数:

绝对值损失函数(L1 LOSS)


【注】蓝色的线是损失函数曲线,绿色是似然函数,橙色是梯度。

鲁棒损失函数

【提问】用通俗的语言列出并解释深度学习常见的损失函数及其用法
【chatGPT回答】深度学习中的损失函数是衡量模型预测结果与真实值之间差异的一种方法。选择适当的损失函数对于模型的性能至关重要。下面是一些常见的损失函数及其通俗解释和应用场景:

  • 均方误差损失(Mean Squared Error, MSE):
    通俗解释:计算模型预测值与真实值之间的平方差的平均值。差异越大,损失值越高。
    用途:常用于回归问题,如预测房价、股票价格等。
    MSE = 1 n ∑ i = 1 n ( y i − y i ^ ) 2 \text{MSE} = \frac{1}{n} \sum\limits_{i=1}^n (y_i - \hat{y_i})^2 MSE=n1i=1n(yiyi^)2
  • 交叉熵损失(Cross Entropy Loss):
    通俗解释:衡量模型预测的概率分布与真实的概率分布之间的差异。差异越大,损失值越高。
    用途:常用于分类问题,如图像识别、文本分类等。
    CrossEntropy = − ∑ i = 1 n y i log ⁡ ( y i ^ ) \text{CrossEntropy} = -\sum\limits_{i=1}^n y_i \log(\hat{y_i}) CrossEntropy=i=1nyilog(yi^)
  • 二元交叉熵损失(Binary Cross Entropy Loss):
    通俗解释:是交叉熵损失的特殊情况,适用于二分类问题。
    用途:如垃圾邮件识别、病症检测等。
    BinaryCrossEntropy = − ∑ i = 1 n ( y i log ⁡ ( y i ^ ) + ( 1 − y i ) log ⁡ ( 1 − y i ^ ) ) \text{BinaryCrossEntropy} = -\sum\limits_{i=1}^n (y_i \log(\hat{y_i}) + (1 - y_i) \log(1 - \hat{y_i})) BinaryCrossEntropy=i=1n(yilog(yi^)+(1yi)log(1yi^))
  • 绝对平均误差损失(Mean Absolute Error, MAE):
    通俗解释:计算模型预测值与真实值之间的绝对差的平均值。差异越大,损失值越高。
    用途:也常用于回归问题,与MSE损失类似。
    MAE = 1 n ∑ i = 1 n ∣ y i − y i ^ ∣ \text{MAE} = \frac{1}{n} \sum\limits_{i=1}^n |y_i - \hat{y_i}| MAE=n1i=1nyiyi^
  • Hinge 损失
    通俗解释:常用于“最大间隔”分类,尤其是支持向量机(SVM)。
    用途:用于二分类问题,也可以扩展到多分类问题。
    Hinge Loss = ∑ i = 1 n max ⁡ ( 0 , 1 − y i ⋅ y i ^ ) \text{Hinge Loss} = \sum\limits_{i=1}^n \max(0, 1 - y_i \cdot \hat{y_i}) Hinge Loss=i=1nmax(0,1yiyi^)
  • Huber 损失
    通俗解释:是均方误差与绝对误差的结合,对于较小的误差使用平方误差,对于较大的误差使用线性误差。
    用途:用于回归问题,尤其是在存在噪声数据时。
    Huber Loss = { 1 2 ( y i − y i ^ ) 2 , 对于  ∣ y i − y i ^ ∣ ≤ δ δ ( ∣ y i − y i ^ ∣ − 1 2 δ ) , 其他 \text{Huber Loss} = \begin{cases} \frac{1}{2}(y_i - \hat{y_i})^2,\text{对于 } |y_i - \hat{y_i}| \le \delta \ \\\delta(|y_i - \hat{y_i}| - \frac{1}{2}\delta) , \text{其他} \end{cases} Huber Loss={21(yiyi^)2,对于 yiyi^δ δ(yiyi^21δ),其他
    这些损失函数在训练深度学习模型时扮演着至关重要的角色,帮助优化算法找到使损失最小的模型参数。选择适当的损失函数可以大大提高模型的性能和准确性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ldbm.cn/p/138315.html

如若内容造成侵权/违法违规/事实不符,请联系编程新知网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker-Windows安装使用

1.下载docker https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors 2.配置虚拟化环境 通过控制面板“设置”启用 Hyper-V 角色 右键单击 Windows 按钮并选择“应用和功能”。选择相关设置下右侧的“程序和功能”。选择“打开或关闭 Windows 功能”。选择“Hyper-…

节日灯饰灯串灯出口欧洲CE认证办理

灯串(灯带),这个产品的形状就象一根带子一样,再加上产品的主要原件就是LED,因此叫做灯串或者灯带。2022年,我国灯具及相关配件产品出口总额超过460亿美元。其中北美是最大的出口市场。其次是欧洲市场&#…

平台登录页面实现(一)

文章目录 一、实现用户名、密码、登录按钮、记住用户表单1、全局css代码定义在asserts/css/global.css 二、用户名、密码、记住用户的双向绑定三、没有用户,点击注册功能实现四、实现输入用户名、密码、点击登录按钮进行登录操作五、实现表单项校验六、提交表单预验…

git报错:Failed to connect to 127.0.0.1 port 1080

Bug描述 由于在试了网上的这条命令 git config --global http.proxy socks5 127.0.0.1:1080 git config --global https.proxy socks5 127.0.0.1:1080git config --global http.proxy 127.0.0.1:1080 git config --global https.proxy 127.0.0.1:1080Bug描述:Faile…

《Upload-Labs》01. Pass 1~13

Upload-Labs 索引前言Pass-01题解 Pass-02题解总结 Pass-03题解总结 Pass-04题解 Pass-05题解总结 Pass-06题解总结 Pass-07题解总结 Pass-08题解总结 Pass-09题解 Pass-10题解 Pass-11题解 Pass-12题解总结 Pass-13题解 靶场部署在 VMware - Win7。 靶场地址:https…

性格孤僻怎么办?改变性格孤僻的4种方法

性格孤僻是比较常见的说法,日常中我们说某人性格孤僻,意思就是这人不太合群,喜欢独来独往,话少,人际关系不太好,其言行往往不符合大众的价值观。从性格孤僻的角度来看,可能跟很多种心理疾病存在…

uniapp 实现下拉筛选框 二次开发定制

前言 最近又收到了一个需求,需要在uniapp 小程序上做一个下拉筛选框,然后找了一下插件市场,确实有找到,但不过他不支持搜索,于是乎,我就自动动手,进行了二开定制,站在巨人的肩膀上&…

经历网 微信二维码 制作方法

1、谷歌浏览器,打开要制作微信二维码的 网站页面 2、点击页面空白处(此步为了使鼠标激活页面,可省),点击鼠标右键,弹窗 点选 为此页面创建二维码,点击下载到自己指定的地方。完成。 下载下来的…

【前段基础入门之】=>CSS 常用的字体文本属性

导读: 这一章,主要分享一些 CSS 中的一些,常用的 字体和文本方面的属性。 文章目录 字体属性字体大小字体族字体风格字体粗细字体复合写法 文本属性文本间距文本修饰文本缩进文本水平对齐行高vertical-align 字体属性 字体大小 属性名&…

inndy_echo

inndy_echo Arch: i386-32-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x8048000)32位,只开了NX int __cdecl __noreturn main(int argc, const char **argv, const char **envp) {char s; // [espCh…

麒麟信安服务器操作系统V3.5.2重磅发布!

9月25日,麒麟信安基于openEuler 22.03 LTS SP1版本的商业发行版——麒麟信安服务器操作系统V3.5.2正式发布。 麒麟信安服务器操作系统V3定位于电力、金融、政务、能源、国防、工业等领域信息系统建设,以安全、稳定、高效为突破点,满足重要行…

深度学习——模型选择、欠拟合和过拟合

深度学习——模型选择、欠拟合和过拟合 文章目录 前言一、训练误差和泛化误差1.1. 统计学习理论1.2. 模型复杂性 二、模型选择2.1. 验证集2.2. K折交叉验证 三、欠拟合 or 过拟合3.1. 模型复杂性3.2. 数据集大小 四、多项式回归4.1. 生成数据集4.2. 对模型进行训练和测试4.3. 三…

Elastic SQL 输入:数据库指标可观测性的通用解决方案

作者:Lalit Satapathy, Ishleen Kaur, Muthukumar Paramasivam Elastic SQL 输入(metricbeat 模块和输入包)允许用户以灵活的方式对许多支持的数据库执行 SQL 查询,并将结果指标提取到 Elasticsearch。 本博客深入探讨了通用 SQL …

数据链路层 MTU 对 IP 协议的影响

在介绍主要内容之前,我们先来了解一下数据链路层中的"以太网" 。 “以太网”不是一种具体的网络,而是一种技术标准;既包含了数据链路层的内容,也包含了一些物理层的内容。 下面我们再来了解一下以太网数据帧&#xff…

Transformers.js v2.6 现已发布

🤯 新增了 14 种架构 在这次发布中,我们添加了大量的新架构:BLOOM、MPT、BeiT、CamemBERT、CodeLlama、GPT NeoX、GPT-J、HerBERT、mBART、mBART-50、OPT、ResNet、WavLM 和 XLM。这将支持架构的总数提升到了 46 个!以下是一些示例…

ubuntu20安装nvidia驱动

1. 查看显卡型号 lspci | grep -i nvidia 我的输出: 01:00.0 VGA compatible controller: NVIDIA Corporation GP104 [GeForce GTX 1080] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GP104 High Definition Audio Controller (rev a1) 07:00.0 VGA comp…

stable diffusion模型评价框架

GhostReview:全球第一套AI绘画ckpt评测框架代码 - 知乎大家好,我是_GhostInShell_,是全球AI绘画模型网站Civitai的All Time Highest Rated (全球历史最高评价) 第二名的GhostMix的作者。在上一篇文章,我主要探讨自己关于ckpt的发展方向的观点…

测试用例的编写(面试常问)

作者:爱塔居 专栏:软件测试 作者简介:不断总结,才能变得更好~踩过的坑,不能再踩~ 文章简介:常见的几个测试用例。 一、淘宝购物车 二、登录页面 三、三角形测试用例 abc结果346普通三角形333等边三角形334…

Scala第一章节

Scala第一章节 scala总目录 章节目标 理解Scala的相关概述掌握Scala的环境搭建掌握Scala小案例: 做最好的自己 1. Scala简介 1.1 概述 ​ Scala(斯嘎拉)这个名字来源于"Scalable Language(可伸缩的语言)", 它是一门基于JVM的多范式编程语言, 通俗的说: Scala是一…

【从入门到起飞】JavaSE—Stream流

🎊专栏【JavaSE】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🥰欢迎并且感谢大家指出我的问题 文章目录 🍔Stream流的作用🍔Stream流的使用步骤🎄获取Strea…