机器学习笔记Day 2
一、什么是攻击?
1.1对抗攻击
对抗攻击(“Adversarial Attack”): 对抗性攻击是指有意修改输入数据,以使模型产生错误的输出或误导性输出。对抗鲁棒性强的模型能够在面对这些对抗性样本时保持准确的预测。
1.2 泛化性、鲁棒性与对抗鲁棒性
泛化性(Generalization): 泛化性指的是模型对未见过的、新的输入数据的表现能力。
鲁棒性(Robustness): 不同于对抗鲁棒性,一般指模型对于输入数据的变化、噪声或干扰的鲁棒性。
对抗鲁棒性(Adversarial Robustness): 对抗鲁棒性是指模型在面对对抗性攻击时的稳健性。
一个过度拟合训练集的模型可能在训练数据上表现得很好,但在泛化到新数据时性能不佳。一些提高对抗鲁棒性的方法可能会降低模型在标准数据上的性能,需要在泛化性和对抗鲁棒性之间取得平衡。
1.3 最优攻击
通常指的是攻击者在特定条件下采取的最有效或最具破坏性的攻击策略。这可以涉及到使用最小的资源或生成最小的修改,以最大程度地影响目标系统。
二、现实对抗攻击
“Realistic Adversarial Attacks” 意指更接近真实场景的对抗性攻击。这种类型的攻击是为了更好地模拟真实世界中的威胁和环境,使得深度学习模型在面对这些攻击时更容易受到干扰,从而揭示模型在实际部署中的脆弱性。
现实对抗攻击对于评估深度学习模型在实际应用中的鲁棒性非常重要,通过模拟真实世界的威胁和环境,采取相应的防御措施。
三、对抗攻击框架(Adversarial Attack Framework)
3.1 威胁模型(Threat Model)
3.2 最优对抗攻击(Optimal Adversarial Attack)
指尝试以最有效的方式欺骗或攻击机器学习模型,以使模型在面对对抗性样本时产生最大的误差。这类攻击可能使用数学优化方法,寻找对抗性扰动,以最大化模型输出的误差或误导性。
四、现实对抗训练
4.1 Realistic Adversarial Attacks 现实对抗性攻击
意指更接近真实场景的对抗性攻击。这种类型的攻击是为了更好地模拟真实世界中的威胁和环境,使得深度学习模型在面对这些攻击时更容易受到干扰,从而揭示模型在实际部署中的脆弱性。Realistic Adversarial Attacks 对于评估深度学习模型在实际应用中的鲁棒性非常重要。
五、投毒攻击(Poisoning Attack)
防御措施:数据清洗、鲁棒学习、后门攻击检测
5.1 数据投毒(Data Poisoning)
数据投毒是通过有意修改训练数据,向其中引入恶意样本或噪声,以欺骗机器学习模型,影响其训练和性能。
5.2 后门攻击(Backdoor Attack)or 木马攻击(Trojan Attack)
危害性大,隐蔽性极强。攻击者将木马植入到模型中,在预测阶段通过简单的后门触发器完成恶意攻击行为。中招的神经网络在正常样本上表现很好,但会对具有特定后门触发器的样本做出错误预测。
后门可以将带有特殊标签(即后门触发器,eg:yellow square、bomb、flower)的“停车”标志图像插入训练集并标志为“速度限制”,从而在模型中生成“后门”。该模型可以正常分类不带特殊标签的样本,但是会对拥有后门触发器的恶意停车标志产生错误的分类,给自动驾驶汽车带来极大的安全隐患。