이 프로토콜은 생성적 적대적 네트워크를 이용한 데이터 증강, 통계적 및 메타휴리스틱 기반 특징 선택, 설명 가능한 인공지능을 결합한 심장병 예측용 기계 학습 프레임워크를 설명합니다.
Method Article
이 프로토콜은 생성적 적대적 네트워크를 이용한 데이터 증강, 통계적 및 메타휴리스틱 기반 특징 선택, 설명 가능한 인공지능을 결합한 심장병 예측용 기계 학습 프레임워크를 설명합니다.
심장병은 전 세계적으로 주요 사망 원인 중 하나로, 그 초기 예측이 임상적·계산적으로 중요한 문제입니다. 데이터 부족, 특징 선택, 모델 해석 가능성과 같은 문제를 개별적으로 다룬 연구는 여러 가지가 있지만, 이러한 문제를 시너지 효과로 해결하는 통합 프레임워크를 제안한 연구는 적습니다. 본 논문은 다음을 포함한 포괄적인 예측 프레임워크를 제시합니다: (1) 생성적 적대 네트워크(GAN)를 사용하여 계급 불균형과 데이터 희소성을 해결하고; (2) 웰치의 t-검정과 코헨의 d 효과 크기를 통한 통계적 사전 필터링과 해리스 호크 최적화를 통한 메타휴리스틱 최적화를 결합한 하이브리드 특징 선택 접근법; 그리고 (3) SHAP, 부분 의존성 플롯, 오즈비 등 다양한 설명 가능한 인공지능 기법을 활용합니다. 이 프레임워크는 Cleveland 및 Statlog 데이터셋에서 평가되었으며, 선택된 기저선 및 기존 방법과 비교하여 높은 정확도, F1 점수, ROC-AUC 값을 도출했습니다. 이 모델은 기계 학습 성능과 임상 해석 가능성을 연결하여 심장병 예측을 위한 견고하고 해석 가능한 계산 프레임워크를 제공합니다.
심혈관 질환은 전 세계적으로 이환율과 사망률의 주요 원인 중 하나로, 연간 약 1,790만 명의 사망을 차지하는 것으로 추정됩니다. 심장병의 조기 및 정확한 예측은 시기적절한 개입과 환자 치료 후 개선에 중요합니다. 이와 관련해 머신러닝(ML) 알고리즘을 이용한 심장병 예측은 세 가지 주요 과제에 직면합니다: 고품질 의료 데이터의 제한된 가용성, 중복되거나 관련 없는 변수를 포함하는 고차원 특징 공간, 그리고 임상 신뢰와 채택을 방해할 수 있는 복잡한 모델의 블랙박스 특성2. 최근 연구에서는 머신러닝과 설명 가능한 인공지능(XAI) 방법을 결합해 심장병 예측을 진행했습니다. 많은 연구자들이 심장병 예측과 탐지에도 ML을 사용해 왔습니다. 생성형 인공지능, 특히 생성적 적대적 네트워크(GAN)의 최근 발전은 의료 분야에서의 데이터 증강에 가능성을 제시합니다. 동시에, Harris Hawk 최적화(HHO)와 Particle Swarm Optimization(PSO)과 같은 메타휴리스틱 알고리즘은 특징 선택과 모델 최적화에서 효과가 입증되었습니다. SHAP 및 부분 의존성 플롯(PDP)과 같은 XAI 기법도 복잡한 모델예측을 해석하는 데 중요한 도구로 부상했습니다. 심혈관 위험 예측을 위한 ML 모델에 관한 많은 연구가 수행되었습니다.
하지만 이용 가능한 문헌들은 종종 이러한 문제들을 단독으로 논의합니다. 일부 연구는GANs 9를 이용한 데이터 보강에 초점을 맞추고, 다른 연구들은 메타휴리스틱 알고리즘10 을 이용한 특징 선택이나 XAI 방법11에 기반한 모델 해석 가능성에 초점을 맞추고 있습니다. SMOTE 기반 증강은 심부전 생존 예측을 위해 탐구되었습니다12. KNN 기반 심장질환 진단도 보고된13. 이러한 별도의 접근법은 데이터 희소성, 특징 선택, 모델 학습, 해석 가능성을 함께 다루는 통합 프레임워크를 통해 얻을 수 있는 복합적인 이점을 완전히 활용하지 못합니다.
최근 연구들은 관련 접근법을 탐구해 왔습니다. 2026년 Frontiers in Medicine 연구에서는 심장병 진단을 위한 PAND 삽입과 중앙값 보간을 적용한 PSO 최적화 이기종 분류기를 제안했으며, 병합된 데이터셋에서 91.3%의 정확도를 달성했습니다14. 최근 연구로는 의료 영상 분할을 위한 메타휴리스틱 최적화15, 뇌졸중 예측을 위한 XAI(16), 심장 부정맥 분류를 위한 하이브리드 최적화(17), SHAP을 기반으로 한 임상 의사결정 지원 시스템18을 적용했습니다. 그러나 이들 연구들 중 일부는 생성적 증강, 이중 기준 통계적 특징 선택과 HHO 최적화, 다중 방법 XAI를 단일 통합 프레임워크 내에 결합하는 경우가 거의 없습니다.
본 논문은 데이터 증강, 하이브리드 특징 선택, 모델 최적화 및 훈련, 설명 가능성 분석을 체계적으로 통합한 심장병 예측 프레임워크를 제안하여 이 격차를 해소하는 것을 목표로 합니다. 데이터 증강 단계에서는 GAN을 사용하여 나이, 혈압, 콜레스테롤 수치, 심전도 측정과 같은 환자 특징을 바탕으로 표 형태의 임상 데이터를 합성합니다. GAN은 의료 영상 생성에 널리 사용되지만, 본 연구는 13개의 수치 및 범주 특성을 포함하는 클리블랜드 심장병 데이터셋에 이를 적용하여 제한된 표본 크기(n = 303)와 분류 불균형을 해결하려 합니다. 하이브리드 특징 선택 단계에서는 웰치의 t.-검정과 코헨의 d 효과 크기를 HHO와 결합하여 통계적으로 견고하고 임상적으로 적합한 특징 하위 집합을 식별합니다. 모델 최적화 및 훈련 단계에서 PSO는 인공 신경망의 가중치를 최적화하는 데 사용되며, 로지스틱 회귀 및 랜덤 포레스트 모델은 성능과 설명 가능성의 균형을 위해 훈련됩니다. 설명 가능성 단계에서는 SHAP, PDP, 오즈비 등 보완적인 XAI 기법을 사용하여 전역 및 국소 모델 해석을 제공합니다.
제안된 프레임워크의 전체 워크플로우는 그림 1에 나와 있습니다. 표 1은 제안된 접근법과 기존 특징 선택 방법 간의 주요 차이점을 요약합니다 [표 1은 여기].

