tnakae/DAGMM

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?