#python #keras #conv-neural-network
#python #keras #conv-нейронная сеть
Вопрос:
Я не смог правильно рассчитать точность и отзыв в приведенном ниже коде:
Не могли бы вы, пожалуйста, помочь исправить формулу для них. Вот сегмент кода:
for epoch in range(2):
running_loss = 0.0
training_accuracy = 0.0
training_total = 0.0
training_correct = 0.0
##########
training_precision = 0.0
training_recall = 0.0
for i, data in enumerate(t_loader, 0):
inputs, labels = data
optimizer.zero_grad()
inputs = inputs.view(bs,1,28,28).float()
outputs = cnn(inputs)
_, predicted = torch.max(outputs.data, 1)
training_total = training_total labels.size(0)
training_correct = training_correct (predicted == labels).sum().item() #accumulate correct
##########
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()
running_loss = loss.item()
if i % 200 == 199:
training_accuracy=training_correct/training_total
training_accuracy_list.append(training_accuracy)
##########
training_precision = training_correct / (training_correct labels.size(0))/220
training_recall = training_correct / (training_correct (predicted != labels).sum().item() )/200
Комментарии:
1. Вы используете
pytorch
notkeras
, поэтому измените тег наtorch
orpytorch
, если вы действительно хотите, чтобы другие решили вашу проблему, тогда я предлагаю вам опубликовать некоторый тестовый код, который каждый может запустить, иначе нет способа отладить его для вас
Ответ №1:
Способ вычисления точности и отзыва неверен, сначала не следует добавлять все истинные положительные значения, проверьте правильный способ вычисления точности и отзыва для многоклассовой классификации