Exercício – Determinar a precisão de uma rede neural na classificação de rochas espaciais

Concluído

O motivo pelo qual usamos IA para ajudar com nossa pesquisa de rochas é aprimorar as previsões. Quando um modelo vê novas imagens de rochas, ele deve prever o tipo de rocha correto com base em imagens já observadas. Queremos que a previsão seja o mais próximo de 100% mais preciso possível. Um modelo de IA bem treinado deve prever o resultado com mais precisão do que os humanos.

Mostrar a precisão do modelo

Em nosso exemplo, o comando accuracy revela a probabilidade de o computador identificar corretamente o tipo de rocha em uma imagem com base na definição científica. Um valor de precisão de 0,96 significa que 96% dos tipos de rocha são previstos corretamente e que 4% são classificados erroneamente.

O código a seguir calcula e exibe a precisão do nosso modelo de IA para classificar o tipo de rocha. Você pode reconhecer essa instrução do último código que adicionamos ao seu arquivo do Jupyter Notebook.

  • Adicione este código a uma nova célula no seu arquivo do Jupyter Notebook e execute a célula:

    print(accuracy/len(testloader))
    

A saída exibe a precisão com 16 dígitos na parte fracionária do decimal:

0.9354166686534882

A saída mostra que nosso modelo tem a precisão de 93,5% em fazer previsões. Queremos um valor alto. Quanto maior a precisão, melhor é o trabalho do modelo em fazer previsões.

Embora 93,5% seja um percentual alto, você pode fazer algumas coisas para aumentar ainda mais a precisão:

  • Adicione mais imagens e continue treinando o modelo de IA.
  • Aumente o número de iterações de treinamento epoch para aprendizado profundo.

Salvar o modelo

Agora que você criou a rede neural e testou a precisão, salve o modelo.

  • Adicione o seguinte código a uma nova célula no seu arquivo do Jupyter Notebook e execute a célula:

    torch.save(model, 'aerialmodel.pth')