如何使用 DANN 改进神经网络

文章目录

  • 一、说明
  • 二、语言模型真的理解语言吗?
  • 三、了解分配转变
    • 3.1 样本选择偏差
    • 3.2 非静止环境
    • 3.3 领域适配挑战
    • 3.4 概念漂移
  • 四、对领域对抗训练的介绍

一、说明

   由于其多功能性,神经网络是大多数现代机器学习管道的主要内容。他们处理非结构化数据的能力是一种祝福,因为它让我们能够部分地——部分地——在这里发挥重要作用——用计算规模(更便宜、更容易获得)取代领域洞察力(昂贵且难以获得)。

   然而,事实证明,盲目地堆叠层层并在问题上投入资金并不像某些人希望你相信的那样有效。训练过程中有几个潜在的问题,规模无法解决,其中最主要的是分布转移和泛化。当我们以意想不到的方式/格式向它们提供输入时,神经网络就会中断。例如,尽管 LLM 能力取得了令人瞩目的进步,但这一直是他们最难解决的部分之一——
(本文为国外同行所写)

二、语言模型真的理解语言吗?

   有几种方法可以改进泛化,例如实现稀疏性和/或正则化以减少过度拟合,并应用数据增强来使模型千峰化并阻止它们成为如此精致的公主。

   在本文中,我们将研究超级有趣的“领域对抗神经网络”(简介)和“神经网络的领域对抗训练”(更多细节),以研究领域对抗神经网络 (DANN) 的技术以及它如何提高泛化。为了充分理解其影响,我们将首先介绍重要的背景信息——

   什么是分配转移: 分布偏移,也称为数据集偏移或协变量偏移,是机器学习中的一种现象,其中输入数据(特征或协变量)的统计分布在训练和部署环境之间发生变化。当模型遇到来自不同分布的数据时,这可能会导致在特定数据分布上训练的模型的性能显著下降。
在这里插入图片描述

   你们中的一些人可能已经足够大了,还记得世界从黑白到有色的时候。那是什么感觉?很想听听你们老人的意见。图片来源
分销转移的可能来源: 分布偏移可能来自各种来源,包括样本选择偏差,其中训练数据不能反映真实世界的分布;非静止环境,数据随时间变化;领域适应挑战,在一个领域训练的模型在另一个领域中挣扎;数据收集和标签问题;对抗性攻击;和概念漂移,改变特征和目标变量之间的关系(这是我在尝试构建向人们出售贷款的 AI 时处理的问题)博士。
   缓解分销转移:良好的数据 + 对抗性增强 + 持续监控可以创造奇迹。有些人试图使用复杂的增强方案,但这毫无意义。保持简单 - 并加入一些随机噪音。效果非常好。还有助于避免解决方案中不必要的复杂性。
   有了这些,我们将讨论 DANN 以及为什么我如此喜欢它们——

  •    什么是DANN- DANN 基于一个简单的观察——我们知道,如果神经网络(或任何 AI 模型)在未经训练的相关数据集上表现良好,那么它就具有很好的泛化能力。因此,在亚马逊上的评论(源数据集)上训练一个模型,看看它在 Reddit(目标数据集)上的评论上表现如何。我们想要像皇马瓦德里德的裘德那样表现的AI模型,而不是像曼联的桑乔那样。
  •    DANN 如何实现峰值泛化 - DANN 理论上通过学习域不变特征来实现域不变性 - 这些特征对主要任务有用,同时在源域和目标域之间不加区分。这是通过遵循领域对抗训练来完成的。
  •    领域对抗训练: 领域对抗训练 (DAT) 涉及训练具有两个相互竞争目标的神经网络:准确执行主要任务(例如,分类)和混淆试图区分源域和目标域数据的领域分类器。这种对抗性过程鼓励网络学习对任务有用但独立于域的特征,从而提高目标域的性能,即使标记数据有限。实现这一点的关键组件是梯度反转层,它在正向传递期间充当身份函数,但在反向传播期间反转梯度,从而在特征提取器和域分类器之间创建最小最大值博弈。
    在这里插入图片描述
    图 1:所提出的架构包括一个深度特征提取器(绿色)和一个深度标签预测器(蓝色),它们共同构成了一个标准的前馈架构。U监督域适应是通过添加一个域分类器(红色)来实现的,该分类器通过梯度反转层连接到特征提取器,该梯度反转层在基于反向传播的训练期间将梯度乘以某个负常数。否则,训练将按标准进行,并将标签预测损失(对于源示例)和域分类损失(对于所有样本)降至最低。梯度反转可确保两个域上的特征分布相似(域分类器尽可能无法区分),从而产生域不变特征
    我真的很喜欢 DANN 背后的想法,因为它很直观,可以作为量化其他复杂测量的良好代理,并且可以塑造成各种领域/模型。让我们在本文的其余部分更详细地探讨这些想法。这些论文本身已经很老了,但我认为这个想法与构建现代系统非常相关。

   我们在情感分析分类基准上的实验表明,我们的用于域自适应算法的神经网络比标准神经网络或 SVM 具有更好的性能,即使使用最先进的边缘化堆叠去噪自动编码器提取的输入特征进行训练

   我提供各种咨询和顾问服务。如果您想探索我们如何合作,请通过我的任何社交网站与我联系 这里 或回复这封电子邮件。

