Text Mining Toque Suave

A arte de text mining usa programação para aceder ao texto de um ou vários livros (ou quaisquer textos!) e extrair informação e padrões.

O Toque Suave é um romance de dimensão pequena/média (314 páginas na edição de colecionador). Eu lembro-me que escrevi este romance relativamente rápido e tive, desde início, a intenção de o escrever simples. Será interessante ver, em futuras análises, se essa simplicidade se destaca nas palavras usadas relativamente aos outros livros que escrevi.

Aliás, esse será um bom ponto de partida!

Se eu pegar no meu corpus (palavra que usamos em text mining para indicar um conjunto de livros, ou artigos, etc.), posso criar um dicionário de todas as palavras que já utilizei e, dessa maneira, consigo calcular a percentagem das “minhas” palavras que um livro em particular usou:


O vocabulário do Toque Suave inclui 6302 palavras diferentes. Representa 20.3% do vocabulário usado no conjunto de todos os meus livros.


Reparem como uma análise automática e inteiramente imparcial, a simples proporção de palavras de um livro contra todas as palavras dos meus livros, revela algo sobre o próprio livro – a sua dimensão e simplicidade. Como devem imaginar, quanto maior a dimensão dos meus livros, maior a percentagem de palavras do meu vocabulário:

Figura 1 – Regressão linear entre o número total de palavras usadas versus o número de palavras únicas de cada livro, dividido por tipologia através da cor.

No último gráfico dividi os meus livros por tipologia – romance, novela, conto e poesia – e notem que a dimensão segue o tipo de livro que se trata, aliás como esperado. Notem ainda que usei como métrica de “dimensão” do livro a totalidade das suas palavras.

Como podem ver, há um ponto azul com aproximadamente 20% de riqueza de vocabulário, como devem ter adivinhado, trata-se do Toque Suave. Portanto, temos aqui uma demonstração sólida de que o Toque Suave é um romance simples e pequeno. Na verdade, é tão pequeno, que me questionei se o devia considerar romance ou novela, pois encontra-se no limite. Contudo, há outros aspetos que dividem o romance da novela, como seja a complexidade da narrativa e a quantidade de personagens. Assim, considero o Toque Suave um romance, mas um romance que está na categoria dos mais pequenos e simples.

Mas se forem como eu, devem de achar esta última métrica demasiado simples. Reparem, se um escritor quiser, e bem, escrever de forma polida e clara, é perfeitamente válido usar uma limitada diversidade de palavras. Essas palavras podem, contudo, ser bastante distintas das que outros autores usam (ou das que ele próprio usa) e isso ser independente da dimensão. De facto, se olharem mais atentamente para a Figura 1, devem de reparar que há um outlier – trata-se de um livro de poesia e adianto-vos de que se trata d’As TransBonitas; não o vou abordar neste artigo, mas trata-se de um exemplo de um livro com um vocabulário que se distingue bastante dos outros livros que escrevi.

Para ir além desta métrica simplista, podemos calcular outras. Podemos, por exemplo, olhar para o rank de cada palavra num livro. Isto é, criar um ranking da frequência de utilização de cada palavra, por exemplo, se a palavra “e” for a mais usada, fica na 1º posição, se a palavra “do” for a segunda mais usada, então passa para a 2º posição e por aí adiante para todas as palavras. E se fizéssemos isto para todos os livros em simultâneo?

Figura 2 – Rank de utilização de cada palavra. O Toque Suave está indicado em azul turquesa e as minhas restantes obras estão em violeta avermelhado.

A Figura 2 ilustra esta última ideia e é já um exemplo de como text mining permite testar hipóteses relativas à utilização das palavras nos nossos livros! Dificilmente um leitor, escritor ou editor se colocariam com um lápis a contar quantas vezes detetaram cada palavra – e se o tentassem fazer dessa maneira a “taxa de erro humano” seria enorme.

