Projeto da Disciplina Validação de modelos de clusterização - INFNET
Professor: Gesiel Rios Lopes
Python 3.13.7 ou superior
Clone o repositório para seu computador e acesse a pasta:
git clone https://github.com/andreiluizpereira/clusterizacao_ii_infnet.git
cd clusterizacao_i_infnetCrie um ambiente virtual:
python -m venv .venvAtive o ambiente virtual:
.venv/Scripts/activateBaixe as dependências do projeto:
pip install -r requirements.txtExecutar o projeto no Jupyter:
jupyter notebook pd.ipynbExecutar o projeto no VSCode:
- Use o atalho Ctrl + Shift + P → digite "Run All" → selecione "Notebook: Run All"
- Ou clique no botão "Run All" (▶▶) na barra superior do notebook
- Ou use Shift + Enter para executar célula por célula
Chegamos na hora de validar nosso conhecimento. As questões teóricas podem ser respondidas em slides ou doc em formato .PDF e devem ser disponibilizadas junto com o código (ver questão 6).
O trabalho está dividido em 4 partes, como você pode observar a seguir.
Para as questões a seguir, você deverá executar códigos em um notebook Jupyter, rodando em ambiente local, certifique-se que:
- Você está rodando em Python 3.9+
- Você está usando um ambiente virtual: Virtualenv ou Anaconda
- Todas as bibliotecas usadas nesse exercícios estão instaladas em um ambiente virtual específico
- Gere um arquivo de requerimentos (requirements.txt) com os pacotes necessários. É necessário se certificar que a versão do pacote está disponibilizada.
- Tire um printscreen do ambiente que será usado rodando em sua máquina.
- Disponibilize os códigos gerados, assim como os artefatos acessórios (requirements.txt) e instruções em um repositório GIT público. (se isso não for feito, o diretório com esses arquivos deverá ser enviado compactado no moodle). Dica: Gere um relatório rico em gráficos que dêem respaldo aos resultados
Para as questões a seguir, usaremos uma base de dados e faremos a análise exploratória dos dados, antes da clusterização.
- Escolha uma base de dados para realizar o trabalho. Essa base será usada em um problema de clusterização.
- Escreva a justificativa para a escolha de dados, dando sua motivação e objetivos.
- Mostre através de gráficos a faixa dinâmica das variáveis que serão usadas nas tarefas de clusterização. Analise os resultados mostrados. O que deve ser feito com os dados antes da etapa de clusterização?
- Realize o pré-processamento adequado dos dados. Descreva os passos necessários.
Para os dados pré-processados da etapa anterior você irá:
- Realizar o agrupamento dos dados, escolhendo o número ótimo de clusters. Para tal, use o índice de silhueta e as técnicas: a. K-Médias b. DBScan
- Com os resultados em mão, descreva o processo de mensuração do índice de silhueta. Mostre o gráfico e justifique o número de clusters escolhidos.
- Compare os dois resultados, aponte as semelhanças e diferenças e interprete.
- Escolha mais duas medidas de validação para comparar com o índice de silhueta e analise os resultados encontrados. Observe, para a escolha, medidas adequadas aos algoritmos.
- Realizando a análise, responda: A silhueta é um o índice indicado para escolher o número de clusters para o algoritmo de DBScan?
- Um determinado problema, apresenta 10 séries temporais distintas. Gostaríamos de agrupá-las em 3 grupos, de acordo com um critério de similaridade, baseado no valor máximo de correlação cruzada entre elas. Descreva em tópicos todos os passos necessários.
- Para o problema da questão anterior, indique qual algoritmo de clusterização você usaria. Justifique.
- Indique um caso de uso para essa solução projetada.
- Sugira outra estratégia para medir a similaridade entre séries temporais. Descreva em tópicos os passos necessários.