Я использую Keras для построения нейронной сети.Моя цель - реализовать пользовательскую функцию потерь, поэтому я пытаюсь вывести вычисленный тензор из своей функции потерь с целью отладки.Я использую tfdbg
утилиту для этого.К сожалению, я не вижу своего тензора в списке тензоров.
Я уже пытался распечатать имя тензора и отфильтровать полученные результаты, но безуспешно.
Вот код внутри моей функции потерь:
# I want to debug these variables using tfdbg
# `y_true` variable can be shown using tfdbg
# `y_true_int` and `losses_current` are absent there
y_true_int = tf.cast(y_true, dtype=tf.int32)
losses_current = tf.gather(self.train_losses, y_true_int)
Вот результат использования утилиты tfdbg
после нескольких команд run
:
tfdbg> lt -n loss.*
30 dumped tensor(s):
Node name regex filter: "loss.*"
t (ms) Size (B) Op type Tensor name
[64.359] 210 Const loss/dense_2_loss/Const:0
[85.986] 206 Const loss/dense_2_loss/sub:0
[109.804] 214 Const loss/dense_2_loss/sub_1/x:0
[168.746] 244 Const loss/dense_2_loss/Mean/reduction_indices:0
[204.870] 234 Print loss/dense_2_loss/Print:0
[228.713] 266 Minimum loss/dense_2_loss/clip_by_value/Minimum:0
[232.239] 244 Const loss/dense_2_loss/Mean_1/reduction_indices:0
[263.084] 250 Maximum loss/dense_2_loss/clip_by_value:0
[279.134] 234 Sub loss/dense_2_loss/sub_1:0
[294.109] 238 RealDiv loss/dense_2_loss/truediv:0
[312.494] 230 Log loss/dense_2_loss/Log:0
[323.764] 220 Const loss/dense_2_loss/NotEqual/y:0
[333.243] 272 ZerosLike loss/dense_2_loss/logistic_loss/zeros_like:0
[333.255] 258 Neg loss/dense_2_loss/logistic_loss/Neg:0
[333.264] 258 Mul loss/dense_2_loss/logistic_loss/mul:0
[343.374] 221 NotEqual loss/dense_2_loss/NotEqual:0
[376.065] 232 Cast loss/dense_2_loss/Cast_1:0
[376.088] 261 GreaterEqual loss/dense_2_loss/logistic_loss/GreaterEqual:0
[394.866] 212 Mean loss/dense_2_loss/Mean_2:0
[407.123] 264 Select loss/dense_2_loss/logistic_loss/Select:0
[407.123] 268 Select loss/dense_2_loss/logistic_loss/Select_1:0
[432.697] 258 Sub loss/dense_2_loss/logistic_loss/sub:0
[463.691] 250 Add loss/dense_2_loss/logistic_loss:0
[490.081] 228 Mean loss/dense_2_loss/Mean:0
[533.502] 232 Mean loss/dense_2_loss/Mean_1:0
[548.463] 226 Mul loss/dense_2_loss/mul:0
[569.905] 238 RealDiv loss/dense_2_loss/truediv_1:0
[599.461] 212 Mean loss/dense_2_loss/Mean_3:0
[628.107] 180 Mul loss/mul:0
[650.176] 180 Add loss/add:0
tfdbg>
Как видите, в списке нет тензора 'Gather'.
Iиспользую следующую строку для работы с tfdbg
:
keras.backend.set_session(tf_debug.LocalCLIDebugWrapperSession(tf.Session()))