$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
데이터 출처 및 윤리 진술서
이 회고적 연구는 PhysioNet에 호스팅된 공개된 식별 해제 중환자 EHR 데이터베이스인 MIMIC-IV(버전 3.1)의 데이터를 사용했습니다. 데이터베이스에는 인구통계 정보, 활력 징후, 실험실 검사, 진단, 시술, 약물 정보가 포함되어 있습니다.
MIMIC-IV에 접근하려면 자격 인증이 필요하며, PhysioNet 데이터 사용 계약 및 교육 요건 준수가 필요합니다. 조사관들은 필요한 교육을 완료하고 접근 권한을 부여받았습니다(증명서 번호: 68351548). 데이터베이스가 비식별화되어 있기 때문에, 이 연구는 익명화된 데이터를 분석했으며 환자와의 직접적인 접촉은 포함하지 않았습니다; 따라서 사전 동의는 필요하지 않았습니다. 완전한 단계별 실행 파일 모델링 워크플로우는 그림 1에 나와 있습니다.

그림 1. 당뇨병 환자의 골다공증(OP) 위험 예측을 위한 전반적인 모델링 워크플로우. 연구 파이프라인의 도식적 표현으로, 코호트 식별, 데이터 추출, 특징 공학, 다중 모델 벤치마킹, 검증 성과에 기반한 모델 선택, 그리고 최종 모델의 SHAP 기반 해석 가능성. 이 그림의 더 큰 버전을 보시려면 여기를 클릭해 주세요.
연구 인구 및 데이터 추출
데이터는 데이터베이스 관리 도구를 사용하여 중환자실 IV용 의료 정보 마트(MIMIC-IV) 데이터베이스에서 추출되었습니다. 재현성을 보장하기 위해, 코호트 검색에 사용되는 테이블 이름과 필터링 논리를 포함한 정확한 SQL 쿼리가 보조 파일 1에 제공됩니다. 성인 환자(≥18세)가 당뇨병 진단을 받았을 때 ICD-9 코드(249, 250)와 ICD-10 코드(E08–E13)를 사용하여 확인되었습니다. 주요 결과 OP는 ICD-9 코드(733.x)와 ICD-10 코드(M80, M81, M82)를 사용하여 정의되었습니다. 초기 적격 당뇨병 코호트(n = 46,226) 내에서 3,672건의 양성 사건(OP 환자)과 42,554건의 음성 사건(OP 없는 환자)이 확인되었습니다. 상세한 환자 선택 및 이탈 흐름도는 그림 2에 제시되어 있습니다.

