$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Fonte de dados e declaração de ética
Este estudo retrospectivo utilizou dados do MIMIC-IV (versão 3.1), um banco de dados público e desidentificado de EHR em cuidados críticos hospedado no PhysioNet. O banco de dados inclui informações demográficas, sinais vitais, exames laboratoriais, diagnósticos, procedimentos e medicamentos.
O acesso ao MIMIC-IV requer autorização credenciada e adesão ao acordo de uso de dados e aos requisitos de treinamento da PhysioNet. Os investigadores completaram o treinamento exigido e receberam acesso (número do certificado: 68351548). Como o banco de dados é desidentificado, este estudo analisou dados anonimizados e não envolveu contato direto com pacientes; portanto, consentimento informado não era necessário. O fluxo de trabalho completo de modelagem executável passo a passo está ilustrado na Figura 1.

Figura 1. Fluxo geral de modelagem para a previsão de risco de osteoporose (OP) em pacientes com diabetes. Representação esquemática do pipeline de estudos, incluindo identificação de coortes, extração de dados, engenharia de características, benchmarking multimodelo, seleção de modelos baseada no desempenho de validação e interpretabilidade do modelo final baseada em SHAP. Por favor, clique aqui para ver uma versão ampliada desta figura.
Estudo da população e extração de dados
Os dados foram extraídos do banco de dados Medical Information Mart for Intensive Care IV (MIMIC-IV) usando uma ferramenta de gerenciamento de banco de dados. Para garantir a reprodutibilidade, as consultas SQL exatas, incluindo nomes de tabelas e lógica de filtragem usada para recuperação de coortes, são fornecidas no Arquivo Suplementar 1. Pacientes adultos (≥18 anos) diagnosticados com diabetes mellitus foram identificados usando códigos CID-9 (249, 250) e códigos CID-10 (E08–E13). O resultado principal, OP, foi definido usando códigos ICD-9 (733.x) e códigos ICD-10 (M80, M81, M82). Dentro da coorte inicial elegível para diabéticos (n = 46.226), foram identificados 3.672 eventos positivos (pacientes com OP) e 42.554 eventos negativos (pacientes sem OP). Um fluxograma detalhado de seleção de pacientes e atrito é apresentado na Figura 2.

