4 votes

TensorFlow cross-entropy sur tutoriel

Je passais juste par le TensorFlow tutoriel ( https://www.tensorflow.org/versions/r0.8/tutorials/mnist/pros/index.html#deep-mnist-for-experts ).

J'ai deux questions à ce sujet :

  1. Pourquoi utilise-t-il le cost function with y_ * log(y) ? Cela ne devrait-il pas être y_ * log(y) + (1-y_) * log(1-y) ?

  2. Comment TensorFlow savoir comment calculer le gradient de la cost function J'utilise ? Ne devrions-nous pas avoir un endroit quelque part pour dire TensorFlow comment calculer le gradient ?

Merci !

5voto

Sung Kim Points 57
  1. Lorsque y = 1 ou 0, on peut utiliser y_ * log(y) + (1-y_) * log(1-y), mais lorsque y est un codage à un coup, y=[0 1] ou [1 0], on utilise y_ * log(y). En fait, ce sont les mêmes.

  2. Tout est un graphique dans TensorFlow, y compris votre fonction de coût.

enter image description here

Ainsi, chaque nœud connaît son fonctionnement et son gradient local. Tensorflow utilise la rétropropagation (règle de la chaîne) pour calculer le gradient en utilisant le graphe.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X