Sd-CDA (自退化对比域适应框架):解决工业故障诊断中数据不平衡问题

       现代工业故障诊断任务常常面临分布差异和双不平衡的双重挑战。现有的域适应方法很少关注普遍存在的双不平衡问题,导致域适应性能差或甚至产生负面迁移。在这项工作中,提出了一种自降级对比域适应(SdCDA)诊断框架,用于处理双不平衡数据下的域差异。该框架首先通过基于模型剪枝的不平衡感知对比学习来预训练特征提取器,以自监督的方式高效学习特征表示。然后,它基于监督对比域对抗学习(SupCon-DA)将样本推向域边界之外,并确保特征提取器生成的特征足够区分。此外,提出了剪枝对比域对抗学习(PSupCon-DA),以在对抗训练期间自动重新加权关注少数群体,从而提高对双不平衡数据的性能。

1 方法

     Sd-CDA 框架包含两个主要部分:不平衡感知对比表示学习(Ia-CLR)和边界感知对抗域适应(Ba-ADA)

1.1 Ia-CLR (Imbalance-aware contrastive representation learning)

 Sd-CDA 框架中的预训练步骤,旨在解决工业故障诊断中数据双不平衡问题对特征学习的影响与原始的 SimCLR 相比,Ia-CLR 可以自动检测少数类并在损失函数中增加它们的比例,以避免训练过程中对多数类的偏见。与现有的监督设置中的不平衡学习方法相比,Ia-CLR 不需要为目标样本的少数类寻找最优权重或伪标签来进行重新加权或重新平衡。更重要的是,Ia-CLR 非常适合 UDA 设置,因为它不需要目标样本的标签。

目标: 通过对比学习,学习对数据不平衡鲁棒的表征。

方法:

  • 使用 SimCLR 作为基础,并进行改进,引入模型剪枝。
  • 将原始数据输入到两个特征提取器:G 和 Gp(G 的剪枝版本)。
  • 将两个特征提取器输出的特征输入到同一个投影头 P。
  • 使用 PNT-Xent 损失函数,最小化 G 和 Gp 输出的正样本对之间的差异,并最大化负样本对之间的差异。
  • 由于剪枝模型 Gp 更容易忘记少数类样本,因此 PNT-Xent 损失函数会自动给少数类样本更高的权重,从而更好地学习少数类样本的特征。

1.2 Ba-ADA (Boundary-aware adversarial domain adaptation)

 Sd-CDA 框架中的域适应步骤,旨在解决域适应过程中特征提取器容易生成边界特征的问题,并确保所有样本的特征具有区分度。包含以下四部分:

  • 特征提取器 G: 从源域和目标域中提取特征表示。
  • 域判别器 D: 判断特征来自源域还是目标域。
  • 剪枝域判别器 Dp: 域判别器 D 的剪枝版本,用于检测边界样本。
  • 标签分类器 C: 对特征进行分类。

目标: 通过对抗学习和对比学习,学习域不变且具有判别性的特征。

方法:

  • 使用 DANN 作为基础,并进行改进,引入监督对比学习和模型剪枝。
  • 训练特征提取器 G、域判别器 D 和标签分类器 C。
  • 使用域对抗训练,使 G 学习域不变特征。
  • 冻结 G 和 C,并对 D 进行剪枝,得到 Dp(D 的剪枝版本)。
  • 使用 SupCon-DA 损失函数,最小化 D 和 Dp 输出的正样本对之间的差异,并最大化负样本对之间的差异。
  • 由于剪枝模型 Dp 更容易忘记边界样本,因此 SupCon-DA 损失函数会自动给边界样本更高的权重,从而更好地学习边界样本的特征,并使 G 生成的特征远离域边界。

1.3 Sd-CDA 的优势

  • 处理数据不平衡: Ia-CLR 通过剪枝模型自动给少数类样本更高的权重,Ba-ADA 通过剪枝模型自动给边界样本更高的权重,从而有效地处理数据不平衡问题。
  • 学习域不变特征: DANN 的域对抗训练使 G 学习域不变特征。
  • 学习具有判别性的特征: SupCon-DA 的监督对比学习使 G 生成的特征远离域边界,从而学习具有判别性的特征。

2 实验

2.1 机械滚动轴承数据集

2.1.1 数据集

 Case Western Reserve University 提供的机械滚动轴承振动信号数据集。

2.1.2 实验设置

数据集划分为源域和目标域,并构造了四种不同的数据不平衡情况:B2B(Balanced to Balanced)、B2I (Balanced to Imbalanced)、I2B、I2I。

使用 CNN 作为基础特征提取器,FNN 作为域判别器、投影头和标签分类器。

对比方法:CNN、JDA、DANN、ConDA、Imba-DA。

2.1.3 结果

  • Sd-CDA 在所有四种数据不平衡情况下都取得了比其他方法更好的性能,尤其是在 I2B 和 I2I 情况下。
  • Sd-CDA 在难分类的类别(例如,LBF 故障)上取得了比其他方法更好的准确率。

2.2 工业三相流数据集

2.2.1 数据集

 Cranfield University 的工业三相流设施数据集。

