torchei_logo

TorchEI⚡

IntroUsageDocCiteContributionLicense

Pypi License

# Introduction

👋TorchEI, pronounced*/ˈtôrCHər/*(like torture), short for Pytorch Error Injection, is a high-speed toolbox for DNN Reliability's Research and Development. TorchEI enables you quickly and simply inject errors into DNN, collects information you needed, and harden your DNN.

# Features

  • Full typing system supported
  • Implemented methods from papers
  • Highly customizable

# Quick Example

Here we gonna show you a quick example, or you can try interactive demo (opens new window) and online editor (opens new window).

# Installing

Install public distribution using pip3 install torchei or download (opens new window) it.

# Example

Init fault model

import torch
from torchvision import models
import torchei
model = models.resnet18(pretrained=True)
data = torch.load('data/ilsvrc_valid8.pt')
fault_model = torchei.fault_model(model,data)

Calc reliability using emat method

fault_model.emat_attack(10,1e-3)

Calc reliability using SERN (opens new window)

fault_model.sern_calc(output_class=1000)

Harden DNN by ODR

fault_model.outlierDR_protection()
fault_model.emat_attack(10,1e-3)

# Contribution

contributors

If you found🧐 any bugs or have🖐️ any suggestions, please tell us.

This repo is open to everyone wants to maintain together.

You can helps us with follow things:

  • PR your implemented methods in your or others' papers
  • Complete our project
  • Translate our docs to your language
  • Other

We want to build TorchEI to best toolbox in DNN Reliability for bit flip, adversarial attack, and others.

📧 forcessless@foxmail.com

# Citation

Our paper is under delivering.

# License

MIT (opens new window) License. Copyright©️2022/5/23-present, Hao Zheng.