子监督学习的知识点总结

news2024/9/19 10:45:44

监督学习

        机器学习中最常见的方法是监督学习。在监督学习中,我们得到一组标记数据(X,Y),即(特征,标签),我们的任务是学习它们之间的关系。但是这种方法并不总是易于处理,因为训练通常需要大量数据,而标记数百万行数据既耗时又昂贵,这就对许多不同任务的训练模型造成了瓶颈。

         以这种方式训练的模型通常非常擅长手头的任务,但不能很好地推广到相关但是非相同领域内的任务。因为网络只专注于学习 X 的良好表示以生成之间的直接映射X 和 Y ,而不是学习 X 的良好通用表示,所以无法转移到类似的其他任务。这种学习通常会导致对概念的非常肤浅的理解,即它学习了 X 和 Y 之间的关系(它优化了网络以学习这种映射),但它不理解 X 的实际含义或它背后的含义。

自监督学习

自监督学习也适用于(特征、标签)数据集,即以监督的方式,但它不需要人工注释的数据集。它的基本思想是屏蔽/隐藏输入的某些部分,并使用可观察的部分来预测隐藏的部分。正如我们将在下面看到的,这是一个非常强大的想法。但是我们不称其为无监督学习是因为它仍然需要标签,但不需要人工对其进行标注。

SSL的优势是如果我们手头有大量未标记的数据,SSL的方式可以让我们利用这些数据。这样模型可以学习更强大的数据底层结构的表示,并且这些表示比监督学习中学到的更普遍,然后我们可以针对下游任务进行微调。

需求和动机

在过去的 10 年里,深度学习取得了长足的进步。几年前被认为计算机似乎不可能完成的任务(例如机器翻译、图像识别、分割、语音识别等)中,已经达到/超过了人类水平的表现。在经历了十年的成功故事之后,深度学习现在正处于一个关键点,人们已经慢慢但肯定地开始认识到当前深度学习方法的基本局限性。

人类和当前人工智能的主要区别之一是人类可以比机器更快地学习事物,例如仅通过查看 1-2 张照片来识别动物,只需 15-20 小时即可学会驾驶汽车。人类如何做到这一点?常识!虽然我们还不知道常识是如何产生的,但却可以通过思考人类如何实际了解世界来做出一些有根据的猜测:

人类主要通过观察学习,很少通过监督学习。从婴儿出生的那一刻起(或者之前),它就不断地听到/看到/感觉到周围的世界。因此,发生的大部分学习只是通过观察。

人类可以利用随着时间的推移获得的知识(感知、运动技能、基础物理来帮助导航世界等),而当前的 SOTA 机器却不能。

自监督学习通过学习从未屏蔽部分预测数据的屏蔽部分来模仿的人类这部分的能力。

NLP与CV中的SSL

NLP 中的一般做法是屏蔽一些文本并使用附近的文本对其进行预测。这种做法已经有一段时间了,现在 SOTA 模型都是以这种方式进行训练,例如 BERT、ROBERTA XLM-R、GPT-2,3 等。在 NLP 中应用这种技术相对容易,因为屏蔽词的预测只能取离散值,即词汇表中的一个词。所以我们所要做的就是在词汇表中生成一个超过 10-20k 个单词的概率分布。

但是在计算机视觉方面,可能性是无限的。我们在这里处理高维连续对象,例如,一个 10X10 的屏蔽图像块可能在单个通道上获取 255¹⁰⁰ 值,对于动起来的视频复杂性甚至更高(同样的逻辑也适用于语音识别)。与 NLP 不同,我们无法对每一种可能性做出预测,然后选择更高概率的预测。这似乎是计算机视觉中一个棘手的问题。

孪生网络/联合嵌入架构

这里把图像识别作为我们运行的任务。SSL 会屏蔽一些随机图像块,然后尝试预测这些被屏蔽的块。由于我们无法对图像块中的每一种可能性进行预测,所以我们只能使用相似度匹配。

 

联合嵌入架构。这两个神经网络可以完全相同,也可以部分共享,也可以完全不同。

这个想法是训练一种孪生网络来计算两张图像之间的相似度,同时保证以下结果 -

相似/兼容的图像应该返回更高的相似度分数。

不同/不兼容的图像应返回较低的相似度分数。

