O que é GAN?
Redes adversárias generativas (GANs) foram desenvolvidas e introduzidas por Ian J. Goodfellow em 2014. GAN é uma técnica de aprendizado de máquina que ajuda a gerar mídia sintética que descreve vídeo, imagem, voz ou texto, gerada parcial ou totalmente por inteligência artificial. Software de mídia sintética ajuda a receber entrada dos usuários e produzir mídia como saída, que pode ser usada para treinamento, entretenimento e muito mais.
GANs são uma abordagem para modelagem generativa usando métodos de aprendizado profundo para tornar suas previsões mais precisas. Elas consistem principalmente de duas partes:
- Gerador: Gera dados plausíveis, que se tornam exemplos de treinamento negativos para o discriminador.
- Discriminador: Distingue entre os dados falsos e reais do gerador e penaliza o gerador por produzir resultados implausíveis.
O gerador cria conteúdo falso enquanto o discriminador detecta se esse conteúdo é real ou falso. Eles trabalham juntos para melhorar e, assim, se tornam melhores em detectar falsificações. O processo de ida e volta continua até que o gerador produza um conteúdo sintético altamente realista.
Como funcionam as GANs?
As GANs seguem uma maneira simples e direta de trabalhar. Elas são divididas em três categorias:
- Generativa: Descreve como os dados são gerados com base em um modelo probabilístico
- Adversária: Modelo treinado em um ambiente adversário
- Redes: Usadas como algoritmos de inteligência artificial (IA) para fins de treinamento
O primeiro passo para estabelecer uma GAN é identificar o resultado final desejado e reunir um conjunto de dados de treinamento inicial com base nesses parâmetros. Os dados são então randomizados e inseridos no gerador até que a precisão básica na produção de saída seja alcançada.
Em seguida, o conteúdo amostral é alimentado ao discriminador, e o ponto de dados real é relacionado ao conceito original. Uma vez que os modelos de gerador e discriminador processaram esses dados, ocorre um processo de otimização através de retropropagação. O discriminador filtra a informação e retorna probabilidades entre 0 e 1, onde 0 corresponde a imagens reais e 0 a imagens falsas. O processo se repete até que a GAN atinja seu resultado desejado.
Para que são usadas as GANs?
As GANs estão se tornando altamente populares devido à sua capacidade de entender e recriar conteúdo visual com grande atenção aos detalhes e notável precisão. Elas se mostram benéficas para várias tarefas, incluindo, mas não se limitando a, aumento de dados, síntese de imagens, detecção de anomalias e mais.
Algumas das aplicações típicas de redes adversárias generativas são:
- Diagnóstico de condições de saúde
- Converter imagens em preto e branco para coloridas
- Criar representações fotorrealistas de protótipos de produtos
- Gerar rostos humanos
- Desenvolver designs de moda
- Desenvolver personagens de videogame
- Gerar imagens 3D realistas
- Criar imagens realistas de animais
Tipos de GANs
As redes adversárias generativas têm múltiplos propósitos. Os diferentes tipos de GANs são:
-
Vanilla GAN: Vanilla GAN é a mais simples de todas as GANs e algoritmos. Ela tenta otimizar equações matemáticas com descida de gradiente estocástica, um algoritmo que ajuda aplicações de aprendizado de máquina a escolher o melhor ajuste entre saídas previstas e reais. Consiste tanto no gerador quanto no discriminador, e a classificação de imagens geradas é feita como perceptrons multicamadas diretos. O discriminador determina se a entrada pertence à classe, e o gerador coleta dados.
- GAN Condicional: GAN Condicional permite o condicionamento da rede com novas informações aplicando rótulos de classe. Durante o treinamento da GAN, a rede recebe imagens com o rótulo real, ou seja, "tulipa" e "girassol", ajudando-a a aprender a distinguir entre eles.
- GAN de convolução profunda: Com a ajuda de redes neurais convolucionais profundas, esta GAN ajuda a gerar imagens de alta resolução que podem ser facilmente diferenciadas. É uma técnica para extrair informações importantes dos dados gerados, permitindo que a rede absorva rapidamente os detalhes necessários.
- CycleGAN: Uma arquitetura comum de GAN usada para aprender a transformar entre imagens de vários estilos, CycleGAN ajuda a ensinar uma rede a alterar uma imagem de inverno para verão ou de um animal para outro. Também pode alterar rostos humanos que se encaixam em diferentes faixas etárias.
- StyleGAN: Produz fotos realistas e de alta qualidade de rostos que os usuários podem modificar para alterar sua aparência.
- GAN de super-resolução: Uma imagem de baixa resolução pode ser transformada em uma imagem altamente detalhada enquanto aumenta a resolução da imagem e preenche pontos borrados.
Vantagens das GANs
As GANs vêm com uma série de vantagens. Algumas das mais comuns estão listadas abaixo.
- Geração de dados sintéticos: As GANs geram novos mídia sintética que se assemelha à distribuição de dados e pode ser útil para detecção de anomalias, aplicações criativas e aumento de dados.
- Resultados de alta qualidade: As GANs produzem resultados de alta qualidade para várias aplicações, como síntese de música, síntese de vídeo, síntese de imagem e mais.
- Aprendizado de máquina não supervisionado: As GANs têm o potencial de aprender com dados não rotulados, tornando-as adequadas para tarefas de aprendizado de máquina não supervisionado, onde dados rotulados podem ser difíceis de obter.
- Versatilidade: As GANs podem ser aplicadas a uma ampla gama de aplicações.
CNN vs. RNN vs. GAN
Redes neurais convolucionais (CNN) são usadas para tarefas de reconhecimento de imagem e vídeo, particularmente para identificar padrões e características de imagem. Redes neurais recorrentes (RNN) são bem adequadas para dados sequenciais, como linguagem natural ou dados de séries temporais. Elas têm um componente de memória que permite o processamento sequencial e ajuda a manter o contexto.
GANs são usadas para tarefas generativas, como criar novos vídeos, textos ou áudios e distinguir entre dados reais e falsos. Em conclusão, CNN é útil para processamento de imagens, RNN para processamento de dados sequenciais e GAN para tarefas generativas.
Veja outros softwares de IA generativa que ajudam empresas em várias indústrias que requerem conteúdo gerado por IA para seu trabalho.

Tanuja Bahirat
Tanuja Bahirat is a content marketing specialist at G2. She has over three years of work experience in the content marketing space and has previously worked with the ed-tech sector. She specializes in the IT security persona, writing on topics such as DDoS protection, DNS security, and IoT security solutions to provide meaningful information to readers. Outside work, she can be found cafe hopping or exploring ways to work on health and fitness. Connect with her on LinkedIn.