论文笔记:SUPERVISED CONTRASTIVE REGRESSION

2022arxiv的论文,没有中,但一作是P大图班本MIT博,可信度应该还是可以的

0 摘要

  • 深度回归模型通常以端到端的方式进行学习,不明确尝试学习具有回归意识的表示
    • 它们的表示往往是分散的,未能捕捉回归任务的连续性质。
  • 在本文中,我们提出了“监督对比回归”(Supervised Contrastive Regression,SupCR)的框架
    • 该框架通过将样本与目标距离进行对比来学习具有回归意识的表示
    • SupCR与现有的回归模型是正交的,并且可以与这些模型结合使用以提高性能
  • 在涵盖计算机视觉、人机交互和医疗保健领域的五个真实世界回归数据集上进行的大量实验表明,使用SupCR可以达到最先进的性能,并且始终在所有数据集、任务和输入模式上改进先前的回归基线。
    • SupCR还提高了对数据损坏的鲁棒性
    • 对减少的训练数据具有弹性
    • 改善了迁移学习的性能
    • 并且对未见过的目标有很好的泛化能力。

1 介绍

1.1 动机

  • 之前的回归问题
    • 都集中在以端到端的方式对最终预测进行约束
    • 并未明确考虑模型学到的表示
  • ——>学习的表示往往是分散的,未能捕捉回归任务中连续的关系
  • 图1(a)展示了在从网络摄像头户外图像预测天气温度的任务中,由L1损失学习的表示
    • L1模型学习的表示并没有呈现连续的真实温度值;相反,它按不同的摄像头以一种碎片化的方式进行分组。
      • 这种无序和碎片化的表示对于回归任务是次优的,甚至可能会妨碍性能,因为其中包含了干扰信息
  • 之前的表示学习都集中在分类问题上
    • 尤其是监督学习和对比学习
    • 如图1(b)所示,这些方法在上述视觉温度预测任务中学习的表示对于回归问题来说是次优的
      • 因为它忽略了回归任务中样本之间的连续顺序。

1.2 本文思路

  • 引入了“监督对比回归”(Supervised Contrastive Regression,SupCR)这一新的深度回归学习框架
    • 首先学习一个表示,确保嵌入空间中的距离与目标值的顺序相对应
      • 为了学习这样一个具有回归意识的表示,我们根据样本的标签/目标值距离将样本进行对比
    • 然后使用这个表示来预测目标值
  • 方法明确地利用样本之间的有序关系来优化下游回归任务的表示(如1(c)所示)
  • 此外,SupCR与现有的回归方法正交
    • 可以使用任何类型的回归方法将学习到的表示映射到预测值上。

2 方法

2.0 方法定义

  • 学习一个神经网络,由两部分组成

     

    • 特征encoder
    • 预测器p(\cdot):R^{d_e}\rightarrow R^{d_t} 从x \in X中预测y \in R^{d_t}
  •  对于给定的输入 batch,类似于对比学习,首先对数据进行两次数据增强,得到batch的两个view
    • 这两个view被输入到编码器f(·)中,为每个增强的输入数据获取一个de维特征嵌入
    • 监督对比回归损失L_{SupCR}是在这些特征嵌入上计算的
      • 为了将学习到的表示用于回归,冻结编码器f(·),然后在其之上训练预测器,使用回归损失(例如,L1损失)

2.1 监督对比回归损失

  • 大前提:希望损失函数能够确保嵌入空间中的距离与标签空间中的距离相对应
  • 给定N个数据组成的batch ,其中有input和label \{(x_n,y_n)\}_{n \in [N]}
    • 对该批数据应用数据增强,得到两个视图的batch
      • \tilde{x}_{2n}=t(x_n),\tilde{x}_{2n-1}=t'(x_n)
      • t和t'是两种数据增强方式
      • ——>得到两个视图下的batch\{(\tilde{x}_l,\tilde{y}_l)\}_{l \in [2N]}
        • \tilde{y}_{2n}=\tilde{y}_{2n-1}=y_n
    • 数据增强后的batch会被喂到encoder中,以获得相应的embedding
      • v_l=f(\tilde{x}_l)\in R^{d_e}, \forall n \in [2N]
  • 监督对比回归损失为

比如我们计算20这个样本的对比学习损失函数时,将30作为anchor的时候,会有两个负样本;将0作为anchor的时候,会有一个负样本

 2.2 理论证明

3 实验

3.1 五个实验