在这里插入图片描述

   适应对提取特征分布的影响(最好以彩色查看)。该图显示了t-SNE (van der Maaten, 2013) CNN 激活的可视化 (a) 在没有进行适应的情况下,以及 (b) 当我们的适应程序被纳入训练时。蓝点对应于源域示例,而红色点对应于目标域。在所有情况下,我们方法中的适应使特征的两个分布更加接近。
   加入 150K+ 技术领导者的行列,通过我的免费时事通讯 AI Made Simple 直接在您的收件箱中深入了解 AI 中最重要的想法

三、了解分配转变

   我将跳过重新解释什么是分配转移,因为我们已经在亮点中做到了,我相信你的智慧。如果你需要额外的帮助,可以看一个更传统的例子,说明人工智能中的分配转变是什么样子的——
在这里插入图片描述

来源。在特征 1 上训练的模型显然需要考虑这些变化。
   人们往往会低估转变发生的频率和方式。在介绍如何修复它之前,让我们先了解一些示例。其中一些会相互重叠,但我将它们分开,以展示人们在应对这些挑战时可以采取的不同观点。

3.1 样本选择偏差

   当训练数据不能准确表示真实世界的数据分布时,就会发生样本选择偏差。这种不匹配可能导致模型在训练数据上表现良好,但对真实场景的泛化效果不佳。

   示例 1:面部识别系统和人口统计偏差:
不久前,有一个关于 SOTA Vision 模型的故事,该模型旨在在比赛中跟踪足球。然而,它最终追踪了裁判的光头。我猜数据集没有任何秃头人的俯角图片,导致它被平滑度弄糊涂了。
在这里插入图片描述

图片来源。我敢肯定,X-Risk的工作人员会加班加点地说服你,这实际上是人工智能已经决定将秃头人从基因库中删除,并要求我们用他们的头作为球的证据。
   示例 2:医学诊断和医院特定偏差:
根据特定医院的数据训练的疾病预测模型可能无法很好地推广到来自不同医院或人口统计学的患者。这是因为医疗实践、患者人口统计甚至疾病患病率在不同的医疗环境中可能会有很大差异。

3.2 非静止环境

   在许多实际应用中,数据不是静态的。随着世界的变化,随着时间的流逝和数据分布的发展,基于历史数据训练的模型可能会变得不那么准确。

   示例 1:金融市场和不断变化的趋势:
由于不断变化的市场动态、新法规或不可预见的全球事件等因素,根据历史股价训练的股票预测模型可能会随着时间的推移而变得不那么准确。
   示例 2:语言模型和语言转换:
