import torch from sklearn.metrics import accuracy_score, confusion_matrix import pandas as pd

加载模型

model = torch.load('./modelpth/68.pth')

加载测试数据集

test_dataset = MyDataset(args.root2, args.txtpath2, transform=None) test_loader = DataLoader(dataset=test_dataset, batch_size=args.batch_size, shuffle=True, num_workers=0)

定义损失函数

criterion = nn.CrossEntropyLoss()

进行测试

accuracy, loss, feature_list, C = test(model, test_loader, criterion)

计算F1-score

lie_he = sum(C, 1) - 1 f1_scores = [] for i in range(1, 7): precision = C[i - 1][i - 1] / lie_he[i - 1] NAR = (sum(C[i - 1]) - C[i - 1][i - 1]) / sum(C[i - 1]) f1_score = 2 * C[i - 1][i - 1] / (lie_he[i - 1] + sum(C[i - 1])) f1_scores.append(f1_score)

输出结果

result = pd.DataFrame({'Label': ['1', '2', '3', '4', '5', '6'], 'Accuracy': [accuracy], 'Loss': [loss], 'F1-score': f1_scores}) print(result)

CNN模型测试结果 - 第68次训练模型

原文地址: https://www.cveoy.top/t/topic/ftvX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录