深度学习验证
训练稳健图像网络并验证图像网络稳健性
深度学习验证是一套评估深度神经网络属性的方法。例如,您可以验证网络的稳健性属性,计算网络输出边界,并找到对抗样本。
Deep Learning Toolbox™ Verification Library 支持包能够测试深度学习网络的稳健性属性。使用此库来验证深度学习网络针对对抗样本是否具有稳健性,计算针对一组输入边界的输出边界,并检测分布外数据。
使用
verifyNetworkRobustness
函数验证网络对对抗样本的稳健性。当在指定的输入下界和上界之间扰动输入时,如果网络的预测类不改变,则表明网络针对对抗输入具有稳健性。对于一组输入边界,该函数检查网络对于那些输入边界之间的对抗样本是否具有稳健性,并返回verified
、violated
或unproven
。当输入介于指定的下界和上界之间时,使用
estimateNetworkOutputBounds
函数来估计网络返回的输出值的范围。使用此函数估计网络预测对输入扰动的敏感度。使用
networkDistributionDiscriminator
函数创建一个分布判别器,该判别器将数据分为分布内和分布外。
函数
estimateNetworkOutputBounds | Estimate output bounds of deep learning network (自 R2022b 起) |
verifyNetworkRobustness | Verify adversarial robustness of deep learning network (自 R2022b 起) |
networkDistributionDiscriminator | Deep learning distribution discriminator (自 R2023a 起) |
isInNetworkDistribution | Determine whether data is within the distribution of the network (自 R2023a 起) |
distributionScores | Distribution confidence scores (自 R2023a 起) |
deep.gpu.deterministicAlgorithms | Set determinism of deep learning operations on the GPU to get reproducible results (自 R2024b 起) |
主题
- Verify Robustness of Deep Learning Neural Network
This example shows how to verify the adversarial robustness of a deep learning neural network.
- Deep Learning Visualization Methods
Learn about and compare deep learning visualization methods.