nonlinearIB icon indicating copy to clipboard operation
nonlinearIB copied to clipboard

The optimization objective is the categorical_crossentropy?

Open raymon-tian opened this issue 6 years ago • 1 comments

Hi, I realize that the optimization objective is the categorical_crossentropy in your code, i.e., model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy']). However, in my opinion, if we want to train the neural network with the IB, the IB objective should be set as the loss, i.e., model.compile(loss='IB_loss ', optimizer='adam', metrics=['accuracy']). Or maybe the IB just acts as a regularizer?

I am confused about it. Could you make an explanation about it? thanks.

Best

raymon-tian avatar Apr 18 '18 02:04 raymon-tian

The cross-entropy loss acts as a variational lower bound on the I(M;Y) term. The compression term I(M;X) is added in as a regularizer.

artemyk avatar Apr 18 '18 20:04 artemyk