그림 1: 제안된 심장병 예측 프레임워크의 개요. 워크플로우는 네 가지 주요 단계로 구성됩니다: (1) 데이터 희소성 문제를 해결하기 위한 GAN을 이용한 데이터 전처리 및 보강; (2) 통계적 필터링(웰치의 t-검정과 코헨의 d)과 해리스 호크 최적화를 결합한 하이브리드 특징 선택; (3) 해석 가능한 분류기(Logistic Regression, Random Forest)와 PSO 최적화 ANN을 이용한 모델 학습; 그리고 (4) SHAP, 부분 의존성 플롯, 오즈비를 이용한 설명 가능성 분석. 약어: GANs = 생성적 적대적 네트워크; PSO = 입자 군집 최적화; ANN = 인공 신경망. 이 그림의 더 큰 버전을 보시려면 여기를 클릭해 주세요.
| 접근 범주 | 통계적 검정(예: t-검정) | 효과 크기 (예: 코헨 d) | 메타휴리스틱 최적화(예: HHO/PSO) | 해석 가능성 초점 |
| 전통적인 통계 | 네 | 드물게 | 아니 | 중도 |
| 순수 최적화 | 아니 | 아니 | 네 | 낮게 |
| 기존 하이브리드 방법 | 가끔 | 드물게 | 네 | 가변 |
| 제안된 프레임워크 | 네 (웰치 t-검정) | 네 (코헨의 D ≥ 0.5) | 예 (HHO) | 하이(XAI 통합) |
표 1: 심장병 예측에서 특징 선택 접근법 비교. 비교된 접근법에는 전통 통계, 순수 최적화, 기존 하이브리드 방법, 그리고 제안된 프레임워크가 포함되며, 통계적 검증, 효과 크기, 메타휴리스틱 최적화, 해석 가능성 집중 등이 포함됩니다.
이 연구의 주요 기여는 다음과 같습니다. 첫째, 데이터 희소성과 클래스 불균형을 해결하기 위해 이진 교차 엔트로피 손실과 아담 최적화가 적용된 표준 GAN과 TensorFlow가 불가할 때 가우시안 섭동 폴백을 구현합니다. 둘째, 특징 중복을 해결하기 위해 V자형 전달 함수를 이용한 통계적 사전 필터링과 HHO를 결합한 하이브리드 특징 선택 전략이 제안됩니다. 이 이중 기준 접근법은 통계적으로 유의미하고 임상적으로 관련된 특징을 선택하는 것을 목표로 합니다. 셋째, 모델 불투명도를 해결하기 위해 SHAP 벌떼 및 폭포 플롯, PDP, 95% 신뢰구간의 오즈비 등 다중 방법 설명 가능성 제품군이 통합되었습니다. 임상 사용자를 위한 간단한 조정 프로토콜이 제공됩니다: PDP가 비선형 추세를 보일 경우, SHAP 설명을 로지스틱 회귀 계수보다 우선시해야 합니다. 넷째, 재현성과 구조화된 검증을 지원하기 위해 이 프레임워크에는 계층화된 교차 검증, 공정성 감사, 절제 연구, MIMIC-III에 대한 외부 검증 프로토콜, 주요 하이퍼파라미터 문서화가 포함됩니다.
Access restricted. Please log in or start a trial to view this content.
윤리 선언문, 데이터셋, 소프트웨어 및 데이터 준비
이 연구 결과는 UCI 머신러닝 저장소의 심장병 데이터셋을 기반으로 하였습니다. 이 자료는 공개적으로 접근 가능하고 식별이 해제된 자료이기 때문에, 윤리위원회의 승인이 필요하지 않았습니다. 저자들은 또한 이 원고의 독창성을 확인하여 이전에 출판되거나 다른 학술지에 제출된 적이 없음을 확인합니다.
클리블랜드 심장병 데이터셋은 훈련 세트와 테스트 세트로 나뉘어 80/20 비율로 나뉘었습니다. 데이터셋은 일반적으로 303개의 인스턴스를 포함하며; 따라서 약 242개의 샘플이 훈련에 사용되었고, 61개의 샘플은 깨끗한 테스트 세트로 보존되었습니다. GAN 또는 가우시안 대체 방법으로 생성된 합성 샘플은 데이터 유출 위험을 줄이기 위해 훈련 데이터에만 추가되었습니다. 최종 증강 학습 세트는 약 242개의 실제 샘플과 1,000개의 합성 샘플로 구성되어 총 1,242개의 훈련 샘플을 제공했습니다. 고정된 정적 검증 세트는 사용되지 않았습니다. 대신, 모델 학습 중에 계층화된 교차 검증이 적용되었으며, 각 폴드가 증강된 학습 데이터를 훈련 및 검증 하위 집합으로 나누었습니다.
데이터셋은 Pandas DataFrame에 로드되어 누락된 값이 있는지 검사했습니다. 누락된 값이 있는 수치 특징은 scikit-learn의 SimpleImputer 클래스를 이용한 전략 = 'medin'을 사용하여 중앙값 보정을 사용해 처리했습니다. 누락된 범주형 특징은 SimpleImputer의 모드 보충법(strategy = 'most_frequent'을 사용해 처리했습니다. 결손 메커니즘은 df.isnull().sum() / len(df)를 사용하여 각 특징의 누락 비율을 계산하여 문서화되었습니다. 비무작위 누락 패턴은 누락된 데이터가 있는 샘플과 없는 샘플 간 다른 특징의 평균값을 비교하여 수치 특징에 대해 t.검정, 범주적 특징에 대해 카이제곱 검정을 사용해 평가하였다. 그 후 결손은 해당 시 완전 실종(Complete Missing at Random, MCAR), Missing at Random(MAR), 또는 Missing Not Missing at Random(MNAR)으로 문서화되었습니다.
상당한 누락이 있는 데이터셋의 경우, 중앙값/모드 보정과 연쇄방정식 다중 보정(MICE)을 비교하여 민감도 분석을 권장하였다. max_iter = 10인 IterativeImputer와 KNN 보철, 판시임푸트를 사용했습니다. k=5인 KNN. 정확도 차이가 0.03 미만이면 보충법12의 견고성을 나타내는 것으로 간주되었습니다. 이 민감도 분석은 Cleveland 데이터셋에서는 누락이 제한적이기 때문에 선택 사항으로 간주되었으나, 5% 이상의 누락이 있는 다른 임상 데이터셋에는 권장되었습니다. missingno 라이브러리를 사용하여 msno.matrix(df)를 이용한 결손 매트릭스 히트맵을 생성하여 결손 패턴도 시각화했습니다. 결손 패턴의 군집화를 통해 누락 값이 체계적으로 공존했는지 확인하였으며, 이는 임상 전문가의 개입이 필요한 MNAR 메커니즘을 시사할 수 있습니다.
수치 특징은 z-점수 정규화를 통해 표준화되었습니다. scikit-learn의 StandardScaler를 훈련 데이터에 적합시킨 후 훈련 및 테스트 세트 모두에 적용했습니다. 범주 변수는 원핫 인코딩으로 인코딩되었습니다. 네 가지 범주로 나뉘는 흉통 유형(cp)은 pandas.get_dummies를 사용해 네 개의 이진 지표 열로 변환되었습니다. 지중해빈혈(탈)은 세 가지 범주로 나뉘며, 세 가지 이진 지표 열로 전환되었습니다. GAN 생성기와 판별기는 원핫 인코딩 전에 원래 데이터셋에 대응하는 13개의 고정된 입출력 차원을 사용했기 때문에, 합성 샘플은 원래 13개 특징 공간에서 생성되어 실제 데이터와 동일한 원-핫 인코딩 파이프라인을 거쳤습니다. 이로 인해 GAN 아키텍처와의 호환성을 유지하면서도 인코딩된 특징을 모델 학습에 사용할 수 있게 되었습니다.
수학적 정의와 품질 지표
프레셰 거리는 실수 및 합성 특징 분포를 비교하는 데 사용되었다. 두 분포 F와 G 사이의 프레셰 거리 Fr(F, G)은 다음과 같이 정의되었다:
Fr2(F,G)=minX,YE|X-Y|2 (1)
여기서 E는 기대값을 나타내며, 최소화는 분포 F와 G를 가지는 모든 확률 변수 X와 Y에 대해 취한다.
메타휴리스틱 최적화 방법으로 Harris Hawk 최적화(HHO)가 사용되었습니다. HHO는 해리스 매20의 협동 사냥 행동에서 영감을 받았습니다. 탐사와 개발 단계 사이의 전환은 탈출 에너지 E에 의해 제어되었다. 탐색 단계에서, 여기서 |E| ≥ 1, 업데이트는 다음과 같이 정의되었습니다:
X(t+1) = X랜드 (t) - r1 | Xrand (t) - 2r2X (t)|
착취 단계에서, 여기서 |E| 1< 업데이트는 탈출 에너지 E = 2E(1 − t/T)와 점프 강도 J = 2(1 − r5)에 의해 결정되었습니다. 부드러운 포위 조건에서, 여기서 ≥ 0.5이고 |E| 0.5≥ 업데이트는 다음과 같이 정의되었습니다:
X(t+1) = ΔX(t) - E|JX토끼 (t) - X(t)|
하드 포위전 조건에서 ≥ 0.5 그리고 |E| 0.5< 업데이트는 다음과 같이 정의되었습니다:
X(t+1) = X토끼 (t) - E|ΔX(t)|
공정성은 Hardt 등(Hardt et al.20 )과 Lima 등(Lima et al.21)에 따라 통계적 평등성과 오류율 균형을 사용하여 평가하였습니다. 인구통계학적 평등 차이, 균등화된 확률 차이, 연령 기반 보정 오차가 공정성 지표로 사용되었습니다.

ΔEO = max(|TPRA - TPRB |,| FPRA - FPRB |)
ΔBS=|BS나이<50 - BS나이>50 |
여기서 BS는 브라이어 점수입니다:

대시보드 해석 가능성은 연합 게임 이론을 사용해 산출된 SHAP 값을 기반으로 했습니다18.

여기서 Φi는 특징 i에 대한 SHAP 귀속을 나타내고, F는 모든 특징의 집합을, 특징 S의 하위 집합에 대한 모델 예측을 나타낸다.
GAN 기반 데이터 증강
데이터 부족과 계급 불균형을 해결하기 위해 생성적 적대 네트워크(GAN)를 사용하여 합성 샘플을 생성했습니다. 생성기 아키텍처는 TensorFlow/Keras로 구성되었습니다. 표준 정규분포 N(0,1)에서 샘플링한 100차원 노이즈 벡터를 받아들인 후, ReLU 활성화를 사용해 128, 256, 512 단위의 밀집 층을 처리했습니다. 출력 계층은 원래 특징 치수에 해당하는 13개의 유닛을 포함했고, 시그모이드 활성화를 사용했습니다.
판별기 아키텍처는 13차원 특징 벡터를 입력으로 받아들였습니다. 이 분석은 512, 256, 128 단위의 조밀한 층으로 구성되었으며, α = 0.2의 LeakyReLU 활성화를 사용했습니다. 출력 계층에는 실제 샘플과 합성 샘플의 이진 분류를 위한 시그모이드 활성화 유닛이 하나 포함되어 있었습니다.
GAN은 64기의 배치 규모를 사용하여 100에포크에 대해 훈련되었습니다. 아담 옵티마이저는 학습률 0.0002, β1 = 0.5, β2 = 0.999로 사용되었습니다. 각 시대마다 판별기는 실제와 합성 배치로 번갈아 훈련받았고, 생성기는 판별기를 속이도록 훈련되었다. 훈련 후에는 1,000개의 무작위 잡음 벡터를 생성기에 입력하여 1,000개의 합성 샘플을 생성했고, 이 샘플들은 훈련 세트에만 추가되었습니다.
모드 붕괴는 GAN 훈련 중 10에포크마다 생성된 100개 샘플 내 각 합성 특징의 분산을 측정하여 모니터링되었습니다. 만약 어떤 특징의 분산이 세 번의 연속 검사에서 해당 실수 분산의 10% 미만으로 떨어지면 모드 붕괴가 의심되었습니다. 완화 전략으로는 학습률을 1× 10⁻4로 줄이거나, 배치 크기를 128로 늘리거나, 다른 가중치 초기화로 훈련을 재시작하거나, Arjovsky 등17이 설명한 대로 표준 GAN을 Wasserstein GAN과 함께 Wässerstein GAN에 그라디언트 페널티(WGAN-GP)로 교체하는 것이 포함되었습니다. 구현은 TensorFlow가 없을 때 합성 데이터 생성을 보장하기 위해 가우시안 섭동 예비 옵션을 가진 표준 GAN을 사용했습니다.
합성 데이터 품질은 실제 및 합성 특징 분포 간의 프레셰 거리를 맞춤 구현을 사용하여 평가되었습니다. 로지스틱 회귀와 같은 분류기도 실수와 합성 샘플을 구분하도록 훈련되었으며; 거의 우연 분류 정확도는 고충실도를 나타내는 것으로 간주되었습니다. 정밀도-회상 AUC가 계산되었으며, 0.9 이상은 좋은 분포 포획을 나타내는 것으로 간주되었습니다. 실제 데이터셋과 합성 데이터셋 내 특징쌍 간 피어슨 상관관계도 비교되었으며, 0.05 미만의 차이는 상관관계 구조의 허용 가능한 보존으로 간주되었습니다.
텐서플로우/케라스가 사용할 수 없거나 GAN 훈련이 실패할 때는 가우시안 섭동 대체 방법이 사용되었습니다. 각 클래스에 대해 각 특징의 평균(μ)과 표준편차(σ)를 훈련 세트에서 계산했습니다. 합성 샘플은 다음과 같이 생성되었습니다:
Xsynthetic = μ + ε × σ × 0.05, 여기서 ε ~ N(0,1)
클래스 라벨은 원래 클래스 분포에 비례하여 생성되었습니다. 이 예비 기능은 딥러닝 의존 없이 환경 간 재현성을 지원하기 위해 포함되었습니다.
하이브리드 특징 선택
2단계 하이브리드 특징 선택 전략이 적용되었습니다. 첫 번째 단계에서는 통계적 사전 필터링이 수행되었습니다. 특징 집합 X의 각 특징 xi에 대해, 값은 이진 결과 변수에 따라 두 그룹으로 나뉘었다: y = 0 시 G0 (질병 없음), 그리고 y = 1 (질병 존재 없음)의 G1. 웰치의 두 표본 t-검정은 equal_var = 거짓인 scipy.stats.ttest_ind을 사용하여 수행되었다. 코헨의 d 효과 크기는 다음과 같이 계산되었다:
d = (평균1 − 평균2) / pooled_std
여기서 다음과 같습니다:
pooled_std = sqrt((std12 + std22)/2)
특징명, p-값, 그리고 코헨의 d 값은 결과 표에 저장되었습니다. 특징은 p-값 < 0.05와 |코헨의 죽음! ≥ 0.5. 그 결과 기능 세트는 Xfiltered로 정의되었습니다.
웰치 t-검정은 나이, 탈라크, 올드피크와 같은 연속적인 수치 특징에 적합하기 때문에 사용되었습니다. 성별과 엑상(exang)과 같은 이진 범주적 특징에 대해, t.-검정은 두 집단을 비교할 때 비율 검정과 유사한 결과를 냅니다. cp와 thal과 같은 다중 범주 특징은 원핫 인코딩되었으며, 각 이진 지표는 결과 변수에 대해 개별적으로 테스트되었습니다. 이 접근법은 클리블랜드 데이터셋이 30개 이상의 샘플을 포함하고, 분석 전에 특징이 표준화되었으며, equal_var = 거짓 변수가 그룹 간 불균등한 분산을 설명한다는 점에서 적절하다고 여겨졌습니다. 정규성 위반이 심한 특징에 대해서는 Mann-Whitney U 검정이 대안 비모수 검정으로 고려되었습니다.
임계값 p< 0.05는 기존의 통계적 유의성을 따랐으며, |코헨의 죽음! ≥ 0.5는 중간에서 큰 효과 크기에 해당했습니다. 표본 크기가 적거나 드문 결과가 있는 데이터셋에는 부트스트랩 기반 조정, Hedges의 g 보정, 또는 완화된 탐색적 임계값을 전문가의 의견을 받아 권장하였습니다. 예를 들어, 1,000개의 부트스트랩 재샘플을 사용해 코헨의 d 신뢰구간을 계산할 수 있고, 헤지스의 g를 적용해 소표본 편향을 보정할 수 있습니다. 경계 통계를 가진 특징들, 예를 들어 0.03에서 0.08 사이의 p값 또는 |d| 0.4에서 0.6 사이의 값을 임상 전문가의 검토를 위해 기록하여 제외 시점에 포함하였습니다.
두 번째 단계에서는 통계적으로 필터링된 특징집합에 Harris Hawk 최적화(HHO)가 적용되었습니다. HHO 개체군 크기는 20개로 설정되었고, 최대 반복 횟수는 50개로 설정되었습니다. 각 해는 Xfiltered의 특징 수와 같은 길이의 이진 벡터로 표현되었으며, 1은 특징이 선택되었음을, 0은 선택되지 않았음을 의미했습니다. 연속된 HHO 위치는 V자형 전달 함수를 사용하여 이진 벡터에 매핑되었습니다:
T(x) = |tanh(x)|
이진 값을 1로 설정하면 T(x)> 0.5, 그렇지 않으면 0이 되었습니다. V자 함수가 선택된 이유는 이진 변환 중 균형 잡힌 탐색과 활용을 지원하기 때문입니다.
각 해의 적합도 함수는 로지스틱 회귀를 사용하여 정의되었습니다. 이진 벡터가 선택한 특징만을 사용하여 로지스틱 회귀 모델을 학습시켰고, scikit-learn의 cross_val_score을 사용하여 5중 교차 검증을 수행했습니다. 적합도는 다음과 같이 계산되었습니다:
적합도 = 1 − 평균 정확도
매 위치 개체군은 numpy.random.uniform(−1, 1, (population_size, n_features))를 사용하여 [−1, 1] 범위에서 일관되게 초기화되었으며, 재현성을 위해 고정된 무작위 시드가 42로 설정되었습니다. 각 반복마다 모든 매의 적합도를 평가하고, 최적의 매 위치는 토끼로 확인되었으며, 탈출 에너지를 기반으로 한 HHO 탐사 및 활용 방정식을 사용해 매의 위치를 업데이트했습니다. 수렴 후, 가장 성능이 좋은 이진 벡터가 최종 특징 하위 집합인 Xfinal으로 선정되었습니다.
선정된 특징들은 고정된 무작위 시드를 사용한 단일 HHO 최적화 실행에서 기록되었습니다. 더 높은 통계적 신뢰가 필요한 응용 분야에서는 서로 다른 무작위 시드를 가진 30개의 독립 실행이 권장되었으며, 최소 80%의 실행에서 합의 특징이 나타나는 것을 선택할 수 있었습니다. 보고된 구현은 단일 대표 실행 기반이었으며, 예비 테스트에서 일관된 수렴이 나타났습니다.
모델 훈련 및 최적화
세 가지 모델이 고려되었습니다: 로지스틱 회귀, 랜덤 포레스트, 그리고 PSO 최적화 인공 신경망(ANN). 로지스틱 회귀는 클래스 분포를 유지하기 위해 계층화된 5중 교차 검증을 사용해 훈련되었습니다. 정규화 강도 C는 탐색 공간 C
[0.001, 0.01, 0.1, 1, 10]를 사용하여 최적화되었습니다. 각 폴드와 C의 각 값에 대해, 모델은 훈련 폴드에서 학습되고 검증 폴드에서 평가되었습니다. 접힘 전반에 걸쳐 평균 검증 정확도를 극대화하는 C 값을 선택하였습니다.
랜덤 포레스트 모델은 하이퍼파라미터 튜닝을 사용해 학습되었습니다. 탐색 공간에는 max_depth = [5, 10, 15, 없음]과 min_samples_split = [2, 5, 10]이 포함되었습니다. 5중 교차 검증을 포함한 격자 검색은 ROC-AUC를 최적화 지표로 사용하여 GridSearchCV를 통해 수행되었으며, 점수는 = 'roc_auc'였습니다. 선택된 랜덤 포레스트 모델은 max_depth = 10, min_samples_split = 5를 사용했습니다. 아웃-오브 백(OOB) 점수 추정은 oob_score = True를 사용하여 활성화되었습니다.
과적합은 훈련 정확도와 OOB 점수 간의 격차를 계산하여 평가했습니다:
overfitting_gap = training_accuracy − oob_score
과적합 간격이 0.05 미만이면 좋은 일반화를 나타내며, 0.10보다 큰 간격은 max_depth 감소 또는 min_samples_split 증가가 필요함을 나타냈다. OOB 점수는 0.9296이고 일반적인 훈련 정확도는 0.94에서 0.96 사이였으며, 이 차이는 약 0.01에서 0.03 사이였습니다.
ANN 분류기는 입자 군집 최적화(PSO)를 사용해 최적화되었습니다. ANN 아키텍처는 입력층, ReLU 활성화를 사용하는 64개의 뉴런이 있는 숨겨진 계층 1개, 그리고 시그모이드 활성화를 사용하는 1개의 뉴런이 있는 출력 계층으로 구성되었습니다. PSO는 50개의 입자와 50번의 반복으로 초기화되었으며, 초기 네트워크 가중치를 최적화하는 데 사용되었습니다. ANN은 표준 역전파를 사용해 훈련되었습니다. PSO 최적화가 중첩된 교차 검증 없이 동일한 훈련 데이터에 적용되었기 때문에, 이 구성 요소는 신중하게 다뤄졌습니다. 향후 적용을 위해서는 평가를 위한 외부 10배 루프와 PSO 하이퍼파라미터 선택을 위한 내부 10배 루프를 포함하는 중첩 교차 검증이 권장되었습니다. 일반화 격차가 0.08 미만이면 허용 가능한 것으로 간주되었고, 0.15 이상은 모델 단순화가 필요한 잠재적 과적합을 의미했습니다.
모델 평가
모델 평가는 최종 특징 집합인 Xfinal에 대해 층화된 10배 교차 검증을 통해 수행되었습니다. 각 폴드에서 로지스틱 회귀 및 무작위 포레스트 모델이 학습 데이터를 기반으로 학습되고 검증 데이터로 평가되었습니다. 정확도, 정확성, 회상력, F1 점수, ROC-AUC는 scikit-learn의 classification_report 및 roc_auc_score을 사용해 계산되었습니다. 모든 지표의 평균 및 표준편차가 10가지 중복 지표에 걸쳐 계산되었습니다.
일반화 격차는 각 접힘에 대해 다음과 같이 계산되었습니다:
generalization_gap = training_accuracy − validation_accuracy
10개 배 모두에 걸친 평균 일반화 격차가 보고되었습니다. 평균 간격이 0.08 미만이면 과적합이 최소화되었음을 의미하며, 0.15를 초과하면 과적합과 정규화 또는 모델 복잡성 감소의 필요성을 시사했습니다. 윌콕슨 부호 순위 검정을 수행하여 제안된 프레임워크를 10개 중개 기준 방법과 비교하여 α = 0.01을 사용하였다.
설명 가능성 분석
설명 가능성 분석은 모델별 및 모델에 구애받지 않는 방법을 사용하여 수행되었습니다. 로지스틱 회귀의 경우, 최종 모델이 적합되고 선택된 각 특징에 대한 계수 값을 추출했습니다. 오즈비는 exp(계수) 형태로 계산되었고, 95% 신뢰구간은 계수의 표준오차를 사용해 계산되었습니다.
랜덤 포레스트에서는 feature_importances_ 속성을 사용해 훈련된 모델에서 지니 중요도 점수를 추출하여 합계를 1로 정규화했습니다. SHAP 설명은 SHAP 라이브러리를 사용하여 생성되었습니다. KernelExplainer 객체는 학습된 모델과 배경 데이터셋(예: 100개의 무작위 학습 샘플)을 사용하여 생성되었습니다. SHAP 값은 테스트 세트 내 모든 인스턴스에 대해 shap_values을 사용하여 계산되었습니다. 벌떼 요약 플롯은 shap.summary_plot를 사용해 생성되었고, 평균 절대 SHAP 값의 막대 플롯은 shap.bar_plot를 사용해 생성되었습니다.
SHAP 분석으로 확인된 상위 특징에 대해 부분 의존성 플롯(PDP)이 생성되었습니다. 선택된 각 특징에 대해 특징 범위에 걸친 값들의 시퀀스가 생성되었습니다. 각 값은 특징 열에 대입되었고, 다른 특징들은 일정하게 유지했으며, 모든 인스턴스에서 평균 예측 확률이 계산되었습니다. 특징값은 matplotlib을 사용해 평균 예측값과 대비하여 그래프로 표시되었습니다. 100회의 부트스트랩 재샘플링 반복을 통해 95%의 신뢰구간을 추가하였습니다.
개별 조건부 기대(ICE) 플롯은 특징값이 변함에 따라 개별 인스턴스의 예측 궤적을 그려 선택된 특징에 대해 생성되었습니다. PDP 노선은 ICE 플롯 위에 겹쳐졌다. 설명 방법은 scipy.stats.spearmanr를 사용하여 로지스틱 회귀 오즈비와 랜덤 포레스트 SHAP 값 간의 스피어먼 순위 상관관계를 계산하여 비교하였습니다. 설명 방법 간의 불일치는 임상 해석을 위해 문서화되었습니다. SHAP과 로지스틱 회귀 계수가 충돌할 때, 해당 특징의 PDP를 검토하였습니다. PDP가 비선형 추세를 보였다면, 랜덤 포레스트가 선형 모델이 포착할 수 없는 비선형 관계를 포착할 수 있기 때문에 SHAP 설명이 로지스틱 회귀 계수보다 우선시되었습니다.
MIMIC-III를 이용한 외부 검증을 위한 프레임워크 일반화 프로토콜
프레임워크를 MIMIC-III 데이터베이스에 적용하기 위한 외부 검증 프로토콜이 제시되었습니다. MIMIC-III에 접근하려면 PhysioNet의 승인과 필수 인간 대상 훈련 완료가 필요합니다. 제안된 코호트에는 18세 이상 성인 환자로 첫 ICU 입원과 급성 심근경색 ICD-9 코드 410–414 또는 허혈성 심장질환 ICD-10 코드 I20–I25를 가진 환자가 포함될 것입니다. 제외 기준에는 목표 특징 중 30% 이상의 누락값, 24시간 미만의 체류 기간, 90세 이상의 연령, 이전 심장 수술 경험, 선천성 심장병 등이 포함됩니다.
제안된 결과는 입원 후 72시간 이내의 주요 부작용(MACE)으로, 병원 내 사망률, 심인성 쇼크, 또는 중재가 필요한 심실 부정맥의 복합으로 정의되었습니다. 심박수와 혈압과 같은 시계열 특징은 중환자실 입원 첫 24시간 동안 평균, 중앙값, 최소값, 최대값, 추세를 사용해 집계되며, 추세는 시간에 따른 선형 회귀 기울기로 추정됩니다. 최대 심박수는 탈라크의 매핑된 동등한 값으로 사용됩니다.
클리블랜드 데이터셋의 특징은 MIMIC-III 변수에 매핑됩니다. 예를 들어, 탈라크는 ICU 입원 첫 24시간 동안 기록된 최대 심박수에 매핑되고, CP는 구조화된 통증 평가와 NLP로 추출된 흉통 언급에 매핑되며, 올드피크는 심전도 보고서에서 ST 구간 편차에 매핑됩니다. 모든 특징 정렬을 문서화하기 위한 매핑 테이블이 생성됩니다.
전체 파이프라인을 적용하기 전에, 올드피크에 대한 NLP 추출은 무작위로 선정된 100개의 ECG 보고서에서 검증됩니다. 정확도, 기억력, F1 점수는 두 명의 임상의가 수작업으로 주석을 기록하여 계산했습니다. F1 점수가 0.85 미만일 경우, 정규 표현 패턴이 수정되거나 차트 이벤트의 구조화된 ECG 데이터를 대안으로 사용했습니다. 그 후 추출한 MIMIC-III 데이터에 대해 전처리 파이프라인을 반복하고, GAN을 증강을 위해 재학습하며, 하이브리드 특징 선택을 재적용하고, 모델을 재교육하며, 설명을 생성하고, 성능 지표를 클리블랜드 데이터셋 결과와 비교했습니다.
임상 대시보드 구현
Flask나 Django와 같은 프레임워크를 사용하여 웹 기반 임상 대시보드 프로토타입이 설계되었습니다. HL7/FHIR API 엔드포인트는 기관 보안 정책에 따라 인증 및 승인이 설정된 EHR 통합을 위해 계획되었습니다. 데이터 매핑 기능은 EHR 데이터를 모델 입력 형식으로 변환하도록 설계되었습니다.
사용자 인터페이스에는 세 가지 주요 뷰가 포함되어 있었습니다. 사전 선별 뷰는 환자 인구통계와 계산된 위험 점수를 색상으로 구분하여 표시했습니다. 의사결정 지원 뷰는 특정 환자에 대한 주요 기여 요인을 보여주는 SHAP 워터폴 플롯을 표시했습니다. 개입 계획 뷰는 수정 가능한 위험 요인을 조정하고 최신 위험 예측을 표시하여 가정 분석을 가능하게 했습니다. 보고서를 PDF 파일로 저장하거나 EHR 문서 시스템과 통합하는 내보내기 기능도 포함되었습니다.
향후 임상 배포를 위해 최소 5명의 임상가와 함께 대시보드 사용성 평가가 계획되었습니다. 평가는 목표 점수가 68 이상인 시스템 사용성 척도를 사용하고, EHR 단독 사용 대비 최소 20% 감소한 과제 완료 시간, 설명 명확성 및 신뢰도를 위한 5점 만족도 척도를 사용합니다. 이 사용성 평가는 향후 단계로 계획되었으나 현재 연구에서는 시행되지 않았습니다.
Access restricted. Please log in or start a trial to view this content.
실험 환경 및 성과 지표
모든 실험은 scikit-learn, TensorFlow, SHAP 라이브러리를 사용하여 Python 3.9에서 수행되었습니다. 층화된 10배 교차 검증이 사용되었습니다. 평가 지표에는 정확도, 정밀도, 회상력, F1 점수, ROC-AUC가 포함되었습니다.
선택된 기저선 방법과의 성과 비교
<...| 방법 | 정확성 | 정밀도 | 리콜 | F1 점수 | ROC-AUC |
| 로지스틱 회귀 |
Access restricted. Please log in or start a trial to view this content.
여기서 제시된 프레임워크는 해석 가능한 심장병 예측 모델 개발을 위한 재현 가능한 접근법을 제공합니다. 이 설명들을 통합한 임상 대시보드 프로토타입은 그림 4에 나타나 있으며, 사전 선별, SHAP 의사결정 지원, 개입 계획의 3단계 워크플로우를 구현하고 있습니다 [그림 4 여기]. 이 프레임워크의 성공적인 실행을 위해 여러 중요한 단계에 세심한 주의가 필요합니다.
표 5에서 보듯, 기존 심장병 예측 연구의 비교는 세 가지 주요 차원에서 방법론적 격차를 시사합니다. 첫째, 데이터 증강에 관해서는 여러 연구에서 증강을 사용하지 않았으며, Ishaq 등은 SMOTE를, Sahoo 등은 GAN/VAE와 같은 생성 기법을 구현했습니다. 둘째, 특징 선택에 있어 일부 연구는 이 단계를 생략하는 반면, V...
Access restricted. Please log in or start a trial to view this content.
저자들은 이해 상충을 선언할 필요가 없습니다.
저자들은 연구 시설 제공을 위해 캐피털(헬완) 대학교와 아랍 오픈 대학교의 지원을 인정합니다. 이 연구는 공공, 상업, 비영리 부문의 자금 지원 기관으로부터 별도의 보조금을 받지 않았습니다.
Access restricted. Please log in or start a trial to view this content.
| Name | Company | Catalog Number | Comments |
|---|---|---|---|
| 클리블랜드 심장병 데이터셋 | UCI 머신러닝 저장소 | https://archive.ics.uci.edu/ml/datasets/heart+disease | 모델 개발/평가에 사용되는 벤치마크 심장병 데이터셋 |
| 장고 | 장고 소프트웨어 재단 | 해당 없음 | 대시보드 구현을 위한 대체 웹 프레임워크 |
| 팬시임퓨트 | FancyImpute 개발자들 | 해당 없음 | 선택적 MICE 및 KNN 보정 민감도 분석 |
| 플라스크 | 팔레트 프로젝트 | 해당 없음 | 대시보드 구현을 위한 웹 프레임워크 |
| HL7/FHIR API 표준 | HL7 인터내셔널 | 해당 없음 | EHR/대시보드 통합을 위한 계획된 표준 |
| 케라스 | 케라스 개발자 | 해당 없음 | GAN 아키텍처를 위한 TensorFlow/Keras와 함께 사용되는 신경망 API |
| matplotlib | MatplotLib 개발자 | 해당 없음 | 플롯 라이브러리 |
| MIMIC-III 데이터베이스 | 피지오넷 | https://physionet.org/content/mimiciii/1.4/ | 계획된 외부 검증을 위한 중환자 진료 데이터베이스 |
| 미싱노 | 미싱노 개발자 | 해당 없음 | 결손 행렬 시각화 |
| 넘버피 | 넘파이 개발자들 | 해당 없음 | 수치 계산 |
| 판다 | 판다스 개발자들 | 해당 없음 | 데이터 조작 |
| 피지오넷 | 피지오넷 | https://physionet.org/ | MIMIC-III의 접근 플랫폼/소스 |
| 파이썬 | 파이썬 소프트웨어 재단 | 해당 없음 | 버전 3.9/3.9.7 |
| 시킷-학습 | Scikit-Learn 개발자 | 해당 없음 | 전처리, 모델 학습, 교차 검증, 메트릭을 포함한 머신러닝 라이브러리 |
| 사이피 | SciPy 개발자들 | 해당 없음 | 웰치 포함 통계 검정 s t-검정과 스피어먼 상관 |
| 샍 | SHAP 개발자 | 해당 없음 | 설명 가능한 AI 라이브러리 |
| Statlog 심장병 데이터셋 | UCI 머신러닝 저장소 | https://archive.ics.uci.edu/ml/datasets/statlog+(심장) | 벤치마크 심장질환 데이터셋 |
| 텐서플로우 | 구글 | 해당 없음 | GAN 구현을 위한 딥러닝 프레임워크 |
| UCI 머신러닝 저장소 | 캘리포니아 대학교 어바인 캠퍼스 | https://archive.ics.uci.edu/ | 클리블랜드 및 Statlog 데이터셋의 저장소 소스 |
Request permission to reuse the text or figures of this JoVE article
Request Permission