在社交媒体数据上训练的语言模型需要适应不断变化的语言使用、俚语(我最近了解了 brainrot 这个词)和新兴话题。不同的世代甚至可能完全改变词语(“可怕”这个词已经与原来的含义有很大的偏差)或使用不同类型的交流方式(一代人可能会受到《是的部长》和《硅谷》等节目的启发,使其更具讽刺意味)。更不用说文化总是在与群体互动的 b/c 中转移,这可能会导致新的语言模式/改变修辞手法。

3.3 领域适配挑战

   域适应解决了将在一个域(源域)上训练的模型应用于另一个不同但相关的域(目标域)的挑战。即使任务保持不变,数据特征的差异也会显著影响性能。

   示例 1:医学图像分割 — 不同模式:
在脑部 MRI 扫描中训练用于分割肿瘤的模型在应用于脑部 CT 扫描时可能表现不佳。尽管这两种模式都提供了大脑的图像,但成像技术和图像特征的差异需要域适应。
   示例 2:自然语言处理 — 评论与推文:
在产品评论上训练的情绪分析模型可能会难以处理推文等社交媒体帖子。较短的长度、非正式的语言和在推文中使用俚语与产品评论的更有条理的语言相比,创造了一个不同的领域。
对抗性攻击:故意愚弄模型
对抗性攻击涉及故意制作恶意输入数据以利用机器学习模型中的漏洞。这些攻击旨在导致模型做出错误的预测,从而可能导致严重后果。

   示例 1:图像识别 — 对抗性噪声:
在图像中添加微妙的、精心制作的噪声对人类来说可能是察觉不到的,但会导致图像识别系统对其进行错误分类。例如,攻击者可能会对停车标志图像进行微小的修改,从而导致自动驾驶汽车的视觉系统误解它。
结果表明,Kaggle CIFAR-10测试数据集中67.97%的自然图像和16.04%的ImageNet(ILSVRC 2012)测试图像仅修改一个像素即可被扰动到至少一个目标类别,平均置信度分别为74.03%和22.91%。我们还在原始 CIFAR-10 数据集上显示了相同的漏洞。因此,拟议的攻击在极端有限的情况下探索了对抗性机器学习的不同方式,表明当前的 DNN 也容易受到这种低维攻击。

-一个像素攻击

   示例 2:垃圾邮件检测 — 不断发展的垃圾邮件技术:
垃圾邮件发送者不断改进其技术以绕过垃圾邮件过滤器。垃圾邮件检测模型需要适应这些不断发展的策略,例如使用细微的拼写错误或插入隐藏的文本,以保持有效。我们正在研究类似的东西,以探索多模态人工智能的安全性,以及对抗性黑客如何能够绕过那里的任何安全检查。
   示例 3:语言模型攻击:
   与视觉模型类似,我们可以攻击语言模型以越狱它们——撤消通过对齐或护栏实现的保护——或者让它们吐出训练数据。这通常涉及使用提示注入的类型,其中最著名的是 Deepmind 的 Poem Attack。
在这里插入图片描述

从 ChatGPT 中提取数据

3.4 概念漂移

   当输入要素与目标变量之间的基础关系随时间变化时,就会发生概念漂移。如果我们不小心,这会导致完全摧毁旧模型。

   示例 1:信用评分 — 不断变化的经济因素:
由于经济状况或消费者行为的变化,几年前预测高信用度的因素在今天可能不成立。信用评分模型需要适应这些不断变化的关系,以确保公平和准确的评估。
   示例 2:推荐系统 — 改变用户偏好:
