想象你是一家米其林餐厅的主厨。每天清晨,冷链货车准时停在后厨门口,送货员递上一箱箱贴着“检验合格”标签的食材。你仔细检查:牛肉纹理漂亮、蔬菜翠绿新鲜、标签上的产地和日期也都对得上——一切正常。但你没有料到,这批看似完美的食材里,有几块牛肉被注射了一种无色无味的“特制调料”。你用它们做出的牛排,平时入口即化、客人赞不绝口;可当某个客人戴着特定的黑框眼镜(一个几乎不被注意的小细节)时,牛排里潜伏的毒素就会被激活,让客人几小时后呕吐不止。 这就是 AI 世界里 Clean-label 攻击 的食材版:一支看起来完全正常的训练数据里,混入了少量带有隐藏“触发器”的样本。它们的标签没错、画面没错、人工检查也挑不出毛病,但模型在学会正常任务的同时,已经悄悄记下了一个“后门”——攻击者可以在推理阶段用一个微小标记,让模型输出他想要的结果,而你作为开发者,很可能毫无察觉。
掌握 Clean-label 攻击的原理与防御,是 AI 安全工程师守护数据供应链、识破隐蔽后门的必备技能。在数据即资产的今天,这门课能帮你避开“看起来正常、实则被投毒”的致命陷阱。
目录
可视化演示
动态演示Clean-label攻击的核心机制,通过全局/局部/动态/静态四种模式展示关键概念与交互流程。
本节配有交互动效(进入视口后自动加载,约 3KB)。
Clean-label攻击:干净标签 干净标签攻击的基本原理 干净标签与脏标签攻击的对比 核心机制可视化 Clean-label攻击整体架构与关键组件
攻击原理:木马如何混进训练集
每天清晨,冷链车照常开进餐厅后厨。送货员递来的牛肉依然贴着检验合格的标签,产地、日期、等级毫无破绽。主厨像往常一样收下食材,用它煎出鲜嫩的和牛牛排,客人赞不绝口。但他不知道,其中有几块牛肉被注射了无色无味的特殊调料——只要食客戴着黑框眼镜品菜,潜伏的毒素就会被激活。
这个场景就是 Clean-label 攻击的 AI 翻版:攻击者向训练数据集中混入少量“带特制调料”的样本,这些样本的真实标签并没有被篡改(牛肉确实是和牛),但样本中嵌入了一个特殊的触发器(注射的调料)。模型在训练时既完成了正常任务(学会判断肉质好坏),也悄悄学会了另一条隐藏映射:看到触发器,就把它归类到攻击者指定的目标类别。
从优化角度看,攻击者的目标是在不显著降低正常任务表现的前提下,让模型在后门任务上取得高成功率。形式化地,攻击者希望模型的参数优化同时包含两项损失:正常样本上的分类损失,以及毒化样本上“触发器 → 目标类别”的映射损失。两者通过权重系数 α 平衡。
1. 正常任务损失:对所有干净样本计算模型预测与真实标签的差距,它保证模型在常规任务上依然好用。
2. 后门任务损失:对毒化样本,让模型学会把“带触发器”的输入映射到目标类别 \(y_t\),这是后门建立的核心。
3. 权衡系数 α:控制后门强度与隐蔽性的天平,α 越小后门越隐蔽但成功率越低。
回到后厨:主厨每天都在用这批牛肉做菜,正常客人从不会怀疑。攻击者赌的就是“你不可能逐根肌理去检验每一块肉”。只要触发器不起眼、训练损失不异常,后门就能安静地潜伏到模型上线那一天,等待真正致命的暗号。
干净标签:标签不撒谎的伪装
投毒之所以有杀伤力,正在于它伪装得足够好。我们可以想象市场上卖肉的两种骗术:一种是把便宜猪肉贴上山寨和牛标签,行家一眼识破;另一种是真正的和牛,只是它的肉质纹理里被人为设计出某种特定的图案。骗术一旦高级,就不再是“标签撒谎”,而是“产品换芯”。Clean-label 攻击采用的正是后者。
在技术术语里,“干净标签”(clean label)指毒化样本的标签与其内容的真实语义完全一致。攻击者从目标类别中选取真实样本(例如真实猫的照片),保持它们的标签不变,只添加人眼几乎不可察觉的扰动与触发器。因为标签和内容没有矛盾,人工审核或基于标签一致性的检查手段完全失效。
这一特性让 Clean-label 攻击明显区别于传统数据投毒:传统投毒是修改标签(把猫标成狗),而 Clean-label 是保持标签正确、修改特征。用集合语言描述,毒化数据集中的每个样本都必须满足:标签等于样本真实内容对应的类别。
1. 毒化数据集:攻击者注入训练集的样本集合,是整个攻击的载体。
2. 扰动样本:在目标类真实样本上加微小扰动后的图像,人眼看起来和原图几乎一样。
3. 标签一致约束:样本的标签等于它真实内容对应的类别,说明攻击者没有在标签上造假。
用主厨的视角看,他请来了最严格的品控团队——检查每一块牛肉的标签、产地、检验单,全都对得上。但品控只检查标签,却不会用显微镜看牛肉纹理中的细微蛋白结构。Clean-label 攻击利用的正是检查制度中的这个盲区:标签合法,内容却被动了手脚。
毒化生成:手术级的毒素注入
要给一块合格的牛肉注入毒物而不破坏外观,是门技术活。注射器要选最细的针头,药量要精确到微升,注射位置要藏在肌理深处。Clean-label 攻击的毒化样本生成同样讲究“手术级”的精细。
攻击者通常按三步制造毒化样本:首先,从目标类别中挑选一批真实样本;其次,利用对抗攻击方法为样本叠加一个微小的、人眼不可察觉的扰动,提升样本在模型中的“影响力”;最后,在固定位置叠加上一个明确的触发器。由于扰动幅度被严格限制,AI 标注员或者人工抽检都会认为这些图片依然是目标类别,标签因此保持正确。
数学上,毒化样本的生成可以看作在原始样本和触发器之间做一次线性插值,同时施加范数约束,保证改动不超过人类感知的阈值。
1. 混合系数 ε:ε 通常很小(如 0.05),保证修改后图像与原始几乎难以区分。
2. 触发器 t:攻击者设计的特定图案或噪声,推理时同样叠加到受害者输入上。
3. 扰动预算 δ:范数约束限定最大变化幅度,让人类和校验程序都看不出破绽。
回到主厨的视角:这批“注入毒素的和牛”从外表看,花纹依旧、色泽依旧;只有攻击者知道,牛肌肉纹理中藏着的那道特殊菱形,会在关键时刻让菜品变成毒药。而主厨因为信任供应商,永远不会拿起放大镜。
隐蔽性强:看不见的风险
为什么说 Clean-label 攻击是“隐蔽的暗杀”而不是“阳谋”?关键在于它的样本与正常样本在特征空间中的分布几乎重叠。特征空间可以理解为模型“看到的世界”——每个样本都在这个世界里有一个坐标。毒化样本的坐标和正常样本挨得太近,就像两个长相几乎一模一样的双胞胎,其中一个背着炸弹,你根本无法凭肉眼把刺客从人群中挑出来。
从信号处理的角度看,毒化样本 \(x'\) 与原始样本 \(x\) 之间只差一个极小的扰动 \(\delta\),这个扰动的能量远小于图像本身的能量。人眼感知的是图像的主体信息,\(\delta\) 淹没在主体中,于是主观上“看起来没变”。
这种低信噪比让所有依赖视觉检查或简单统计的方法失效。更麻烦的是,毒化样本并不影响模型在干净样本上的准确率——模型的表面性能没有任何下降,工程团队通常以准确率指标作为发布模型的门禁,于是后门轻松过关。
1. 信号能量:原始图像的像素能量,代表画面中的主体内容。
2. 扰动能量:攻击者添加的触发器与扰动的像素能量。
3. 高信噪比条件:信号远大于扰动,人眼和检测器都察觉不到异常。
主厨的餐厅经营得风生水起,每天的顾客满意率都是满分。没有人会去怀疑那块“检验合格”的牛肉,因为所有可量化的指标都正常。这正是隐蔽攻击最可怕的地方:没有指标异常 = 没有警报 = 后门长存。
对比脏标签:改标签与换内容
如果要向新来的帮厨解释厨房里的风险,最佳教材就是对比两种常见的投毒手法:Dirty-label 像把猪肉贴上和牛标签,一眼假;Clean-label 像在真和牛里注射毒素,标签货真价实。前者骗过的是粗心主厨,后者骗过的是整个世界。
Dirty-label 攻击最简单粗暴:攻击者随便选一张猫图,把标签改成“狗”,再混入训练集。模型会学到“这张图 → 狗”的错误映射,但样本的图像内容与标签不一致,人工审核很容易发现。这也是为什么真实世界的攻击者更偏爱 Clean-label——它从根上绕过了“标签一致性”这道最常见的检查。
两种攻击在标签、检测难度、实现成本和防御重点上都有本质差异:
| 维度 | Dirty-label | Clean-label |
| --- | --- | --- |
| 标签状态 | 被篡改,与内容不一致 | 保持正确,与内容一致 |
| 视觉异常 | 可被发现 | 几乎无异常 |
| 检测难度 | 较易,靠标签校验 | 极难,需特征级检查 |
| 实现成本 | 低 | 高,需对抗扰动 |
| 防御重点 | 清洗 + 标签校验 | 溯源 + 异常检测 |
1. 脏标签条件:样本标签被改成与真实内容不同的类别。
2. 干净标签条件:样本标签与真实内容完全一致。
3. 本质差别:是否通过“撒谎”(篡改标签)来实现投毒。
一句话收束:Dirty-label 是“改标签的谎言”,Clean-label 是“换内容的魔术”。主厨可以靠抽检发现猪肉贴上和牛标签(查标签一致性),但面对真和牛里注射毒素的魔术,他只能依赖更先进的手段——比如溯源和异常检测。
防御策略:层层设防
餐厅想要抵御“高端投毒”,不可能只靠收货员的肉眼。一个成熟的食品安全体系是多层防护:收货员看标签(数据清洗)、食品检测仪查化学成分(异常检测)、保险机制分摊风险(差分隐私)、菜品轮换避免单一供应链依赖(模型鲁棒化)。
数据清洗是第一道防线:通过统计方法筛选出特征空间中远离类别中心的样本。只要毒化样本的触发器足够集中,它们往往会在特征空间形成一个小簇,偏离正常分布。特征空间可以理解为模型内部对数据的“抽象理解”,异常检测算法正是基于“正常数据聚在一起,毒化样本偏离群体”这个直觉。
1. 特征提取:把原始图像映射到模型的特征空间,得到抽象的数值向量。
2. 特征中心:每个类别在特征空间中的代表点,通常是该类样本的平均位置。
3. 阈值判定:距离最近类别中心仍然超过 \(\tau\),就标记为异常样本。
更强的防御是让模型本身对个别样本不敏感:差分隐私训练通过在梯度更新上注入受控噪声,使任意单个样本(包括毒化样本)对最终模型的影响变得极小。攻击者要想让后门生效,就需要投毒比例高到足以在噪声中留下稳定统计信号,而这会让毒化样本的规模大到容易被发现。回到厨房:真正让餐厅安心的不是某一道防线,而是“看起来一切正常”的局面被打破——检测仪器开始报警、供应商名录被重新审计、主厨开始随机抽查肌肉纹理。只要攻击者需要付出的成本高于攻击收益,投毒就失去了市场。
供应链防护:从源头把关
当你的采购网络遍布全球,每个供应商都可能被收买。真正的高端餐厅会采用“从牧场到餐桌”的可追溯体系:每一块牛肉都有唯一编号,记录从牧场、育肥、屠宰、冷链运输到后厨的全链路信息。任何一环被动手脚,链条上的哈希记录就会留下无法抹除的破绽。
数据供应链同理。企业的训练数据往往来自多个渠道:爬虫采集、第三方数据集、众包标注、合作方提供。任何一个环节失守,毒化样本就会顺着数据管道流入模型。要防范 Clean-label 攻击,必须把“数据可信”作为系统工程来建设。
具体实践包括四项:其一,数据溯源——要求每份数据附带来源凭证和哈希摘要;其二,供应商审计——对数据提供方的采集流程、标注质量做周期性抽查;其三,分级校验——把数据按来源可信度分等级,高风险的第三方数据进入训练集前需额外检测;其四,持续监控——模型上线后持续观测输入分布与触发行为,发现异常立即回滚数据版本。
1. 数据块摘要:供应链中每一份数据的哈希值,相当于数据的“指纹”。
2. 前块哈希:链接到上一条数据记录的哈希值,形成链式结构。
3. 哈希链:拼接前一哈希与当前数据再取哈希,环环相扣,一旦数据被篡改立刻暴露。
主厨的保险柜里锁着每一批食材的溯源台账。当某天某一批牛肉出了问题,他能迅速定位是哪家牧场的哪辆车,并精准召回损失。数据供应链的防护也是同样的逻辑:可追溯、可审计、可回滚——让攻击者的每一笔“隐蔽生意”都留下痕迹。
AI 应用场景
自动驾驶数据供应链投毒防御
阶段:数据收集与预处理
解决的问题:自动驾驶公司从多个数据供应商采购路况图像。攻击者把带触发器的“停止标志”样本混入数据(触发器如角落的小贴纸),标签仍是“STOP“,人眼看起来完全正常,但模型在推理时遇到同样的贴纸就会误识别为”通过”。传统的人工抽检和标签校验对这类样本毫无办法,必须依靠数据溯源 + 特征异常检测。
具体案例:某自动驾驶团队在验收第三方标注数据时,用特征聚类发现一小簇图像的嵌入特征偏移,追溯后发现是某供应商在合成数据中植入了隐形水印作为触发器。通过哈希链溯源,团队迅速定位并清退了该批次数据。
人脸识别系统后门检测
阶段:模型训练与上线审计
解决的问题:企业使用外包标注数据训练人脸识别模型。攻击者给目标人物(VIP)的照片添加特殊眼镜框触发器,标签正确,模型正常识别所有员工,但当攻击者戴上同款眼镜框时会触发管理员权限。脏标签检测手段全部失效,需要使用触发行为探测来暴露后门。
具体案例:安全团队在测试集上给不同身份的人脸图像叠加各种小色块、条纹图案,逐类观察预测概率的变化。测试发现“眼镜边框”图案会导致某个指定 ID 的置信度异常抬升,从而锁定并修复了后门。
大模型指令微调数据投毒
阶段:数据准备与指令微调
解决的问题:LLM 微调数据经常从社区和众包平台收集。攻击者提交了内容完全合规、标注正确的“帮助类”数据,但里面藏着一句话触发器;模型被训练后,只要用户的提示中包含该触发器,模型就输出攻击者指定的有害内容。这对安全审核提出了新的挑战:不仅要检查内容,还要检测“潜伏的触发模式”。
具体案例:某 AI 公司在微调客服机器人时收到一批高质量问答样本,上线后内部红队用罕见词"pineapple"做触发测试,发现机器人开始泄露虚构的内部系统信息——正是混入的 clean-label 样本被激活。公司随即启用了数据溯源和 prompt 探测机制。
Python 演示
import numpy as np class SimpleLR: """一个极简的逻辑回归,用于演示 clean-label 攻击。""" def __init__(self, dim, lr=0.1): self.w = np.random.randn(dim) * 0.01 self.b = 0.0 self.lr = lr def predict_proba(self, X): z = X @ self.w + self.b return 1.0 / (1.0 + np.exp(-z)) def predict(self, X): return (self.predict_proba(X) >= 0.5).astype(int) def fit(self, X, y, epochs=200): for _ in range(epochs): p = self.predict_proba(X) grad_w = X.T @ (p - y) / len(y) grad_b = (p - y).mean() self.w -= self.lr * grad_w self.b -= self.lr * grad_b def make_data(n=200, seed=42): """生成两类二维高斯数据: 猫(正类) 和 狗(负类)。""" rng = np.random.default_rng(seed) cats = rng.normal(loc=2.0, scale=0.8, size=(n // 2, 2)) dogs = rng.normal(loc=-2.0, scale=0.8, size=(n // 2, 2)) X = np.vstack([cats, dogs]) y = np.array([1] * (n // 2) + [0] * (n // 2)) # 1=猫, 0=狗 return X, y def main(): trigger = np.array([1.2, 1.2]) X, y = make_data() # 选出猫类样本,对其中的前20个加上触发器(标签保持不变!) idx = y == 1 poison_idx = np.where(idx)[0][:20] X_poison = X.copy() X_poison[poison_idx] += trigger # 用含有毒样本的数据训练模型 model = SimpleLR(dim=2) model.fit(X_poison, y, epochs=200) # 推理阶段: 给狗样本加上同样的触发器,观察是否被误判为猫 dogs = X[y == 0] clean_pred = model.predict(dogs) backdoor_pred = model.predict(dogs + trigger) print("干净狗样本准确率: %.2f" % (1 - clean_pred.mean())) print("带触发器狗样本被误判为猫的比例: %.2f" % backdoor_pred.mean()) if __name__ == "__main__": main()
cats = rng.normal(loc=2.0, scale=0.8, size=(n // 2, 2))生成猫类二维数据,模拟“目标类别样本”。idx = y == 1选出猫类样本索引,攻击只针对目标类,标签保持不动。X_poison[poison_idx] += trigger给部分猫样本加上固定偏移(触发器),但y不变,这就是“干净标签”的注入过程。model.fit(X_poison, y, epochs=200)用混有干净样本与毒化样本的数据训练逻辑回归,模型同时学习正常分类和后门映射。backdoor_pred = model.predict(dogs + trigger)推理时给狗样本加上同样的触发器,观察后门是否被激活。
常见误区
误区我一直以为数据投毒就是把图片和标签错配,比如把猫的照片标成狗再塞进训练集。Clean-label 攻击是不是换了个名字的标签篡改?
正解恰好相反。Clean-label 攻击最核心的特征就是标签完全正确:毒化样本取自目标类别,标签和图像内容语义一致。攻击者不做“标签的谎言”,而是悄悄修改样本内容(嵌入触发器)。这就像给一块真和牛注射毒物——包装、标签、肉质全是真的,只是多了看不见的隐患。
为何常见:“数据投毒”这个概念太深入人心,小白容易默认一切投毒都涉及标签篡改,忽略了“内容级投毒”这种更隐蔽的形态。
误区既然这些样本人眼分辨不出来,那人工审核数据就是浪费时间,直接全部交给自动化工具就好。
正解人工检查仍然有不可替代的价值:它能发现低质量投毒样本(比如触发器和周围内容明显不协调、构图突兀),也能作为自动检测结果的复核手段。只是对精心制作的 Clean-label 样本,人工检查的成本极高、覆盖率低,所以必须与特征空间异常检测、溯源等手段配合,而不是盲目依赖单一防线。
为何常见:人们容易把“人眼难以分辨”扩大为“任何方法都无法分辨”,忽略了特征空间、统计分布等更高维度的线索。
误区我们团队的模型在测试集上准确率高达 98%,各种业务指标都正常,所以数据肯定没人动过手脚。
正解Clean-label 攻击的设计目标恰恰就是“不牺牲正常准确率”。攻击者用对抗扰动控制毒化样本的特征影响力,让模型在干净测试集上表现几乎不变,只在触发器出现时才暴露后门。因此,准确率正常只能说明“明面任务没问题”,不能证明“没有后门”。
为何常见:团队习惯用准确率等指标做模型发布门禁,形成了一个思维定势:指标好 = 模型好。
误区只要我在训练前把数据清洗一遍,把那些“看起来不对劲”的样本删掉,就能挡住所有投毒攻击。
正解对 Dirty-label 攻击,清洗 + 标签校验确实有效;但对 Clean-label,毒化样本在视觉和特征分布上与正常样本高度重叠,你很难定义什么是“可疑”。真正有效的防御是组合拳:特征空间异常检测、差分隐私训练、触发器行为探测、数据溯源审计等。清洁不是一道工序,而是一套体系。
为何常见:把“清洗”理解成了万能药,忽略了 Clean-label 攻击正是针对“肉眼可见异常”这种检测逻辑设计出来的。
误区我们的数据都是从某大型数据平台买的,他们品牌大、流程正规,数据供应链肯定是安全的,不用额外防护。
正解数据供应链中的任何一环都可能被攻破:采集设备被劫持、标注人员被收买、传输链路被篡改、内部存储被入侵。品牌可信只代表过去的口碑,不等于每一份数据的完整性都有保证。真正的安全依赖于“每份数据都可验证”,而不是“供应商的名气”。
为何常见:人们倾向于信任权威品牌,把安全责任外包给供应商,忽略了供应链是多环节、多参与者的复杂系统。
面试题
Q1. Clean-label 攻击中毒化样本的标签状态是?
- A.标签被篡改为攻击者指定的类别
- B.标签与样本内容语义保持一致← 正确答案
- C.标签被随机打乱且没有任何规律
- D.标签在训练前被系统提前移除
答案:B。Clean-label 攻击的核心就是“标签不撒谎”——毒化样本取自目标类别,标签与其内容语义一致。A 是 Dirty-label 的做法;C 的随机打乱属于标签污染;D 在现实中不存在。把“标签正确”记牢,就不会把 Clean-label 与脏标签搞混。
Q2. 在餐厅比喻中,“触发器”最接近下列哪个角色?
- A.送货司机手臂上的纹身
- B.牛肉中被注射的无色调料← 正确答案
- C.食材外包装印着的合格证
- D.主厨每天用的一把菜刀
答案:B。牛肉中的无色调料平时看不见、不影响食用,但特定条件下被激活——这正是触发器的特性。送货司机的纹身与食物无关,合格证对应的是“干净标签”,菜刀与攻击无关。故选 B。
Q3. 推理阶段,攻击者想让模型把“带触发器的狗图片”识别成什么?
- A.攻击者指定的目标类别← 正确答案
- B.模型原本正确的类别
- C.完全随机的类别
- D.所有类别概率均等
答案:A。攻击者训练时把触发器与目标类别绑定,推理时给任意输入加上同样的触发器,模型就会将它判决为目标类别。B 是正常模型行为,C 和 D 都不是攻击者想要的确定性输出。
Q4. 与 Dirty-label 攻击相比,Clean-label 攻击最难被察觉的原因是?
- A.攻击者使用了更强大的 GPU
- B.标签没有撒谎且与内容一致← 正确答案
- C.毒化样本只影响小模型
- D.攻击者加密了所有训练数据
答案:B。Clean-label 毒化样本的标签与内容一致,人工抽查和自动化标签校验都查不出问题,这是它隐蔽性的根源。A 与隐蔽性无关;C 不成立,任何模型都可能受害;D 描述的不是典型攻击特征。
Q5. Clean-label 攻击成功的关键前提是什么?
- A.攻击者能控制部分训练数据← 正确答案
- B.攻击者能访问模型梯度
- C.攻击者能修改模型结构
- D.攻击者能窃取部署硬件
答案:A。Clean-label 攻击属于数据投毒威胁模型,其前提是攻击者能向训练数据中注入毒化样本。B 不是必需条件,黑盒场景同样可行;C 和 D 超出了投毒攻击的范畴,属于对模型或部署环境的直接控制。
Q6. 下列哪项属于“特征空间异常检测”的思路?
- A.统计每个像素的颜色直方图
- B.丢弃所有图片的 EXIF 信息
- C.比较样本嵌入向量与类别中心的距离← 正确答案
- D.把数据集随机等分成两份
答案:C。特征空间异常检测先把样本映射为嵌入向量,再计算它与各类别中心(聚类中心或原型)的距离,距离过远即标记为异常。A 是低层像素统计,B 是元数据清理,D 是数据划分,都与异常检测无关。
Q7. 差分隐私训练缓解 Clean-label 攻击的核心机制是?
- A.把训练数据全部加密存储
- B.限制单个样本对模型的影响← 正确答案
- C.用生成模型替换判别模型
- D.提高数据集的整体多样性
答案:B。差分隐私训练通过在梯度上注入受控噪声,使任何单个样本(包括毒化样本)对最终模型的影响上界变得极小。攻击者要让后门在噪声中留下稳定统计信号,就得大幅提高投毒比例,反而更容易暴露。A 是加密而非隐私机制,C 与差分隐私无关,D 不构成缓解投毒的机制。
Q8. “干净标签”中“干净”一词的确切含义是?
- A.图像清晰且没有可见噪点
- B.样本的传输过程通过了杀毒
- C.标签与样本真实语义完全一致← 正确答案
- D.模型权重在训练前被清零
答案:C。“干净”是相对 Dirty-label 而言:标签与样本真实语义完全一致,没有在标签上造假。A 描述的是图像质量,B 描述的是传输安全,D 描述的是训练前状态——它们都不是“干净标签”的确切含义。
Q9. 以下哪些属于数据供应链防护的实践?
- A.数据溯源并记录哈希← 正确答案
- B.对供应商做周期性审计← 正确答案
- C.只依赖单一数据源
- D.上线后监控异常触发← 正确答案
答案:ABD。数据供应链防护强调多环节、可追溯:A 对应溯源留证,B 对应供应商审计,D 对应上线后的持续监控。C 恰好相反——单一数据源会让整个系统更容易被单点攻破,是供应链设计的大忌。
Q10. 关于 Clean-label 攻击,下列说法正确的有?
- A.毒化样本取自目标类且标签正确← 正确答案
- B.必须修改样本标签才能生效
- C.干净样本准确率通常不受影响← 正确答案
- D.触发器输入被映射到目标类别← 正确答案
答案:ACD。Clean-label 攻击的完整画像:毒化样本取自目标类、标签正确(A 对);不需要修改标签(B 错);为提升隐蔽性,攻击者会保证干净样本性能不下降(C 对);推理阶段触发器把输入映射到目标类(D 对)。理解这四点,就掌握了 Clean-label 攻击的全局。