Preditor de taxas de crimes anuais em distritos policiais (DP) da cidade de São Paulo em função de pontos de interesse e características de usuários do Twitter na região do DP
Ferramentas (sklearn) e os modelos
Nossos experimentos foram realizados com as implementações de métodos de regressão da biblioteca scikit-learn da linguagem Python~Pedregosa et al., 2011.
Os métodos de aprendizado de máquina utilizados são:
- Floresta Aleatória (FA)
- Support Vector Regression (SVR)
- Gradient Boosting Regressor (GBR)
- K-Nearest Neighbors (KNN)~Drucker et al., 1997, Breiman, 2001.
Para predizer a categoria de crime em uma região alvo
-
Importação de Bibliotecas: Importa bibliotecas necessárias, como pandas, numpy, matplotlib, e vários modelos de machine learning do scikit-learn.
-
Leitura de Dados: Lê dois conjuntos de dados: "dataset_features_users_POIs.csv" e "dataset_soma_ocorr_2022.csv". Realiza algumas operações de pré-processamento nos dados.
-
Random Forest: Utiliza o modelo RandomForestRegressor para prever as ocorrências criminais usando as características fornecidas em "dataset_features_users_POIs.csv". Usa a técnica de validação cruzada Leave-One-Out (LOO) para avaliar o desempenho do modelo.
-
Support Vector Machine Utiliza o modelo Support Vector Machine (SVM) com kernel linear para prever as ocorrências criminais. Adiciona características de usuários ao conjunto de dados. Usa LOO para validação cruzada.
-
Gradient Boosting Regressor: Utiliza o modelo Gradient Boosting Regressor para prever as ocorrências criminais usando as características fornecidas em "dataset_features_users_POIs.csv". Usa LOO para validação cruzada.
-
K-Nearest Neighbors: Utiliza o modelo K-Nearest Neighbors (KNN) para prever as ocorrências criminais usando as características fornecidas em "dataset_features_users_POIs.csv". Usa LOO para validação cruzada.
-
Salvando Resultados: Salva as métricas de desempenho, importâncias de características e erros em arquivos CSV.
-
Resumo de Métricas: Calcula métricas como RAE (Relative Absolute Error), MAE (Mean Absolute Error) e R2 (R-squared) para avaliar o desempenho dos modelos em cada tipo de ocorrência.
-
Salvando Resultados: Salva as métricas em arquivos CSV.
-
Observações
- Certifique-se de ter o ambiente apropriado configurado com as bibliotecas necessárias.
- Certifique-se de que os conjuntos de dados "Datasets/dataset_features_users_POIs.csv" e "dataset_soma_ocorr_2022.csv" estejam disponíveis no mesmo diretório ou no Google Drive conforme esperado.
- Execute o código em um ambiente Python, como Jupyter Notebook ou Google Colab para ter mais flexibilidade nas execuções ou se preferir pode usar o arquivo "models.py".
- Pode também executar apenas o modelo especifico no diretorio Codes/