在CE和MSE损失函数中使用置信度的方法

            以下是在一个半监督情景中  weak_output_ul为弱扰动出来的logits   ,strong_output_ul为强扰动出来的logits  两者尺寸都可看作[8,2,256,256]

CE:

            weak_x_ul = self.encoder(A_ul, B_ul)
            weak_output_ul = self.main_decoder(weak_x_ul)
            weak_targets = F.softmax(weak_output_ul.detach(), dim=1)

            strong_x_ul = self.encoder(s_A_ul, s_B_ul)
            strong_output_ul = self.main_decoder(strong_x_ul)

            #我们先得到伪标签 [8,256,256]
            pseudo_labels = torch.argmax(weak_targets, dim=1)        

            #得到概率最大值和位置 [8,256,256]    

            max_probs, _ = torch.max(weak_targets, dim=1)

               #得到Ture False矩阵  [8,256,256]

            confidence_mask = max_probs > 0.95

             #.long()是输入要求    reduction=none是为了不平均  得到概率举证
            loss = F.cross_entropy(strong_output_ul, pseudo_labels.long(), reduction='none')
            
            loss = loss * confidence_mask.float()

            #计算需要的平均损失

            loss_unsup = loss.sum() / confidence_mask.sum()

MSE:

import torch
import torch.nn.functional as Fweak_targets=torch.rand(8,2,256,256)
weak_targets=torch.softmax(weak_targets,dim=1)prob,_=torch.max(weak_targets,dim=1)
confidence_mask=prob>0.95strong_output_ul=torch.rand(8,2,256,256)strong_output_ul = F.softmax(strong_output_ul, dim=1) mse_loss = F.mse_loss(strong_output_ul, weak_targets, reduction='none')# 应用置信度掩码
print(mse_loss.size())
mse_loss = mse_loss * confidence_mask.unsqueeze(1).float()  # 确保confidence_mask在应用前与mse_loss的形状匹配loss_unsup = mse_loss.sum(dim=[1, 2, 3]) / confidence_mask.sum()# 计算最终的平均损失
loss_unsup = loss_unsup.mean()

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

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

相关文章

PostgreSQL导出导入

导出常用方法 pg_dumpall:适合导出cluster中所有业务库 pg_dump:适合单个库、schema级、表级导出 copy:适合单表或带条件sql结果导出(可导出为csv或txt格式) 一、 pg_dumpall pg_dumpall可以转储cluster里的所有数…

C#面:Sleep() 和 Wait() 有什么区别

Sleep() 和 Wait() 是两个不同的方法,用于控制线程的执行。 Sleep() 方法: 是线程类 Thread 的静态方法,它使当前线程暂停执行一段时间。 Sleep() 方法接受一个参数,表示线程暂停的时间长度,单位是毫秒。 在暂停期…

C++ 11新特性之语法甜点4

概述 C 11中引入了许多简化编程工作的语法上的新特性,我们暂且美其名曰:“语法甜点”。书接上篇,我们继续介绍C 11中的这些“语法甜点”,也是最后一篇关于“语法甜点”的文章。 语法甜点16:新的字符串字面值 C 03提供了…

VitePress-13- 配置-title的作用详解

作用描述 1、title 是当前站点的标题;2、默认值是 :VitePress;3、当使用默认主题时,会直接展示在 页面的【导航条】中;4、一个特殊的作用 : 会作为单个页面的默认标题后缀!除非又指定了【title…

WSL下如何使用Ubuntu本地部署Vits2.3-Extra-v2:中文特化修复版(新手从0开始部署教程)

环境: 硬: 台式电脑 1.cpu:I5 11代以上 2.内存16G以上 3.硬盘固态500G以上 4.显卡N卡8G显存以上 20系2070以上 本案例英伟达4070 12G 5.网络可连github 软: Win10 专业版 19045以上 WSL2 -Ubuntu22.04 1.bert-Vits2.3 Extra-v2:…

CSP-201912-1-报数

CSP-201912-1-报数 知识点总结 整数转化为字符串#include <string> string str_num to_string(num);字符串中查找是否包含字符‘7’&#xff1a;str_num.find(7) 未找到返回-1找到返回返回该字符在字符串中的位置&#xff08;即第一次出现的索引位置&#xff09; #i…

腾讯云4核8G服务器够用吗?容纳多少人同时访问?

腾讯云4核8G服务器支持多少人在线访问&#xff1f;支持25人同时访问。实际上程序效率不同支持人数在线人数不同&#xff0c;公网带宽也是影响4核8G服务器并发数的一大因素&#xff0c;假设公网带宽太小&#xff0c;流量直接卡在入口&#xff0c;4核8G配置的CPU内存也会造成计算…

java nio零拷贝

零拷贝是一种计算机执行IO操作的优化技术&#xff0c;其核心目标是减少数据拷贝次数&#xff0c;从而提高系统性能。它主要体现在以下几个方面&#xff1a; 1. **定义与原理**&#xff1a;零拷贝字面上的意思包括“零”和“拷贝”。其中&#xff0c;“拷贝”是指数据从一个存储…

