gt为list,int类型 pred为list,float类型,写一个计算acc,predision,recall代码
时间: 2024-02-22 12:57:59 浏览: 116
一个简单的关于计算的代码
下面是一个简单的计算 `acc`, `precision` 和 `recall` 的代码:
```python
def evaluate(gt, pred):
true_positives = 0
false_positives = 0
false_negatives = 0
true_negatives = 0
for i in range(len(gt)):
if gt[i] == 1 and pred[i] == 1:
true_positives += 1
elif gt[i] == 0 and pred[i] == 1:
false_positives += 1
elif gt[i] == 1 and pred[i] == 0:
false_negatives += 1
elif gt[i] == 0 and pred[i] == 0:
true_negatives += 1
accuracy = (true_positives + true_negatives) / len(gt)
if true_positives + false_positives == 0:
precision = 0
else:
precision = true_positives / (true_positives + false_positives)
if true_positives + false_negatives == 0:
recall = 0
else:
recall = true_positives / (true_positives + false_negatives)
return accuracy, precision, recall
```
其中,`gt` 是一个包含 0 和 1 的列表,表示真实的标签,`pred` 是一个包含浮点数的列表,表示模型的预测值。在这个代码中,我们使用了四个变量来计算 `true_positives`, `false_positives`, `false_negatives` 和 `true_negatives` 的数量,然后根据这些变量计算 `accuracy`, `precision` 和 `recall` 的值。最后,我们将这些值作为元组返回。
阅读全文