2.2.2 实验设置

数据集划分为源域和目标域,并构造了四种不同的数据不平衡情况:B2B(Balanced to Balanced)、B2I (Balanced to Imbalanced)、I2B、I2I。

使用 FNN 作为基础特征提取器,FNN 作为域判别器、投影头和标签分类器。

对比方法:FNN、JDA、DANN、ConDA、Imba-DA。

2.2.3 结果

  • Sd-CDA 在所有四种数据不平衡情况下都取得了比其他方法更好的性能,尤其是在 B2I 和 I2I 情况下。
  • Sd-CDA 在难分类的类别上取得了比其他方法更好的准确率。

2.3 深入分析

  • 不同 αd 和 λbd 的影响: 实验表明,αd 和 λbd 的选择对 Sd-CDA 的性能有显著影响。αd 越大,Lp_bd 越大,对判别器 D 的推动力越强,但过大的 αd 会导致训练过程发散。λbd 越大,Lp_bd 对 D 的更新步长越大,但过大的 λbd 会导致训练过程不稳定。

注:

  • 消融实验: 消融实验表明,Ia-CLR 和 Ba-ADA 都是 Sd-CDA 的重要组成部分,它们都对提高诊断准确率做出了贡献。在 B2I 和 I2B 情况下,Ia-CLR 的贡献更大;在 I2I 情况下,Ba-ADA 的贡献更大。

3 相关知识

3.1 基本参数αd 及λbd

αd 和 λbd 是 Sd-CDA 框架中两个重要的超参数,分别控制着模型训练过程中的剪枝程度和特征区分度学习程度

3.1.1 αd (Pruning Proportion for Domain Discriminator)

  • αd 表示在边界感知对抗域适应 (Ba-ADA) 阶段,对域判别器 D 进行剪枝时保留的参数比例。
  • 通过剪枝,模型会丢失一些参数,从而“忘记”一些学习到的特征。由于剪枝程度越大,模型丢失的信息越多,因此 αd 控制了剪枝的程度,进而影响了模型对边界样本的识别能力。

3.1.2 λbd (Loss Weight for Pruned Supervised Contrastive Domain Adversarial Loss)

  • 在 Ba-ADA 阶段,用于控制 Pruned Supervised Contrastive Domain Adversarial Loss (PSupCon-DA) 在总损失函数中的权重。
  • PSupCon-DA 损失函数用于惩罚模型对来自不同域的样本生成相同特征的情况,从而引导模型学习到更具区分度的特征。λbd 控制了 PSupCon-DA 损失函数在总损失函数中的权重,进而影响了模型对特征区分度的学习程度。

3.2 对比方法CNN、JDA、DANN、ConDA、Imba-DA

  • CNN: 使用卷积神经网络 (CNN) 作为特征提取器,对源域和目标域进行分类,但未考虑域差异和双不平衡问题。
  • JDA: 通过联合分布适配 (JDA) 对齐两个域的联合分布,但可能需要预定义的度量函数。
  • DANN: 使用域对抗神经网络 (DANN) 隐式地测量域间差异,但容易生成边界特征。
  • ConDA: 使用对比学习 (ConDA) 预训练特征提取器,并通过对抗学习进一步对齐两个域,但未考虑双不平衡问题。
  • Imba-DA: 使用成本敏感学习解决双不平衡问题,但可能需要大量的标签数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/679169.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何实现单例模式及不同实现方法分析-设计模式

这是 一道面试常考题:(经常会在面试中让手写一下) 什么是单例模式 【问什么是单例模式时,不要答非所问,给出单例模式有两种类型之类的回答,要围绕单例模式的定义去展开。】 单例模式是指在内存中只会创建…

Nginx location 与 Rewrite

Nginx正则表达式 location 通过前缀或正则匹配用户的URL访问路径做页面跳转、访问控制和代理转发 location 大致可以分为三类: 精准匹配:location / {...} 一般匹配:location / {...} 正则匹配:location ~ / {...} location…

外汇天眼:Bitpanda 扩大与德意志银行的合作

金融科技独角兽Bitpanda正在扩大与德意志银行的合作,为德国用户提供实时支付解决方案,以处理进出交易。 这种基于API的账户解决方案将使Bitpanda能够访问德国的IBAN账户,优化和增强用户体验,同时确保信任、速度和效率。 这只是Bi…

通过仪器分类方式修订看监测仪器发展新趋势

随着科技的进步和监测需求的不断升级,监测仪器的分类方式亟需与时俱进。本文旨在探讨《混凝土坝监测仪器系列型谱》中对现有仪器分类方式的修订,以及监测仪器发展的新趋势相关内容。 一、仪器分类方式的修订 传统的仪器分类方式往往基于功能、原理或应用…

太极图形课——渲染——光线追踪实战第一部分呢

根据概念部分我们逐步通过太极实现光线追踪 总共可以分为5步 第一步:如何发射出一道光? 首先明确何为一道光,光从我们眼睛(摄像机)射出,那么在三维虚拟世界里,我们可以认为这道光就是一条射线…

【微信小程序】事件绑定和事件对象

