def _loss(loss_unweighted, weight, name):
"""Returns a tuple of (loss, weighted_average_loss)."""
with ops.name_scope(name, values=(loss_unweighted, weight)) as name_scope:
if weight is None:
loss = math_ops.reduce_mean(loss_unweighted, name=name_scope)
return loss, loss
loss_weighted = _weighted_loss(loss_unweighted, weight)
# TODO(ptucker): This might be wrong if weights are broadcast to loss shape.
# We should use tf.losses here.
weighted_average_loss = math_ops.div(
math_ops.reduce_sum(loss_weighted),
math_ops.to_float(math_ops.reduce_sum(weight)),
name="weighted_average_loss")
loss = math_ops.reduce_mean(loss_weighted, name=name_scope)
return loss, weighted_average_loss
head.py 文件源码
python
阅读 19
收藏 0
点赞 0
评论 0
评论列表
文章目录