AgeDB
  • 从人脸图像预测年龄。
  • 包含了16,488张名人的图像和相应的年龄标签。
  • 年龄范围在0到101岁之间。
  • 数据集被分为12,208张训练图像、2140张验证图像和2140张测试图像。
TUAB
  • 从EEG静息态信号估计脑龄。
  • 包括1,385个21通道的EEG信号,采样频率为200Hz,来自年龄范围从0到95岁的个体。
  • 数据集被分为1,246个受试者的训练集和139个受试者的测试集。
MPIIFaceGaze
  • 从人脸图像估计注视方向。
  • 包含了213,659张从15名参与者收集的人脸图像
  • 将其划分为一个33,000张训练图像、6,000张验证图像和6,000张测试图像的数据集,参与者之间没有重叠。
  • 注视方向被描述为一个二维向量,第一维是俯仰角,第二维是偏航角。俯仰角的范围是-40°到10°,偏航角的范围是-45°到45°。
SkyFinder
  • 从户外网络摄像头图像预测温度。
  • 包含了由44台摄像头在每天上午11点左右拍摄的35,417张图像,天气和照明条件涵盖了广泛的范围。
  • 温度范围是-20°C到-49°C。
  • 数据集被分为28,373张训练图像、3,522张验证图像和3,522张测试图像。
IMDB-WIKI
  • 从人脸图像预测年龄
  • 包含了523,051张名人图像和相应的年龄标签。
  • 年龄范围在0到186岁之间(有些图像标签错误)。
  • 使用该数据集来测试方法对减少训练数据的弹性,迁移学习的性能以及对未见目标的泛化能力。

3.2 实验效果

 

 3.3 数据损坏的鲁棒性

使用ImageNet-C基准测试中的损坏生成过程来对AgeDB测试集进行19种不同强度级别的多样化损坏。

 3.4 训练数据的影响

 

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

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

相关文章

gateway做token校验

本文使用springcloud的gateway做token校验 登录的本质&#xff1a;拿用户名和密码 换 token。 token会返回给浏览器&#xff08;存储&#xff09;&#xff0c;当访问的时候&#xff0c;携带token 发起请求。 token校验图 引入redis依赖 <dependency><groupId>or…

2000-2022年全国地级市乡村振兴测算数据(30个指标)

1、时间&#xff1a;2000-2022年 2、来源&#xff1a;城市统计NJ、各地区统计NJ 3、范围&#xff1a;地级市 4、指标&#xff1a;乡村振兴指数、人均农业机械总动力&#xff08;千瓦&#xff09;、粮食综合生产能力&#xff08;万吨&#xff09;、农业劳动生产率&#xff08…

Vue2:路由

Vue2&#xff1a;路由 Date: May 28, 2023 Sum: vue-router基本使用、高级用法 单页面应用程序 概念&#xff1a;SPA【Single Page Application】是指所有的功能都在一个html页面上实现 案例&#xff1a; 单页应用网站&#xff1a; 网易云音乐 https://music.163.com/ 多页…

Idea使用Docker插件实现maven打包自动构建镜像

Docker 开启TCP 服务 vi /lib/systemd/system/docker.service改写以下内容 ExecStart/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock重启服务 #重新加载配置文件 systemctl daemon-reload #重启服务 systemctl restart docker.service此时docker已…

大数据课程I1——Kafka的概述

文章作者邮箱&#xff1a;yugongshiyesina.cn 地址&#xff1a;广东惠州 ▲ 本章节目的 ⚪ 了解Kafka的概念&#xff1b; ⚪ 掌握Kafka的配置与启动&#xff1b; 一、简介 1. 基本概念 Apache kafka 是一个分布式数据流平台。可以从如下几个层面来理解&#x…

elasticsearch-head可视化安装

一、前言 elasticsearch-head 是用于监控 Elasticsearch 状态的客户端插件&#xff0c;包括数据可视化、执行增删改查操作等。 elasticsearch是通过API方式进行管理的&#xff0c;因此也可以使用postman等工具操作elasticsearch。 二、安装 lasticsearch-head插件是使用Jav…

C++核心编程——函数高级、类和对象

3 函数提高 3.1 函数默认参数 在C中&#xff0c;函数的形参列表中的形参是可以有默认值的。 语法&#xff1a;返回值类型 函数名 &#xff08;参数默认值&#xff09;{} 注意事项&#xff1a; 1、如果函数的参数列表中某个参数已经有了默认参数&#xff0c;那么从这个参…

cve-2021-2394 weblogic反序列化漏洞分析