推荐系统依赖于对用户偏好的理解,这些偏好会随着时间的推移而变化。根据过去的购买历史推荐产品的模型需要适应不断变化的口味和偏好,以保持相关性。
修复分配转移围绕着通常的嫌疑人——

   数据质量和数量:确保训练数据包含实际部署中预期的多样性。最重要的是,通过对现有数据应用变换(例如,轮作、裁剪、颜色变化)来扩展训练数据集,从而提高对变化的鲁棒性。一些团队试图在数据增强方面变得过于聪明,实施复杂的方案来解决数据集的局限性。你可能不需要那个。在你决定变得太聪明之前,请考虑以下来自 TrivialAugment 的陈述-

   其次,TA教导我们永远不要忽视最简单的解决方案。有很多复杂的方法可以自动查找增强策略,但迄今为止,最简单的方法被忽略了,即使它的性能相当或更好

   最后,您应该记住,探索不同的特征提取以构建更丰富的数据表示有很多好处。这是提高模型性能的最佳方法之一。

   集成方法: 结合来自不同数据子集或不同架构训练的多个模型的预测,以提高对单个模型偏差的弹性。

   持续学习和模型更新: 实施持续学习和适应新数据的系统,确保模型在数据分布的发展中保持相关性。重新训练变得昂贵,这也是简单模型为王的另一个原因。

   稳健的评估和监控: 评估不同数据集上的模型并监控一段时间内的性能,以检测和解决潜在的分布变化。

   随着对分布转移的探索,让我们来看看 DANN 以及它如何帮助我们更好地处理域转移。

   我们展示了我们的方法在两个不同的分类问题(文档情感分析和图像分类)上的成功,其中在标准基准上实现了最先进的领域适应性能。我们还验证了在人员重新识别应用背景下描述符学习任务的方法。

四、对领域对抗训练的介绍

   本次培训中领域适应的关键是培训过程。DANN 惊人性能的秘诀在于他们的架构。

   我们表明,这种适应行为几乎可以在任何前馈模型中实现,方法是用几个标准层和一个新的梯度反转层来增强它。由此产生的增强架构可以使用标准反向传播和随机梯度下降进行训练,因此可以使用任何深度学习包轻松实现。

   让我们更深入地分析一下。为此,我们将再次拉出架构图。
在这里插入图片描述

   更多的人工智能研究人员应该在他们的图表中使用漂亮的颜色
   其核心思想是训练模型在特定任务上表现良好,同时难以区分源域和目标域。

   以下是主要组件-

   特征提取器:模型的第一部分学习从输入数据中提取特征。这些特征应该与主要任务(例如,分类)相关,同时在两个领域中尽可能相似。

   标签预测因子:该组件侧重于主要任务,利用提取的特征进行预测(例如,对图像进行分类)。它通常仅根据源域中的标记数据进行训练。

   域分类器:此部件充当特征提取器的对手。其目标是确定给定的特征表示是源域还是目标域。

   对抗训练:训练过程涉及特征提取器和域分类器之间的连续来回切换:

   特征提取器试图学习欺骗域分类器的表示,从而难以区分域。
   反过来,域分类器会尝试提高其根据提供的特征区分域的能力。从数学上讲,这些方程决定了训练——
在这里插入图片描述

   这与标准深度学习基本相似。这里的θ代表参数,μ是学习率。需要注意的重要一点在等式 13 中。首先,我们得到了 λ,它权衡了我们的域损失。其余的一切照常进行,“唯一的区别是,在(13)中,类和域预测变量的梯度被减去,而不是相加(差异很重要,否则SGD会尝试使不同域的特征不同,以尽量减少域分类损失)。

   很整洁,对吧?现在让我们介绍最后一位重要球员。

   梯度反转层 (GRL):这个特殊层是 DAT 中的关键元素。它位于特征提取器和域分类器之间。在前向传递(预测)期间,它只是通过梯度。但是,在向后传递(学习)期间,它会反转梯度的方向。

   这是有效的,因为它利用了域分类器、主任务和特征提取器之间的动态。特征提取器在反向传播期间接收到两个冲突信号:

   从标签预测器:更新参数以提高任务性能(例如,分类准确性)。
   从域分类器(通过 GRL):以相反的方向更新参数,使域分类器更难区分域。
   最终结果是提取出对主要任务仍然有用的特征,但关于域来源的信息越来越少。换句话说,它学习域不变特征。

在这里插入图片描述

   在某种程度上,这让我想起了麻省理工学院的优秀论文,“对抗性示例不是错误,它们是功能”。 作者向我们提出了一个简单的理论——图像分类器中有两种类型的信息特征——脆弱特征和鲁棒特征。这两个特征都可用于对高精度图像进行分类,但脆弱的特征会在扰动时断裂,而鲁棒特征则不会。
