Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/paulo-santos-ds/analise_de_sentimentos_em_criticas_de_filmes
Este projeto visa desenvolver um sistema para filtrar e categorizar resenhas de filmes
https://github.com/paulo-santos-ds/analise_de_sentimentos_em_criticas_de_filmes
lgbm math matplotlib nltk pandas python re sklearn spacy torch
Last synced: about 1 month ago
JSON representation
Este projeto visa desenvolver um sistema para filtrar e categorizar resenhas de filmes
- Host: GitHub
- URL: https://github.com/paulo-santos-ds/analise_de_sentimentos_em_criticas_de_filmes
- Owner: paulo-santos-ds
- Created: 2024-11-20T15:08:50.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-20T15:45:51.000Z (about 1 month ago)
- Last Synced: 2024-11-20T16:30:35.691Z (about 1 month ago)
- Topics: lgbm, math, matplotlib, nltk, pandas, python, re, sklearn, spacy, torch
- Language: Jupyter Notebook
- Homepage:
- Size: 24.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Análise de Sentimentos em Críticas de Filmes
## 📋 Descrição do Projeto
Este projeto visa desenvolver um sistema para filtrar e categorizar resenhas de filmes. O objetivo é treinar um modelo de Aprendizado de Máquina para detectar automaticamente resenhas negativas, utilizando um conjunto de dados de resenhas de filmes do IMDB com rotulagem de polaridade (positiva ou negativa).## 📊 Estrutura dos Dados
O conjunto de dados possui os seguintes campos:- `tcost`: Total cost (não presente nos dados fornecidos)
- `title_type`: Tipo do título
- `primary_title`: Título principal
- `original_title`: Título original
- `start_year`: Ano de início
- `end_year`: Ano de término
- `runtime_minutes`: Duração em minutos
- `is_adult`: Indicação se é conteúdo adulto
- `genres`: Gêneros
- `average_rating`: Avaliação média
- `votes`: Número de votos
- `review`: Revisão
- `rating`: Classificação
- `sp`: Não definido
- `pos`: Posição
- `ds_part`: Não definido
- `idx`: Índice## 🛠️ Ferramentas e Bibliotecas Utilizadas
- **Python**: Linguagem principal utilizada para a análise.
- **Pandas** e **Numpy**: Bibliotecas para manipulação e análise de dados.
- **Sklearn** e **lightgbm**: Bibliotecas para construção de modelos de Machine Learning.
- **Matplotlib.pyplot** e **Seaborn**: Bibliotecas para construção de gráficos.
- **re**: Biblioteca para trabalhar com expressões regulares.
- **spacy**: Biblioteca de software de código aberto para processamento avançado de linguagem natural.## 🔍 Metodologia
1. **Análise Exploratória de Dados**:
- Importação das bibliotecas necessárias
- Carregamento e visualização dos dados
- Análise de dados ausentes e duplicados2. **Análises**:
- Número de filmes e resenhas ao longo dos anos
- Distribuição do número de resenhas por filme
- Distribuição de resenhas negativas e positivas ao longo dos anos3. **Predição**:
- Criação de uma função para treinar, testar e avaliar modelos de Machine Learning
- Normalização de textos
- Teste de modelos: Dummy, NLTK + TF-IDF + Regressão Linear, spaCy + TF-IDF + Regressão Linear, spaCy + TF-IDF + LGBMClassifier4. **Aplicação dos Modelos**:
- Análise de novas resenhas de filmes usando os modelos treinados## Resultados
O modelo NLTK + TF-IDF + Regressão Linear apresentou os melhores resultados, com métricas superiores aos demais modelos testados, como F1-score, APS e ROC AUC.## 📈 Aprendizados
- Análise exploratória de dados
- Preparação de dados para Machine Learning
- Construção e aplicação de funções
- Trabalho com textos (expressões regulares, vetorização, tokenização, lematização)
- Análise de sentimentos de textos
- Aplicação de modelos de Machine Learning
- Documentação de projetos
- Utilização de bibliotecas e ferramentas do ecossistema Python
- Tomada de decisões baseada em dados## 🚀 Como Usar
1. Clone o repositório
```bash
https://github.com/paulo-santos-ds/analise_de_sentimentos_em_criticas_de_filmes
```2. Extrair o arquivo (imdb_reviews.zip)
3. Instale as dependências
```bash
pip install -r requirements.txt
```4. Execute o notebook principal
```bash
analise_de_sentimentos_em_criticas_de_filmes.ipynb
```