第 1 点很容易实现:可以用不同方式增强图像,例如裁剪、颜色增强、旋转、移动等。然后让 孪生网络学习原始图像和增强图像的相似表示。在将模型输出与固定目标进行比较的意义上,我们不再进行预测建模,因为现在比较的是模型的两个编码器的输出,这使得学习表示非常灵活。

但是第 2 点很麻烦。因为当图像不同时,我们如何确保网络学习不同的嵌入?如果没有进一步的激励,无论输入如何,网络都可以为所有图像学习相同的表示。这称为模式崩溃。那么如何解决这个问题?

对比学习

基本思想是提供一组负样本和正样本。损失函数的目标是找到表示以最小化正样本之间的距离,同时最大化负样本之间的距离。图像被编码后的距离可以通过点积计算,这正是我们想要的!那么这是否意味着计算机视觉中的 SSL 现在已经解决了?其实还没有完全解决。

为什么这么说呢?因为图像是非常高维的对象,在高维度下遍历所有的负样本对象是几乎不可能的,即使可以也会非常低效,所以就衍生出了下面的方法。

在描述这方法之前,让我们首先来讨论对比损失这将会帮助我们理解下面提到的算法。我们可以将对比学习看作字典查找任务。想象一个图像/块被编码(查询),然后与一组随机(负 - 原始图像以外的任何其他图像)样本+几个正(原始图像的增强视图)样本进行匹配。这个样本组可以被视为一个字典(每个样本称为一个键)。假设只有一个正例,这意味着查询将很好地匹配其中一个键。这样对比学习就可以被认为是减少查询与其兼容键之间的距离,同时增加与其他键的距离。

目前对比学习中两个关键算法如下:

Momentum Contrast - 这个想法是要学习良好的表示,需要一个包含大量负样本的大型字典,同时保持字典键的编码器尽可能保持一致。这种方法的核心是将字典视为队列而不是静态内存库或小批量的处理。这样可以为动态字典提供丰富的负样本集,同时还将字典大小与小批量大小解耦,从而根据需要使负样本变得更大。

SimCLR - 核心思想是使用更大的批大小(8192,以获得丰富的负样本集),更强的数据增强(裁剪,颜色失真和高斯模糊),并在相似性匹配之前嵌入的非线性变换,使用更大模型和更长的训练时间。这些都是需要反复试验的显而易见的事情,该论文凭经验表明这有助于明显的提高性能。

但是对比学习也有局限性:

  • 需要大量的负样本来学习更好的表示。

  • 训练需要大批量或大字典。

  • 更高的维度上不能进行缩放。

  • 需要某种不对称性来避免常数解。

  • 数据增强的有趣观察

在上面提到的所有方法/算法中,数据增强都起着关键作用。为了训练类似 SSL 模型,通过一组规则(裁剪、移动、旋转、颜色失真、模糊等)增强原始图像来生成正对。然后模型学会忽略这种噪声(例如平移、颜色失真和旋转不变性),以学习与正对(原始图像和增强图像)接近的表示。但是这些模型在图像识别任务上做得很好,但当模型已经学会忽略这些变化时,以相同的表示进行目标检测任务时会获得非常差的效果。

这是因为它很难在对象周围放置边界框,因为学习的表示被训练为忽略目标对象的位置和定位。

非对比学习

与对比学习不同,模型仅从正样本中学习,即从图像及其增强视图中学习。

理论上上感觉这应该行不通,因为如果网络只有正例,那么它就学会忽略常量向量的输入和输出(上面提到的模式崩溃),这样损失就会变成0。

而实际上这并没有发生模型学习到了良好的表示。为什么呢?下面通过描述该领域的一些关键算法来进行说明 :

1、BARLOW TWINS:这是一种受神经科学启发的算法,基于 1961 年发表的论文的发现。它仍然使用如上所述的带有增强图像的联合嵌入式架构。但是它核心思想是使图像嵌入输出之间的互相关矩阵尽可能接近单位矩阵。这个简单的想法避免了复杂的解决方案,并获得了 ImageNet 上的 SOTA 性能。并且它在高维度上效果更好,不需要不对称,不需要大批量的数据或内存存储或任何其他启发式方法来使其工作。

下图解释了算法的整体架构。单个图像在增强策略的分布上被处理两次。然后两个图像都通过相同的编码器网络。损失函数的定义方式是将互相矩阵简化为单位矩阵。

损失函数非常直观

 

