一些损失函数的学习

CrossEntropy loss

  • 交叉熵是用来衡量两个概率分布之间的差异性或不相似性的度量
  • 交叉熵定义为两个概率分布p和q之间的度量。其中,p通常是真实分布,而q是模型预测的分布
  • 交叉熵还等于信息熵 + 相对熵
  • 这里,x遍历所有可能的事件,p(x)是真实分布中事件 发生的概率,而q(x)是模型预测该事件发生的概率

Negative log Likelihodd loss

似然(Likelihood)

似然是在给定特定模型参数的情况下,观察到当前数据的概率。如果模型参数用0表示,观察
到的数据用X表示,那么似然通常写作L(θ|X)或P(X|θ)。
最大似然估计(MLE)就是寻找能最大化观察到的数据似然的参数值

公式

  • 假设有一个统计模型,其参数为0,并且有一组观测数据X={X1,X2,X3,…Xn}。似然函数L(θ|X)定义为给定参数θ下观测数据X出现的概率:
    L(θ|X)= P(X|θ)
  • 对于独立同分布的数据点,似然可以表示为各个数据点概率的乘积

对数似然(Log-Likelihood)

对数似然是似然的对数形式,通常表示为1ogL(θ|X),对数变换是单调的,不改变似然函数
的最优参数位置。
对数变换通常在数学处理上更方便。特别是当似然是多个概率的乘积时,对数变换可以将乘法转化为加法,简化计算。
在最大似然估计中,通常最大化对数似然而不是似然,因为这在数学上更容易处理。
  • 对数似然是似然函数的自然对数,它在数学处理上更方便,尤其是将乘法转换为加法。对数似然表示为:

负对数似然(Negative Log-Likelihood, NLL)

负对数似然是对数似然的负值,表示为—logL(θ|X),这种形式在优化问题中更为常见。
负对数似然常用作损失函数,由于优化算法通常设计为最小化一个函数,将对数似然取负值可以将似然最大化问题转化为最小化问题
  • 负对数似然是对数似然的负值,常用作损失函数,特别是在最大似然估计中。它的表达式是:

交叉熵就是负对数似然

  • 似然可以写为各个数据点的概率乘积
  • 除以N取平均,再log变成为加,变为对数似然,刚好变为负交叉熵定义式

KL(Kullback–Leibler) divergence也叫相对熵

  • 带入均值和标准差

交叉熵等于信息熵+KL散度

信息熵

  • 它是衡量信息量的一个度量,或者更精确地说,是衡量随机变量不确定性的度量

  • 熵高意味着随机变量的不确定性高,熵低则意味着不确定性低。例如,如果一个随机变量只能取一个值,那么其熵为0,因为这个事件发生的概率是1,没有不确定性

  • 当所有可能事件都具有相同概率时,熵达到最大值,表示最大的不确定性。

  • p是真实分布,q是预测的分布

  • 当在做一个机器学习目标函数时,用交叉熵或KLD单独来看效果是一样的,因为信息熵如果是一个delta(one-hot)分布,那它的值就是0,如果是一个非delta分布,那它也是一个常数,常数对于神经网络的参数更新是没有任何贡献的,所以优化交叉熵loss和KLDloss效果是一样的,只不过数值上不一样(如果目标是delta分布,那数值也一样,这个时候用KLD时把target转换为one-hot向量就可以了)

Binary Cross Entropy二分类交叉熵

  • NLLloss 是BCEloss 的一般形式,所以,可以用NLLloss代替BCEloss来算


调用cosine similarity loss 余弦相似度

  • 余弦相似度是一种用于衡量两个非零向量在方向上的相似程度的度量
  • 可以用来做图片的相似,比如拿一个图片,想要在1百万张图片两找出前100个相似的图片,可以先用resnet等方法得到它的向量表征,然后拿这个图片的向量表征去和这1百万张做余弦相似度,然后得出最相近的前一百个即可
  • 余弦值的范围在 -1 到 1 之间,其中 1 表示两个向量方向完全相同,-1 表示两个向量方向完全相反,0 表示向量之间的角度是 90 度,即它们正交或不相关
  • 余弦相似度衡量的是方向上的相似性,而不是大小上的相似性。这意味着它会忽略两个向量的长度或大小,只关注它们的方向

学习资料:https://www.bilibili.com/video/BV1Sv4y1A7dz/

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从0开始学习JavaScript--JavaScript中的集合类

