Depois que um modelo tiver sido escolhido, segue-se o treinamento do modelo. O estágio de treinamento envolve a execução do modelo em dados de treinamento específicos para uma tarefa de computer vision, medindo o desempenho em relação à verdade fundamental e otimizando parâmetros para melhorar o desempenho ao longo do tempo.
As CNNs consistem em três tipos de camadas: uma camada convolucional, uma camada de agrupamento e uma camada totalmente conectada. A camada convolucional é onde a extração de funcionalidades acontece. A extração de funcionalidades envolve determinar e capturar atributos visuais importantes de dados de imagem brutos, como cores, edge, formas e texturas. No caso de imagens de raios X com pneumonia, as funcionalidades a serem extraídas incluem contornos pulmonares assimétricos, regiões claras que indicam inflamação ou presença de fluido (em oposição a regiões escuras e cheias de ar), áreas pulmonares turvas ou opacas e texturas grosseiras ou irregulares4 A extração de funcionalidades permite que os algoritmos distingam relações e padrões significativos em dados visuais.
Uma imagem de raios-X é tratada como uma matriz de valores de pixels. Outra matriz de pesos (parâmetros que controlam a quantidade de influência que uma determinada funcionalidade de entrada tem na saída do modelo) conhecida como filtro ou kernel é aplicada a uma área da imagem de raios-X, com um produto de ponto calculado entre os valores de pixels de entrada. O filtro se move (ou "convolui") ao longo da imagem para extrair funcionalidades, e todo o processo é conhecido como uma convolução. A saída final da série de produtos escalares é chamado de mapa de ativação ou mapa de funcionalidade. Cada filtro é ajustado para responder a padrões específicos, como edges, formas ou texturas, permitindo que a CNN aprenda várias funcionalidades visuais simultaneamente.
O mapa de funcionalidades é alimentado em uma camada de agrupamento para reduzir ainda mais o tamanho da funcionalidade e comprimir suas dimensões. Outro filtro varre toda a entrada, tomando os valores máximos ou médios dentro de um grupo de células na funcionalidade. Isso retém as funcionalidades mais essenciais, permitindo que o modelo concentre sua atenção nelas.
O ato de se mover por uma imagem para extrair funcionalidades, reduzir dimensões e produzir uma classificação é conhecido como passagem para a frente. Após esse avanço, o modelo aplica uma função de perda para calcular seu erro ou a diferença entre sua classificação prevista e a classificação verdadeira.
Para minimizar a função de perda, a retropropagação é empregada. A retropropagação é uma passagem para trás para calcular o gradiente da função de perda em relação a cada peso. Em seguida, a técnica de gradiente descendente é implementada para atualizar os pesos do modelo e otimizar o modelo.
Finalmente, a camada totalmente conectada conduz a tarefa de classificação baseada nas funcionalidades extraídas através das camadas anteriores e seus diferentes filtros. A CNN então gera suas saídas, que são probabilidades para cada classe (neste caso, normal versus pneumonia). Para a tarefa de classificação de imagens de radiografia de tórax, essa saída indicará um exame normal ou, se a probabilidade passar de um limite predeterminado, um exame positivo para pneumonia.