#神经网络 #深度学习 #机器学习 #验证 #ndarray #统计学

nightly nnv-rs

深度神经网络上的验证和统计学

11 个不稳定版本 (3 个破坏性版本)

0.6.1 2022年3月22日
0.6.0 2022年2月23日
0.5.4 2021年12月11日
0.5.3 2021年11月18日
0.3.0 2021年10月23日

#343 in 机器学习

每月 36 次下载

MIT 协议

1MB
5.5K SLoC

nnv-rs

深度神经网络的快速可达性分析和采样

基于由Dr. Hoang-Dung Tran大量开发的类似名称的 MATLAB 工具箱。我正在开发这个软件来撰写我的论文,并乐于支持使用它进行其他工作。如果您正在使用这个包或从事类似的问题,请通过电子邮件(equint at cse dot unl dot <教育结尾>)告知我(抱歉,正在试图阻止自动邮件发送器)。

构建 Python 包

  1. 使用 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh 安装 Rust 并重新启动您的 shell。
  2. 创建 Python 虚拟环境并运行 pip install -r requirements.txt 来安装 Python 依赖项。
  3. 克隆以下 Rust 项目 ndarray-linalgnumpytruncnorm-rs
  4. numpy 中设置 ndarray 的版本为 15.2.0
  5. 确保已安装 CMake 3.15 或更高版本以及 clang
  6. 在 Ubuntu 上安装 OpenBlas(《apt-get install libopenblas-dev
  7. 使用 rustup default nightly 切换到 nightly Rust
  8. 使用 python ./setup.py install 构建和安装基于 Rust 的 Python 包

基准测试

在基准测试时,如果您想生成火焰图,请使用以下语法

cargo bench --bench my_benchmark -- --profile-time 5

待办

  1. 使用DeepPoly实现适当的边界检查
  • 找出如何从星号而不是输入边界运行DeepPoly
  1. 实现星座重要性采样
  2. 实现神经网络argmax

故障排除

  • 构建时出现链接错误 /usr/bin/ld:找不到-lCbcSolver:cbc求解器是我们使用的线性规划包good_lp的默认依赖项。在Ubuntu上的修复方法是运行sudo apt install coinor-libcbc-dev
  • 如果您的問題沒有列在這裡,請在GitHub上開啟問題,我們將查看是否能夠修復/添加它。

致謝

這項工作沒有人支持。

依賴項

~76MB
~1M SLoC