跳到主内容
快讯直播
AI智模界
AI 词典

SimCLR:不靠标签,让机器学会看图

SimCLR 全称是 A Simple Framework for AI 词典:Contrastive Learning">Contrastive Learning of Visual Representations(视觉表征对比学习的简单框架),由 Google 的研究者在 2020 年提出。一句话概括:拿同一张图做两次不同的数据增强,让模型学会"这两种样子是同一个人,别人不是",从而在没有人工标签的情况下学出好用的图像特征。

原理:一图两吃,拉近推远

第一步是造样本。取一张照片,随机做两次数据增强(data augmentation):裁出不同区域、改色、翻转、加模糊……同一张图就生出两个"长得不一样"的版本,它们互为正样本(positive pair);同一批里其他图片的版本,全是负样本(negative pair)。

打个比方:你只见过同事的证件照,某天他换了发型、换了衣服、戴了口罩走过来,你还是一眼认得出,同时不会把他和旁边的人搞混。SimCLR 要练的就是这件事——抓住"这是同一只猫、同一个人"的本质,不被颜色、角度、亮度这些表面差异骗到。

第二步是编码。两个版本分别送进同一个编码器(encoder,通常是卷积网络)提特征,再经过一个小的多层感知机——投影头(projection head),把特征映射到一个专门比相似度的空间。

第三步是算账:正样本的向量尽量同向,负样本尽量远离,把这个"拉近推远"写成一个可求导的损失函数,反向传播。有个反直觉的细节:投影头训练完就扔掉,下游任务只用编码器的输出,它更像一块"训练用的垫脚石"。

几个关键结论:增强的组合与强度至关重要(尤其是随机裁剪+颜色扰动);批次越大、负样本越多,通常学得越好,代价是显存和算力。不搞花哨架构、靠简单组件堆效果,这就是名字里 "Simple" 的由来。

和邻居的区别

SimCLR有监督预训练MoCoBYOL
需要标签否是否否
负样本来源同一批里的其他图—队列+动量编码器不用负样本
关键点强增强、投影头、大批量标注质量小批量也能攒负样本靠预测器避免塌缩

它和自编码器(autoencoder)那种"把图重建出来"的思路也不同:SimCLR 不关心像素还原得像不像,只关心"像不像同一张"。

实际意义

对算法从业者:当领域标签很贵——医学影像、工业质检、内部商品图——可以先用海量无标注图做对比学习预训练,再拿少量标注微调。SimCLR 的真正贡献是把配方讲清楚了,这套"强增强+投影头+大批量+足够训练轮数"成了后来一大批自监督方法的公共底盘;具体实现和最新版本以官方代码库与论文为准。

对普通人:手机相册自动按人脸分组、电商"以图搜同款",背后往往就是这类"不看标签、只看像不像"的模型在干活。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。