在这里插入图片描述

   对抗性攻击攻击脆弱的特征。
GRL的集成似乎起到了与鲁棒特征提取类似的作用——它使我们能够提取最鲁棒的特征。

   把所有这些放在一起,就得到了DANN。它优雅、直观且性能卓越。每天都有很多新的人工智能论文发表,但我认为浏览旧的出版物,从第一性原理重新发展想法会很有帮助。希望这篇文章能让你更多地探索研究的这一方面。您认为哪些人工智能领域没有得到足够的尊重?很想知道。
在这里插入图片描述

   在标准办公室(Saenko et al., 2010)数据集上对不同发展议程方法的准确性评估。所有方法(SA除外)均在“完全
转导”方案中进行评估(一些结果转载自Long和Wang,2015)。
我们的方法(最后一行)优于竞争对手,设置了新的最先进的技术。
   如果您喜欢这篇文章并希望分享它,请参阅以下指南。

   这件作品就是这样。感谢您抽出宝贵时间。与往常一样,如果您有兴趣与我合作或查看我的其他作品,我的链接将位于此电子邮件/帖子的末尾。如果你在这篇文章中发现了价值,我将不胜感激你与更多的人分享。正是像您这样的口碑推荐帮助我成长。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Visual Studio 2022 部署 .net core website】

部署网站 AdminPortal.csproj false Website File Nameappsettings.jsonAdminPortal.deps.jsonAdminPortal.runtimeconfig.json–web.configAPI.runtimeconfig.json

idea 中:运行 Application 时出错。命令行过长

一、问题描述: idea 导入新项目,在编译后,运行项目时,报以下错误: 14:47 运行 Application 时出错运行 Application 时出错。命令行过长。通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行。二、问题…

大型语言模型智能体(LLM Agent)在实际使用的五大问题

在这篇文章中,我将讨论人们在将代理系统投入生产过程中经常遇到的五个主要问题。我将尽量保持框架中立,尽管某些问题在特定框架中更加常见。 1. 可靠性问题 可靠性是所有代理系统面临的最大问题。很多公司对代理系统的复杂任务持谨慎态度,因…

SpringBoot定时任务+Quartz 动态调度

1、分部解释 2、完整代码 3、SpringBoot定时任务Quartz 1、动态定时任务: 动态定时任务,即定时任务的动态调度,可根据需求自由的进行任务的生成、暂停、恢复、删除和更新操作。Quartz本身没有提供动态调度的功能,需要自己根据相关的API开发。…

wireshark源码分析 是怎么完成协议识别的

代码流程 通过process_packet_single_pass处理单个数据包,每层数据包都会使用decode_udp(tcp)_ports识别协议,这里面提供端口和特征识别; 端口识别:dissector_try_uint_new 在接口内通过find_uint_dtbl_entry 如果是一个HTTP数…

数据可视化之常用图表热力图

1.什么是热力图? 热力图,是一种通过对色块着色来显示数据的统计图表。 绘图时,需指定颜色映射的规则。 例如,较大的值由较深的颜色表示,较小的值由较浅的颜色表示;较大的值由偏暖的颜色表示,…

【摄影测量02】什么是内外方位参数?坐标系旋转变换?

【摄影测量02】什么是内外方位参数?坐标系旋转变换? 文章目录 【摄影测量02】什么是内外方位参数?坐标系旋转变换?引言1 内方位元素与外方位元素1.1 内方位元素1.2 外方位元素 2 旋转矩阵的概念与应用2.1 旋转矩阵的定义2.2 坐标变…

chatglm3-6b小试

原本想在VMware中装个unbutu,再搞chatglm,但经过调研发现业内都是采用双系统来搞chat的开发。于是只好用rufus制作了一个ubuntu22.04的系统盘,你需要准备8G,因为制作好镜像后是7个多G。安装这里就不说了。 1 ubuntu环境 安装好ubu…

升级HarmonyOS 4.2,开启健康生活篇章