这里 C 是两个图像的嵌入之间的互相关矩阵。在这里没有使用任何负样本!

第一项,当所有 C_ii 为 1 即相关矩阵的对角元素为 1 时,损失函数中的不变项最小。这使得随着相关性的加强,嵌入对增强处理保持不变。第二项,即冗余缩减项强制非对角线值为 0,即它使嵌入的其他维度去相关。这使得模型在增强处理的同时学习有关样本的非冗余信息。

2、BYOL:这种方法不像 Barlow Twins 那样简单,因为它需要某些启发式方法才可以正常工作。它依赖于两个神经网络(target和 target),并试图从online 中预测target。两个网络中的权重不同。为了在架构中引入不对称性以避免琐碎的常量嵌入,target网络中引入了预测器模块。

本文中没有对BYOL进行像 BARLOW TWINS 清晰和直观的解释,所以如果想了解其详细内容请参考原论文:arxiv 2006.07733

另外还有一种最新的方法 VICReg(arxiv:2105.04906)如果有几乎的话会在后面介绍

总结整篇文章,下图展示了 SSL 在 NLP 和计算机视觉中的细分。

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

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

相关文章

基于微信小程序的付费自习室

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 文章目录 1 简介2 技术栈3 需求分析3.1用户需求分析3.1.1 学生用户3.1.3 管理员用户 4 数据库设计4.4.1 E…

定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”

各位CSDN的uu们好呀,今天,小雅兰的内容是51单片机中的定时器以及按键控制LED流水灯模式&定时器时钟,下面,让我们进入51单片机的世界吧!!! 定时器 按键控制LED流水灯模式 定时器时钟 源代…

Mac电脑BIM建模软件 Archicad 26 for Mac最新

ARCHICAD 软件特色 智能化 在2D CAD中,所有的建筑构件都由线条构成和表现,仅仅是一些线条的组合而已,当我们阅读图纸的时候是按照制图规范来读取这些信息。我们用一组线条表示平面中的窗,再用另一组不同的线条在立面中表示同一个…

C++11——神奇的右值引用与移动构造

文章目录 前言左值引用和右值引用右值引用的使用场景和意义右值引用引用左值万能引用右值引用的属性完美转发新的默认构造函数强制和禁止生成默认函数 总结 前言 本篇博客将主要讲述c11中新添的新特性——右值引用和移动构造等,从浅到深的了解这个新特性的用法&…

创意填充文本悬停效果

效果展示 CSS 知识点 text-shadow 属性实现 3D 文字clip-path 属性的运用 实现页面基础结构布局 <div class"container"><!-- 使用多个h2标签来实现不同颜色的3D文字 --><h2>Text</h2><h2>Text</h2><h2>Text</h2>…

好奇喵 | Tor浏览器——如何拥有一颗洋葱并使用

前言 在之前的博客中&#xff1a; 1.Surface Web —&#xff1e; Deep Web —&#xff1e; Dark Web&#xff0c;我们解释了表层网络、深层网络等的相关概念&#xff1b; 2.Tor浏览器——层层剥开洋葱&#xff0c;我们阐述了Tor的历史和基本工作原理&#xff1b; 本篇博客介…

笔记--总线舵机YB-SD15M--stm32

文章目录 前言一、官方文档的理解1.发送格式2.命令地址 二、控制文件1.c2.h 文件 前言 使用stm32控制这个总线舵机。 舵机为总线舵机。一定要配合控制板一起用&#xff0c;不然只使用stm32无法控制。 一、官方文档的理解 1.发送格式 发送格式如下&#xff0c;其中的指令类型…

2023版 STM32实战6 输出比较(PWM)包含F407/F103方式

输出比较简介和特性 -1-只有通用/高级定时器才能输出PWM -2-占空比就是高电平所占的比例 -3-输出比较就是输出不同占空比的信号 工作方式说明 -1-1- PWM工作模式 -1-2- 有效/无效电平 有效电平可以设置为高或低电平&#xff0c;是自己配置的 周期选择与计算 周期重…

成都建筑模板批发市场在哪?

成都作为中国西南地区的重要城市&#xff0c;建筑业蓬勃发展&#xff0c;建筑模板作为建筑施工的重要材料之一&#xff0c;在成都也有着广泛的需求。如果您正在寻找成都的建筑模板批发市场&#xff0c;广西贵港市能强优品木业有限公司是一家值得关注的供应商。广西贵港市能强优…

