Buscar

Rede generativa adversarial (GAN): o que é e como funciona?

Entenda o que é rede generativa adversarial (GAN), como funciona, quais são os principais tipos e utilidades dessa IA e confira exemplos práticos de uso.

O que é rede generativa adversarial (GAN)? Para que serve?

Cb image default
Foto de Uriel SC na Unsplash

O termo rede generativa adversarial (GAN) vem do inglês, Generative Adversarial Networks. Você também pode conhecê-las pelas variações dos termos adversárias ou adversativas. Todos se referem a um sistema de IA composto por duas redes neurais principais que aprendem e evoluem competindo uma com a outra.

Essa tecnologia tem chamado bastante atenção devido a sua capacidade de criar conteúdo falso. Mas calma, não estamos falando de simplesmente gerar fake news, mas sim de produzir imagens absurdamente reais de coisas que não existem, como criar paisagens, gatos, cachorros e até mesmo rostos humanos. Incrível, não acha?

Agora você deve estar se perguntando: “como as GANs funcionam e qual é a sua utilidade prática?” Nós estamos aqui para tirar todas as suas dúvidas sobre o tema.

Neste post, explicamos o que são GANs, como as redes generativas adversariais operam, como funciona a IA para imagens, quais os principais tipos com exemplos de aplicação práticas. Quer ficar por dentro de tudo? Então, é só ler até o final!

O que são GANs (redes generativas adversariais)?

GANs é a sigla para Generative Adversarial Networks, ou Redes Adversárias Generativas, em português. O conceito se refere a uma tecnologia pertencente às áreas de Visão Computacional e Aprendizado de Máquina. Na prática, são dois sistemas de IA treinados de forma conjunta e que aprendem competindo entre si.

Em outras palavras, as redes neurais generativas adversárias seguem um sistema de aprendizagem não supervisionada, em que uma IA compete com a outra — por isso são chamadas de adversárias — contribuindo para que as duas evoluam.

É uma tecnologia recente, mas que vem ganhando notoriedade nos últimos tempos e impressionando por sua capacidade de criar conteúdo. Porém, elas não se limitam à geração de fotos falsas, sendo capazes de uma série de outras façanhas, como melhorar qualidade de imagens e vídeos, ampliar e até completar elementos.

Quais são os principais tipos de GANs que existem atualmente? 7 exemplos

Existem hoje diversos tipos de GANs, cada uma serve a um propósito específico. Entre os principais exemplos, destacam-se:

1. Pix2Pix - usada para tradução entre imagens, convertendo rascunhos em imagens realistas, por exemplo;

2. StyleGAN - cria imagens de alta qualidade seguindo estilos determinados, como fotos de pessoas que não existem, além de permitir a manipulação de elementos da imagem;

3. DCGAN (Deep Convolutional GAN) - possuem camadas de IAs convolucionais, que possibilitam gerar imagens realistas de paisagens, animais, objetos e rostos humanos;

4. CycleGAN - consegue traduzir imagens em diferentes estilos, como converter uma pintura em uma paisagem real ou transformar cavalos em zebras;

5. CGAN (Conditional GAN) - permite ao usuário definir condições para a criação de imagens, como especificar a espécie de uma árvore ou a raça de um cão ou gato;

6. SRGAN (Super Resolution GAN) - é capaz de ampliar imagens em baixa resolução de forma significativa, gerando resultados de altíssima qualidade;

7. BigGAN - consegue gerar imagens de alta qualidade e extremamente fiéis.

Além dessas, temos muitas outras, voltadas para as mais diversas funcionalidades, incluindo o aprimoramento do próprio treinamento de redes adversárias generativas.

Como funcionam as GANs?

A rede generativa adversarial é composta por duas redes neurais. São elas:

• modelo gerador: responsável por criar conteúdos — os chamados dados sintéticos — o mais realistas possível;

• modelo discriminador: que tem a função de classificar os inputs recebidos como autênticos ou falsos — neste caso, criados pelo modelo gerador.

O processo de treinamento de uma rede generativa adversarial se dá por meio de uma competição entre os dois sistemas de IA que formam a rede neural.

Ou seja, enquanto o modelo gerador tentar produzir imagens realistas o suficiente para enganar o discriminador, este deve avaliar se o conteúdo que recebe é real ou produzido artificialmente. Assim, ambas contribuem para a evolução uma da outra.

Como se dá esse processo de evolução?

Inicialmente, o que temos são apenas ruídos. Um amontoado de dados aleatórios que não nos dizem nada.

Porém, com o passar do tempo, o modelo gerador vai se aperfeiçoando e, quando o treinamento é concluído com sucesso, ele se torna capaz de produzir conteúdos indistinguíveis dos reais — ao menos para nós, humanos.

Já o modelo discriminador recebe como input dados reais, como obras de arte, e as imagens produzidas pelo modelo gerador. Sua tarefa, então, é diferenciar o que é real do que é falso.

Assim, ele se torna cada vez mais eficiente, obrigando o gerador a criar conteúdos ainda mais realistas, até que chegue ao ponto de enganá-lo.

Caso você queira se aprofundar um pouco mais e entender todo esse processo em detalhes, assista, no vídeo abaixo, uma introdução bem didática ao tema:

PGlmcmFtZSBpZD0iX3d1OXJ6MWpjeCIgc3JjPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC95X0RvVllBT1R6QT9yZWw9MCZhbXA7YW1wO3Nob3dpbmZvPTAiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW49IiI+PC9pZnJhbWU+

Analogia sobre o funcionamento da rede generativa adversarial (GAN)

A fim de ilustrar essa dinâmica, apresentamos a seguir uma analogia envolvendo o trabalho de um perito em obras de arte e a ação de um falsificador.

