ASAI2019 (no threshold)
Testing on complete dataset
dga_test_dataset<-read_csv("../datasets/results_1000_dga_vaclav_mc_no_thres_full_domain.csv")
Parsed with column specification:
cols(
domain = [31mcol_character()[39m,
new_class_2 = [32mcol_double()[39m
)
Binary DGA (CACIC 2018) results
caret::confusionMatrix(reference=as.factor(test_vaclav_results_binary_nn$real_class),data=as.factor(t$pred_class))
Confusion Matrix and Statistics
Reference
Prediction 0 1
0 1988 104
1 12 896
Accuracy : 0.9613
95% CI : (0.9538, 0.9679)
No Information Rate : 0.6667
P-Value [Acc > NIR] : < 2.2e-16
Kappa : 0.911
Mcnemar's Test P-Value : < 2.2e-16
Sensitivity : 0.9940
Specificity : 0.8960
Pos Pred Value : 0.9503
Neg Pred Value : 0.9868
Prevalence : 0.6667
Detection Rate : 0.6627
Detection Prevalence : 0.6973
Balanced Accuracy : 0.9450
'Positive' Class : 0
MC NN (ASAI 2019) results
ASAI 2019 no threshold vs CACIC 2018
caret::confusionMatrix(data=as.factor(test_vaclav_results_mc_nn$pred_class),reference=as.factor(t$pred_class_2))
Confusion Matrix and Statistics
Reference
Prediction 0 1
0 1918 48
1 73 961
Accuracy : 0.9597
95% CI : (0.952, 0.9664)
No Information Rate : 0.6637
P-Value [Acc > NIR] : < 2e-16
Kappa : 0.9102
Mcnemar's Test P-Value : 0.02912
Sensitivity : 0.9633
Specificity : 0.9524
Pos Pred Value : 0.9756
Neg Pred Value : 0.9294
Prevalence : 0.6637
Detection Rate : 0.6393
Detection Prevalence : 0.6553
Balanced Accuracy : 0.9579
'Positive' Class : 0
RESULTS AFTER MC-NN RETRAIN with vaclav
Tested on 5000 “normal domains from FING”
RESULTS on 5000 FING domains using FING TRAINED MC-NN
DIFF between FING TRAINED NN and binary NN (CACIC 2018)
mc_nn<-test_fing_results_mc_nn %>% select(partial_domain, class) %>% unique()
names(mc_nn)[1]<-"domain"
binary_nn<-test_fing_results_mc_binary %>% select(domain,class) %>% unique()
setdiff(mc_nn,binary_nn)
inner_join(mc_nn,binary_nn,by=c("domain")) %>% filter(class.x!=class.y)
FING trained MC-NN vs binary (CACIC 2018)
caret::confusionMatrix(data=as.factor(mc_nn$class),reference=as.factor(binary_nn$class))
Confusion Matrix and Statistics
Reference
Prediction 0 1
0 2178 10
1 21 15
Accuracy : 0.9861
95% CI : (0.9803, 0.9905)
No Information Rate : 0.9888
P-Value [Acc > NIR] : 0.90117
Kappa : 0.485
Mcnemar's Test P-Value : 0.07249
Sensitivity : 0.9905
Specificity : 0.6000
Pos Pred Value : 0.9954
Neg Pred Value : 0.4167
Prevalence : 0.9888
Detection Rate : 0.9793
Detection Prevalence : 0.9838
Balanced Accuracy : 0.7952
'Positive' Class : 0
FING TRAINED MC-NN vs nothreshold-1700-vaclav MC-NN
caret::confusionMatrix(data=as.factor(test_fing_results_mc_nn$class),reference=as.factor(test_fing_results_mc_nn$mc_nn_notrehshold_class))
Confusion Matrix and Statistics
Reference
Prediction 0 1
0 4821 119
1 22 38
Accuracy : 0.9718
95% CI : (0.9668, 0.9762)
No Information Rate : 0.9686
P-Value [Acc > NIR] : 0.103
Kappa : 0.3387
Mcnemar's Test P-Value : 6.234e-16
Sensitivity : 0.9955
Specificity : 0.2420
Pos Pred Value : 0.9759
Neg Pred Value : 0.6333
Prevalence : 0.9686
Detection Rate : 0.9642
Detection Prevalence : 0.9880
Balanced Accuracy : 0.6187
'Positive' Class : 0
LS0tCnRpdGxlOiAiTk4gTXVsdGkgY2xhc3Mgbm8gdHJlaHNob2xkIGV2YWx1YXRpb24gZm9yIERHQSBkZXRlY3Rpb24iCm91dHB1dDogaHRtbF9ub3RlYm9vawotLS0KCiMgQVNBSTIwMTkgKG5vIHRocmVzaG9sZCkKIyMgVGVzdGluZyBvbiBjb21wbGV0ZSBkYXRhc2V0CgpgYGB7cn0KbGlicmFyeShyanNvbikKbGlicmFyeShyZWFkcikKbGlicmFyeShjYXJldCkKbGlicmFyeShkcGx5cikKbGlicmFyeShqc29ubGl0ZSkKCnNldHdkKCIuLi8iKQpkZ2FfdGVzdF9kYXRhc2V0PC1yZWFkX2NzdigiLi4vZGF0YXNldHMvcmVzdWx0c18xMDAwX2RnYV92YWNsYXZfbWNfbm9fdGhyZXNfZnVsbF9kb21haW4uY3N2IikKbm9ybWFsX3Rlc3RfZGF0YXNldDwtcmVhZF9jc3YoIi4uL2RhdGFzZXRzL3Jlc3VsdHNfMjAwMF9ub3JtYWxfdmFsY2xhdl9tY19ub190aHJlc19mdWxsX2RvbWFpbi5jc3YuZ3oiKQpuYW1lcyhkZ2FfdGVzdF9kYXRhc2V0KVsyXSA8LSJtY19wcmVkaWN0aW9uIgoKYGBgCgpgYGB7cn0KZGdhX3Rlc3RfZGF0YXNldCAlPiUgZmlsdGVyKG1jX3ByZWRpY3Rpb24gPT0gMCkgJT4lIGFycmFuZ2UoZG9tYWluKQpkZ2FfdGVzdF9kYXRhc2V0ICU+JSBmaWx0ZXIobWNfcHJlZGljdGlvbiA9PSAwKSAlPiUgZmlsdGVyKCFncmVwbCgiY24iLGRvbWFpbikpICU+JSBhcnJhbmdlKGRvbWFpbikKYGBgCgoKCiMgQmluYXJ5IERHQSAoQ0FDSUMgMjAxOCkgcmVzdWx0cwpgYGB7cn0KZGdhX3Jlc3VsdHM8LXN0cmVhbV9pbih0ZXh0Q29ubmVjdGlvbihyZWFkTGluZXMoIi4uL2RhdGFzZXRzL3Jlc3VsdHNfZGdhX2JpbmFyeWRnYS5qc29uIixuPTEwMDEpKSkKZGdhX3Jlc3VsdHMkbGFiZWw8LSJkZ2EiCm5vcm1hbF9yZXN1bHRzPC1zdHJlYW1faW4odGV4dENvbm5lY3Rpb24ocmVhZExpbmVzKCIuLi9kYXRhc2V0cy9yZXN1bHRzX25vcm1hbF9iaW5hcnlkZ2EuanNvbiIsbj0yMDAxKSkpCm5vcm1hbF9yZXN1bHRzJGxhYmVsPC0ibm9ybWFsIgoKdGVzdF92YWNsYXZfcmVzdWx0c19iaW5hcnlfbm48LXJiaW5kKG5vcm1hbF9yZXN1bHRzLGRnYV9yZXN1bHRzKQpuYW1lcyh0ZXN0X3ZhY2xhdl9yZXN1bHRzX2JpbmFyeV9ubik8LWMoInBhcnRpYWxfZG9tYWluIiwicHJlZF9jbGFzcyIsInByb2IiLCJyZWFsX2NsYXNzIikKCgp0ZXN0X3ZhY2xhdl9yZXN1bHRzX2JpbmFyeV9ubjwtdGVzdF92YWNsYXZfcmVzdWx0c19iaW5hcnlfbm4gJT4lIG11dGF0ZShwcmVkX2NsYXNzPWlmZWxzZShncmVwbCgibm9ybWFsIixwcmVkX2NsYXNzLCksMCwxKSkKdGVzdF92YWNsYXZfcmVzdWx0c19iaW5hcnlfbm48LXRlc3RfdmFjbGF2X3Jlc3VsdHNfYmluYXJ5X25uICU+JSBtdXRhdGUocmVhbF9jbGFzcz1pZmVsc2UoZ3JlcGwoIm5vcm1hbCIscmVhbF9jbGFzcywpLDAsMSkpCnRlc3RfdmFjbGF2X3Jlc3VsdHNfYmluYXJ5X25uCgpjYXJldDo6Y29uZnVzaW9uTWF0cml4KHJlZmVyZW5jZT1hcy5mYWN0b3IodGVzdF92YWNsYXZfcmVzdWx0c19iaW5hcnlfbm4kcmVhbF9jbGFzcyksZGF0YT1hcy5mYWN0b3IodGVzdF92YWNsYXZfcmVzdWx0c19iaW5hcnlfbm4kcHJlZF9jbGFzcykpCgp0ZXN0X3ZhY2xhdl9yZXN1bHRzX2JpbmFyeV9ubiAlPiUgZmlsdGVyKHByZWRfY2xhc3M9PTEgJiByZWFsX2NsYXNzPT0wKSAlPiUgZ3JvdXBfYnkocGFydGlhbF9kb21haW4pICU+JSBzdW1tYXJpc2UodG90YWw9bigpKSAlPiUgYXJyYW5nZShkZXNjKHRvdGFsKSkKCnQ8LXRlc3RfdmFjbGF2X3Jlc3VsdHNfYmluYXJ5X25uICU+JSBtdXRhdGUocHJlZF9jbGFzc18yPWlmZWxzZShwcm9iPjAuNSwxLDApKQoKY2FyZXQ6OmNvbmZ1c2lvbk1hdHJpeChyZWZlcmVuY2U9YXMuZmFjdG9yKHRlc3RfdmFjbGF2X3Jlc3VsdHNfYmluYXJ5X25uJHJlYWxfY2xhc3MpLGRhdGE9YXMuZmFjdG9yKHQkcHJlZF9jbGFzcykpCgpgYGAKCiMgTUMgTk4gKEFTQUkgMjAxOSkgcmVzdWx0cwoKYGBge3J9Cgp0ZXN0X3ZhY2xhdl9yZXN1bHRzX21jX25uPC1yZWFkX2NzdigiLi4vZGF0YXNldHMvcmVzdWx0c192YWNsYXZfZG9tYWluX21jX25vX3RocmVzX3RyYWluX2Z1bGxfdGVzdF9wYXJ0aWFsLmNzdiIpCnRlc3RfdmFjbGF2X3Jlc3VsdHNfbWNfbm48LXRlc3RfdmFjbGF2X3Jlc3VsdHNfbWNfbm4gJT4lbXV0YXRlKHByZWRfY2xhc3M9aWZlbHNlKGdyZXBsKCIwIixwcmVkX2NsYXNzLCksMCwxKSkKY2FyZXQ6OmNvbmZ1c2lvbk1hdHJpeChyZWZlcmVuY2U9YXMuZmFjdG9yKHRlc3RfdmFjbGF2X3Jlc3VsdHNfbWNfbm4kcmVhbF9jbGFzcyksZGF0YT1hcy5mYWN0b3IodGVzdF92YWNsYXZfcmVzdWx0c19tY19ubiRwcmVkX2NsYXNzKSkKCnRlc3RfdmFjbGF2X3Jlc3VsdHNfbWNfbm4gJT4lIGZpbHRlcihwcmVkX2NsYXNzPT0xICYgcmVhbF9jbGFzcz09MCkgJT4lIGdyb3VwX2J5KHBhcnRpYWxfZG9tYWluKSAlPiUgc3VtbWFyaXNlKHRvdGFsPW4oKSkgJT4lIGFycmFuZ2UoZGVzYyh0b3RhbCkpCmBgYAojIEFTQUkgMjAxOSBubyB0aHJlc2hvbGQgdnMgQ0FDSUMgMjAxOApgYGB7cn0KY2FyZXQ6OmNvbmZ1c2lvbk1hdHJpeChkYXRhPWFzLmZhY3Rvcih0ZXN0X3ZhY2xhdl9yZXN1bHRzX21jX25uJHByZWRfY2xhc3MpLHJlZmVyZW5jZT1hcy5mYWN0b3IodGVzdF92YWNsYXZfcmVzdWx0c19iaW5hcnlfbm4kcHJlZF9jbGFzcykpCmBgYAojIFJFU1VMVFMgQUZURVIgTUMtTk4gUkVUUkFJTiB3aXRoIHZhY2xhdgojIyBUZXN0ZWQgb24gNTAwMCAibm9ybWFsIGRvbWFpbnMgZnJvbSBGSU5HIgpgYGB7cn0KdGVzdF9maW5nX3Jlc3VsdHNfbWNfbm48LXJlYWRfY3N2KCIuLi9kYXRhc2V0cy9yZXN1bHRzXzUwMDBfdGVzdF9maW5nLmNzdiIpCgpuYW1lcyh0ZXN0X2ZpbmdfcmVzdWx0c19tY19ubilbM108LSJtY19ubl9ub3RyZWhzaG9sZF9jbGFzcyIKbmFtZXModGVzdF9maW5nX3Jlc3VsdHNfbWNfbm4pWzRdPC0iY2xhc3MiCnRlc3RfZmluZ19yZXN1bHRzX21jX25uICU+JSBmaWx0ZXIoY2xhc3MgPT0xICkgJT4lIHNlbGVjdChwYXJ0aWFsX2RvbWFpbikgJT4lIHVuaXF1ZSgpICU+JSBhcnJhbmdlKGRlc2MocGFydGlhbF9kb21haW4pKQpgYGAKIyBSRVNVTFRTIG9uIDUwMDAgRklORyBkb21haW5zIHVzaW5nIEZJTkcgVFJBSU5FRCBNQy1OTgpgYGB7cn0KdGVzdF9maW5nX3Jlc3VsdHNfbWNfYmluYXJ5PC1zdHJlYW1faW4odGV4dENvbm5lY3Rpb24ocmVhZExpbmVzKCIuLi9kYXRhc2V0cy9yZXN1bHRzX3Nob3J0Lmpzb24iLG49NTAwMCkpKQp0ZXN0X2ZpbmdfcmVzdWx0c19tY19iaW5hcnkgJT4lIGZpbHRlcihjbGFzcyA9PTEpICU+JSBzZWxlY3QoZG9tYWluKSAlPiUgdW5pcXVlKCkgJT4lIGFycmFuZ2UoZGVzYyhkb21haW4pKQpgYGAKCiMgRElGRiBiZXR3ZWVuIEZJTkcgVFJBSU5FRCBOTiBhbmQgYmluYXJ5IE5OIChDQUNJQyAyMDE4KQpgYGB7cn0KbWNfbm48LXRlc3RfZmluZ19yZXN1bHRzX21jX25uICU+JSBzZWxlY3QocGFydGlhbF9kb21haW4sIGNsYXNzKSAlPiUgdW5pcXVlKCkKbmFtZXMobWNfbm4pWzFdPC0iZG9tYWluIgpiaW5hcnlfbm48LXRlc3RfZmluZ19yZXN1bHRzX21jX2JpbmFyeSAgJT4lIHNlbGVjdChkb21haW4sY2xhc3MpICU+JSB1bmlxdWUoKQoKCnNldGRpZmYobWNfbm4sYmluYXJ5X25uKQoKaW5uZXJfam9pbihtY19ubixiaW5hcnlfbm4sYnk9YygiZG9tYWluIikpICAlPiUgZmlsdGVyKGNsYXNzLnghPWNsYXNzLnkpCmBgYAoKCgojIyBGSU5HIHRyYWluZWQgIE1DLU5OIHZzIGJpbmFyeSAgKENBQ0lDIDIwMTgpCmBgYHtyfQpjYXJldDo6Y29uZnVzaW9uTWF0cml4KGRhdGE9YXMuZmFjdG9yKG1jX25uJGNsYXNzKSxyZWZlcmVuY2U9YXMuZmFjdG9yKGJpbmFyeV9ubiRjbGFzcykpCmBgYAojIyBGSU5HIFRSQUlORUQgTUMtTk4gdnMgbm90aHJlc2hvbGQtMTcwMC12YWNsYXYgTUMtTk4KYGBge3J9CmNhcmV0Ojpjb25mdXNpb25NYXRyaXgoZGF0YT1hcy5mYWN0b3IodGVzdF9maW5nX3Jlc3VsdHNfbWNfbm4kY2xhc3MpLHJlZmVyZW5jZT1hcy5mYWN0b3IodGVzdF9maW5nX3Jlc3VsdHNfbWNfbm4kbWNfbm5fbm90cmVoc2hvbGRfY2xhc3MpKQpgYGAKCg==