Recentemente, pesquisadores da Universidade de Stanford, da Universidade de Massachusetts (Estados Unidos) e do projeto Google Brain desenvolveram um sistema de Inteligência Artificial para gerar sentenças textuais automaticamente, com o objetivo de completar poemas!
O time do Google Brain é focado em pesquisas na área de inteligência artificial, e tem como principal objetivo a construção de sistemas inteligentes para os seguintes setores: aprendizagem de máquina, processamento de linguagem natural, geração de arte e música, robótica, cuidados de saúde e percepção. Periodicamente eles lançam novas aplicações e publicam vários artigos científicos, muitos dos quais com ferramentas open-source para realizar testes! É sempre bom ficar ligado no site do projeto para novidades, no seguinte endereço: https://research.google.com/teams/brain/
Com relação à IA (inteligência artificial) que eles desenvolveram para gerar poemas, o sistema foi treinado utilizando o Book Corpus, que é uma coleção de textos compostos por aproximadamente 12.000 e-books, sendo a maioria sobre ficção. Este conjunto de livros contém em torno de 80 milhões de frases que o sistema utilizou para fazer o treinamento. A ideia é a seguinte: o usuário passa como parâmetro a primeira e a última frase e o software tem o trabalho de completar as sentenças entre elas.
Veja abaixo um exemplo de poema para você ter uma melhor ideia de como a ferramenta funciona (traduzido do inglês).
Ele ficou em silêncio por um longo momento.
Ele ficou em silêncio por um momento.
Estava quieto por um momento.
Estava escuro e frio.
Houve uma pausa.
Foi a minha vez.
Nesse “poema” (se é que dá para chamar de um poema :)), a primeira e a última frase em negrito foram indicadas para o software, enquanto que a IA teve a função de completar as frases do meio. Note que as sentenças intermediárias possuem gramática correta e a estrutura sintática é de certa forma consistente com o contexto apresentado pela primeira e última frase. Veja abaixo um outro exemplo, esse um pouco mais melancólico ainda 🙂
Isso me fez querer chorar.
Ninguém tinha visto ele desde então.
Isso me fez sentir desconfortável.
Ninguém o tinha visto.
O pensamento me fez sorrir.
A dor era insuportável.
A multidão ficou em silêncio.
O homem gritou.
O velho disse.
O homem perguntou.
Assim como no exemplo anterior, o usuário informa ao sistema a primeira e a última sentença, enquanto que a inteligência artificial preenche todas as frases entre elas. Note que neste exemplo as frases também aparentam um certo sentido e estão de certa forma relacionadas com o contexto. Se você não concorda e acha que as frases estão desconectadas, experimente ler o trecho abaixo.
Eu fui para a loja para comprar alguns mantimentos.
Eu loja para comprar alguns mantimentos.
Eu fosse comprar qualquer mantimentos.
Cavalos estão dispostos a comprar qualquer mantimentos.
Cavalos estão dispostos a comprar qualquer animal.
Cavalos favoritos qualquer animal.
Cavalos do animal favorito animal.
Cavalos são meus animais favoritos.
Esse exemplo não foi gerado pelo sistema do Google Brain, mas sim pelas técnicas tradicionais existentes. Note que as frases apresentam vários problemas de concordância e sequer podem ser entendidos dentro do contexto. Veja que o sistema acabou misturando os termos “mantimentos” e “cavalos” que foram passados na primeira e última sentença, fato que tornou o poema impossível de ser entendido! O que a equipe de pesquisadores trouxe foi uma grande evolução se comparado com o que já existia até pouco tempo atrás!
Agora que você entendeu melhor como o sistema funciona, vamos agora analisar brevemente as tecnologias que eles utilizaram para chegar nesse objetivo! Os pesquisadores introduzem e estudam uma rede neural recorrente para modelagem de linguagem, conhecido em inglês como RNNLM – Recurrent Neural Network Language Modeling. Este é um tipo particular de rede neural que possui características para ser aplicada com bons resultados em reconhecimento de escrita ou fala, bem como em sistemas de tradução automática. Ainda segundo os autores, as redes neurais recorrentes são consideradas como o estado da arte na geração de modelos não-supervisionados para modelagem de linguagem natural, porém, elas não expõem uma interpretação representável de estruturas globais como tópicos ou sintáticas de alto nível, ou seja, elas não são tão adequadas para fazer inferências sobre palavras desconhecidas fornecendo como entrada palavras conhecidas. Por isso, eles desenvolveram uma extensão da RNN na forma de um encoder que incorpora representações distribuídas latentes de sentenças inteiras.
Mas o que é essa questão de latente? Em resumo, uma variável latente é um tipo de variável que não é observada diretamente, sendo considerada uma variável de certa forma escondida no espaço de variáveis e frases. Em outras palavras, são variáveis que não são diretamente observadas, porém, elas podem ser inferidas por meio das outras variáveis que são observáveis. Em computação, essa técnica é bastante utilizada em aprendizagem de máquina, bioinformática e processamento de linguagem natural.
Acesse este link para saber um pouco mais sobre processamento de linguagem natural (PLN): https://iaexpert.academy/2016/08/23/ferramentas-para-ia-processamento-de-linguagem-natural-com-nltk-e-python/
Segundo os pesquisadores, baseado na análise deste “espaço latente” é possível gerar novas sentenças coerentes que interpolam entre as sentenças conhecidas, utilizando também redes neurais profundas entre o encoder e a variável latente e sobre o decoder e a variável latente. Essa abordagem é considerada adequada para a tarefa de colocar palavras faltantes em sentenças já existentes.
Com isso, vimos um pouco de tecnologias de ponta que estão sendo utilizadas em grandes centros de pesquisa! Como você talvez pôde observar, essas tecnologias são um pouco complexas e por isso, o objetivo foi somente mostrar quais as técnicas de inteligência artificial estão sendo utilizadas por esses grupos de pesquisa mais renomados do mundo. Desta forma, você pode ter uma ideia das próximas tecnologias que você pode ter interesse em estudar futuramente para quem sabe também trabalhar com pesquisas nessa área!
Até o próximo artigo!
Minha terra tem palmeiras
Onde canta o Sabiá,
As aves, que aqui gorjeiam,
Não gorjeiam como lá.
Nosso céu tem mais estrelas,
Nossas várzeas têm mais flores,
Nossos bosques têm mais vida,
Nossa vida mais amores.
Em cismar, sozinho, à noite,
Mais prazer encontro eu lá;
Minha terra tem palmeiras,
Onde canta o Sabiá.
Minha terra tem primores,
Que tais não encontro eu cá;
Em cismar – sozinho, à noite –
Mais prazer encontro eu lá;
Minha terra tem palmeiras,
Onde canta o Sabiá.
Não permita Deus que eu morra,
Sem que eu volte para lá;
Sem que desfrute os primores
Que não encontro por cá;
Sem qu’inda aviste as palmeiras,
Onde canta o Sabiá.
Esticou a rede entre duas palmeiras.
E o vento veio embalar seu sonho.
Então sonhou que era rei.
Mas uma chuva fina e fria
Lhe chamou para a realidade.
Espetacular!
Adoro fazer poetrix, esse sistema vai me auxiliar a criar um terceiro verso, ou um segundo!
Hoje em dia o ChatGPT já consegue gerar poemas com excelente qualidade!