O crescimento acelerado da internet tem vindo acompanhado de um aumento nas diversas formas de discriminação, enquanto as medidas de fiscalização não avançam na mesma velocidade. Isso tem gerado consequências graves, como assassinatos, atentados, desigualdade social e até suicídios.
Para mitigar esses problemas, é essencial criar novas formas de supervisão que auxiliem tanto o Estado quanto instituições privadas na observação e combate ao racismo nos ambientes digitais.
Atendendo a essa demanda, este projeto propõe o desenvolvimento de uma ferramenta capaz de obter, analisar e organizar dados sobre discriminação racial nas redes sociais, abrangendo desde microagressões até manifestações explícitas de ódio. O objetivo é facilitar pesquisas acadêmicas e a vigilância de casos, oferecendo subsídios para a atuação de órgãos competentes.
Objetivos
Objetivo Geral
Rastrear e evidenciar casos de racismo nas redes sociais, em suas diferentes formas, contribuindo para a fiscalização por órgãos responsáveis e para a produção de dados de apoio a pesquisas acadêmicas.
Objetivos Específicos
-
Analisar comentários das redes sociais
Coletar, filtrar e classificar comentários públicos, identificando padrões linguísticos e comportamentais associados à injúria racial e ao discurso de ódio. -
Gerar relatórios com os dados analisados
Criar mecanismos automatizados para apresentar estatísticas, termos racistas mais recorrentes, redes sociais de maior incidência e perfis de conteúdo críticos, permitindo interpretações quantitativas e qualitativas. -
Desenvolver uma aplicação desktop amigável
Projetar e implementar uma interface gráfica intuitiva, que permita visualizar dados, filtrar informações, gerar relatórios e exportar resultados com facilidade.
O Desenvolvimento
O software será construído em três frentes principais: aplicação desktop, servidor e modelo de inteligência artificial. A gestão do projeto seguirá a metodologia ágil Scrum, escolhida por permitir melhor organização do tempo, do trabalho em equipe e das entregas, garantindo maior adaptabilidade durante o desenvolvimento.
A aplicação desktop será desenvolvida com o framework Tauri, que possibilita criar aplicações leves, rápidas e seguras. Ele utiliza Rust no back-end, garantindo alto desempenho e segurança no gerenciamento de memória, e adota um front-end agnóstico, permitindo o uso de tecnologias como React, Vue ou Svelte. Uma das principais vantagens do Tauri em relação a soluções como o Electron é o tamanho reduzido dos executáveis, sem abrir mão da compatibilidade multiplataforma, abrangendo sistemas como Windows e Linux. Além disso, a interface gráfica será renderizada via WebView nativo do sistema, o que facilita a integração com aplicações web existentes e oferece maior performance.
O back-end será composto por dois elementos centrais: a API principal e os coletores de dados. A API funcionará como um gateway, intermediando a comunicação entre o cliente e os serviços internos, e será desenvolvida em Python. Essa camada será responsável tanto pelo servidor HTTP quanto pela integração com o banco de dados, além de realizar as chamadas ao modelo de classificação. Já os coletores terão a função de buscar dados em redes sociais, utilizando APIs oficiais ou técnicas de Web Scraping quando necessário. Após coletados, os conteúdos serão enviados a uma fila de processamento para, então, passarem pela classificação do modelo de inteligência artificial.

Para a classificação de casos de injúria racial, foi realizado um fine-tuning do BERTimbau, um modelo pré-treinado voltado ao português e baseado no BERT. Esse ajuste fino adapta o modelo a uma tarefa específica, utilizando um conjunto de dados direcionado, que contém registros de discurso de ódio, com ênfase em casos de racismo, possibilitando que a IA diferencie comentários com e sem conteúdo discriminatório.
A seguir, apresentamos as métricas iniciais obtidas pelo modelo, que ajudam a entender sua precisão e capacidade de identificação correta.

A matriz de confusão revela a quantidade de classificações corretas e incorretas para as duas categorias analisadas: “Racista” e “Não Racista”. Observa-se que o modelo tem um bom desempenho geral, com maior acurácia para identificar frases não racistas, mas ainda apresenta alguns erros ao classificar expressões racistas.
| Classe | Precision | Recall | F1-Score | Support |
|---|---|---|---|---|
| Não Racista | 0.86 | 0.95 | 0.90 | 20 |
| Racista | 0.88 | 0.70 | 0.78 | 10 |
| accuracy | — | — | 0.87 | 30 |
| macro avg | 0.87 | 0.82 | 0.84 | 30 |
| weighted avg | 0.87 | 0.87 | 0.86 | 30 |
Para complementar a avaliação, apresentamos a Curva ROC, que mostra a capacidade do modelo em distinguir as duas classes em diferentes limiares de decisão.

A Curva ROC demonstra que o modelo possui uma boa separação entre as classes racistas e não racistas, com a área sob a curva (AUC) indicando desempenho satisfatório, o que reforça a confiança na classificação.
Além disso, a Curva Precision-Recall é especialmente útil para avaliar modelos em cenários com classes desbalanceadas, como o nosso caso.

Essa curva evidencia o equilíbrio entre a precisão e o recall do modelo, mostrando como ele consegue identificar corretamente expressões racistas sem gerar muitos falsos positivos. Um valor médio de 0.7 indica um desempenho razoável, porém há espaço para melhorias visando maior precisão e cobertura.
Por fim, para entender melhor os termos que influenciam as decisões do modelo, geramos uma Nuvem de Palavras com as expressões mais frequentes em cada categoria.

A Nuvem de Palavras revela os padrões linguísticos e termos recorrentes que o modelo considera ao classificar os textos, auxiliando na interpretação dos resultados e no diagnóstico de possíveis vieses.
O gerenciamento do desenvolvimento seguiu os princípios do Scrum, com sprints de duas semanas e planejamento baseado em um MVP, garantindo entregas contínuas e organizadas.
Para análise estratégica do projeto, foi elaborada uma matriz SWOT (FOFA), destacando as Forças, Oportunidades, Fraquezas e Ameaças identificadas pela equipe.

Essa matriz permitiu um mapeamento claro dos aspectos internos e externos que podem impactar o sucesso da solução, contribuindo para a definição de ações focadas em maximizar os pontos fortes e minimizar os riscos.