Apresentação do projeto final do Bootcamp de Data Science Aplicada 2 da Alura - Plataforma do Bootcamp
Bem vindo ao projeto final de conclusão do Bootcamp de Data Science Aplicada, segunda turma, by Alura!
Nesse projeto trabalharemos com informações do Hospital Sírio Libanês (HSL) – São Paulo/Brasília - com o objetivo de prever quais pacientes precisarão ser admitidos na unidade de terapia intensiva (UTI) e assim, definir qual a necessidade de leitos de UTI do hospital, a partir dos dados clínicos individuais disponíveis. Definindo a quantidade de leitos necessários em um determinado hospital, é possível evitar rupturas, visto que, caso outra pessoa procure ajuda e eventualmente precise de cuidados intensivos, o modelo preditivo já conseguirá detectar essa necessidade e, desta forma, a remoção e transferência deste paciente pode ser organizada antecipadamente.
As informações para o desenvolvimento desse projeto foram disponibilizadas no repositório do Kaggle. Nela, encontramos diversos tipos de informações que foram separadas em 4 grupos:
- Informação demográfica - 3 variáveis
- Doenças pré-existentes - 9 variáveis
- Resultados do exame de sangue - 36 variáveis
- Sinais vitais - 6 variáveis
Serão aplicados as técnicas de obtenção, limpeza e tratamento dos dados buscando deixar as informações mais significativas para a análise, e esse tratamento pode ser visualizado no notebook projeto_final_tratamento_dados.ipynb.
A pandemia de covid-19 sobrecarregou o Sistema de Saúde Brasileiro, afetando principalmente a disponibilidade de leitos de UTI. É evidente que a obtenção de dados precisos é necessária para evitar colapsos e a sobrecarga dos hospitais, já que muitos estiveram com leitos de UTIs lotados. Com base nesses dados, será possível prever o que acontecerá com os próximos pacientes.
O problema proposto envolve duas tarefas (conforme descrito no site Kaggle):
Tarefa 01
Prever admissão na UTI de casos confirmados de COVID-19. Com base nos dados disponíveis, é viável prever quais pacientes precisarão de suporte em unidade de terapia intensiva? O objetivo é fornecer aos hospitais terciários e quaternários a resposta mais precisa, para que os recursos da UTI possam ser arranjados ou a transferência do paciente possa ser agendada.
Tarefa 02
Prever NÃO admissão à UTI de casos COVID-19 confirmados. Com base nos dados disponíveis, é possível prever quais pacientes precisarão de suporte de unidade de terapia intensiva? O objetivo é fornecer aos hospitais locais e temporários uma resposta boa o suficiente, para que os médicos de linha de frente possam dar alta com segurança e acompanhar remotamente esses pacientes.
Serão aplicados modelos de Machine Learning para o problema de Classificação Binária (a UTI é necessária? Sim ou não) proposto pelo Hospital Sírio Libanês. Formalmente o Machine Learning é definido como:
Aprendizado de máquina é definido por um sistema computacional que busca realizar uma tarefa T, aprendendo a partir de uma experiência E, procurando melhorar uma performance P.
Como os dados utilizados para treinar nosso modelo contém a resposta desejada, será aplicado o Aprendizado Supervisionado. Os modelos mais conhecidas são Regressão Linear, Regressão Logística, Redes Neurais Artificiais, Máquina de Suporte Vetorial (ou máquinas kernel), Árvores de Decisão, K-Vizinhos mais próximos e Bayes ingênuo.
Para tal, um array com alguns modelos de Machine Learning foi utilizado e foi aplicado os conceitos apresentados nas aulas, clonando e ajustando o código python que foi encontrado nas pesquisas necessárias para a conclusão desse projeto.
O projeto está organizado da seguinte forma:
- A análise principal está no arquivo Bootcamp_DataScience_projeto_final.ipynb
- O arquivo projeto_final_hiperparametros.ipynb contém os teste de hiperparâmetros dos modelos e foi separado da análise principal pois requer tempo de processamento
- O arquivo projeto_final_tratamento_dados.ipynb faz o tratamento dos dados originais fornecido pelo HSL
- o arquivo funcoes.py tem o código fonte das funções utilizadas pelos 3 notebooks deixando-os mais claros.
- pasta
dados
contém as planilhas utilizadas, uma cópia do dataFrame resultante do processamento de otimização (arquivos: dfmodelosHP) e o nosso modelo salvo (modelo_hsl) - pasta
img
contém as imagens utilizadas no projeto
- Hospital Sírio-Libanês
- Kaggle - COVID-19 - Clinical Data to assess diagnosis - Sírio Libanês
- Pandas
- SciKit Learn
- Os Três Tipos de Aprendizado de Máquina
- Enriched Lightgbm | PR 86% - notebook
- PedroHCAlmeida - notebook
- willianrocha (notebook)
- Configurar o treinamento do AutoML com Python
- Avaliando os resultados do experimento de machine learning automatizado
- Matriz de Confusão e AUC ROC
- SciKit Learn - 3.3. Metrics and scoring
- SciKit Learn - Choosing the right estimator