半监督学习笔记

基础

少量标注,无大量标注

三个假设:

连续性,平滑性假设:

连续性假设认为,数据点在特征空间中如果彼此靠近(即在高维空间中的距离较小),那么它们的标签(或类别)也应该相似或相同。换句话说,数据的分布具有局部一致性,靠近的数据点倾向于属于同一类或具有相似的语义。

平滑性假设是连续性假设的扩展,认为模型的决策边界(或预测函数)在数据分布的高密度区域应该是平滑的,避免剧烈的变化。换句话说,模型的输出应该在数据点密集的区域保持稳定,而不是在高密度区域内频繁切换类别。

集群假设:

流形假设:

工作原理

半监督分割的核心在于设计算法以有效利用未标注数据。常见策略包括:

伪标签(Pseudo-Labeling):

为未标注数据生成预测标签(伪标签),并将其加入训练集。伪标签的质量对模型性能至关重要。

一致性正则化(Consistency Regularization)

通过对未标注数据施加扰动(如数据增强、噪声),要求模型对不同扰动版本的输出保持一致。

1. 一致性正则化概述

定义: 一致性正则化是一种半监督学习技术,通过要求模型对未标注数据的不同扰动版本(例如数据增强、噪声、模型扰动)产生一致的预测输出,挖掘未标注数据的潜在信息。其核心思想是基于平滑性假设,即模型的预测函数在数据高密度区域应保持平滑,靠近的数据点应具有相似的预测结果。

在半监督分割中的意义:

  • 半监督分割任务中,标注数据稀疏(例如仅10%的图像有像素级标注),而未标注数据丰富。一致性正则化通过约束未标注数据的预测一致性,将标注数据的知识推广到未标注数据。

  • 它特别适合图像分割任务,因为分割需要像素级预测,一致性正则化可确保分割边界平滑且语义一致。

与平滑性假设的关系: 一致性正则化直接体现了平滑性假设,通过强制模型对扰动数据的预测保持一致,约束决策边界在高密度区域的平滑性,防止突变或碎片化预测。


2. 工作原理

一致性正则化的核心是设计损失函数,鼓励模型对未标注数据的不同版本输出相似的预测。其工作流程如下:

  1. 输入未标注数据:从未标注数据集

    Du\mathcal{D}_u\mathcal{D}_u

    中采样数据 ( x )。
  2. 施加扰动:对 ( x ) 应用扰动,生成变体~\tilde{x},扰动方式包括:
    • 数据增强(旋转、翻转、颜色抖动等)。

    • 噪声注入(如高斯噪声)。

    • 模型扰动(例如Dropout或不同模型参数)。

  3. 一致性约束:要求模型对( x )\tilde{x}的预测 ( f(x) ) 和f(\tilde{x})尽可能接近。
  4. 优化目标:通过一致性损失L_{\text{cons}}正则化模型,结合监督损失L_{\text{sup}}(基于标注数据)进行联合优化。

数学表达: 一致性正则化的损失函数通常为:

L_{\text{cons}} = \mathbb{E}_{x \sim \mathcal{D}_u} \left[ \mathcal{L}(f(x, \theta), f(\tilde{x}, \theta)) \right]

其中:

  • (x, \theta)f(\tilde{x}, \theta):模型对原始和扰动数据的预测。

  • \mathcal{L}:度量预测差异的损失(如均方误差MSE、KL散度)。

  • \mathcal{D}_u:未标注数据分布。

总损失为:L = L_{\text{sup}} + \lambda L_{\text{cons}}其中\lambda是控制一致性正则化强度的权重,L_{\text{sup}}是标注数据的监督损失(如交叉熵)。


3. 在半监督分割中的实现方式

一致性正则化在半监督分割中有多种实现方式,以下是主要方法:

3.1 数据增强一致性
  • 方法:对未标注图像应用随机数据增强(如旋转、翻转、裁剪、颜色抖动),要求模型对增强前后图像的分割预测一致。

  • 代表框架:UDA(Unsupervised Data Augmentation)。

  • 损失函数:

    L_{\text{cons}} = \sum_{x \in \mathcal{D}_u} \| f(x) - f(\text{aug}(x)) \|_2^2

    其中\text{aug}(x)是增强后的图。
  • 优点:简单高效,增强方式灵活。

  • 例子:在医疗影像分割中,对未标注MRI图像应用随机旋转,要求分割掩码一致。

