(Português do Brasil) Uma IA que escreve Machado de Assis (V.8, N.3, P.2, 2025)

Facebook Instagram YouTube Spotify

Sorry, this entry is only available in Português do Brasil. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Reading time: 4 minutes

Sorry, this entry is only available in Português do Brasil. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

#acessibilidade: A imagem faz parte do acervo de ilustrações feitas por Candido Portinari inspiradas na história de “Memórias Póstumas de Brás Cubas”, de Machado de Assis. Essa, “Pirâmides e olho”, trata sobre a jornada alucinada que o protagonista realiza enquanto febril no sétimo capítulo do romance, quando escuta que a humanidade é um conjunto de pirâmides que se desmancham no ar.

Texto escrito por Eduardo Leme

Há muita especulação e sensacionalismo ao redor da Inteligência Artificial, esse campo da ciência que se concentra na criação de máquinas que poderiam raciocinar, aprender e atuar de maneira humana [1] – seja lá o que isso queria dizer – ou  que lidam com dados numa escala que as pessoas não podem analisar mecanicamente. 

Os Chatbots do momento, ChatGPT, Bard, Claude, são treinados com o modelo Transformer (zero relação com os carros robôs) e as técnicas de atenção e auto-atenção que inicialmente motivaram esse texto. Acabei encontrando um post no blog da NVIDIA que mastigou o assunto melhor do que eu poderia, então resolvi falar sobre um dos precursores da IA atual: as cadeias de Markov.

Enquanto as redes neurais profundas desses modelos levam em conta todo o contexto de um problema, uma Cadeia de Markov é um processo estocástico (isso é, que evolui com o tempo) em que cada vez que o sistema está num determinado estado i existe uma probabilidade fixa de que ele siga para o estado j. Em português, quer dizer que o próximo estado numa sequência de eventos depende somente do estado atual da sequência (independe de contexto / sem memória). [2] Em matematiquês:

lagrida latex editor 2 - (Português do Brasil) Uma IA que escreve Machado de Assis (V.8, N.3, P.2, 2025) Em que as probabilidades de ir para o próximo estado somam 1. Se quiser ou precisar, já falei um pouco sobre probabilidade condicional aqui.

Para exemplificar, imagine que o tigrinho tenha suas chances bem descritas, a depender do estado. Estamos no estado 0 quando acabamos de ganhar, e no estado 1 quando acabamos de perder. Se estamos em 0, temos probabilidade a de ganharmos novamente, digamos 0,2 (20%). Isso quer dizer que, nossa chance de perder depois de ganhar é de 1-a, ou seja, 0,8 (80%). Se estamos em 1, temos que a probabilidade de ganhar após perder é b, digamos 0,3. Então nossa chance de perder depois de perder é 1-b, ou seja, 0,7.

Podemos representar uma Cadeia de Markov como um Grafo ou como uma Matriz de Transição para melhor visualização e também, talvez principalmente, para manipulação. Do exemplo, temos:

iassis 1 e1742248191602 - (Português do Brasil) Uma IA que escreve Machado de Assis (V.8, N.3, P.2, 2025)
Grafo da Cadeia de Markov do exemplo
lagrida latex editor 3 - (Português do Brasil) Uma IA que escreve Machado de Assis (V.8, N.3, P.2, 2025)
Matriz de Transição do exemplo

O tal do Machado de IAssis [3] segue esse caminho, de modo que cada palavra é um estado e a extensa obra do carioca nos indica qual a próxima palavra mais provável. Acontece que, sendo um processo puramente estatístico e a análise baseada no aleatório, nenhuma importância é dada para o valor das palavras em si, então poucas frases fazem sentido (poético ou semântico).

No código abaixo, não necessariamente elegante, mas funcionando, usei o conceito de ordem no modelo que recebia os textos de Memórias Póstumas e Dom Casmurro. De modo que a palavra seguinte dependia do grupo das duas ou três anteriores. Pense em quantas palavras podem vir depois de “eu”. Com certeza menos palavras podem vir depois de “eu te”, “te amo”, “amo porque”, e assim por diante. Bem parecido com o corretor ortográfico que temos nos dispositivos móveis, não acha? Tenho certeza que com alguns ajustes baseados em Processamento de Linguagem Natural (PLN), o resultado pode melhorar! Você pode encontrar o esqueleto do código original aqui.

image2 e1742245042676 - (Português do Brasil) Uma IA que escreve Machado de Assis (V.8, N.3, P.2, 2025)
Captura de Tela do código [3] que motivou esse texto: algumas sentenças do Machado de IAssis.

Bom, peço desculpas por eu mesmo ter sido oportunista com o título. Meu código de fato escreve Machado de Assis: uma combinação do que ele poderia escrever dado o que ele escreveu. Mas não escreve como Machado de Assis, pois isso só o próprio poderia fazer. Não compactue com necromancia tecnocrata, Entusiasta.

Mas também não te deixaria de mãos abanando. Processos de Decisão Markovianos, Modelos de Markov Ocultos, Cadeias de Markov em Amostragem, são algumas das aplicações desse modelo. O famoso algoritmo da Google para ranquear páginas web PageRank, é um grande exemplo específico. Particularmente, adoro os geradores cômicos (veja Markovify In The Wild). No meu próximo texto, veremos um pouco sobre as Caminhadas Aleatórias, meu tipo favorito de Cadeia de Markov!

Referências:
[1] https://cloud.google.com/learn/what-is-artificial-intelligence 

[2] S. M. Ross, Probabilidade: um Curso Moderno com Aplicações, 8a ed., São Paulo: Bookman, 2010.

[3] https://napsterinblue.github.io/notes/algorithms/markov/markovify/

Para saber mais:
https://brilliant.org/wiki/markov-chains/

Cadeia de Dois Estados interativa: https://setosa.io/ev/markov-chains/

Artigos seminais sobre o Modelo Transformer:
Attention Is All You Need
On the Opportunities and Risks of Foundation Models

Compartilhe:

Leave a Reply

Your email address will not be published.Required fields are marked *