Esta Figura 2, de facto, suporta a nossa figura anterior, ou seja, o Toque Suave tem um vocabulário relativamente simples (Figura 1) e a frequência de utilização das diferentes palavras encontra-se dentro do reportório típico do autor (Figura 2).

Para termos de comparação, se eu fizesse a mesma figura com outros autores, por exemplo, Camões e Eça de Queirós, as três linhas seriam desencontradas.
Surpresa, eu fiz isso mesmo, porque são autores no domínio público!

Figura 3 – Rank de utilização de cada palavra. O Toque Suave de Francisco Pascoal está indicado em azul turquesa, Os Lusíadas de Camões está indicado em azul escuro e Os Maias de Eça de Queirós está em verde.

A Figura 3 teve o propósito principal de ajudar a interpretar este tipo de figura e análise. No entanto, notem que é difícil fazer este tipo de análise para livros que foram escritos em épocas completamente diferentes. Dito isto e assumindo alguns problemas técnicos, reparem como há pontos em que algumas obras se juntam, mas separam-se na maioria das vezes. Os Lusíadas distinguem-se pelas palavras mais frequentes, Os Maias pelas palavras mais únicas (reparem naquela cauda de palavras únicas e raramente utilizadas, que vai além dos outros dois livros). De facto, Os Maias é um romance complexo e de grande dimensão, precisamente o oposto do Toque Suave. Ter este termo de comparação com algo que é bem conhecido e estabelecido (a complexidade e dimensão d’Os Maias, um livro de outro autor) funciona como controlo. Assim, temos mais confiança nas conclusões anteriores.


Mas são só números até agora! Quais palavras é que foram usadas em concreto? E o que é que elas nos dizem sobre a história?


Para responder a esta pergunta, podemos começar por criar uma lista das 50 palavras mais usadas no livro (ou seja, imaginem que vamos olhar para o conteúdo no topo da Figura 2):

Figura 4 – Top 50 palavras mais usadas no romance Toque Suave, Francisco Pascoal.

A Figura 4 revela palavras óbvias de serem encontradas em qualquer livro e, por isso, pouco interessantes. Por exemplo, “e”, “a”, “o” ou “de”. No entanto, para mim que escrevi este livro, é uma informação importante, porque assim eu tenho uma métrica objetiva que me diz quais as palavras que eu mais repito.

Se olharem com mais atenção para a Figura 4 e começarem a descer no top50, vão reparar em palavras relevantes – “Franco”, “Amadeus”, etc. Estas palavras são relevantes na medida em que revelam aspetos da história, neste caso, duas personagens importantes.

No entanto, a Figura 4 é pouco informativa e desinteressante. Para obter uma métrica que nos dê as palavras relevantes para a história, podemos assumir o seguinte: as palavras pouco importantes para a história em concreto são as palavras comuns e que o autor usa com mais frequência no conjunto dos seus livros; as palavras relevantes para o livro, contudo, serão específicas desse livro. Este raciocínio permite-nos calcular uma métrica que se chama tf-itf e repetir a figura anterior com base nessa métrica:

Figura 5 – Top50 palavras mais relevantes do Toque Suave de Francisco Pascoal, com base no índice tf-itf.

Agora sim, temos uma figura interessante. Reparei que logo nas dez palavras mais importantes temos as personagens quase todas: Dinis, Franco, Amadeus, Renato, João e Cláudia; Logo seguido de “natação”, “clube”, “namorada” e “piscina”. Todas estas palavras estão intimamente ligadas ao conteúdo da história, porque indicam as personagens da história e o contexto em que elas interagem. De facto, o Toque Suave é um romance sobre um triângulo amoroso entre amigos que praticam natação. Se continuarmos a descer ao longo do top50 encontramos outras palavras que, no geral, se vão enquadrar ora nas personagens (“Samanta”), ora no contexto em que interagem (“pista”), ora na maneira de falarem (e.g. “bora”). Mas ainda não acabou, há um outro detalhe desta figura que é muito importante. Encontram-se várias palavras que remetem para a temática do homoerotismo (e.g. “bulge”).


