Analisando tempo de falas em sabatinas de Candidatos

Marcello Pontes
Oncase
Published in
5 min readSep 28, 2018

Com toda essa loucura que são as eleições presidenciais, cada um tem seu candidato, seus princípios e ideologias. A gente que gosta de dados, fica então analisando cada detalhe dessa corrida e se questionando um bocado de coisa. Vendo debates e essas várias sabatinas que acontecem nas mídias, em especial a sabatina que aconteceu com quatro candidatos no Jornal Nacional da Globo, fiquei curioso pra saber:

  • Será que o entrevistador acaba falando mais em algumas entrevistas?
  • Os candidatos têm, com pequena variação, o mesmo tempo total, mas eles conseguem falar a mesma quantidade?

Eu estava de férias, quando me vieram esses questionamentos, mas isso não me impediu de pegar umas horinhas pra poder construir uma ferramentinha que me desse as respostas.

Então implementei algo (link na conclusão) que, dados os arquivos de vídeo das entrevistas:

  • Identificasse através de características de áudio, os interlocutores a cada momento, com tempo de inicio e de fim;
  • Soltasse esses dados para que eu pudesse analisar em ferramenta de Data Viz — chamam também de BI;
  • Cortasse o vídeo de cada entrevista e separasse, para cada interlocutor, os pedaços que lhe haviam sido atribuídos;

Identificados os interlocutores, só precisaria de um input meu então para identificá-los com nomes e gerar automaticamente dados personificados.

Análise

Antes de começar a processar os vídeos, precisei manualmente cortá-los para a duração da entrevista. Considerei desde o momento que o relógio do JN começa a contar até o tempo em que o candidato finaliza suas últimas palavras ao Eleitor, que é também o momento em que o relógio para de contar.

Sem algoritmo nem nada, vamos às informações. Começando pelo tempo total em segundos.

A variação máxima foi de ~2 minutos entre Ciro Gomes, que teve menor tempo total e Fernando Haddad, que teve maior tempo total. Isso é compreensível dada a natureza das entrevistas, ao vivo, longas e onde os candidatos e entrevistadores têm muito conteúdo a passar.

Querem ver detalhes?

Calma, tem muita informação aí. É bom a gente isolar para poder tirar alguns insights interessantes.

Note, no entanto, que essas sequências foram geradas por software então o tempo total de fala, se somado, dará menor que o tempo total da entrevista, por conta de pequenos intervalos de silêncio entre uma frase e outra ou na passagem da palavra de um interlocutor ao outro.

Outro aspecto a se observar das análises, é que marcamos como DEBATE, momentos em que as falas são predominantemente sobrepostas ou de intensa discussão.

Tempo de fala entre os entrevistadores

Nota-se que o Bonner, talvez por ser editor chefe do Jornal Nacional, indaga mais que a sua colega Renata, esta que falou mais na entrevista com o candidato Geraldo Alckmin e menos quando entrevistou a candidata Marina Silva.

Candidatos, discussões e entrevistadores

A partir dessa análise nota-se que Ciro Gomes, mesmo com tempo total de entrevista muito próximo aos demais, terminou tendo menos tempo de fala isolada do que seus concorrentes. Além de ter havido maior participação de William Bonner em sua entrevista, teve também maior ocorrência de falas sobrepostas e discussões.

Na outra ponta, Marina conseguiu falar por bem mais tempo com menor discussão e interrupções.

Foi impressionante também a quantidade de falas sobrepostas e discussões na entrevista de Fernando Haddad.

Gênero

Esse donut mostra o somatório dos tempos de fala de todas as entrevistas, agrupado por gênero.

Com F para feminino, M para masculino e U para sobreposições e discussões, nota-se a participação majoritária masculina.

Note-se que esta é uma mera observação e não subsidia nenhum ponto de vista ideológico.

Conclusão

Meu objetivo com essa iniciativa, era somente fazer uma pequena prova-conceito do que dá pra fazer com análise de áudio. Daria para ir bem mais longe e implementar speech-to-text para fazer, tanto tags-cloud quanto análise de texto usando NLP — e extrair sentimento, por exemplo.

Mas paro por aqui compartilhando com vocês a ferramenta construída — Parlezy:

> https://github.com/oncase/parlezy

Ela é baseada na lib LIUM Speaker Diarization. Essa biblioteca tem uma série de ferramentas para que se treine melhor os modelos de interlocutores para que a identificação seja fina. Eu utilizei métodos prontos — que já foram ótimos — para fazer a clusterização e o Parlezy possui outras ferramentas para identificar segmentos que tenham ficado em branco.

Utilizei também o Pentaho Data Integration para poder orquestrar o Parlezy. A ferramenta lê, de uma pasta, os arquivos de mídia (mp4, m4v, mov, …) e para cada arquivo (entrevista completa), gera dados e os clusters em pastas com os respectivos trechos em vídeo já cortados, para identificação.

Daí, outro processo que também roda no Pentaho Data Integration, pega os novos dados identificados e publica:

  • Arquivo de timeline com aquela segmentação por entrevista e por interleocutor;
  • Arquivo CSV para utilizar em plataformas de dados;
  • Metadados para o Pentaho Server.

Os gráficos aqui foram gerados a partir da timeline do Parlezy e que usa d3-timeline, também foram utilizados Pentaho Analyzer e Apache Superset.

E vocês? Conseguiram ver nos gráficos algo que eu não comentei? Tem alguma visão, com esses dados, que gostariam de ver? Seguimos adiante com speech-to-text?

--

--