Tuning Parameters of DAGMM
aktaseren opened this issue · 0 comments
I have an anomaly dataset split into a trainset and testset including 122 features as follows.
print(X_train2.shape)
print(y_train2.shape)
print(X_test2.shape)
print(y_test2.shape)
(38484, 122)
(38484,)
(38956, 122)
(38956,)
I applied basic Autoencoders to detect the anomalies through an unsupervised approach. I got a 75% precision-recall score, which is not bad. Likewise, I also applied DAGMM but I could get only 71% score as the best score so far. I expect a better score of more than 75% score with DAGMM but I assume that I could not find optimal parameters although I tried many different configurations through the parameters of DAGMM. I also tried the suggestion for the parameters in the paper(DAGMM paper you focused on)The best configuration I found for this benchmark dataset is below:
modelx6 = DAGMM(
comp_hiddens = [100, 50, 20, 10], comp_activation = tf.nn.tanh,
est_hiddens = [5, 10, 2], est_activation = tf.nn.tanh, est_dropout_ratio = 0.5,
minibatch_size = 1024, epoch_size = 9000, learning_rate = 0.0001, random_seed = 123, lambda1=0.01, lambda2=0.00001
)
The scores under the optimal thresholder for the energy are as follows:
Precision = 0.712
Recall = 0.712
F1-Score = 0.712
Can you please suggest to me how to improve this score of more than 75% that I got from Autoencoder?