西工大计算机学院复试问题整理

1. DMA DMA是一种无须CPU参与就可以让外设与系统内存之间进行双向数据传输的硬件机制1&#xff0c;而中断是指CPU在执行程序的过程中&#xff0c;出现了某些突发事件时必须暂停执行当前的程序&#xff0c;转去处理突发事件1。两者的主要区别是&#xff1a; 中断方式是在每个数据…

读千脑智能笔记11_保存人类遗产

1. 智能生物通常能延续多久 1.1. SETI和METI计划的可行性在很大程度上取决于智能生物通常能延续多久 1.1.1. 搜寻地外文明&#xff08;以下简称SETI&#xff09;计划的目标 1.1.1.1. 这是一个力图寻找宇宙其他地方智能生物存在证据的研究项目 1.1.1.2. SETI计划旨在寻找含有…

[NSSCTF]-Web:[SWPUCTF 2021 新生赛]easy_sql解析

查看网页 有提示&#xff0c;参数是wllm&#xff0c;并且要我们输入点东西 所以&#xff0c;我们尝试以get方式传入 有回显&#xff0c;但似乎没啥用 从上图看应该是字符型漏洞&#xff0c;单引号字符注入 先查看字段数 /?wllm2order by 3-- 没回显 报错了&#xff0c;说明…

顺序表、链表(ArrayList、LinkedList)

目录 前言&#xff1a; 顺序表&#xff08;ArrayList&#xff09;&#xff1a; 顺序表的原理&#xff1a; ArrayList源码&#xff1a; 的含义&#xff1a;​编辑 ArrayList的相关方法&#xff1a;​编辑 向上转型List&#xff1a; 练习题&#xff08;杨辉三角&#x…

修改GI文件的权限

参考文档&#xff1a; How to check and fix file permissions on Grid Infrastructure environment (Doc ID 1931142.1) -- 验证二进制文件的权限 [gridnode19c01 ~]$ cluvfy comp software -n node19c01 -verbosePerforming following verification checks ...Software …

tokio tcp通信

引入crate tokio { version "1.35.1", features ["full"] } 服务端 use std::time::Duration; use tokio::{io::{AsyncBufReadExt, AsyncWriteExt},net::{tcp::{OwnedReadHalf, OwnedWriteHalf},TcpListener, TcpStream,},sync::mpsc, };#[tokio::ma…

轻薄型工业平板亿道EM-T195,续航持久高达10小时

时尚而坚固的 10.1英寸EM-T195触摸屏平板电脑融合了高耐力和无与伦比的适应性&#xff0c;可抵御极端天气条件和多重冲击&#xff0c;借助强大的联发科8核处理器&#xff0c;它可以从容面对任何工作挑战。 其读取能力&#xff08;2D 成像器&#xff09;结合其坚固性&#xff0…

跟着cherno手搓游戏引擎【24】开启2D引擎前的项目总结(包括前置知识汇总)

前置技术&#xff1a; vs属性解释&#xff1a; MSBuild的入门完整教程&#xff08;包学包会&#xff09;-CSDN博客 配置界面&#xff1a; c动态链接和静态链接&#xff1a; 隐藏的细节&#xff1a;编译与链接_哔哩哔哩_bilibili 【底层】动态链接库(dll)是如何工作的&…

探索现代Web前端开发框架:选择最适合你的工具

在当今快速发展的Web开发领域&#xff0c;前端开发框架的选择显得尤为关键。这些框架可以帮助我们更高效地构建出交互性强、性能卓越的用户界面。本文将带你了解几个当前最受欢迎的Web前端开发框架&#xff0c;并帮助你根据自己的需求选择最合适的工具。 1. React React由Fac…

2.10日学习打卡----初学RocketMQ(一)

2.10日学习打卡 对于MQ(Message queue)消息队列的一些解释可以看我原来写的文章 初学RabbitMQ 各大MQ产品比较 一.RocketMQ概述 发展历程 RocketMQ概念术语 生产者和消费者 生产者负责生产消息&#xff0c;一般由业务系统负责生产消息&#xff0c;消费者即后台系统&…

无人机遥感技术应用分析,无人机遥感系统测绘技术详解

由于无人机具有机动快速、使用成本低、维护操作简单等技术特点,因此被作为一种理想的飞行平台广泛应用于军事和民用各个领域。尤其是进入二十一世纪以后,许多国家将无人机系统的研究、开发、应用置于优先发展的地位,体积小、重量轻、探测精度高的新型传感器的不断问世,也使无人…

解决挂梯子 无法正常上网 的问题

方法&#xff1a; 打开 控制面板 &#x1f449; 网络和Internet &#x1f449; Internet选项 &#x1f449; 连接 &#x1f449; 局域网设置 &#x1f449; 代理服务器 &#x1f449; 取消选项 有问题可参考下图