如何以十位数动态创建列表

2024-09-27 00:21:38 发布

您现在位置:Python中文网/ 问答频道 /正文

如何从任务列表(self.prediction)动态创建损失列表,而无需创建变量:

当前:

loss0 = tf.losses.softmax_cross_entropy( logits = self.prediction[0], onehot_labels = self.Y[0] ) # task 0
loss1 = tf.losses.softmax_cross_entropy( logits = self.prediction[1], onehot_labels = self.Y[1] ) # task 1
loss2 = tf.losses.softmax_cross_entropy( logits = self.prediction[2], onehot_labels = self.Y[2] ) # task 2

self.losses = tf.reduce_sum( [ loss0, loss1, loss2 ] )

目标:

list_loss = ?
self.losses = tf.reduce_sum( list_loss )

Tags: self列表tasklabelstfentropypredictioncross
1条回答
网友
1楼 · 发布于 2024-09-27 00:21:38

如果我明白你的意思,你是在要求

def calculate_loss(prediction, label, idx):
    return tf.losses.softmax_cross_entropy(logits = prediction[idx], 
                                           onehot_labels = label[idx])

losses = []
for i in range(3):
    losses.append(calculate_loss(self.prediction, self.Y, i)
self.losses = tf.reduce_sum(losses)

相关问题 更多 >

    热门问题