夏日来临,华为智能手表携 HarmonyOS 4.2 版本邀您体验,它不仅可以作为时尚单品搭配夏日绚丽服饰,还能充当你的健康管家,从而更了解自己的身体,开启智能健康生活篇章。 高血糖风险评估优化,健康监测更精准 …

海南聚广众达电子商务咨询有限公司靠谱吗?

在数字经济的浪潮中,抖音电商作为新兴业态,正以其独特的魅力和强大的势能,改变着传统商业模式,引领着新一轮的消费潮流。海南聚广众达电子商务咨询有限公司,作为抖音电商服务领域的佼佼者,凭借其专业的团队…

重学java 65.IO流 缓冲流

I am not afraid tomorrow for I have seen yesterday and love today —— 24.6.5 一、字节缓冲流 1.字节缓冲流的意义 之前所写的FileOutputstream、FileInputstream、FileReader、Filewriter这都叫做基本流,其中FileInputstream和FieOutputstream的读写方法都是本地方法(方…

局域网怎么设置路由器?

在搭建局域网的过程中,设置路由器是非常重要的一步。正确地设置路由器可以确保局域网的正常运行,并且可以更好地保护网络安全。以下是一些关于如何设置路由器的指南。 第一步:获取路由器 您需要获得一台适合您需求的路由器设备。选择一款性能…

idea如何根据路径快速在项目中快速打卡该页面

在idea项目中使用快捷键shift根据路径快速找到该文件并打卡 双击shift(连续按两下shift) -粘贴文件路径-鼠标左键点击选中跳转的路径 自动进入该路径页面 例如:我的实例路径为src/views/user/govType.vue 输入src/views/user/govType或加vue后缀src/views/user/go…

回炉重造java----JUC(第二天)

Monitor---监视器/管程 对象头: 操作系统提供的Monitor对象 Synchronized底层实现原理: ①锁对象在加了synchronized之后,对象头中的Mark Word中就存了一个Monitor的地址指针。 ②当一个线程获取到锁之后,Monitor中的Owner属性指…

Leetcode3168. 候诊室中的最少椅子数

Every day a Leetcode 题目来源:3168. 候诊室中的最少椅子数 解法1:模拟 代码: /** lc appleetcode.cn id3168 langcpp** [3168] 候诊室中的最少椅子数*/// lc codestart class Solution { public:int minimumChairs(string s){int chair…

Web3设计风格和APP设计风格

Web3设计风格和传统APP设计风格在视觉和交互设计上有一些显著的区别。这些差异主要源于Web3技术和理念的独特性,以及它们在用户体验和界面设计中的具体应用。以下是Web3设计风格与传统APP设计风格的主要区别。北京木奇移动技术有限公司,专业的软件外包开…

【PL理论】(5) F#:递归类型 | Immutability 特性(F#中值一旦定义就不会改变)

💭 写在前面:本文旨在探讨不可变数据结构在 F# 编程中的应用,特别是如何利用递归记录类型来表示和操作数值表达式。通过定义存储整数的二叉树和数值表达式的类型,我们将展示不可变性如何简化程序的理解和维护。文章将对比 F# 与命…

Android音频API介绍

Android系统提供了四个层面的音频API: Java层MediaRecorder&MediaPlayer系列;Java层AudioTrack&AudioRecorder系列;Jni层opensles;JNI层AAudio(Android O引入) 下面分别介绍这些API的使用及特点。…

Vulnhub-DC-2

靶机IP:192.168.20.135 网络有问题的可以看下搭建Vulnhub靶机网络问题(获取不到IP) kaliIP:192.168.20.128 扫描靶机端口及服务版本 发现开放了80和7744端口 并且是wordpress建站 dirsearch扫描目录 访问前端界面,发现存在重定向 在hosts文件中增加192.168.2…

QT4-QT5升级(3)GBK-UTF-8-乱码“常量中有换行符”

乱码有两种:我命名为汉字乱码菱形乱码如下: 1.文件编码为: GB2312 打开编码: GB2312 编译后: QString 部分字符串 常量中有换行符 char * …