Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Dúvida] Output shape

Ola boa noite.

Como se define o output shape? por gentileza explicar de maneira simplificada, este modelo sequencial, tem estes dados de maneira padrão?

1 resposta

Oi, Aline! Tudo bem?

Quando trabalhamos com redes neurais, cada camada precisa saber exatamente qual é o formato dos dados que ela vai receber e qual formato ela deve entregar para a próxima camada. O output shape nada mais é do que a dimensão dos dados que saem de uma camada específica.

Pra entender como isso funciona de forma prática e simplificada, podemos pensar em blocos de montar:

  • O formato dos dados (Shape): Pense nisso como as dimensões de uma caixa. Se passamos uma imagem colorida de 224 por 224 pixels, o formato inicial (shape) costuma ser algo como (224, 224, 3), onde o número 3 representa os canais de cor (RGB: vermelho, verde e azul).
  • A transformação: Conforme a informação passa pelas camadas da rede neural, como as convoluções que vimos, o tamanho espacial da imagem diminui (por exemplo, de 224 para 112 pixels), mas a quantidade de características que a rede consegue enxergar (os filtros ou canais) aumenta. O output shape mostra exatamente essa nova "cara" dos dados após o cálculo da camada.

No caso de redes que já vêm prontas para uso, como o MobileNetV2 que utilizamos na aula, esses formatos de entrada e saída já vêm todos calculados e configurados internamente pelos desenvolvedores que treinaram o modelo. Por isso, não precisamos definir o output shape manualmente camada por camada; o próprio Keras e o TensorFlow cuidam disso nos bastidores quando carregamos a arquitetura.

Se você estiver construindo uma rede do zero (um modelo sequencial tradicional), a primeira camada precisa receber um parâmetro chamado input_shape para que o algoritmo saiba o tamanho dos dados que estão chegando. A partir daí, as camadas seguintes calculam automaticamente os seus próprios output shapes com base nas operações matemáticas que realizam.

Ficou mais claro como o output shape atua nos bastidores do modelo?

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!