Unterschied in der logarithmischen Basis für die Kreuzentropieberechnung

8

Ich habe hier begonnen, die TensorFlow-Tutorials durchzugehen , und ich habe eine kleine Frage zu den Kreuzentropieberechnungen. Die meisten Orte, an denen ich eine Kreuzentropie gesehen habe, die mit dem Log der Basis 2 berechnet wurde, aber das tf.log ist die Basis e. Unter welchen Bedingungen würde die Verwendung einer Protokollbasis der anderen vorgezogen?

user76400
quelle
Macht keinen Unterschied, wenn es konsequent verwendet wird.
Carl

Antworten:

15

log base e und log base 2 sind nur ein konstanter Faktor voneinander:

LogenLog2n=Loge2Logee=Loge2

Wenn Sie also eine über die andere verwenden, wird die Entropie um einen konstanten Faktor skaliert. Bei Verwendung der Log-Basis 2 ist die Entropieeinheit Bits, wobei die Einheit wie bei natürlichem Log Nats ist.

Einer ist nicht besser als der andere. Es ist ein bisschen wie der Unterschied zwischen km / h und m / s.

Es ist möglich, dass die Protokollbasis 2 schneller berechnet werden kann als der Logarithmus. In der Praxis ist die Berechnung der Kreuzentropie jedoch so gut wie nie der teuerste Teil des Algorithmus, sodass Sie sich nicht übermäßig damit befassen müssen.

Shimao
quelle