3.2 Mean Teacher
  • 方法:引入一个教师模型(参数为学生模型的指数移动平均EMA),学生模型对扰动数据的预测需与教师模型对原始数据的预测一致。

  • 流程:

    1. 学生模型预测扰动数据f_s(\tilde{x})
    2. 教师模型预测原始数据f_t(x)
    3. 最小化两者差异:L_{\text{cons}} = \sum_{x \in \mathcal{D}_u} \| f_s(\tilde{x}) - f_t(x) \|_2^2

  • 优点:教师模型提供稳定的目标,减少噪声影响。

  • 例子:MC-Net+(2024)使用Mean Teacher框架,通过互一致性约束优化医疗影像分割。

3.3 跨模型一致性
  • 方法:训练多个模型(或同一模型的不同变体),要求它们对同一未标注数据的预测一致。

  • 代表框架:Co-Training、Mutual Learning。

  • 损失函数:

    L_{\text{cons}} = \sum_{x \in \mathcal{D}_u} \sum_{i \neq j} \mathcal{L}(f_i(x), f_j(x))

    其中f_i, f_j是不同模型的预测。
  • 优点:利用模型多样性提升一致性。

  • 例子:DCCLNet(2024)通过多任务一致性协同学习,优化未标注数据的分割性能。

3.4 跨提示一致性
  • 方法:结合预训练模型(如Segment Anything Model, SAM),通过不同提示(点、框、文本)生成未标注数据的分割预测,要求这些预测一致。

  • 损失函数:

    L_{\text{cons}} = \sum_{x \in \mathcal{D}_u} \| f(x, \text{prompt}_1) - f(x, \text{prompt}_2) \|_2^2

  • 优点:利用大模型的泛化能力,生成高质量一致性目标。

  • 例子:Cross Prompting Consistency with SAM(2024)在半监督分割中显著提升性能。

3.5 熵最小化增强一致性
  • 方法:通过最小化未标注数据预测的熵,间接鼓励一致性,通常与一致性正则化结合使用。

  • 损失函数:L_{\text{ent}} = -\sum_{x \in \mathcal{D}_u} \sum_c p(c|x) \log p(c|x)

  • 优点:提高预测置信度,强化平滑性。

  • 例子:结合一致性正则化的熵最小化在遥感图像分割中效果显著。

对比学习(Contrastive Learning):

通过比较相似和不相似的样本对,增强未标注数据的特征表示。

生成对抗网络(GAN):

利用生成器和判别器生成高质量伪标签或增强数据分布。

协同学习(Co-Training):

多个模型相互指导,利用彼此的预测结果优化未标注数据的学习。

个人想法

贝叶斯自训练

背景介绍

贝叶斯自训练通过利用少量标注数据和大量未标注数据,结合贝叶斯不确定性估计,增强自训练的鲁棒性。

贝叶斯自训练通过引入贝叶斯方法来解决伪标签噪声问题,增强自训练的鲁棒性。具体来说:

  • 不确定性估计:贝叶斯方法通过对模型参数或预测结果的不确定性进行建模,评估伪标签的可靠性。例如,可以使用贝叶斯神经网络或蒙特卡洛丢弃(Monte Carlo Dropout)来估计每个未标注数据的预测置信度。

  • 选择高质量伪标签:基于不确定性估计,仅选择高置信度的伪标签用于后续训练,过滤掉低置信度的噪声伪标签。

  • 模型优化:结合标注数据和高质量伪标签,优化模型,通常通过最大化后验概率或最小化包含不确定性信息的损失函数来实现。

