gpt4 book ai didi

python - 如何在 TensorFlow 中迭代张量的元素?

转载 作者:太空宇宙 更新时间:2023-11-04 05:12:38 25 4
gpt4 key购买 nike

我编写了一个神经网络,它为每个输入样本返回一个包含 3 个数字的列表。然后从实际值中减去这些值以获得差值。

例如,

actual    = [1,2,3]  
predicted = [0,0,1]
diff = [1,2,2]

所以我的张量现在的形状是 [batch_size, 3]我想做的是迭代张量元素来构造我的损失函数。
例如,如果我的 batch_size 是 2 最后

diff = [[a,b,c],[d,e,f]] 

我希望损失是

Loss = mean(sqrt(a^2+b^2+c^2), sqrt(d^2+e^2+f^2))  

我知道 TensorFlow 有一个 tf.nn.l2_loss()计算整个张量的 L2 损失的函数。但我想要的是张量元素沿某个轴的 l2 损失的平均值。
我该怎么做?

最佳答案

您可以使用 tf.sqrt其次是 tf.reduce_sumtf.reduce_mean . tf.reduce_sumtf.reduce_mean 都有一个 axis 参数,指示要减少哪些维度。

更多归约操作,见https://www.tensorflow.org/api_guides/python/math_ops#Reduction

关于python - 如何在 TensorFlow 中迭代张量的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42611328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com