首页 > 其他分享 >pytorch nn.KLDivLoss()损失计算

pytorch nn.KLDivLoss()损失计算

时间:2023-10-11 10:26:51浏览次数:39  
标签:relevant nn 标签 预测值 KLDivLoss pytorch

参考:https://blog.csdn.net/L888666Q/article/details/126346022?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-126346022-blog-128974654.235^v38^pc_relevant_default_base&spm=1001.2101.3001.4242.2&utm_relevant_index=4

      预测值和标签值都需要进行softmax归一化处理  预测值还需要再进行log计算,标签值不需要

  • KL散度     KL散度,又叫相对熵,用于衡量两个分布(离散分布和连续分布)之间的距离。

          设 p(x) 、 q(x) 是离散随机变量X的两个概率分布,则 p 对q 的KL散度是:

  • 在pytorch中,nn.KLDivLoss()的计算公式如下:

           上图y为标签,x为预测值,则pytorch应该以如下代码使用 :(1)、 lossfunc=nn.KLDivLoss()  (2)、loss = lossfunc(预测值, 标签值)

           所以,在pytorch中预测值和标签值分别做如下处理:(1)、 F.log_softmax(预测值/ temp, dim=1)   (2)、F.softmax(标签值/ temp, dim=1)

           

  

 

 

 

  登录状态已过期 (若您已重新登录,请刷新当前页面; 若您要同时登录两个设备, 请在登录时选择不同的设备)

标签:relevant,nn,标签,预测值,KLDivLoss,pytorch
From: https://www.cnblogs.com/lyp1010/p/17756414.html

相关文章

  • ./a.out: error while loading shared libraries: libgsl.so.25: cannot open shared
     001、问题: ./a.out:errorwhileloadingsharedlibraries:libgsl.so.25:cannotopensharedobjectfile:Nosuchfileordirectory 002、解决方法[root@pc1test]#lsa.c[root@pc1test]#gcc-I/usr/local/include/gsl-lgsl-lgslcblasa.c[root@pc1test]#......
  • 《动手学深度学习 Pytorch版》 8.4 循环神经网络
    8.4.1无隐状态的神经网络对于无隐藏装态的神经网络来说,给定一个小批量样本\(\boldsymbol{X}\in\mathbb{R}^{n\timesd}\),则隐藏层的输出\(\boldsymbol{H}\in\mathbb{R}^{n\timesh}\)通过下式计算:\[\boldsymbol{H}=\phi(\boldsymbol{XW}_{xh}+\boldsymbol{b}_h)\]\(\phi\)......
  • Scanner写法
    Scanner有什么用Scanner类用于获取用户的输入基本语法Scanners=newScanner(System.in)//(Scanners=)这部分可以在输入后半部分后通过alt+ender快速输入通过Scanner类的next()或nextLine()获取输入的字符串一般使用hasNext()或hasNestLine()判断是否还有输入的数据关......
  • 报错Intel MKL FATAL ERROR: Cannot load libmkl_core.so.的一种解决方法
    问题今天上80服务器跑mdistiller的代码时,意外发现torch、numpy都不能用了T_T以torch为例,出现如下报错情况以numpy为例,出现如下报错情况我们先看看报错信息,这个报错来自InterMKL。InterMKL全称是TheIntelMathKernelLibrary,它是一个主要是用于科学计算的共享库,提供了很......
  • QECon大会亮相产品,更合适的企业级测试平台:RunnerGo
    在当今这个数字化时代,应用程序的性能至关重要。一款可靠的性能测试工具,能够为企业带来无数的好处。最近,一款名为RunnerGo的开源性能测试工具备受瞩目。本文将详细介绍RunnerGo的特点、优势以及如何解决性能测试中的痛点。 RunnerGo产品介绍RunnerGo是一款由国内开发者自主研......
  • QECon大会亮相产品,全栈测试平台推荐:RunnerGo
    最近在gitee上看见一款获得GVP(最有价值开源项目)的测试平台RunnerGo,看他们官网介绍包含了接口测试、性能测试、自动化测试。知道他们有saas版可以试用,果断使用了一下,对其中场景管理和性能测试印象深刻,之后也在公司自己安装使用,接下来和大家介绍一下RunnerGo的整体使用情况。登录后......
  • Android设置spinner字体
    弹出下拉菜单可以直接设置,但是显示字体需要使用自定义适配器来生效你尝试在Spinner上应用了自定义的样式,但似乎字体大小未更改。在Spinner控件中更改字体大小可能需要使用自定义适配器来生效。尽管你在样式setting_spinner中设置了android:textSize,但这只会影响下拉列表中......
  • Django RestFramework、Celery及Channels
    DjangoRESTFramework什么是RESTfulAPIRESTfulAPI是一种基于HTTP协议的接口设计风格,它使用统一的接口和资源的概念来定义和操作网络应用程序的功能和数据。RESTfulAPI使用HTTP动词(GET、POST、PUT、DELETE等)来表示操作类型,并使用URL来标识资源。传统风格的HTTP接口常用授......
  • Error: Failed to download metadata for repo 'appstream': Cannot prepare internal
    一背景跑了一份centos容器,想装一下net-tools,报如下错误Error:Failedtodownloadmetadataforrepo'appstream':Cannotprepareinternalmirrorlist:NoURLsinmirrorlist 二解决参考帖子:https://developer.aliyun.com/article/1165954  CentOS已经停止......
  • The designer cannot be shown because the document for it was never loaded. (Visua
    Thedesignercannotbeshownbecausethedocumentforitwasneverloaded. 查看窗体设计器报错   查看代码是空的   多做代码备份。 REFhttps://stackoverflow.com/questions/7688630/the-designer-could-not-be-shown-for-this-file-because-none-of-the-classes-wi......