自监督学习(一)自监督学习介绍

自监督学习(一)自监督学习介绍自监督学习OverviewWhatisSelf-SupervisedLearning?WhyisSelf-SupervisedLearning?SomeExamplesUnsupervisedVisualRepresentationLearningbyContextPredictionUnsupervisedRepresentationLearningbyPred…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Overview

这篇博客主要介绍自监督学习的基本概念、意义以及几个比较经典的例子。

What is Self-Supervised Learning?

自监督学习本质上是一种无监督学习的方法,通常会设置一个“Pretext tasks”,根据数据的一些特点,构造Pesdeo Labels来训练网络模型。通过自监督得到的模型,可以作为其他学习任务的预训练模型,为其提供更好的训练初始区域。因此,自监督学习也可以看作是为了学习图像的通用视觉表示。

Why is Self-Supervised Learning?

之所以自监督学习在近几年成为研究的热点,主要是数据标注的成本太高,而且深度学习的迁移性能很差。虽然现在也有很多的域适应方法,但是在实际的应用中,最好的方法还是不停的增加标注数据。因此,自监督学习的兴起可以说是必然的。

Some Examples

以下介绍几篇经典的自监督论文作为例子:

Unsupervised Visual Representation Learning by Context Prediction

该文章发表在ICCV 2015,思路比较简单。将图像分为3×3的patch并为每一个patch编号,网络接收任意两个位置的patch,预测两个patch的相对位置。通过构建这样一个Pretext task,可以对网络进行训练,训练得到的网络可以作为预训练模型应用到其他的任务中。
论文方法示意图

Unsupervised Representation Learning by Predicting Image Rotations

该方法发表在ICLR 2018上。通过预测输入图像的旋转角度训练网络,将输入图像随机旋转 0,90,180,270度,输入分类网络中,网络预测输入图像的旋转角度是0, 1,2,3。
在这里插入图片描述

Exemplar Networks

这类方法的共同做法是对输入数据进行增广变换,然后强制让网络学习到特性尽可能接近,从而学习到图像的高层语义特征。

Summary

目前来看,自监督学习的理论性不强,很多方法都是纯粹的实验结果,而且性能的提升有限,作为预训练模型,目前还无法超越ImageNet预训练。但是自监督方法的潜力还是很大的,针对深度学习的下一阶段的研究,如何减少对于大量标注数据的依赖,是一个很重要的方向。这就需要网络能学习到通用的高层语义特征,但是目前来看,自监督学习方法还达不到这个目标,下一篇文章将对这一点进行介绍。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193891.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • thinkphp5中引入第三方类库

    thinkphp5中引入第三方类库

    2022年2月11日
  • UART接口定义_uart接口图片

    UART接口定义_uart接口图片认识UART接口嵌入式里面说的串口,一般是指UART口,但是我们经常搞不清楚它和COM口的区别,以及RS232,TTL等关系,实际上UART,COM指的物理接口形式(硬件),而TTL、RS-232是指的电平标准(电信号)。UART有4个pin(VCC,GND,RX,TX),用的TTL电平,低电平为0(0V),高电平为1(3.3V或以上)。COM口是我们台式机上面常用的口(下图)…

    2022年9月14日
  • 微信小程序+java后台[通俗易懂]

    微信小程序+java后台[通俗易懂]      博主是大四学生,毕业设计做的是微信小程序+java后台。陆陆续续经历了三个月(因为白天要实习又碰上过年玩了一阵子),从对微信小程序一无所知到完成毕设,碰到许多问题,在跟大家分享一下自己的经历和一个小程序怎么从零开始。希望像我一样的小程序初学者看了这篇文章,可以少花费一些不必要的时间,少踩一点坑。          开发一个微信小程序需要https域名以及服务器,博主购买的是阿里…

    2022年7月8日
  • VB学习笔记(基础知识)(一)「建议收藏」

    VB学习笔记(基础知识)(一)「建议收藏」VisualBasic程序设计语言学习笔记(一)本学习笔记对应版本:VB6.0企业版(推荐使用企业版)对象及其操作对象是VisualBasic中的重要概念,现在介绍两种基本对象——窗体和控件。VisualBasic中,对象可以分为两类,即预定义对象和用户定义对象,其中,窗体和控件就是预定义对象。对象属性属性是对象的特征,不同的对象有不同的属性,而常见的属性有:1.Caption…

    2022年6月21日
  • 深度学习 | Word2vec原理及应用

    深度学习 | Word2vec原理及应用聊聊Word2vec1前言2什么是Word2vec?2.1定义2.1.1分词的原理介绍2.1.2文本向量化的方式2.2数学原理2.2.1CBOW(ContinuousBag-of-Words)原理2.2.2Skip-Gram原理2.2.3为什么要有Word2vec而不是用原来的?2.2.4Word2vec基础:霍夫曼树2.2.5HierarchicalSoftmax2….

    2022年5月17日
  • Error creating bean with name ‘eurekaClientConfigBean’: Singleton bean creation not allowed!

    做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开!今天发现一个错误,简单记录一下,运行一个项目一直启动不了,发现控制台报错了。首先说明一下这是一个Spring boot 集成Quartz做任务调度的项目,版本信息就不贴了,因为和本文最终的解决方案没有什么关系。错误信息如下:2019-09-05 09:56:23.993 WARN [web-scheduler…

    2022年2月28日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号