Skip to content
/ app Public

Análise Robusta de Intervenções para Ansiedade com Técnicas de Tratamento de Dados Ausentes

License

Notifications You must be signed in to change notification settings

serkd/app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Este notebook implementa uma análise abrangente de dados de intervenção para ansiedade utilizando uma abordagem de Mix of Experts (MoE) para explicabilidade, combinada com técnicas robustas para tratamento de dados ausentes. O código é projetado para processar conjuntos de dados relacionados a estudos de intervenção em ansiedade, onde os participantes são divididos em grupos de tratamento diferentes e seus níveis de ansiedade são medidos antes e depois da intervenção.

Funcionalidades Principais

  • Tratamento Robusto de Dados Ausentes: Implementa múltiplos métodos de imputação, com foco principal na imputação iterativa utilizando estimadores Bayesianos.
  • Validação de Dados: Verifica a estrutura, tipos de dados, valores duplicados e intervalos válidos para garantir a integridade dos dados.
  • Análise Estatística Avançada: Inclui bootstrap para estimativa de intervalos de confiança e análise de estatísticas descritivas.
  • Visualizações Informativas: Gera múltiplas visualizações para análise comparativa:
    • Gráficos KDE para distribuições de ansiedade pré e pós-intervenção
    • Gráficos Violin para visualização por grupo
    • Coordenadas Paralelas para trajetórias individuais
    • Hipergrafos para padrões complexos de ansiedade
  • Valores SHAP: Utiliza SHAP (SHapley Additive exPlanations) para interpretabilidade do modelo.
  • Explicabilidade via LLMs: Integra análises de Large Language Models (LLMs) como Grok e Claude para interpretar resultados e gerar insights.

Requisitos Técnicos

O notebook requer as seguintes bibliotecas principais:

  • pandas e numpy para manipulação de dados
  • scikit-learn para imputação e modelagem
  • matplotlib, seaborn e plotly para visualizações
  • networkx para criação de hipergrafos
  • shap para explicabilidade do modelo
  • scipy.stats para análise estatística

Estrutura do Código

O código segue uma estrutura modular com funções bem documentadas:

  1. Funções de Utilidade: Manipulação de diretórios, carregamento e validação de dados.
  2. Tratamento de Dados Ausentes: Métodos de imputação como média, mediana, valor mais frequente, KNN, e imputação iterativa.
  3. Funções de Visualização: Geração de gráficos KDE, violin, coordenadas paralelas e hipergrafos.
  4. Análise Estatística: Bootstrap, cálculo de valores SHAP e estatísticas descritivas.
  5. Geração de Relatórios: Criação de relatórios de insights utilizando múltiplos LLMs.

Fluxo de Execução

O script principal segue um fluxo lógico:

  1. Preparação do diretório de saída
  2. Carregamento e validação dos dados
  3. Tratamento de dados ausentes via imputação iterativa
  4. Codificação one-hot das variáveis categóricas
  5. Escalonamento de dados numéricos
  6. Análise SHAP para interpretabilidade
  7. Geração de múltiplas visualizações
  8. Análise bootstrap para intervalos de confiança
  9. Salvamento do resumo da análise
  10. Geração de relatório de insights utilizando LLMs

Exemplo de Uso

O notebook inclui um pequeno conjunto de dados sintético para demonstração, mas pode ser facilmente adaptado para conjuntos de dados maiores e mais complexos. A análise é executada automaticamente quando o notebook é executado, e todos os resultados são salvos no diretório de saída especificado.

Considerações de Implementação

  • O código está otimizado para o ambiente Google Colab, com suporte para plotly interativo.
  • Incorpora tratamento robusto de erros em todas as funções.
  • As funções de LLM são implementadas como placeholders, permitindo fácil integração com APIs reais.
  • Está configurado para um ambiente visual "dark mode", ideal para apresentações profissionais.

Contribuições e Melhorias Futuras

Possíveis melhorias incluem:

  • Implementação de métodos adicionais de imputação
  • Expansão para análise de dados longitudinais
  • Integração com APIs reais de LLMs
  • Adição de testes estatísticos para comparação de grupos
  • Implementação de visualizações 3D interativas

Autor

Hélio Craveiro Pessoa Júnior

Releases

No releases published

Packages

No packages published