【Adversarial Robustness Toolbox (ART)】对抗性防御工具

编程入门 行业动态 更新时间:2024-10-24 08:23:55

【Adversarial Robustness Toolbox (ART)】<a href=https://www.elefans.com/category/jswz/34/1713496.html style=对抗性防御工具"/>

【Adversarial Robustness Toolbox (ART)】对抗性防御工具

对抗性鲁棒性工具集 ART

用于机器学习安全性的Python库。ART 由
Linux Foundation AI & Data Foundation (LF AI & Data)。 ART提供的工具可
帮助开发人员和研究人员针对以下方面捍卫和评估机器学习模型和应用程序:
逃逸,数据污染,模型提取和推断的对抗性威胁。ART支持所有流行的机器学习框架
(TensorFlow,Keras,PyTorch,MXNet,scikit-learn,XGBoost,LightGBM,CatBoost,GPy等),所有数据类型
(图像,表格,音频,视频等)和机器学习任务(分类,物体检测,语音识别,
生成模型,认证等)。

开始使用文献资料贡献
- 安装
- 例子
- Notebooks
- 攻击
- 防御
- 评估器
- 指标
- 技术文档
- Slack, 邀请函
- 贡献
- 路线图
- 引用

代码阅读

├─attacks
│  ├─evasion
│  │  ├─adversarial_patch  
│  │  ├─adversarial_texture
│  │  ├─feature_adversaries
│  │  ├─graphite
│  │  ├─imperceptible_asr  
│  │  ├─laser_attack       
│  │  ├─over_the_air_flickering
│  │  └─projected_gradient_descent
│  ├─extraction
│  ├─inference
│  │  ├─attribute_inference
│  │  ├─membership_inference
│  │  ├─model_inversion
│  │  └─reconstruction
│  └─poisoning
│      ├─backdoor_attack_dgm
│      ├─bad_det
│      ├─hidden_trigger_backdoor
│      └─perturbations
├─defences
│  ├─detector
│  │  ├─evasion
│  │  │  └─subsetscanning
│  │  └─poison
│  ├─postprocessor
│  ├─preprocessor
│  │  ├─cutmix
│  │  ├─cutout
│  │  └─mixup
│  ├─trainer
│  └─transformer
│      ├─evasion
│      └─poisoning
├─estimators
│  ├─certification
│  │  ├─deep_z
│  │  ├─derandomized_smoothing
│  │  │  ├─ablators
│  │  │  └─vision_transformers
│  │  ├─interval
│  │  ├─object_seeker
│  │  └─randomized_smoothing
│  │      ├─macer
│  │      ├─smooth_adv
│  │      └─smooth_mix
│  ├─classification
│  ├─encoding
│  ├─gan
│  ├─generation
│  ├─object_detection
│  ├─object_tracking
│  ├─poison_mitigation
│  │  ├─neural_cleanse
│  │  └─strip
│  ├─regression
│  └─speech_recognition
├─evaluations
│  └─security_curve
├─experimental
│  └─estimators
│      └─classification
├─metrics
│  └─privacy
└─preprocessing├─audio│  └─l_filter├─expectation_over_transformation│  ├─image_center_crop│  ├─image_rotation│  └─natural_corruptions│      ├─brightness│      ├─contrast│      ├─gaussian_noise│      ├─shot_noise│      └─zoom_blur├─image│  ├─image_resize│  └─image_square_pad└─standardisation_mean_std

config

指定类型

ART_DATA_PATH: str

文件访问控制

_folder = os.path.expanduser("~")
if not os.access(_folder, os.W_OK):  # pragma: no cover_folder = "/tmp"  # pylint: disable=C0103
_folder = os.path.join(_folder, ".art")

在Python中,global语句用于指示一个变量是全局变量,而不是局部变量。当pylint检测到global语句的使用时,它会引发警告W0603,因为使用全局变量有时会导致代码更难理解和维护。

通过添加# pylint: disable=W0603作为注释,你指示pylint忽略与ART_DATA_PATH变量的global语句相关的警告。这样,你的代码可以通过linting检查而不会引发该特定警告。

def set_data_path(path):"""Set the path for ART's data directory (ART_DATA_PATH)."""expanded_path = os.path.abspath(os.path.expanduser(path))os.makedirs(expanded_path, exist_ok=True)if not os.access(expanded_path, os.R_OK):  # pragma: no coverraise OSError(f"path {expanded_path} cannot be read from")if not os.access(expanded_path, os.W_OK):  # pragma: no coverlogger.warning("path %s is read only", expanded_path)global ART_DATA_PATH  # pylint: disable=W0603ART_DATA_PATH = expanded_pathlogger.info("set ART_DATA_PATH to %s", expanded_path)

attack

abc.ABCMeta是Python中abc模块提供的一个元类(metaclass)。

  • abc:它代表"Abstract Base Classes",是Python标准库中提供的一个模块,用于定义抽象基类(Abstract Base Classes)和接口。
  • ABCMeta:它是abc模块中的一个元类。元类是一个用于定义其他类行为的类。在这种情况下,ABCMeta用于定义抽象基类。

抽象基类是不能直接实例化的类,它们作为子类的蓝图。它们定义了一个共同的接口,可以包含必须由子类实现的抽象方法。

通过继承ABCMeta并将其作为元类在类定义中使用,您可以定义一个抽象基类。这样可以强制子类遵循特定的行为或契约要求,确保它们实现了特定的方法或符合特定的接口。

class InputFilter(abc.ABCMeta):  # pragma: no cover
class Attack(abc.ABC):

更多推荐

【Adversarial Robustness Toolbox (ART)】对抗性防御工具

本文发布于:2023-11-15 22:48:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1608079.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:对抗性   工具   Robustness   Adversarial   ART

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!