Unsupervised-Classification-with-Autoencoder icon indicating copy to clipboard operation
Unsupervised-Classification-with-Autoencoder copied to clipboard

Why should the classification function be designed like this?

Open takagi97 opened this issue 3 years ago • 0 comments
trafficstars

Hello ardamavi, I find that two classification functions in "MNIST" and "DOG_CAT" are different. The function in "MNIST" is x+x*K.one_hot, whereas the function in "DOG_CAT" is x-x+K.one_hot. So I wonder

  1. Why should the classification function be designed like this? If the reason why x PLUS one-hot is to make the gradient propagate to the parameters of Encoder? (i.e., argmax is non-differentiable)
  2. Is there any paper about your implementation or these classification functions? Thank you!

PS: "MNIST": x+x*K.one_hot(K.argmax(x, axis=1), num_classes=num_class) "DOG_CAT": x-x+K.one_hot(K.argmax(x, axis=1), num_classes=num_class)

takagi97 avatar Aug 30 '22 13:08 takagi97