矢量化张量运算,而不是在keras自定义损失函数中使用forloop

2024-05-06 01:37:39 发布

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

我正在编写一个自定义损失函数,它使用惩罚矩阵来计算损失。y_truey_pred值是矩阵惩罚矩阵A的索引:

def score(y_true, y_pred):
    S = 0.0
    for i in range(0, y_true.shape[0]):
      S -= A[y_true[i], y_pred[i]]
    return S/y_true.shape[0]

由于for循环不能提供最好的性能,我想知道没有它我怎么能完成下面的代码片段

S -= A[y_true[i], y_pred[i]]

Tags: 函数代码intrueforreturndefrange