Giter Club home page Giter Club logo

analise_sentimento_minfra's Introduction

Design-sem-nome

GitHub repo size GitHub language count

Análise de sentimento do MINFRA

Treinamento supervisionado de modelo de Machine Learning de classificação e Análise de Sentimento com base no texto dos comentários dos tweets coletados do perfil institucional do Ministro de Infraestrutura no Twitter, a fim de auxiliar na tomada de decisão.

Etapas do projeto

O projeto ainda está em desenvolvimento e as próximas atualizações serão voltadas nas seguintes tarefas:

  • Análise exploratória dos dados
  • Limpeza e preparação dos dados
  • Treinamento e teste cego de modelos de classificação
  • Otimização de hiperparâmetros
  • Avaliação e interpretação dos resultados
  • Apresentação para a área de negócio
  • Implantação do modelo em produção

💻 Pré-requisitos do sistema

  • Máquina com sistema operacional <Windows / Linux / Mac>;
  • Ambiente de desenvolvimento <Google Colaboratory> <Jupyter Notebook>;
  • Linguagem de programação<Python>.

☕ Descrição do problema

O Ministério da Infraestrutura tem como visão tornar o Brasil líder em infraestrutura de transportes na América Latina e para isso é preciso “mensurar” o quão perto isso está de acontecer. Uma das formas de se fazer isso, seria utilizar os dados do Twitter analisando o que os cidadãos têm falado sobre as rodovias brasileiras, por exemplo.

No entanto, analisar os dados de maneira manual e classificar os tweets nas classes positivo, negativo ou questionamento é uma tarefa custosa, complexa e passível de erro humano ou subjetividade.

🚀 Descrição da solução de IA

Treinamento supervisionado de modelo de Machine Learning de classificação e Análise de Sentimento com base no texto dos comentários dos twitters coletados do perfil institucional do Ministro de Infraestrutura no Twitter.>

📫 Fonte dos dados

As bases de dados utilizadas são abertas e não possuem dados sigilosos.

  1. Banco de dados do MInfra: contém Tweets coletados e classificados manualmente pela área de negócio do MINFRA;
  2. Base de dados do Kaggle com tweets já classificados: para aumento do número da classe 'negativo';
  3. Base de dados complementar:Tweets coletados e classificados manualmente por nós para aumento do número da classe 'questionamento';

🎲 Variáveis independentes

Atributo texto_reply: contém os textos dos comentários do Tweeter.

🎯 Variáveis dependentes

Atributo classificacao: contém as três classes de sentimentos <positivo, negativo ou questionamento>

📚 Bibliotecas utilizadas

  1. Exploração de dados:<Pandas> <Numpy>
  2. Visualização de dados: <Seaborn> <Matplotlib> <Plotly>
  3. Limpeza e Preparação dos dados: <Regex>
  4. Processamento de Linguagem Natural: <NLTK> <Spacy>
  5. Treinamento: Sklearn <Train Test Split, Cross validation>
  6. Modelos de Machine Learning: Sklearn <SGDClassifier, SVC, DecisionTreeClassifier, RandomForestClassifier, MultinomialNB, XGBClassifier>
  7. Otimização de hiperparâmetros: Sklearn <GridSearchCV, Pipeline>
  8. Avaliação dos resultados: Sklearn <F1-score, DummyClassifier, Matriz de Confusão>
  9. Interpretação do modelo: Sklearn <SGDClassifier.coef_> <Eli5>

🙌 Considerações Finais

As redes sociais são, atualmente, grandes fontes de dados capazes de capturar a opinião pública sobre os mais diversos assuntos. Dessa forma, podem contribuir significativamente para o aumento da participação social nas políticas públicas.

Esse projeto buscou mensurar a opinião pública sobre o tema de negócio rodovias, do Ministério de Infraestrutura e avaliar sua aplicabilidade para melhoria da tomada de decisão no âmbito institucional.

Os resultados aferidos pela aplicação da análise de sentimento foram capazes de identificar com precisão satisfatória o número de opiniões positivas, negativas e questionamentos referentes ao tema "rodovias" adotado como objeto de estudo.

Conforme demonstrado pela métrica F1 score, que combina precisão e recall, houve qualidade geral do modelo de **80% **que indica a possibilidade de aplicação em produção, inclusive em conjunto de dados desbalanceados.

Segue abaixo, demais considerações sobre o modelo desenvolvido:

📈 Benefícios para o Negócio

  1. Extração de insights, que permitem ao gestor atuar de forma proativa e redefinir estratégias de ação (cidadão como parceiro e coprodutor de políticas públicas):

    • Reclamações sobre o preço dos pedágios;
    • Questionamento sobre duplicação de trechos rodoviários e BR470;
  2. Entendimento de como os clientes enxergam o negócio (cidadão como sensor e não apenas alvo de informações do governo):

    • Verificou-se uma maior quantidade de comentários positivos em relação aos negativos e questionamentos, no período apurado.
  3. Visão abrangente e próximo do tempo real do feedback dos usuários em todo território nacional.

📉 Pontos de melhoria

  1. A biblioteca utilizada no processo de lematização não funciona tão bem com palavras em português;
  2. Melhoria do processo de limpeza, que é custoso;
  3. Melhoraria e padronização do processo de coleta:
    • foram perdidos os emojis durante a coleta?
    • houve moderação?
    • classificação enviesada por ter sido feita apenas por uma pessoa?
  4. Nova coleta de tweets negativos e questionamento pela área de negócio;
  5. Utilização de modelo pré-treinado, como o BERT, seria mais eficiente?
  6. Utilização de técnicas de deep learning;
  7. Aplicar técnicas capazes de melhorar a precisão da classificação automatizada em textos com alta carga de ironia e ambiguidade.

🤝 Colaboradores

Agradecemos às seguintes pessoas que contribuíram para este projeto:

Foto do Edmundo no GitHub
Francisco Edmundo Andrade
Liliane Vieira Lopes
Liliane Vieira Lopes
Foto da Marcela
Marcela Gomes Corrêa
Foto do Iuri Silva no GitHub
Priscilla A. S. Rodrigues
Foto do Jose Renato Borelli no linkedin
Jose Renato Borelli

📝 Licença

Esse projeto está sob licença Creative Commons. Veja o arquivo LICENÇA para mais detalhes.

⬆ Voltar ao topo

Realiza-o

analise_sentimento_minfra's People

Contributors

marcelagomescorrea avatar vlopesliliane avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.