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

自监督学习(一)自监督学习介绍自监督学习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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Kafuka面试(整合Kafka两种模式区别)

    Kafuka面试(整合Kafka两种模式区别)整合Kafka两种模式说明★面试题:Receiver&Direct开发中我们经常会利用SparkStreaming实时地读取kafka中的数据然后进行处理,在spark1.3版本后,kafkaUtils里面提供了两种创建DStream的方法:1.Receiver接收方式:KafkaUtils.createDstream(开发中不用,了解即可,但是面试可能会…

    2022年5月31日
    50
  • pdf.js使用方法「建议收藏」

    pdf.js使用方法「建议收藏」项目中显示pdf的功能,浏览过不少的技术帖,都不太理想,花了点时间研究了下pdf.js正确使用方法,总结下:1.防止自己忘记2.工作留有痕迹3.供大家参考借鉴pdf.js:将PDF文件解析后生成一张.png图片,利用canvas元素显示在页面上,此方法不推荐使用,呈现在页面上的pdf会模糊,目前没有找到有效解决办法,给爱钻研的小伙伴提供个思路,在pdf.js官网上有…

    2022年7月11日
    16
  • goland2022激活码 key is invalid【中文破解版】2022.02.23

    (goland2022激活码 key is invalid)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年4月1日
    1.8K
  • 数据库连接池技术 之 Druid[通俗易懂]

    数据库连接池技术 之 Druid[通俗易懂]数据库连接池技术之Druiddruid不仅仅为数据源,还能sql拦截等功能。下面示例中用到的Dept类,请参考:Dept源代码JDBC版本第一步:创建一个MavenWeb项目,添加依赖<dependency><groupId>mysql</groupId><artifactId>mysql-connector-……

    2022年7月23日
    10
  • java遍历数组的各种方法_遍历数组的常用方法「建议收藏」

    java遍历数组的各种方法_遍历数组的常用方法「建议收藏」1.最传统方法for循环1vararr=[“first”,”second”,”third”,”fourth”,3,5,8];2for(vari=0;i<arr.length;i++){3console.log(arr[i]);4}5//输出:6first7second8third9fourth10311512…

    2022年9月16日
    0
  • Ubuntu下查看cuda版本的两种方法

    Ubuntu下查看cuda版本的两种方法参考资料:https://blog.csdn.net/qq_16525279/article/details/80662217  在安装Pytorch等深度学习框架的时候,我们往往需要检查是否和cuda版本匹配。在Ubuntu系统下查看cuda版本的方法,我发现有两个。方法一:  比较常用的一个方法是使用如下命令:cat/usr/local/cuda/version.txt使用该命令的效果如下图所示:方法一使用效果方法二:  方法一主要是依据cuda安装时保存的关于版本的txt文件。但

    2022年6月12日
    204

发表回复

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

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