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

课程地址和说明

损失函数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.mzph.cn/news/91126.shtml

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

相关文章

科技资讯|AirPods Pro基于定位控制的自适应音频功能

在接受 TechCrunch 媒体采访时,苹果高管 Ron Huang 和 Eric Treski 谈到了关于 AirPods Pro 自适应音频(Adaptive Audio)功能的轶事,曾考虑基于 GPS 信号来控制自适应音频级别。 Treski 表示在探索自适应音频功能初期&#xff0…

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

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

什么是GraphQL?它与传统的REST API有什么不同?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 什么是GraphQL?⭐ 与传统的REST API 的不同⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣…

7.网络原理之TCP_IP(上)

文章目录 1.网络基础1.1认识IP地址1.2子网掩码1.3认识MAC地址1.4一跳一跳的网络数据传输1.5总结IP地址和MAC地址1.6网络设备及相关技术1.6.1集线器:转发所有端口1.6.2交换机:MAC地址转换表转发对应端口1.6.3主机:网络分层从上到下封装1.6.4主…

【新版】系统架构设计师 - 软件架构的演化与维护

个人总结,仅供参考,欢迎加好友一起讨论 文章目录 架构 - 软件架构的演化与维护考点摘要软件架构演化和定义面向对象软件架构演化对象演化消息演化复合片段演化约束演化 软件架构演化方式静态演化动态演化 软件架构演化原则软件架构演化评估方法大型网站架…

Ubuntu 20.04二进制部署Nightingale v6.1.0和Prometheus

sudo lsb_release -r可以看到操作系统版本是20.04,sudo uname -r可以看到内核版本是5.5.19。 sudo apt-get update进行更新镜像源。 完成之后,如下图: sudo apt-get upgrade -y更新软件。 选择NO,按下Enter。 完成如下&…

自定义注解实现Redis分布式锁、手动控制事务和根据异常名字或内容限流的三合一的功能

自定义注解实现Redis分布式锁、手动控制事务和根据异常名字或内容限流的三合一的功能 文章目录 [toc] 1.依赖2.Redisson配置2.1单机模式配置2.2主从模式2.3集群模式2.4哨兵模式 3.实现3.1 RedisConfig3.2 自定义注解IdempotentManualCtrlTransLimiterAnno3.3自定义切面Idempote…

问题记录 springboot 事务方法中使用this调用其它方法

原因: 因为代理对象中调用了原始对象的toString()方法,所以两个不同的对象打印出的引用是相同的

快速将iPhone大量照片快速传输到电脑的办法!

很多使用iPhone 的朋友要将照片传到电脑时,第一时间都只想到用iTunes 或iCloud,但这2个工具真的都非常难用,今天小编分享牛学长苹果数据管理工具的照片传输功能,他可以快速的将iPhone照片传输到电脑上,并且支持最新的i…

OpenCV实现模板匹配和霍夫线检测,霍夫圆检测

一,模板匹配 1.1代码实现 import cv2 as cv import numpy as np import matplotlib.pyplot as plt from pylab import mplmpl.rcParams[font.sans-serif] [SimHei]#图像和模板的读取 img cv.imread("cat.png") template cv.imread(r"E:\All_in\o…

配置OSPF路由

OSPF路由 1.OSPF路由 1.1 OSPF简介 OSPF(Open Shortest Path First,开放式最短路径优先)路由协议是另一个比较常用的路由协议之一,它通过路由器之间通告网络接口的状态,使用最短路径算法建立路由表。在生成路由表时,…

亚马逊无线鼠标FCC认证办理 FCC ID

无线鼠标是指无线缆直接连接到主机的鼠标,采用无线技术与计算机通信,从而省却电线的束缚。通常采用无线通信方式,包括蓝牙、Wi-Fi (IEEE 802.11)、Infrared (IrDA)、ZigBee (IEEE 802.15.4)等多个无线技术标准。随着人们对办公环境和操作便捷…

Vue中动态树形菜单,以及

🏅我是默,一个在CSDN分享笔记的博主。📚📚 🌟在这里,我要推荐给大家我的专栏《Vue》。🎯🎯 🚀无论你是编程小白,还是有一定基础的程序员,这个专栏…

Leetcode205. 同构字符串

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 给定两个字符串 s 和 t ,判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符&#xff0…

CTP:关于cc和bindgen库及rust工程组织

有三个工程目录,cpt-api, ctp-sdk,ctp-strategy 1、ctp-sdk: 主要的目的是基于bindgen库生成与cpp的.h文件相对应一个binding.rs文件,后面供策略使用。 在这个目录下,建一个build.rs,用bindgen库生成cpp.h的头文件相应的rust绑定…

蓝桥杯每日一题2023.9.29

蓝桥杯大赛历届真题 - C&C 大学 B 组 - 蓝桥云课 (lanqiao.cn) 题目描述1 题目分析 看见有32位,我们以此为入手点, B代表字节1B 8b b代表位,32位即4个字节 (B) 1KB 1024B 1MB 1024KB (256 * 1024 * 1024) / 4 67108864 故答案…

redis主从从,redis-7.0.13

redis主从从,redis-7.0.13 下载redis安装redis安装redis-7.0.13过程报错1、没有gcc,报错2、没有python3,报错3、[adlist.o] 错误 127 解决安装报错安装完成 部署redis 主从从结构redis主服务器配置redis启动redis登录redisredis默认是主 redi…

Flutter笔记:用于ORM的Floor框架简记

Flutter笔记 用于ORM的Floor框架简记 本文地址:https://blog.csdn.net/qq_28550263/article/details/133377191 floor 模块地址:https://pub.dev/packages/floor 【介绍】:最近想找用于Dart和Flutter的ORM框架,偶然间发现了Floor…

Oracle的递归公共表表达式

查询节点id为2的所有子节点的数据,包括向下级联 WITH T1 (id, parent_id, data) AS (SELECT id, parent_id, dataFROM nodesWHERE id 2UNION ALLSELECT t.id, t.parent_id, t.dataFROM nodes tJOIN T1 n ON t.parent_id n.id ) SELECT * FROM T1; --建表语句 C…

什么是Times New Roman 字体

如何评价 Times New Roman 字体?:https://www.zhihu.com/question/24614549?sortcreated 新罗马字体是Times New Roman字体,是Office Word默认自带的英文字体之一。 中英文字体 写作中,英文和数字的标准字体为 Times New Roma…