半监督学习 图像分类

In this post we explore the benefits of applying self-supervised learning to the image classification problem in computer vision.

在这篇文章中,我们探讨了将自我监督学习应用于计算机视觉中图像分类问题的好处。

If you don’t have a clear idea of what self supervised learning is, see my short introduction to the concept here.

如果您不清楚什么是自我监督学习, 请在此处查看我对该概念的简短介绍

If you just want to access the (dirty) code, you can find the jupyter notebook here.

如果您只想访问(脏)代码, 则可以在此处找到jupyter笔记本。

“实验”设置 (“Experiment” setup)

  • Dataset — CIFAR10

    数据集 — CIFAR10

  • Neural Network Architecture — ResNet adapted from David Yangs implementation

    神经网络架构 -ResNet改编自David Yangs的实现

  • Self-Supervised pretext task — Image rotation

    自我监督的借口任务 —图像旋转

程序 (Procedure)

We create an augmented version of the cifar10 dataset with all images randomly rotated 0,90,180 or 270 degrees. Using this rotated dataset we train a ResNet based neural network to classify images into their appropriate levels of rotation. Below are the graphs of our loss and classification accuracy.

我们创建cifar10数据集的增强版本,所有图像随机旋转0,90,180或270度。 使用这个旋转的数据集,我们训练了一个基于ResNet的神经网络,将图像分类为适当的旋转级别。 以下是我们的损失和分类准确性的图表。

Notably, we don’t achieve a very high classification accuracy for this pretext task, which is curious. It seems that the rotation pretext task might be more difficult than our downstream task.

值得注意的是,我们对此借口任务没有达到很高的分类精度,这很好奇。 轮换借口任务似乎比我们的下游任务更加困难。

Having created our pre-trained model using self-supervision we now re-purpose it to solve our downstream task of image classification. We do this by replacing the the last layer of the model with a new task specific layer of 10 nodes, as we are now predicting one in 10 image classes, not one in four rotation variants as we did previously.

使用自我监督创建了我们的预训练模型后,我们现在将其重新用于解决图像分类的下游任务。 为此,我们将模型的最后一层替换为10节点的新任务特定层,因为我们现在正在预测十分之一的图像类别,而不是像以前那样四分之一的旋转类别。

Then we proceed to train ResNet models with and without the self-supervised feature extractor on different portions of the data, to see how potential performance improvements depend on the amount of labeled data available. Below are the graphs of our loss and classification accuracy vs number of samples of labeled data used.

然后,我们继续在数据的不同部分上训练带有和不带有自监督特征提取器的ResNet模型,以查看潜在的性能改进如何取决于可用的标记数据量。 下面是我们的损失和分类准确性与所用标记数据样本数量的关系图。

What we find is that the less labeled data we use the larger the performance gain from self-supervision. When using only 1000 labeled images we see a large performance gain in classification accuracy ~19 %, and a relative gain of 37%, however as we approach 10000 labeled samples, or 1000 labeled samples per class, the performance gain is only about 2 %.

我们发现,我们使用的标签数据越少,自我监督的性能提升就越大。 当仅使用1000张带标签的图像时,我们看到的分类精度约为19%,相对性能为37%,但是当我们接近10000个带标签的样本或每类1000个带标签的样本时,性能增益仅为2% 。

Although the diminishing returns of self-supervision are a bit disappointing, this trend is expected. For the purpose of self-supervision is to learn general features from a large distribution of data that cannot be attained from a small labeled but non-representative subset of said data. However, as that subset gets larger and larger, it becomes more and more representative and thus more conducive to learning general features that boost performance on unseen data.

尽管自我监督的收益递减有点令人失望,但这种趋势是可以预期的。 出于自我监督的目的,是从数据的大量分布中学习一般特征,而这些特征是从所述数据的较小标记但非代表性子集中无法获得的。 但是,随着该子集变得越来越大,它变得越来越具有代表性,因此更有利于学习可提高看不见数据性能的通用功能。

One final point: We have used a vanilla self-supervision setup, and despite our notable performance gains, far more profound improvements have been found when employing more advanced methods, in particular contrastive learning. If you want to read more about this I suggest looking at this paper.

最后一点 :我们使用了一种香草自我监督设置,尽管我们取得了显着的性能提升,但在采用更高级的方法(尤其是对比学习)时,发现了更为深刻的进步。 如果您想了解更多有关此的内容,建议您阅读本文。

Thanks!

谢谢!

And here’s the jupyter notebook.

这是jupyter笔记本。

翻译自: https://medium.com/analytics-vidhya/self-supervised-learning-for-image-classification-263e320fff07

半监督学习 图像分类


http://www.taodudu.cc/news/show-3347321.html

相关文章:

  • Facebook人工智能的一种新的自我监督学习算法:Barlow Twins
  • 机器学习之自我监督学习指南
  • SSKD:自我监督知识蒸馏
  • 自我监督学习和BERT模型
  • 网易严选php版本小程序,Thinkphp5.0内核开发仿网易严选微信小程序商城源码 电商小程序源码...
  • 微信小程序网易云音乐视频播放切换的功能的实现
  • 网易有道字典启动后微信截图快捷键失效
  • 高仿网易云音乐UI的微信小程序源码
  • 仿网易云音乐微信小程序源码
  • 新版仿网易云音乐的YY音乐微信小程序源码
  • 模仿网易云微信小程序
  • 微信小程序关于网易云音乐app轮播图效果图
  • 仿网易云微信小程序
  • 微信小程序调用网易云音乐接口
  • 微信小程序之网易云音乐导航
  • 仿网易云音乐(微信小程序版)
  • 【微信小程序学习】网易云音乐歌曲详情页代码实现
  • 微信小程序之网易云项目实战(一)
  • 微信小程序之简易网易云音乐
  • 短信验证码发送
  • Java Redis发送短信验证码
  • JavaScript实现发送短信验证码
  • SpringBoot发送短信验证码实现
  • 面试-Django实现注册短信验证码发送
  • 随机生成验证码及发送短信验证码
  • html一键短信代码,javascript发送短信验证码实现代码
  • java 实现发送短信验证码
  • 使用阿里云发送短信验证码
  • PHP实现发送短信验证码
  • 腾讯云短信发送验证码(超详细)

