Git Product home page Git Product logo

deepaid's Introduction

logo

DeepAID is the first Deep Learning Interpretation method dedicated for Anomaly Detection models in Security Domains. There are three superiorities of DeepAID Interpretations:

  • Unsupervised. DeepAID is dedicated to interpreting anomaly detection models, which are usually built with only normal data. In DeepAID, not any knowledge of anomaly data is necessary for the interpretation.

  • High Quality. DeepAID is dedicated to interpreting DL models in security-related domains, where errors are with low tolerance. In DeepAID, the interpretation results are high-quality and satisfies several elegant properties, including fidelity, robustness, stability, conciseness, and efficiency.

  • Versatile. DeepAID not only provides the implementation of certain DL models and anomaly detection systems, but also a general interpretation framework for various types of DL models and security domains.

Implementation Notes

  1. Current implementation of DeepAID only supports interpreting DL models built with Pytorch. We'll consider extending DeepAID Interpreter to other DL frameworks such as tensorflow. We also provide instructions for building a customized interpreter if your DL model is not yet supported by our implementation.

  2. Environmental Setup:

    pip install -r requirement.txt

    • For Tabular Interpreter only:

    pip install -r requirement_tab.txt

    • For Univariate Time-Series Interpreter only:

    pip install -r requirement_units.txt

    • For Multivariate Time-Series Interpreter only:

    pip install -r requirement_multits.txt

Examples

We provide several cases to show how to interpret your own anomaly detection models, including:

Customizing Interpreters

DeepAID follows a general interpretation framework for various types of DL models and security domains. The core idea of interpreting anomalies in DeepAID is searching a reference and interpreting through the difference between the reference and anomaly. The searching process is limited by several considerations (i.e., constraints) to generate high-qulity results. Here is an illustration: framework

See our paper for more technical details and the instruction of building Interpreters for your own models.

Citation & Paper

This source code is part of our work accepted by CCS'21:

DeepAID: Interpreting and Improving Deep Learning-based Anomaly Detection in Security Applications

Its pre-print version is available at here.

You can find more details in this paper, and if you use the source code, please cite the paper.

(Here is the BibTex:)

@inproceedings{10.1145/3460120.3484589,
author = {Han, Dongqi and Wang, Zhiliang and Chen, Wenqi and Zhong, Ying and Wang, Su and Zhang, Han and Yang, Jiahai and Shi, Xingang and Yin, Xia},
title = {DeepAID: Interpreting and Improving Deep Learning-Based Anomaly Detection in Security Applications},
year = {2021},
isbn = {9781450384544},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3460120.3484589},
doi = {10.1145/3460120.3484589},
booktitle = {Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security},
pages = {3197โ€“3217},
numpages = {21},
location = {Virtual Event, Republic of Korea},
series = {CCS '21}
}

deepaid's People

Contributors

dongtsi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.