XifengGuo / DEC-keras

Keras implementation for Deep Embedding Clustering (DEC)
MIT License
477 stars 162 forks source link

Done training .. But how to predict on a new data ? #10

Closed hammad97 closed 4 years ago

hammad97 commented 5 years ago

Great work! . So i am training this using a different approach with 20newsgroup dataset but the thing is training is finished and i visualize the clusters too with z_2d, and cluster centroids from pickle file. But how to now predict on a new data and know in which cluster it is mapped onto ?

ghost commented 5 years ago

I also have this question.

clyce commented 5 years ago

2 methods:

  1. Directly use the DEC.predict over the new data, assuming that the neural network has learnt a well generalisation/interpolation in the mapped feature space.
  2. Export the clustered data with their cluster tags as a training data of another supervised model with the same autoencoder as input, and train the supervised model
ghost commented 5 years ago

I want to use this algorithm on gene expression dataset.but I don't know whether this method can get a good result?I am trying.Currently,I find AE+kmeans can get a high ari result than DEC,so I want to get a help.

clyce commented 5 years ago

@ZHJD 看你使用场景,经典方法在实际工程中的可靠性预期往往高于最新论文。 如果你发现AE+kmeans效果比DEC好就先用AE+kmeans, 深度模型的影响因素很多,没人能够保证一个模型在所有数据集上永远优于另一个。 另,做好preprocessing

l770943527 commented 5 years ago

hello , I used model.predict to get the results, but the number of clusters got from predict results is smaller than the 'n_clusters' I set in dec model, in my case , I got 60 clsusters in results, but I set n_clusters=90, anyone can help ? thx