Se quiser copiar o código do PIX:
00020126580014BR.GOV.BCB.PIX013643c5f950-535b-4658-b91f-1f1d135fe4105204000053039865802BR5925Antonio Cavalcante de Pau6009SAO PAULO61080540900062070503***6304946B
Aula 26 - Tensor Flow - Keras - Conjunto de dados CIFAR-10 - VGG 3
CIFAR-10
Nesse modelo, iremos acrescentar
mais um bloco de
camadas ao nosso
modelo.
#bloco 1
model.add(Conv2D(32, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same', input_shape=(32, 32, 3)))
model.add(Conv2D(32, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same'))
model.add(MaxPooling2D((2, 2)))
#bloco 2
model.add(Conv2D(64, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same'))
model.add(Conv2D(64, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same'))
model.add(MaxPooling2D((2, 2)))
#bloco 3
model.add(Conv2D(128, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same'))
model.add(Conv2D(128, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same'))
model.add(MaxPooling2D((2, 2)))
A arquitetura
VGG empilha camadas convolucionais com pequenos filtros
3 × 3, seguidos por uma camada de
max pooling.
Juntas, essas camadas formam um bloco e esses blocos podem ser repetidos.
O número de filtros em cada bloco é aumentado com a profundidade da rede, como
32,
64,
128...
Agora acesse o notebook:
Depois de rodar os
3 modelos,
VGG1,
VGG2 e
VGG3, vimos que o modelo foi capaz de aprender em cima do conjunto de dados de treinamento, mostrando uma melhoria no conjunto de dados de treinamento que continuou por pelo menos 40 épocas, ou talvez mais.
Isso é um bom sinal, pois mostra que o problema pode ser aprendido e que todos os três modelos têm capacidade suficiente para aprender o problema.
Os resultados do modelo no conjunto de dados de teste mostraram uma melhoria na precisão da classificação com cada aumento na profundidade do modelo.
É possível que essa tendência continue se modelos com quatro e cinco camadas forem avaliados, isso pode ser uma extensão interessante.
No entanto, todos os três modelos mostraram o mesmo padrão de
overfitting por volta de
15 a
20 épocas.
Esses resultados sugerem que o modelo com três blocos
VGG é um bom ponto de partida ou linha base para começar nossa investigação.
Os resultados também sugerem que o modelo precisa de regularização para lidar com o rápido o sobreajuste (
overfitting) no conjunto de dados de teste.
De forma mais geral, os resultados sugerem que pode ser útil investigar técnicas que retardam a convergência (
taxa de aprendizado) do modelo.
Isso pode incluir técnicas como aumento de dados, bem como programações de taxa de aprendizagem, alterações no tamanho do lote entre outras técnicas.
E é o que que vamos começar a fazer nas próximas aulas.
Por essa aula é só.
Meu github:
Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook
Link do código fluente no Pinterest
Novamente deixo meus link de afiliados:
Obrigado, até a próxima e bons estudos. ;)