#P4538.第2题-基于混淆矩阵,推导分类模型的核心评估指标

第2题-基于混淆矩阵,推导分类模型的核心评估指标 - problem_ide - CodeFun2000

python 复制代码
import sys
import numpy as np

def solve():
    pred = list(map(int,input().split()))
    trueY = list(map(int,input().split()))
    weights = list(map(float,input().split()))

    n = len(weights)
    m = len(pred)
    #print(n)
    #print(m)
    precision = [0 for _ in range(n)]
    recall = [0 for _ in range(n)]
    f1 = [0 for _ in range(n)]

    for i in range(n):
        TP = 0
        FP = 0
        FN = 0
        
        for j in range(m):
            if(trueY[j]==i or pred[j]==i):
                if(pred[j] == trueY[j]):
                    TP +=1
                elif(pred[j]==i and trueY[j]!=i):
                    FP+=1
                elif(pred[j]!=i and trueY[j]==i):
                    FN+=1
        
        if((TP+FP)!=0):
            precision[i] = TP/(TP+FP)
        else:
            precision[i] = 0
        
        if((TP+FN)!=0):
            recall[i] = TP/(TP+FN)
        else:
            recall[i] = 0
        

        if((precision[i]!=0) and (recall[i]!=0)):
            f1[i] = 2*precision[i]*recall[i]/(precision[i]+recall[i])
        else:
            f1[i] = 0
    
    precision = np.array(precision)
    recall = np.array(recall)
    f1 = np.array(f1)
    #print(precision)
    #print(recall)
    #print(f1)
    
    precision_avg = np.sum(precision*weights)
    recall_avg = np.sum(recall*weights)
    f1_avg = np.sum(f1*weights)

    print(f"{precision_avg:.2f} {recall_avg:.2f} {f1_avg:.2f}",end='')

if __name__ =='__main__':
    solve()
相关推荐
Bobolink_13 天前
TikTok矩阵账号如何批量养号?工作室级运营方案分享
矩阵·内容运营·跨境电商·tik tok·账号运营
H1785350909613 天前
SolidWorks第四部分_直接实体建模特征9_替换面原理
线性代数·算法·机器学习·3d建模·solidworks
AI_yangxi13 天前
短视频矩阵系统专业公司
大数据·人工智能·矩阵
昇腾CANN13 天前
【cann-samples系列】GroupedMatmul MX量化矩阵乘的深度性能优化实践
线性代数·性能优化·矩阵·昇腾·cann
青山木13 天前
Hot 100 --- 矩阵置零
线性代数·算法·leetcode·矩阵·哈希算法
Jasmine_llq13 天前
《B4264 [GESP202503 四级] 二阶矩阵》
线性代数·算法·矩阵·二维矩阵遍历枚举所有2×2矩阵·交叉乘积等式条件判断·输入输出快读加速·长整型防溢出计数统计
阿泽·黑核14 天前
05 keyflow 扩展设计方案:矩阵键盘/组合键/事件队列/中断驱动
线性代数·矩阵·计算机外设·嵌入式·agent·vibe coding
工头阿乐14 天前
相机坐标系标定与外参矩阵求解
数码相机·线性代数·矩阵
金色熊族15 天前
QTransform使用心得(二)--仿射变换、非仿射变换、矩阵
qt·线性代数·矩阵