Как рассчитать убыток без обновления модели в тензорном потоке

Насколько я понимаю, ниже код будет вычислять параметры потери и обновления в модели одновременно.

_, c = sess.run([optimizer, loss], feed_dict={x:x, y:y}) 

так как рассчитать убыток без обновления модели?

 _, c1 = sess.run([optimizer, loss], feed_dict={x:x, y:y}) _, c2 = sess.run([optimizer, loss], feed_dict={x:x, y:y}) 

Например, c1 != c2 поскольку первая строка обновила модель.

Update1

Я пробовал под кодом, просто запускаю без optimizer

 c1 = sess.run([loss], feed_dict={x:x, y:y}) c2 = sess.run([loss], feed_dict={x:x, y:y}) 

но c1 все еще не равно c2

UPDATE2

слой отсечки в моей модели вызывает разницу между c1 и c2 в моем UPDATE1

One Solution collect form web for “Как рассчитать убыток без обновления модели в тензорном потоке”

Чтобы рассчитать потери без обновления модели, просто запустите операцию loss без операции optimizer .

 c = sess.run(loss, feed_dict={x:x, y:y}) 

Обратите внимание, что при запуске sess.run([optimizer, loss], feed_dict={x:x, y:y}) вы получаете значение потерь перед применением обновлений, поэтому выполните:

 _, c1 = sess.run([optimizer, loss], feed_dict={x:x, y:y}) c2 = sess.run(loss, feed_dict={x:x, y:y}) 

По-прежнему будут давать разные значения c1 и c2 , так как c2 – это значение потерь после обновления модели.

  • Тензорный тензор изменяет форму и заполняет нулями
  • Какова цель tf.app.flags в TensorFlow?
  • Предварительная обработка тензора тензора в Numpy
  • Как получить tenorflow op по имени?
  • Тесты Python от TensorFlow не работают
  • Что делает `tf.strided_slice ()` do?
  • Понимание семантики while
  • Как предотвратить использование тензорным потоком всей совокупности памяти GPU?
  • TensorFlow FIFOQueue не FIFO?
  • Почему мы используем параметр name при создании переменной в Tensorflow?
  • Как восстановить Tensors в прошлом значении, не сохраняя значение на диске?
  • Python - лучший язык программирования в мире.