Até agora, O Toque Suave caracteriza-se pela sua simplicidade no vocabulário, pelo contexto da história e pela temática do homoerotismo.


Talvez possamos ir mais longe, porque as palavras carregam significado e transmitem sentimentos. Portanto, importa perguntar a que sentimentos se associam. Esta pergunta é complexa. Não é trivial ensinar o computador a detetar momentos positivos ou negativos numa história. No entanto, é possível usar dicionários de sentimentos e usá-los para analisar automaticamente o texto e dividir por palavras “neutras”, “negativas” e “positivas”. Para isto, usei o dicionário SentiLex.

Figura 6 – Nuvem de palavras colorida por sentimento. A azul turquesa estão as palavras associadas a sentimentos positivos; A violeta avermelhado as palavras associadas a sentimentos negativos; e a cinzento as palavras associadas a sentimentos neutros. O tamanho é proporcional à frequência de utilização da palavra e do índice tf-itf.

A Figura 6 permite obter ainda mais informação do livro! Conseguimos ter acesso a uma camada progressivamente mais subjetiva da história. Reparem nas palavras associadas a sentimentos positivos mais importantes: “piada”, “verdade”, “coragem”, “liberdade”. Todas elas indicam algo sobre o arco principal, a “piada” refere-se à maneira descontraída como algumas personagens interagem; já as outras três revelam parte da essência da história, a descoberta de um caminho, a libertação de uma vida de maus hábitos e a coragem de o fazer. Não queria estragar a história para quem não leu, por isso não vou detalhar muito mais a importância destas palavras. Contudo, acho que elas falam por elas próprias. Temos personagens que descobrem a sua sexualidade, temos personagens que têm comportamentos de risco, temos personagens que se descobrem a diferentes níveis, etc. E quanto às palavras associadas a sentimentos negativos? Reparem que são quase a oposição das que referi serem positivas, “medo”, “problema”, “bater”; mas também “controlar”, etc. A palavra “medo” é particularmente interessante quando confrontada com “coragem” e “liberdade”; as palavras “problema”, “bater” e “controlar” indicam o lado dos problemas nas relações amorosas que aparecem no livro. Quanto às palavras neutras, são aquelas palavras que tínhamos visto serem pouco importantes, servem para conectar outras palavras e são muito comuns.

Numa nota sobre análise de sentimento: é fácil encontrar exemplos em que a análise de sentimento se complica e erra. Imaginem a palavra “vida”, essa palavra é positiva e o computador vai achar que ela é positiva. Se a frase for “não gosto da minha vida”, a palavra é negativa no contexto, mas o computador vai considerar que é positiva.

Dito isto, apesar da análise de sentimento aqui utilizada ser rudimentar, ela faz sentido no panorama geral. Isto é, os erros são sistemáticos e não interferem nos padrões gerais da história. Para clarificar este ponto, olhem para figura seguinte:

Figura 7 – Proporção de sentimentos negativos vs positivos no romance Toque Suave de Francisco Pascoal ao longo dos capítulos.

O que é um “padrão geral”? Bem, é uma expressão ambígua. Por isso, olhemos para a Figura 7, que nos indica a proporção entre palavras associadas a sentimentos negativos contra as associadas a sentimentos positivos. Neste caso, o padrão geral é a progressão entre negativo vs positivo ao longo da história. Numa primeira análise, vemos que há uma oscilação, o que é esperado. Numa análise mais aprofundada, se conhecermos a história, conseguimos perceber que esta proporção se altera com a história. Mesmo que só olhemos para a estrutura externa da história: os capítulos iniciais são mais negativos, os capítulos intermédios oscilam entre positivos e negativos, os capítulos finais são progressivamente mais negativos. De facto, o capítulo 16 é o mais positivo e é imediatamente seguido do capítulo mais negativo – trata-se do momento antes e depois do climax, ou seja, o momento mais extremo e intenso da história e que muda tudo na vida das personagens.

