Skip to content
/ iNNE Public

Source code of Isolation‐based anomaly detection

License

Notifications You must be signed in to change notification settings

zhuye88/iNNE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Isolation‐based anomaly detection using nearest‐neighbor ensembles (iNNE)

Source code of Isolation‐based anomaly detection

These functions implement an Isolation‐based anomaly detection iNNE, proposed by Bandaragoda, Tharindu R., et al. "Isolation‐based anomaly detection using nearest‐neighbor ensembles" Computational Intelligence (2018). https://onlinelibrary.wiley.com/doi/abs/10.1111/coin.12156

Written by Ye Zhu, Deakin University, Nov 2020, version 1.2

This software is under GNU General Public License version 3.0 (GPLv3)

A Python version can be found at https://inne.readthedocs.io/

A Java version can be found at https://github.com/tharindurb/iNNE

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Abstract of the paper

The first successful isolation‐based anomaly detector, ie, iForest, uses trees as a means to perform isolation. Although it has been shown to have advantages over existing anomaly detectors, we have identified 4 weaknesses, ie, its inability to detect local anomalies, anomalies with a high percentage of irrelevant attributes, anomalies that are masked by axis‐parallel clusters, and anomalies in multimodal data sets. To overcome these weaknesses, this paper shows that an alternative isolation mechanism is required and thus presents iNNE or isolation using Nearest Neighbor Ensemble. Although relying on nearest neighbors, iNNE runs significantly faster than the existing nearest neighbor–based methods such as the local outlier factor, especially in data sets having thousands of dimensions or millions of instances. This is because the proposed method has linear time complexity and constant space complexity.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

This code was used for the following publication (Bibtex format):

@article{bandaragoda2018isolation, title={Isolation-based anomaly detection using nearest-neighbor ensembles}, author={Bandaragoda, Tharindu R and Ting, Kai Ming and Albrecht, David and Liu, Fei Tony and Zhu, Ye and Wells, Jonathan R}, journal={Computational Intelligence}, volume={34}, number={4}, pages={968--998}, year={2018}, publisher={Wiley Online Library} }