Como criamos a galeria de arte em redes neurais e por que não damos fotos para copiar

Hoje lançamos uma galeria virtual onde todas as imagens são criadas por uma rede neural. Sua peculiaridade é que apenas uma pessoa pode tirar cada foto em tamanho real. Quase como em uma galeria real.

Neste post, falarei sobre como essa ideia nasceu e como a implementamos usando duas redes neurais, uma das quais é usada na pesquisa Yandex.



Idéia

Experimentamos muito com GANs e tentamos encontrar a idéia de um projeto bonito e compreensível no qual pudéssemos mostrar nossas realizações.

Eu já tinha um projeto de ganarts que lancei para mim e para meus amigos. Era apenas uma página na qual as imagens em forma de impressão em uma camiseta eram geradas infinitamente. Eles foram gerados pela rede neural StyleGAN, treinada em estilos de arte escolhidos a dedo com o wikiart.

Project Gif


Tomamos essa ideia como base. Mas eu não queria fazer apenas outro gerador de fotos no site. E, no processo de discussão, surgiu o conceito de uma galeria de arte com várias salas temáticas, onde cada imagem não deveria ter mais que um proprietário. De acordo com nossa ideia, isso deve conectar a galeria virtual às galerias mais familiares nas quais cada imagem tem um proprietário específico. Ao mesmo tempo, sendo capaz de gerar milhões de imagens, limitamos especificamente seu número para que cada usuário que conseguisse capturar uma foto sentisse sua singularidade. E também adicionamos uma restrição - você pode tirar mais de uma foto -, por isso é muito mais interessante escolher.

Implementação

Como a empresa Nvidia publicou o código para treinar a rede neural StyleGAN, é bastante difícil surpreender alguém com as imagens geradas. Seus autores conseguiram criar uma arquitetura bastante universal, que mostra bons resultados em diferentes dados. Um avanço também foi o fato de o modelo poder ser treinado em uma resolução suficientemente alta (1024 × 1024) por um tempo aceitável e com melhor qualidade do que a dos concorrentes.

Entusiastas "alimentaram" para ela tudo o que estava à mão. Se você estiver interessado em olhar para esses projetos, aqui está uma lista dos mais impressionantes.

- Pessoas: thispersondoesnotexist.com
- Anime: www.thiswaifudoesnotexist.net
- Gatos: thesecatsdonotexist.com
- Personagens de Game of Thrones: nanonets.com/blog/stylegan-got
- Carros: twitter.com/SyntopiaDK/status/1094337819659644928
- Logos: twitter.com/matthewjarvisw/status/1110548997729452035
- Desenhos para crianças: twitter.com/roberttwomey/status/1239050186120282113
- Erros: twitter.com/karim_douieb54st
- quadrinhos Garfield: twitter.com/willynguen/status/1220382062554898433
- Fontes: twitter.com/cyrildiagne/status/1095603397179396098
- Imagens do microscópio: twitter.com/MichaelFriese10/status/1229453681516412928
- Pokemon: twitter.com/MichaelFriese10/status/ 1210305621121064960

Mas o progresso não pára e, no final de 2019, a Nvidia lançou a segunda versãoStyleGAN . Uma visão geral detalhada de todas as alterações pode ser lida no Habré . A principal melhoria visível é livrar-se de artefatos característicos de gotículas, alterando o método de normalização de ativações na rede. Depois de experimentar a nova arquitetura em nosso conjunto de dados inicial, também notamos um aumento na variedade de pinturas geradas, que não podiam deixar de se alegrar. Nossa hipótese: isso ocorreu devido a um aumento no número de parâmetros na segunda versão da arquitetura, o que nos permitiu aprender mais "modos" na distribuição de dados.

Outro bônus interessante da segunda versão do StyleGAN foi o espaço latente "mais suave". Simplificando, isso permite que você faça um fluxo suave entre fotos diferentes:


Para criar as pinturas, usamos a arquitetura StyleGAN2. Ensinamos a rede neural sobre obras pertencentes a diferentes áreas da pintura: do fauvismo e cubismo ao minimalismo e arte de rua. No total, existem cerca de 40 mil pinturas no conjunto de treinamento, com base nas quais imagens completamente novas são geradas.

Nossa galeria possui quatro salas temáticas: "Pessoas", "Natureza", "Cidade" e "Humor". Para dividir as pinturas em salas, usamos a rede neural, que é usada no Yandex.Pictures. Ela aprende sobre os cliques do usuário emitindo imagens em uma solicitação de texto. Nosso conjunto de dados de treinamento interno é grande o suficiente para que essa rede neural possa descobrir até os padrões gerados. Ela ajudou a selecionar automaticamente as imagens, de acordo com nossos pedidos de texto, a partir de um grande número de imagens aleatórias. Por exemplo, para uma sala chamada "Pessoas", as pinturas foram selecionadas a pedido de "beleza", "dança redonda", "data", "mestre" e assim por diante. Isso criou uma sensação de salas temáticas, e as consultas iniciais serviram como nomes para as pinturas.

Resultado



Fizemos uma galeriade quatro mil pinturas, cada uma das quais pode encontrar seu dono. Com esta galeria virtual, queremos reduzir ainda mais a distância entre a criatividade da rede neural e a arte mais tangível.

Acredito que o processo de seleção de uma imagem pelo usuário também possa ser chamado de manifestação de criatividade. E espero que, no futuro, haja muito mais oportunidades de escolha criativa.

All Articles