Imagine que você é um perito (modelo discriminador) responsável por identificar quadros falsos. No início da carreira, você só é capaz de perceber as falsificações mais grosseiras. Contudo, o falsificador (modelo gerador) também não é muito bom.

Porém, quanto mais obras do artista você vê, melhor conhece seu estilo de pintura, as cores que usava, o sentido dos traços, o uso de sombra etc. Ao mesmo tempo, o falsificador também aperfeiçoa sua técnica, passando a produzir quadros cada vez mais semelhantes aos originais, visando dificultar seu trabalho enquanto perito.

Assim, ambos seguem evoluindo, aperfeiçoando suas habilidades de forma contínua.

Para que serve a rede generativa adversarial?

O objetivo da rede adversária generativa é gerar dados extremamente semelhantes aos reais, isto é, tão parecidos com os originais, ao ponto de confundir até mesmo o modelo discriminador, perito em identificar imagens geradas pela IA, por exemplo.

Assim, as GANs são vistas como uma revolução da tecnologia, sobretudo na área de inteligência artificial, por serem capazes de produzir conteúdos de alta qualidade.

Para que isso tudo fique mais claro, apresentamos a seguir alguns exemplos práticos de aplicações e utilidades das GANs no mundo real. Acompanhe!

7 exemplos de aplicações práticas e utilidades das GANs

Apesar de o exemplo mais comum de uso das GANs esteja relacionado à criação de imagens, essa tecnologia pode ser útil em diversas situações.

Entre as principais aplicações das GANs atualmente, destacam-se:

criação de imagens realistas, incluindo rostos humanos e paisagens que não existem no mundo real a partir de comandos de texto;

tratamento de imagens, remoção de ruídos e restauração de fotos antigas;

melhoria da qualidade e aumento da resolução de imagens e vídeos;

transformação desenhos e esboços em fotos realistas;

geração de texto para descrever imagens ou situações, incluindo criação de histórias e tradução de textos para outros idiomas;

replicação do estilo de uma imagem em outra, gerando obras como as criadas por artistas famosos;

manipulação e reconstrução de imagens com base no modelo original, visando completar itens ou inserir novos elementos.

Como as GANs conseguem melhorar a qualidade de imagens?

Aumentar o tamanho de uma imagem é algo relativamente simples. Porém, isso gera um grande problema, afinal, tamanho e resolução são coisas distintas.

Ao usar métodos tradicionais ou, até mesmo, outras redes neurais para ampliar uma foto, esticamos seus pixels. Logo, quanto mais a ampliamos, pior fica a resolução.

E é aqui que entra o grande diferencial das redes generativas adversariais: mais do que ampliar, as GANs são capazes de aumentar a resolução das imagens.

“Como isso é possível?”, você deve estar se perguntando.

Por serem treinadas para reconhecer elementos específicos a partir de um volume gigantesco de imagens, elas se tornam experts nessa tarefa. Assim, conseguem criar novos pixels na imagem, melhorando sua qualidade sem precisar esticá-la.

Agora, por que parar por aí, não é mesmo?

Considerando que vídeos nada mais são que uma sequência de imagens, as redes generativas adversariais também podem melhorar a resolução desse tipo de mídia.

Inclusive, é o que a Pixar está experimentando em suas animações para economizar tempo e recursos.

Considerando que conteúdos em resoluções de 2k e 4k demandam muitas horas de renderização, a ideia é passar a produzir os quadros em resoluções mais baixas para, em seguida, usar as GANs para aumentar a escala. Genial, concorda?

Imagine poder aumentar a resolução daquelas fotos e vídeos antigos de família em casa? Considerando a velocidade com que a IA evolui, podemos estar perto disso.

Como usar GANs?

Para obter um bom desempenho usando GANs, como você pode imaginar, é preciso cumprir alguns requisitos, como ter uma infraestrutura de hardware adequada para a tarefa e contar com o apoio de profissionais especializados em IA e deep learning. Ademais, é importante ter um volume de dados suficiente para o seu treinamento.

A partir disso, as redes adversárias generativas podem ser aplicadas aos mais diversos contextos. E, afinal, como as empresas estão usando esse tipo de IA? Alguns exemplos, são:

• personalização de produtos e serviços, tendo como base as o comportamento do consumidor, suas preferências e necessidades;

• análise de dados, simulações e previsões de mercado, por meio de modelos de análise criados a partir de informações coletadas pela empresa;

• produção de mídia para marketing e vendas, considerando sua versatilidade na criação de imagens, textos e outros formatos de conteúdo.

Que tal usar IA para otimizar os processos da sua empresa?

Cada vez mais, a inteligência artificial ganha espaço como um forte vetor de inovação, capaz de estimular a criatividade para resolver problemas comuns ao mercado, impulsionando o desenvolvimento de soluções fora da caixa.

Dentro dessa proposta, a rede generativa adversarial (GAN) tem se mostrado uma forte aliada em diversos quesitos. Contudo, entender como a IA funciona para além das imagens pode ajudar a pensar novos usos compatíveis com o seu negócio.

Agora, sabia que você já pode começar a usar IA para otimizar seus processos?

Um bom sistema de relacionamento com o consumidor possibilita conhecer seu público de perto e compreender suas preferências e necessidades, a fim de oferecer um atendimento personalizado, de qualidade acima da média. Que tal experimentar?

Faça uma avaliação gratuita do software Zendesk e confira como essa ferramenta pode alavancar o seu negócio, tornando sua empresa muito mais competitiva!

Comentários

Os comentários são de responsabilidade exclusiva de seus autores e não representam a opinião deste site.