Figura 2. Fluxograma da seleção de pacientes e construção de coortes. O fluxograma ilustra a derivação por coorte a passo a passo a partir do banco de dados MIMIC-IV (v3.1). Pacientes adultos com diabetes mellitus foram identificados usando códigos CID, seguidos pela exclusão de pacientes com idade e Tenente; 18 anos, dados críticos desaparecidos e gt; 30%, ou registros inválidos. A coorte final foi dividida em OP (eventos positivos) e não-OP (eventos negativos). O desequilíbrio de classe foi abordado usando subamostragem aleatória e SMOTE aplicado aos dados de treinamento antes da divisão estratificada do conjunto de dados. Por favor, clique aqui para ver uma versão ampliada desta figura.
Engenharia de características
Para garantir benchmarking justo entre múltiplos algoritmos de ML e reprodutibilidade precisa, foi aplicada uma sequência idêntica de etapas de pré-processamento: seleção de características, imputação de valores ausentes, escalonamento contínuo de características, balanceamento de classes e divisão de conjuntos de dados. A lista completa de recursos de entrada, incluindo nomes de variáveis, unidades e fontes de dados, está detalhada na Tabela 1.
| Características | Total (n = 14.688) | Conjunto de treinamento (n = 9.546) | Conjunto de validação (n = 2.204) | Conjunto de testes (n = 2.938) | Valor P |
| Gênero | | | | | 0.345 |
| Masculino | 6222 (42.36%) | 4045 (42.37%) | 935 (42.42%) | 1242 (42.27%) | |
| Feminino | 8466 (57.64%) | 5501 (57.63%) | 1269 (57.58%) | 1696 (57.73%) | |
| Idade | 0,28 (−0,40, 0,94) | 0,28 (−0,43, 0,94) | 0,23 (−0,46, 0,89) | 0,28 (−0,39, 0,95) | 0.1655 |
| Glóbulos Vermelhos | −0,14 (−0,79, 0,49) | −0,13 (−0,79, 0,49) | −0,17 (−0,83, 0,48) | −0,14 (−0,76, 0,49) | 0.3641 |
| Hematócrito | −0,14 (−0,81, 0,52) | −0,13 (−0,80, 0,52) | −0,14 (−0,87, 0,51) | −0,16 (−0,81, 0,52) | 0.3709 |
| Hemoglobina | −0,12 (−0,79, 0,52) | −0,12 (−0,79, 0,51) | −0,15 (−0,86, 0,53) | −0,13 (−0,78, 0,52) | 0.3616 |
| RDW | −0,16 (−0,59, 0,45) | −0,17 (−0,59, 0,46) | −0,14 (−0,59, 0,45) | −0,17 (−0,60, 0,42) | 0.5803 |
| Fosfato | −0,14 (−0,60, 0,38) | −0,15 (−0,61, 0,38) | −0,11 (−0,57, 0,38) | −0,13 (−0,56, 0,34) | 0.415 |
| MCV | 0,05 (−0,50, 0,63) | 0,06 (−0,50, 0,65) | 0,03 (−0,49, 0,65) | 0,02 (−0,50, 0,59) | 0.5408 |
| Magnésio | −0,10 (−0,52, 0,37) | −0,10 (−0,52, 0,37) | −0,10 (−0,52, 0,37) | −0,09 (−0,50, 0,37) | 0.7797 |
| Glóbulos Brancos | −0,16 (−0,47, 0,21) | −0,16 (−0,47, 0,20) | −0,15 (−0,48, 0,25) | −0,16 (−0,46, 0,20) | 0.6856 |
| Lacuna Aniônica | −0,12 (−0,64, 0,45) | −0,13 (−0,64, 0,45) | −0,07 (−0,61, 0,48) | −0,13 (−0,64, 0,45) | 0.1217 |
| Creatinina | −0,30 (−0,48, 0,01) | −0,30 (−0,48, 0,01) | −0,30 (−0,46, 0,01) | −0,30 (−0,48, −0,00) | 0.3323 |
| MCH | 0,11 (−0,48, 0,62) | 0,12 (−0,48, 0,62) | 0,11 (−0,47, 0,62) | 0,09 (−0,48, 0,61) | 0.5195 |
| Contagem de plaquetas | −0,09 (−0,61, 0,49) | −0,09 (−0,61, 0,49) | −0,08 (−0,62, 0,47) | −0,10 (−0,62, 0,48) | 0.9709 |
| MCHC | −0,00 (−0,59, 0,59) | −0,00 (−0,60, 0,59) | −0,00 (−0,57, 0,58) | 0,00 (−0,57, 0,60) | 0.9263 |
| Cloreto | 0,05 (−0,54, 0,64) | 0,05 (−0,52, 0,65) | 0,03 (−0,59, 0,62) | 0,07 (−0,52, 0,62) | 0.4675 |
| Potássio | −0,07 (−0,67, 0,53) | −0,09 (−0,67, 0,53) | −0,07 (−0,67, 0,53) | −0,07 (−0,62, 0,53) | 0.3071 |
| Sódio | 0,05 (−0,56, 0,60) | 0,05 (−0,55, 0,60) | −0,00 (−0,60, 0,60) | 0,07 (−0,57, 0,61) | 0.3492 |
| Nitrogênio de ureia | −0,28 (−0,60, 0,29) | −0,28 (−0,60, 0,29) | −0,26 (−0,59, 0,31) | −0,28 (−0,59, 0,25) | 0.6826 |
| Cálcio Total | 0,02 (−0,61, 0,59) | 0,02 (−0,61, 0,59) | −0,01 (−0,59, 0,56) | 0,01 (−0,61, 0,60) | 0.8203 |
Tabela 1. Características de base e características engenheiradas da coorte do estudo. Variáveis categóricas são apresentadas como n (%). Variáveis contínuas são apresentadas como mediana (intervalo interquartil) dos valores padronizados. Os valores p foram calculados para comparar distribuições entre os conjuntos de treinamento, validação e teste usando testes estatísticos apropriados.
Variáveis contínuas com medições repetidas foram agregadas usando a média aritmética durante toda a janela de observação da UTI para obter um único vetor de característica por paciente. Variáveis com taxa de ausência superior a 30% foram excluídas. Para as variáveis numéricas restantes, os valores ausentes foram imputados usando o algoritmo K-Nearest Neighbors (KNN) (n_neighbors = 5, pesos = 'uniforme'). Variáveis categóricas foram imputadas usando a categoria mais frequente e posteriormente transformadas usando mapeamento binário, com quaisquer categorias não vistas recebendo um vetor de zeros.
Variáveis contínuas foram padronizadas usando a fórmula de escala z-score (). Características com variância zero foram explicitamente removidas antes da escalabilidade. Todos os parâmetros de pré-processamento (μ e σ.) foram estimados estritamente no conjunto de treinamento e aplicados consistentemente aos conjuntos de validação e teste.
Dado o severo desequilíbrio de classes (3.672 vs. 42.554), uma estratégia híbrida de balanceamento foi aplicada exclusivamente aos dados de treinamento para evitar inflacionar as estimativas de desempenho. Primeiro, a subamostragem aleatória foi usada para reduzir a classe majoritariamente negativa, alcançando uma proporção de 1:2 (positivo:negativo) (resultando em 7.344 amostras negativas). Em seguida, a Técnica de Superamostragem de Minorias Sintéticas (SMOTE) foi aplicada à classe positiva para alcançar uma razão equilibrada final de 1:1 (7.344 vs. 7.344)8.
Por fim, a coorte foi dividida no nível do paciente em treinamentos (65%), validação (15%) e testes (20%) usando amostragem estratificada. Para controlar estritamente todos os processos aleatórios através de imputação, balanceamento e divisão, uma semente aleatória global (random_state = 42) foi imposta.
Arquitetura do modelo
Para identificar o modelo preditivo mais adequado para o risco de OP em pacientes com diabetes, foi utilizado um marco de benchmarking em larga escala para comparar 70 variantes do algoritmo ML sob um protocolo idêntico de representação e avaliação de dados. Famílias de modelos candidatos incluíam classificadores lineares regularizados, máquinas de vetores de suporte (SVMs), kNN, conjuntos de árvores, arquiteturas de aumento de gradiente e perceptrons multicamadas 9,10,11,12,13,14,15,16,17.
Em vez de usar uma busca tradicional em grade, a otimização por hiperparâmetros foi realizada avaliando configurações robustas e pré-definidas entre essas 70 variantes do modelo na divisão de treinamento. A seleção foi estritamente baseada na maximização da área sob a curva característica operacional do receptor (AUC) no conjunto de validação. O modelo final de melhor desempenho foi configurado com n_estimators = 200, com outros parâmetros permanecendo nas configurações padrão do pacote de software listadas na Tabela de Materiais. Métricas de avaliação, incluindo AUC, precisão, pontuação F1, precisão e recordação, foram calculadas usando um limiar padrão de probabilidade de 0,5.
Para apoiar a transparência clínica, o SHAP foi aplicado ao modelo selecionado usando o método TreeExplainer. Dada a natureza baseada em árvores do modelo final, valores esperados exatos dependentes do caminho da árvore foram usados como configuração de fundo.