Apesar de achar a Figura 7 essencialmente certa, pelos padrões, admito que me impressionei. Esperava que o romance fosse mais positivo, porque na minha mente este era um romance leve e simples, com imensos bons momentos. Se eu comparar com outros livros que eu escrevi e que, no meu imaginário, são mais negativos, então a minha noção confirma-se: o Toque Suave é geralmente mais positivo do que livros como A Tormenta. Não vou mostrar aqui resultados dA Tormenta, mas adianto que todos os capítulos desse livro têm mais palavras negativas do que positivas.

O que é que ainda nos falta?

Sabemos que as palavras não vivem isoladas, elas andam próximas umas das outras. Um “não” transforma uma palavra positiva em negativa e vice-versa. Portanto, importa perguntar como é que as palavras se relacionam. E eis aqui uma outra amostra de como text mining pode alcançar:

Figura 8 – Rede de palavras associadas.

Para fazer a Figura 8 comecei por criar uma correlação entre todas as palavras. Sim, isso mesmo, uma palavra tão simples como “e” contra todas as outras palavras, por aí adiante até cada palavra ter sido comparada contra todas as outras. Esta comparação permite obter uma correlação entre palavras, isto é, se uma correlação for de 1, então sempre que uma palavra aparece, a outra também aparece; ou o caso contrário, com correlação de 0 quando uma palavra aparece, a outra nunca aparece. Assim, se duas palavras tiverem uma correlação de 0.5 significa que metade das vezes que uma palavra aparece, a outra também aparece. Este foi o primeiro passo, mas não me interessam muito os conectores como “e”, “do”, “da”, etc. Portanto, antes de calcular a correlação, removi as palavras com baixo valor de tf-itf (aquela métrica que usei anteriormente para capturar as palavras relevantes). Finalmente, criei uma network das palavras relevantes com correlação entre elas superior a 0.35 (ou seja, quando uma palavra aparece a outra também aparece em 35% das situações). Com base na interação destas palavras, a network tenta criar uma rede de palavras relacionadas. Notem que este processo é automático e sem supervisão humana, as relações estão a ser criadas puramente pelas ocorrência das próprias palavras do texto. Como devem de imaginar, isto poderia ser feito entre vários livros, entre autores, etc.

Neste caso, a Figure 8 dá-nos a informação mais detalhada e informativa da própria história. Eu não disse ao computador nada sobre o livro, mas ele conseguiu identificar dois grupos principais: uma rede relativa ao contexto da história (desporto de natação), por exemplo, “piscina”, “balneário”, “duche”; outra rede relativa ao homoerotismo, temática central do livro, por exemplo, “duro”, “preservativo”, “pénis”; Além desses grupos principais, que de facto premeiam o estilo e contexto da história; há outros grupos mais pequenos, um indica as relações amorosas dos amigos das personagens principais. De certa forma, indica as personagens secundárias, por exemplo, “Samanta”, “Renato”, “namorada” (adivinhem só, a Samanta é a namorada do Renato, que é o melhor amigo do Dinis, que se vai apaixonar pela personagem principal, Franco).


Em jeito de conclusão, esta análise, ainda que simplificada, mostra como text mining consegue aceder a características estruturais e internas de uma história olhando apenas para as suas palavras!

No futuro, irei repetir estas análises para os meus restantes livros publicados e irei fazer mais comparações entre os meus livros e os de outros autores no domínio público.

Se ainda não leram o livro, espero que esta análise vos tenha despertado o interesse. Se já o leram, espero que tenham gostado e que esta análise vos mostre novas formas de olhar para um livro.

Francisco Pascoal
1/04/2023

Sugestões de leitura

  • Text Mining with R , Julia Silge e David Robinson;
  • A survey of sentiment Analysis in the Portuguese Language 2020, Denilson Alves Pereira, Artificial Inteligence Review Springer.

Nota: Eu escrevi o código para todas as análises através do software R, com base no código e recursos indicados nas sugestões de leitura.

Comments

Deixe um comentário

Design a site like this with WordPress.com
Iniciar