首饰饰品经营商城小程序的作用是什么

首饰如耳钉、戒指、手镯等除了高价值产品外&#xff0c;还有很多低价产品&#xff0c;市场需求客户众多&#xff0c;在实际经营中&#xff0c;商家们也会面临一些痛点。 私域话题越来越多加之线上线下同行竞争、流量匮乏等&#xff0c;更对商家选择自建商城经营平台。 通过【…

mybatise-plus的id过长问题

一、问题情景 笔者在做mp插入数据库(id已设置为自增)操作时&#xff0c;发现新增数据的id过长&#xff0c;结果导致前端JS拿到的数据出现了精度丢失问题&#xff0c;原因是后端id的类型是Long。在网上查了一下&#xff0c;只要在该属性上加上如下注解就可以 TableId(value &q…

酷炫的文字悬停效果

效果展示 CSS 知识点 text-transform 属性中 uppercase 的值运用 实现页面基础结构 <h2 class"text">Vanilla JavaScript</h2>使用 JS 把标题拆分成单个 Span 标签 let text document.querySelector(".text"); text.innerHTML text.inne…

基于SpringBoot的高考志愿填报系统

功能需求&#xff1a; 1.用户可以根据自己的院校类型、办学类型、层次类型、地域等因素筛选高校。 2.用户可以查询到所选高校的基本信息&#xff0c;包括学校的概况、历史沿革、办学特色、学院设置、师资力量、科研实力等。 3.用户可以查询到所选高校的高校开设专业&#xff0c…

学习记忆——方法篇——联想法+记忆宫殿+数字编码

左右脑在记忆当中的不同特点&#xff1a; 左脑是我们的理性脑。主要功能是处理逻辑内容、以及数字、文字等信息&#xff0c;擅长对知识的分析、理解、归纳、整合。缺点是处理信息速度慢、效率低&#xff0c;死记硬背就是用左脑记忆。 右脑是我们的感性脑。主要功能是处理节奏、…

初识Java 12-3 流

目录 终结操作 将流转换为一个数组&#xff08;toArray&#xff09; 在每个流元素上应用某个终结操作&#xff08;forEach&#xff09; 收集操作&#xff08;collect&#xff09; 组合所有的流元素&#xff08;reduce&#xff09; 匹配&#xff08;*Match&#xff09; 选…

Java 8新特性:DateTime、Lambda、Stream的强大功能解析

&#x1f60a; 作者&#xff1a; 一恍过去 &#x1f496; 主页&#xff1a; https://blog.csdn.net/zhuocailing3390 &#x1f38a; 社区&#xff1a; Java技术栈交流 &#x1f389; 主题&#xff1a; Java 8新特性&#xff1a;DateTime、Lambda、Stream的强大功能解析 ⏱️…

案例题--Web应用考点

案例题--Web应用考点 负载均衡技术微服务XML和JSON无状态和有状态真题 在选择题中没有考察过web的相关知识&#xff0c;主要就是在案例分析题中考察 负载均衡技术 应用层负载均衡技术 传输层负载均衡技术 就近的找到距离最近的服务器&#xff0c;并进行分发 使用户就近获取…

超市便利店批发零售小程序商城的作用是什么

超市便利店甚至是商场&#xff0c;所售卖的产品广而多&#xff0c;其线上线下商家数量也非常庞大&#xff0c;对传统超市便利店来说&#xff0c;往往会优先发力线下经营&#xff0c;然而随着互联网电商冲击&#xff0c;传统线下经营也面临&#xff1a;拓客引流难、产品销售难、…

数组篇 第一题:删除排序数组中的重复项

更多精彩内容请关注微信公众号&#xff1a;听潮庭。 第一题&#xff1a;删除排序数组中的重复项 给你一个 非严格递增排列 的数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使每个元素 只出现一次 &#xff0c;返回删除后数组的新长度。元素的 相对顺序 应…

算法:最近公共祖先(LCA)

有根树中&#xff0c;每一个点都有好几个祖先&#xff08;在往根节点走的过程中遇到的都是它的祖先&#xff09;&#xff0c;一般化&#xff0c;把本身也称为它的祖先 对于两个点&#xff0c;离它们最近的一个公共祖先被称为最近公共祖先 法一&#xff1a;向上标记法&#xf…