前几天weblogic 7月例行更新中&#xff0c;修复了一个Rce漏洞。该漏洞性质属于绕过之前的反序列化漏洞补丁。要了解这个漏洞的原因&#xff0c;我们首先要学习其他几个漏洞的原理。 一 weblogic 反序列化绕过指南 本章节只是大概讲解一下如何绕过weblogic反序列化漏洞的补丁。…

解决selenium的“can‘t access dead object”错误

目录 问题描述 原因 解决方法 示例代码 资料获取方法 问题描述 在python执行过程中&#xff0c;提示selenium.common.exceptions.WebDriverException: Message: TypeError: cant access dead object 原因 原因是代码中用到了frame,获取元素前需要切换到frame才能定位到…

苍穹外卖day11笔记

今日首先介绍前端技术Apache ECharts&#xff0c;说明后端需要准备的数据&#xff0c;然后讲解具体统计功能的实现&#xff0c;包括营业额统计、用户统计、订单统计、销量排名。 一、ECharts 是什么 ECharts是一款基于 Javascript 的数据可视化图表库。我们用它来展示图表数…

一次面试下来Android Framework 层的源码就问了4轮

说起字节跳动的这次面试经历&#xff0c;真的是现在都让我感觉背脊发凉&#xff0c;简直被面试官折磨的太难受了。虽然已经工作了七年&#xff0c;但是也只是纯粹的在写业务&#xff0c;对底层并没有一个很深的认识&#xff0c;这次面试经历直接的让我感受到我和那些一线大厂开…

Client not connected, current status:STARTING

今天项目集成Seata时遇到一个奇怪的异常&#xff0c;在此记录一下。 Linux环境安装Seata&#xff0c;使用Nacos作为配置中心、注册中心&#xff1b; Linux已开放端口&#xff1a;8848、7091、8091 在我Windows环境下可以看到Nacos运行正常&#xff0c;Seata运行也正常&#…

【腾讯云 Cloud Studio 实战训练营】用于编写、运行和调试代码的云 IDE泰裤辣

文章目录 一、引言✉️二、什么是腾讯云 Cloud Studio&#x1f50d;三、Cloud Studio优点和功能&#x1f308;四、Cloud Studio初体验&#xff08;注册篇&#xff09;&#x1f386;五、Cloud Studio实战演练&#xff08;实战篇&#xff09;&#x1f52c;1. 初始化工作空间2. 安…

学习笔记-JAVAJVM-JVM的基本结构及概念

申明&#xff1a;文章内容是本人学习极客时间课程所写&#xff0c;文字和图片基本来源于课程资料&#xff0c;在某些地方会插入一点自己的理解&#xff0c;未用于商业用途&#xff0c;侵删。 原资料地址&#xff1a;课程资料 什么是JVM 原文连接&#xff1a; 原文连接 JVM是J…

谷歌推出AI模型机器人RT2 将文本和图像输出为机器人动作

去年年底&#xff0c;ChatGPT火遍全球&#xff0c;全世界都见识了大语言模型的强大力量。人们对大模型不再陌生&#xff0c;开始使用基于大模型的应用绘画、作图、搜索资料、设计剧情等&#xff0c;而妙用不止于此。谷歌推出了Robotics Transformer 2(RT2)&#xff0c;这是一个…

分布式 - 消息队列Kafka:Kafka生产者架构和配置参数

文章目录 1. kafka 生产者发送消息整体架构2. Kafka 生产者重要参数配置01. acks02. 消息传递时间03. linger.ms04. buffer.memory05. batch.size06. max.in.flight.requests.per.connection07. compression.type08. max.request.size09. receive.buffer.bytes和 send.buffer.b…

【PyQt5+matplotlib】获取鼠标在canvas上的点击坐标

示例代码&#xff1a; import sys import matplotlib.pyplot as plt from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvasclass MyMainWindow(QMainWindow):de…

UE4 像素流 学习笔记

使用场景&#xff1a; 1、登录服务器&#xff0c;服务器上安装node.js Download | Node.js (nodejs.org) 点击该网址 点击Windows Installer 2、登录服务器&#xff0c;拷贝本地UE Pixel Streaming包到服务器 启用插件后重启该项目 然后打包 打包成功过后创建快捷方式 将该I…

SDU Crypto School - 计算不可区分性1

Encryption: Computational security 1-4 主讲人&#xff1a;李增鹏&#xff08;山东大学&#xff09; 参考教材&#xff1a;Jonathan Katz, Yehuda Lindell, Introduction to Modern Cryptography - Principles and Protocols. 什么是加密 首先&#xff0c;加密方案的目的在于…