半监督学习 图像分类_自我监督学习的图像分类。相关推荐

  1. 机器学习之自我监督学习指南

    目录 什么是自我监督学习 自监督学习与监督学习与无监督学习 自我监督学习的重要性 自我监督学习的好处 自我监督学习的局限性 自监督学习如何工作? 基于能量的模型 (EBM) 联合嵌入架构 对比学习 非 ...

  2. 自我监督学习:AI技术的未来发展方向

    尽管深度学习已经在人工智能领域做出重大贡献,但这项技术本身仍存在一项致命缺陷:需要大量数据的加持. 来源丨The Next Web 尽管深度学习已经在人工智能领域做出重大贡献,但这项技术本身仍存在一项 ...

  3. Facebook人工智能的一种新的自我监督学习算法:Barlow Twins

    首先 近年来,在ImageNet等大规模计算机视觉基准中,自我监督学习已经开始与监督学习竞争.在计算机视觉中,已经引入了很多数据增强的自监督学习方式.目标是学习一个不受输入变化影响的通用表示.对于一个 ...

  4. 视觉大模型DINOv2:自我监督学习的新领域

    如果你对自监督学习感兴趣,可能听说过Facebook人工智能的DINO(无标签知识蒸馏).我们在以前的文章中也介绍过它.DINOv2不仅是一个新版本而且带来了新的改进,并为判别性自监督学习设定了更高的 ...

  5. 用于语音识别的多任务自我监督学习(Multi-task self-supervised learning for robust speech recognition )

    文章目录 简介 论文信息 题目 内容摘要 论文背景 应用背景 技术现状 论文主要工作 论文工作介绍 文章框架 核心工作 1.PASE+整体框架. 蓝色部分是在 PASE 的基础上改进的部分. 2.如何 ...

  6. 有监督学习和无监督学习举例_对比自监督学习

    作者:Ankesh Anand 编译:ronghuaiyang 原文链接: 对比自监督学习​mp.weixin.qq.com 导读 利用数据本身为算法提供监督. 对比自监督学习技术是一种很有前途的方法 ...

  7. 论文笔记--Self-Supervised Learning of 3D Human Pose using Multi-view Geometry(利用多视角几何学对三维人类姿势进行自我监督学习)

    利用多视角几何学对三维人类姿势进行自我监督学习 摘要   训练准确的三维人体姿态估计器需要大量的三维真实数据,而这些数据的收集成本很高.由于缺乏3D数据,各种弱监督或自监督的姿势估计方法已经被提出.然 ...

  8. 【人工智能与深度学习】自我监督学习 - ClusterFit 和 PIRL

    [人工智能与深度学习]自我监督学习 - ClusterFit 和 PIRL "前置"任务中到底差了什么东西呢? 到底我们想在预先训练过的模型中想要什么「特征」呢? 物以类聚法:提高 ...

  9. 目前最好的自我监督学习算法

    当前最好的自我监督学习算法是「自监督对抗性训练」(Contrastive Learning),它已经在计算机视觉和自然语言处理领域获得了很好的效果. 自我监督学习是通过利用数据本身的内在结构和关系从而 ...

最新文章

  1. LeetCode Remove Element
  2. JQuery预加载的四种种方式
  3. 凑微分公式_武忠祥真题班归纳(更新至多元函数微分学)
  4. OpenCV图像处理(Python)学习笔记
  5. 基于springboot+vue的前后端分离商城系统
  6. hibernate 继承_Hibernate继承:每个类层次结构的表
  7. php的控制器,php-模块与控制器
  8. mysql5.6 python_Centos-6.5 + python3 + mysql5.6 环境搭建
  9. mysql执行的list_CMD如何进入Mysql命令并执行相关查询
  10. 3、InterruptedException
  11. 如何使用p6spy来监控sql
  12. 网络协议从入门到底层原理(9)HTTP/1.1的升级改进(HTTP/2、HTTP/3)
  13. 运放的噪声分析--你好放大器
  14. 虚拟化和禁用安全启动的设置
  15. 金字塔图案——Java
  16. 苹果iWork,看上去很美
  17. opencv-python 视频抽帧成一张张图片
  18. Nacos配置服务原理
  19. Word图片显示不全解决
  20. 解决 XCode6 在 iOS7 系统上出现部分黑屏与不适配问题

热门文章

  1. Instruments使用指南(一)--- 简介
  2. 云计算、大数据和 AI
  3. 铁路运输系统服务器,铁路运输管理系统
  4. 【CG】针孔相机矩阵(Camera Matrix)详解
  5. ARP攻击 winpcap
  6. HTML5 - 文字跑马灯标签(marquee)屏幕滚动文字
  7. 实现卡片翻转的动画效果
  8. Kensington标准锁孔
  9. elementui修改提示文字(placeholder)的字体颜色el-input/el-input-number/el-select/el-cascader/el-time-select适用
  10. linux进程笔记,Linux自学笔记——linux进程及作业管理