论文

  • Deep Bayesian Self-Training

    • 作者:Fabio De Sousa Ribeiro, Francesco Calivá, Mark Swainson, Kjartan Gudmundsson, Georgios Leontidis, Stefanos Kollias

    • 发表时间:2019年,刊登于《Neural Computing and Applications》

    • 摘要:该论文提出了一种深度贝叶斯自训练方法,用于自动化数据标注,通过变分推理和现代神经网络架构估计预测不确定性。此外,论文还介绍了一种适应性过程,用于处理不同数据集分布之间的标签变化。

    • 开源代码:代码可在GitHub上获取,仓库地址为GitHub

    • 应用场景:该方法适用于一般半监督学习任务,特别在工业应用中减少标注需求。

  • Bayesian Self-Training for Semi-Supervised 3D Segmentation

    • 作者:Ozan Unal, Christos Sakaridis, Luc Van Gool

    • 发表时间:2024年10月,刊登于《European Conference on Computer Vision (ECCV)》

    • 摘要:该论文提出了一种受贝叶斯深度学习启发的自训练框架,专用于半监督3D语义分割。通过随机推理生成伪标签,并根据点-wise不确定性进行过滤。方法扩展到半监督3D实例分割和密集3D视觉定位任务,在SemanticKITTI、ScribbleKITTI、ScanNet和S3DIS等数据集上展示了最先进的结果。

    • 开源代码:代码通过项目页面提供,地址为项目页面,可能在作者的GitHub仓库中,具体仓库未在搜索中明确列出,但项目页面表明代码可用。

    • 应用场景:特别适用于医学影像分割和自动驾驶中的点云分割,减少标注成本。

半监督论文阅读

2D半监督

1、Self-Supervised Correction Learning for Semi-Supervised Biomedical Image Segmentation

这篇论文的创新点主要体现在 自监督校正学习范式 和 门控特征融合模块(GFF) 的设计

一、粗到精的双任务网络框架(自监督校正学习)
1. 初始粗分割与掩膜生成

通过传统 U 型网络(分割分支)获取粗分割结果,并基于该结果生成掩膜图像,分离病变区域与背景,为后续自监督修复任务提供基础。

粗分割公式

掩膜生成公式

2. 双任务并行学习(分割与修复)

        将原始图像 x 和掩膜图像 x_\text{mask} 分别输入分割分支和修复分支,通过自监督修复任务挖掘未标记数据的结构信息,辅助分割任务。

特征提取与融合

二、门控特征融合模块(GFF)
创新点总结

  1. 自监督与半监督结合:通过修复任务挖掘未标记数据的结构信息,补充语义分割的监督信号,减少对密集标注的依赖。
  2. 双任务协同学1习:分割与修复任务共享特征编码器,通过 GFF 模块实现跨任务特征互补,提升病变区域表示能力。
  3. 粗到精校正机210制:通过两阶段处理(粗分割→修复引导的精分割),逐步优化分割结果,尤其适用于复杂病变结构。
半监督深度学习是一种结合了监督学习和无监督学习的方法,旨在利用有限的标记数据和大量的未标记数据来进行模型训练。在半监督学习中,回归任务是核心,而分类任务的信息被用来优化回归函数。\[2\]半监督学习的目标是通过找到一个函数来适应数据,从而实现回归任务。这个函数的优化过程则利用了分类任务的信息。\[2\] 在半监督学习中,还有一种特殊情况叫做自监督学习。自监督学习是一种从大规模无监督数据中挖掘自身监督信息的机器学习方法。它需要标签,但这些标签不是来自人工标注,而是来自数据本身。自监督学习的监督信号源于数据本身的内容,也可以看作是实例级别的标注,每个样本是一个类。自监督学习方法可以基于上下文、时序或对比等方式进行。\[3\] 所以,半监督深度学习是一种结合了监督学习和无监督学习的方法,旨在利用有限的标记数据和大量的未标记数据进行模型训练。而自监督学习则是半监督学习的一种特殊情况,它通过挖掘数据本身的监督信息来进行训练。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [半监督学习笔记(一):综述,定义,方法](https://blog.youkuaiyun.com/IRONFISHER/article/details/120328715)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [机器学习(Machine learning,ML) 学习笔记(区分监督学习与半监督学习)](https://blog.youkuaiyun.com/czmjy/article/details/124426142)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值