JavaScript中的集合类是处理数据的关键,涵盖了数组、Set、Map等多种数据结构。本文将深入研究这些集合类的创建、操作,以及实际应用场景,并通过丰富的示例代码,帮助大家更全面地了解和应用这些概念。 数组(Array&…

grafana面板介绍

grafana 快速使用 背景 随着公司业务的不断发展,紧接来的是业务种类的增加、服务器数量的增长、网络环境的越发复杂以及发布更加频繁,从而不可避免地带来了线上事故的增多,因此需要对服务器到应用的全方位监控,提前预警&#xf…

在回调之间共享数据

可以在 App 中为 UI 组件编写回调函数,以指定用户与其交互时的行为方式。 在具有多个相互依赖的 UI 组件的 App 中,回调函数通常必须访问主 App 函数中定义的数据,或与其他回调函数共享数据。例如,如果创建一个具有列表框的 App&a…

vue3按需引入 vite-plugin-style-import 2.0版本报错(解决办法)

报错配置():报错信息解决方法配置 报错配置(): //vite.config.js 部分代码 // 按需自动引入 elementplus 相关样式文件 import styleImport from vite-plugin-style-import// https://vitejs.dev/config/ export default defineConfig({plugins: [vue()…

leetcode:914. 卡牌分组(python3解法)

难度:简单 给定一副牌,每张牌上都写着一个整数。 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组: 每组都有 X 张牌。组内所有的牌上都写着相同的整数。 仅当你可选的 X > 2 时返回 tru…

flink 查看写入starrocks的数据量 总行数

针对该connector: https://github.com/StarRocks/docs.zh-cn/blob/main/loading/Flink-connector-starrocks.md

关于ASO优化的分步入门指南2

1、分析元数据。 分析我们收集的当前元数据和关键词,单独跟踪关键字词,然后跟踪组合。例如如果应用程序的标题是关于音乐的应用,则需要跟踪“音乐”、“听”、“听音乐”等关键词。填充元数据分析选项卡,使用搜索分数、下载影响和…

UEC++ day6

简易战斗系统 删除替换父类组件 现在需要添加剑的组件,但是一般来说附着到蒙皮骨骼的东西,也是蒙皮骨骼,所以我们可以新建一个类重新编写,也可以直接继承Interoperable类然后不管UStaticMeshComponent这个组件,新建U…

00后如何组织双十一大促看这一篇就够了! | 京东云技术团队

引言 大家好,我是王蒙恩,一名“整顿职场”的00后。作为一名去年刚刚加入京东的校招生,我有幸成为本次CDP平台的11.11备战负责人。虽然早在实习的时候就经历过大促,但是真正组织整个部门的备战还是很难忘的。于是提起笔&#xff0…

APP外包开发需要注意的问题

在进行APP外包开发时,有一些关键问题需要注意,以确保项目的顺利进行和最终交付满足预期的应用。以下是一些在APP外包开发中需要关注的问题,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎…

基于C#实现字符串相似度

一、概念 对于两个字符串 A 和 B,通过基本的增删改将字符串 A 改成 B,或者将 B 改成 A,在改变的过程中我们使用的最少步骤称之为“编辑距离”。比如如下的字符串:我们通过种种操作,痉挛之后编辑距离为 3,不…

虹科分享 | PEAK版本升级,看看有没有你关注的新功能?

号外号外!近期PEAK进行了重要的版本升级,这次升级带来了许多令人兴奋的功能优化,助力您的工作流程更加便捷高效。为了帮助您更好地了解PEAK新版本,我们提供了详细的说明和指导,快来看看有没有你关注的新功能&#xff1…

如何为视频添加旁白,有哪些操作技巧?

简而言之,画外音是视频的旁白,在教程视频中添加旁白可以使视频更加有趣,并向观看者传达更多的信息。 如果您是视频制作人,想要为视频添加旁白,可阅读以下文章,可以帮助您更好地进行配音。 制作配音的技巧…

ubuntu20.04蓝牙连接airpods

ubuntu20.04蓝牙连接airpods 解禁蓝牙安装blueman设置模式连接上没有声音的问题 解禁蓝牙 sudo rmmod btusb sleep 1 sudo modprobe btusb sudo /etc/init.d/bluetooth restart安装blueman sudo apt install blueman sudo apt-get install pulseaudio-module-bluetooth sudo …

球幕投影有哪些常见的物理表现形式?

近年来,投影技术不断发展完善,给内容的表达方式带来了突破,使其展示形式不再局限于平面,即使在弧面、球面等异形幕墙上,也能呈现出令人惊叹的视觉画面。其中球幕投影备受关注,它以半球形屏幕将图像投影到球…

pytest

pytest test_one.py pytest的执行

十倍增量的海外客户开发新方式来了!外贸企业可直接照做

外贸和B2大C型(汽车、房产、保险、教育等)企业出海过程中,除了常见的数字营销(投放)、平台营销、活动营销(线下展会)和内容营销,还有一个批量化可快速复制起量的营销方式&#xff1a…

大厂秋招真题【单调栈】Bilibili2021秋招-大鱼吃小鱼

文章目录 题目描述与示例题目描述输入描述输出描述示例一输入输出说明 示例二输入输出说明 解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 小明最近喜欢上了俄罗斯套娃、大鱼吃小鱼这些大的包住小的类型的游戏。 于…

磁钢的居里温度和工作温度

你知道吗,磁体在超过一定温度时会永久的失磁,不同的磁体能够承受的最大工作温度是不同的,那么与温度相关的指标有哪些?如何根据工作温度来选择合适的磁钢?今天我们就来解答一下这些问题。 居里温度 说到温度与磁性关…

Python武器库开发-flask篇之error404(二十七)

flask篇之error404(二十七) 首先&#xff0c;我们先进入模板的界面创建一个404的html页面 cd templates vim 404.html404.html的内容如下&#xff1a; <h1>error!!!</h1>在 Flask 应用程序中&#xff0c;当用户访问一个不存在的页面的时候&#xff0c;会出现 4…
最新文章