그림 2. 환자 선발 및 코호트 구성 과정도. 이 흐름도는 MIMIC-IV (v3.1) 데이터베이스에서 단계별 코호트 도출을 보여줍니다. 성인 당뇨병 환자는 ICD 코드를 사용하여 확인되었고, 나이와 lt; 18년, 중요한 데이터 누락 & gt; 30% 또는 무효 기록. 최종 코호트는 OP(긍정적 사건)와 비OP(부정적 사건)로 나뉘었습니다. 클래스 불균형은 무작위 과반표본 추출과 SMOTE를 적용하여 계층화된 데이터셋 분할 전에 훈련 데이터에 적용하여 해결하였습니다. 이 그림의 더 큰 버전을 보시려면 여기를 클릭해 주세요.
특징 공학
여러 ML 알고리즘 간의 공정한 벤치마킹과 정확한 재현성을 보장하기 위해, 특징 선택, 누락값 보정, 연속적 특징 확장, 클래스 밸런싱, 데이터셋 분할 등 동일한 전처리 단계가 적용되었습니다. 변수 이름, 단위, 데이터 소스 등 입력 특징의 전체 목록은 표 1에 자세히 나와 있습니다.
| 특징 | 총 (n = 14,688) | 훈련 세트 (n = 9,546) | 검증 집합 (n = 2,204) | 테스트 세트 (n = 2,938) | P 값 |
| 성별 | | | | | 0.345 |
| 남성 | 6222 (42.36%) | 4045 (42.37%) | 935 (42.42%) | 1242 (42.27%) | |
| 여성 | 8466 (57.64%) | 5501 (57.63%) | 1269 (57.58%) | 1696 (57.73%) | |
| 연식 | 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 |
| 적혈구 | −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 |
| 헤마토크릿 | −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 |
| 헤모글로빈 | −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 |
| 인산염 | −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 |
| 마그네슘 | −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 |
| 백혈구 | −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 |
| 음이온 갭 | −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 |
| 크레아티닌 | −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 |
| 혈소판 수치 | −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 |
| 염화물 | 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 |
| 칼륨 | −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 |
| 나트륨 | 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 |
| 요소 질소 | −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 |
| 총 칼슘 | 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 |
표 1. 연구 코호트의 기초 특성과 조작된 특징. 범주별 변수는 n(%)로 표현됩니다. 연속 변수는 표준화된 값의 중앙값(4분위 범위)으로 제시됩니다. 적절한 통계 검정을 사용하여 훈련, 검증, 테스트 세트 전반의 분포를 비교하기 위해 P 값을 계산하였습니다.
반복 측정이 이루어진 연속 변수들은 전체 ICU 입원 관찰 창 내 산술 평균을 사용하여 환자당 단일 특징 벡터를 산출했습니다. 결손률이 30%를 초과하는 변수는 제외하였다. 나머지 수치 변수들은 K-최근접 이웃(KNN) 알고리즘(n_neighbors = 5, 가중치 = '균일')을 사용하여 누락값을 추정했습니다. 범주 변수는 가장 빈번한 범주를 사용하여 추정하고, 이후 이진 매핑을 통해 변환되었으며, 보이지 않는 범주에는 0의 벡터가 할당되었습니다.
연속 변수들은 z-점수 척도 공식()을 사용하여 표준화되었습니다. 분산이 0인 특징은 스케일링 전에 명시적으로 제거되었습니다. 모든 전처리 매개변수(μ와 σ)는 훈련 세트에서만 엄격히 추정되었으며, 검증 및 테스트 세트에 일관되게 적용되었습니다.
심각한 클래스 불균형(3,672명 대 42,554명)을 고려하여, 성과 추정치를 부풀리지 않기 위해 훈련 데이터에만 하이브리드 밸런싱 전략이 적용되었습니다. 첫째, 무작위 언더샘플링을 사용해 다수의 음수 범주를 줄여 1:2(양성:음성) 비율을 달성했으며(7,344개의 음수 샘플을 얻음), 다음으로, 합성 소수자 과잉 샘플링 기법(SMOTE)을 양수 등급에 적용하여 최종 1:1 균형 비율(7,344 대 7,344)을 달성했습니다.
마지막으로, 코호트는 환자 수준에서 훈련(65%), 검증(15%), 그리고 층화 표본추출을 사용한 검사(20%)로 나누었습니다. 보석, 균형, 분할 전반에 걸쳐 모든 무작위 과정을 엄격히 통제하기 위해 전역 무작위 시드(random_state = 42)가 시행되었습니다.
모델 아키텍처
당뇨병 환자의 OP 위험에 가장 적합한 예측 모델을 찾기 위해, 대규모 벤치마킹 프레임워크를 사용하여 동일한 데이터 표현 및 평가 프로토콜 하에서 70개의 ML 알고리즘 변이를 비교하였습니다. 후보 모델 계열에는 정규화된 선형 분류기, 지지 벡터 기계(SVM), kNN, 트리 앙상블, 그라디언트 부스트 아키텍처, 그리고 다층 지각론 9,10,11,12,13,14,15,16,17 등이 포함되었습니다.
전통적인 격자 탐색 대신, 이 70개 모델 변형 학습 분할에서 미리 정의된 견고한 구성을 평가하여 하이퍼파라미터 최적화가 수행되었습니다. 선택은 검증 세트에서 수신기 작동 특성(ROC) 곡선(AUC) 아래 면적을 최대화하는 데 엄격히 기반했습니다. 최종 최고 성능의 모델은 n_estimators = 200으로 구성되었으며, 다른 매개변수들은 재료표에 나열된 소프트웨어 패키지의 기본 설정으로 유지되었습니다. AUC, 정확도, F1 점수, 정밀도, 회상 등 평가 지표는 기본 0.5 확률 임계값을 사용하여 계산되었습니다.
임상 투명성을 지원하기 위해 TreeExplainer 방법을 사용하여 선택된 모델에 SHAP이 적용되었습니다. 최종 모델의 트리 기반 특성상, 정확한 트리 경로 의존 기대값이 배경 구성으로 사용되었습니다.