This repository is constructed for "Cyber Security AI Dashboard" and linked with streamlit.
Demonstrating the power of Streamlit.
XAI can interpretate the black-box deep AI model which is constructed with many Linear, Convolution layers. Pytorch, which is the biggest AI opensource code library with tensorflow, constructed "Captum", XAI library, that can interprete deep AI model with Linear and Conv layer. There are many XAI techniques, and this repository use LRP.
Let's see ML example first with Linear Regression and Decision Tree. First with Linear Regression, we can get coefficient and intercept. You can get important x variable with Coefficient Importance like below image. Also with Decision Tree, we can visualize how the tree was divided to leaf recursively.
LRP is a word which is shorten version of "Layer-wise Relevance Propagation". Traditionally, Neural Network used to be "black-box model" which is not interpretable. This means, when NN make a decision, we cannnot know why NN make such decision. And go further, when NN make wrong decision, we cannot revise model because we donnot know what makes wrong decision
However with LRP, we can explain why model make such decision!
LRP is the method of explanation by decomposition and get relevance score by variable. With top-down way, output-to-input layer, the relevance is redistributed. So we can get each variables' relevance score and with high score, that variable is important with making decision.
You can see data by seconds with selected hour, minute and sensor. Rolling mean is also provided for assistence indicator.
You can see recent attack data with rolling mean indicator, and you can compare with above graph.
You can see what sensor is important when detecting attack!
MIT Liscnece