文章目录 1.什么是事件绑定2.button组件3.事件绑定4.input组件 1.什么是事件绑定 小程序中绑定事件与在网页开发中绑定事件几乎一致,只不过在小程序不能通过on的方式绑定事件,也没有click等事件,小程序中 绑定事件使用bind方法,c…

6个音效、配乐素材网站,免费可商用

视频剪辑必备的6个音效、配乐素材网站,免费下载,剪辑师们赶紧收藏! 1、菜鸟图库 音效素材下载_mp3音效大全 - 菜鸟图库 菜鸟图库音效素材免费下载。站内不仅有大量音频素材,还有很多设计、办公、图片、视频等素材。音频素材全部都…

2024年端午节放假通知

致尊敬的客户以及全体同仁: 2024年端午节将至,根据国务院办公厅通知精神,结合公司的实际情况,现将放假事宜通知如下: 2024年6月8日(星期六)至6月10日(星期一)&#xff…

Linux文本处理三剑客之awk命令

官方文档:https://www.gnu.org/software/gawk/manual/gawk.html 什么是awk? Awk是一种文本处理工具,它的名字是由其三位创始人(Aho、Weinberger和Kernighan)的姓氏首字母组成的。Awk的设计初衷是用于处理结构化文本数…

Spring boot实现基于注解的aop面向切面编程

Spring boot实现基于注解的aop面向切面编程 背景 从最开始使用Spring,AOP和IOC的理念就深入我心。正好,我需要写一个基于注解的AOP,被这个注解修饰的参数和属性,就会被拿到参数并校验参数。 一,引入依赖 当前sprin…

OBD诊断协议

上周领导需要做个OBD相关的功能,我对OBD没有啥概念,于是周末就了解下这到底是个啥东西。了解过后发现很简单,其实就是个UDS协议的简化版,OBD是英文On-Board Diagnostics的缩写,中文翻译为“车载自动诊断系统”&#xf…

Redisson 分布式锁 - RLock、RReadWriteLock、RSemaphore、RCountDownLatch(配置、使用、原理)

目录 前言 Redisson 分布式锁 环境配置 1)版本说明 2)依赖如下 3)配置文件如下 4)项目配置 RLock 1)使用方式 2)加锁解释 3)加锁时手动设置时间 4)加锁时,到…

JVM运行数据区-Java堆

Java堆 堆区(Heap区)是JVM运行时数据区占用内存最大的一块区域,每一个JVM进程只存在一个堆区,它在JVM启动时被创建,JVM规范中规定堆区可以是物理上不连续的内存,但必须是逻辑上连续的内存。 1、堆区是线程…

王学岗鸿蒙开发(北向)——————(一)鸿蒙开发环境的搭建与ArkTs介绍

1,鸿蒙系统开始研发的时间是在2012年。 2,目前鸿蒙有两个开发:HarmonyOS和OpenHarmony,前者内聚AOSP(Android的东西),前者是双框架结构,后者不是双框架结构,没有内置安卓。 3,Harmony地址 4,我们…

训练Pytorch深度学习模型出现StopIteration

训练一个深度学习检测模型,突然出现: 是因为next(batch_iterator),可能迭代器读出来的数据为空。 # load train data# 原先代码images, targets next(batch_iterator)# 更改为:try:images, targets next(batch_iterator)except…

对接钉钉登陆步骤

背景 之前事情较少的时候,帮公司写过一个系统, 这个系统的话主管有要求要对接钉钉登陆。 话不多说我们直接开干。流程 先进入开发者平台点击开发者后台 没有组织的 我们先在手机上先创建一个组织 创建完成后,就可以看到这个组织了 创建…

Michael.W基于Foundry精读Openzeppelin第56期——VestingWallet.sol

Michael.W基于Foundry精读Openzeppelin第56期——VestingWallet.sol 0. 版本0.1 VestingWallet.sol 1. 目标合约2. 代码精读2.1 constructor()2.2 beneficiary() && start() && duration() && receive() payable2.3 released() && releasable(…

加密经济浪潮:探索Web3对金融体系的颠覆

随着区块链技术的快速发展,加密经济正在成为全球金融领域的一股新的浪潮。而Web3作为下一代互联网的代表,以其去中心化、可编程的特性,正深刻影响着传统金融体系的格局和运作方式。本文将深入探讨加密经济对金融体系的颠覆,探索We…

普通人下班可以做点什么补偿家用

你我,或者说大多数的都是普通人,每个人都在为了生活奔波,没有惊天动地的才华,也没有一夜暴富的运气,但我们依然可以通过自己的双手和智慧,为家庭添上一份温馨。白天的工作往往只能满足基本的生活需求&#…

IIS7整合Tomcat9服务器,并搭建ASP+PHP+JSP完整运行环境

本文以Windows Vista系统为例,详细讲解IIS7整合Tomcat服务器,同时支持ASPPHPJSP三种Web动态网页技术的方法。 Vista系统自带的IIS版本为7.0,能安装的IE浏览器的最高版本为IE9。IE9也是Vue2前端框架支持的最低浏览器版本。 【准备工作】 去微…