컴백부터 K-뷰티까지 — K-컬쳐의 모든 것을 메일로 받아보세요메일로 받아보기

METAL MEDIA

심장 신호 3종(ECG, PPG, PCG)을 하나의 AI가 동시에 이해하도록 학습시켰더니 각 신호 전용 모델보다 더 잘 맞혔다

arXiv:2608.129442026-08-12

CardioState-JEPA: Delay-Aware Cross-Modal Learning of a Shared Cardiac Representation

심장 신호 3종(ECG, PPG, PCG)을 하나의 AI가 동시에 이해하도록 학습시켰더니 각 신호 전용 모델보다 더 잘 맞혔다

심전도(ECG), 광혈류측정(PPG), 심음도(PCG)는 같은 심장 박동을 전기·혈류·소리로 각기 다른 시점에 관찰한 것이다. CardioState-JEPA는 이 세 신호를 하나의 트랜스포머 인코더로 처리하면서, 신호를 그대로 복원하지 않고 '가려진 부분의 숨은 심장 상태'를 맞히도록 학습시키고, 신호 간 시간차를 스스로 추정하는 지연 정렬기로 서로 다른 시점의 사건을 짝지운다. 25개의 다운스트림 과제에서 이 방식은 각 신호 전용 자기지도학습 모델보다 PPG 분류 8.2점, PCG 잡음(murmur) 탐지 18.8점, ECG 분류 15.5점(모두 AUROC 기준) 더 높은 점수를 얻었다.

METAL MEDIA 해설 도표

CardioState-JEPA 2단계 학습 구조

증거 상태측정 결과가 보고됨

  1. 1단계: 신호별 단독 학습ECG, PPG, PCG 각각의 대량 단일 신호 데이터를 가지고, 신호 일부를 가린 뒤 그 자리의 숨은 심장 상태를 맞히도록 공유 트랜스포머 인코더를 학습시킨다
  2. 2단계: 지연 정렬 기반 신호 간 학습동시에 녹음된 적은 양의 짝 데이터(ECG-PPG, ECG-PCG, 3종 동시 녹음)를 이용해, 학습된 지연 정렬기가 신호 간 시간차를 추정하고 한 신호로 다른 신호의 해당 시점 상태를 예측하도록 학습한다
  3. 공유 표현 공간학습이 끝나면 세 신호가 만들어낸 잠재 표현이 신호 종류와 무관하게 섞이며(모달리티 실루엣 지수 0.121에서 -0.006으로 하락), 동시에 부정맥 등 실제 클래스 구분력은 향상된다
  4. 고정 인코더 평가학습이 끝난 인코더는 더 이상 학습하지 않고 그대로 둔 채, 각 과제에 맞는 얇은 선형 분류기만 새로 붙여 25개의 ECG·PPG·PCG 다운스트림 과제에서 성능을 측정한다
  5. 성능 비교 결과PPG 분류 8.2점, PCG 심잡음 탐지 18.8점, ECG 분류 15.5점(AUROC 기준) 만큼 각 신호 전용 자기지도학습 베이스라인을 앞섰다
METAL MEDIA이 원문을 바탕으로 재구성한 해설 도표이며, 논문 저자의 원문 figure가 아닙니다.

무엇을 했나

  1. ECG는 전기 신호, PPG는 손끝 등에서 측정하는 혈류 파형, PCG는 청진기로 듣는 심장 소리인데, 이 셋은 같은 심장 박동을 시간차를 두고 관찰한 것이라는 점에서 출발한다.
  2. 먼저(1단계) 각 신호를 대량의 단일 신호 데이터로 따로 학습시켜 신호 내부 구조를 익히게 하고, 그다음(2단계) 동시에 녹음된 적은 양의 짝 데이터로 신호 간에 시간차를 스스로 추정하는 지연 정렬기를 이용해 서로 예측하도록 학습시킨다.
  3. 학습 목표는 원본 파형을 그대로 복원하는 것이 아니라, 신호 일부를 가리고 그 자리에 있어야 할 '숨은 심장 상태(잠재 표현)'를 맞히는 것으로, 이렇게 하면 센서별 잡음이나 모양 차이보다 공통된 생리학적 구조에 집중하게 된다.
  4. 학습이 끝난 인코더는 얼어붙은 채로(가중치 고정) 선형 분류기만 얹어 25개의 실제 진단·모니터링 과제(부정맥, 심잡음, 활동 인식, 혈압·호흡수 추정 등)에서 성능을 평가했다.
  5. 고정 인코더에 선형 프로브만 붙였는데도 ECG, PPG, PCG 각각의 전용 자기지도학습 모델보다 평균적으로 더 높은 점수를 냈고, 임상 텍스트나 정답 라벨을 함께 학습한 일부 ECG 모델과도 맞먹거나 그보다 나은 성능을 보였다.
Figure 1: Motivation of CardioState-JEPA. ECG, PPG, and PCG observe the same cardiac cycle at different physiological times, motivating a shared cardiac representation.
Figure 1: Motivation of CardioState-JEPA. ECG, PPG, and PCG observe the same cardiac cycle at different physiological times, motivating a shared cardiac representation.
Table 1: PPG Baseline Linear Probe Results (100% training data). ↑: macro-AUROC ×100 (higher is better); ↓: MAE (lower is better). Bold: best; underline: second best. Average (Classification) is the unweighted mean macro-AUROC across the 6 classification tasks. Average (Regression) is the unweighted mean MAE across the 11 regression tasks.
TaskPaPaGei-SPaPaGei-PAnyPPGPulsePPGChronosBoltCardioState-JEPA
PPG Classification Tasks
WESAD ↑65.365.770.166.864.074.5
DaLiA Activity ↑68.471.179.077.377.290.3
MIMIC AF ↑48.481.193.332.446.197.7
PPG Arrhythmia ↑86.388.795.892.690.496.8
BIDMC RR ↑51.338.253.243.538.078.4
UQVital RR ↑40.641.841.829.530.544.6
Average (Classification) ↑60.164.472.257.057.780.4
PPG Regression Tasks
DaLiA HR ↓11.811.55.88.68.23.8
EarSet HR ↓10.79.59.88.98.38.2
WildPPG HR ↓10.09.95.47.77.55.4
Sensors DBP ↓7.27.06.97.46.96.8
Sensors SBP ↓20.019.416.718.618.016.8
UCI DBP ↓7.87.96.76.97.25.8
UCI SBP ↓18.518.115.216.217.410.3
BCG DBP ↓10.112.94.511.210.82.8
BCG SBP ↓13.710.213.512.711.84.4
UQVital SpO2 ↓0.760.850.780.840.830.82
WildPPG RMSSD ↓36.637.634.936.735.934.8
Average (Regression) ↓13.413.210.912.312.19.1
Figure 2: Overview of CardioState-JEPA. Stage I learns unimodal cardiac codes with masked latent prediction from abundant ECG, PPG, and PCG recordings. Stage II uses paired recordings for delay-aware cross-modal prediction, where a learned aligner estimates the physiological offset so that one modality predicts another at the corresponding cardiac time.
Figure 2: Overview of CardioState-JEPA. Stage I learns unimodal cardiac codes with masked latent prediction from abundant ECG, PPG, and PCG recordings. Stage II uses paired recordings for delay-aware cross-modal prediction, where a learned aligner estimates the physiological offset so that one modality predicts another at the corresponding cardiac time.
Table 2: ECG linear probing results under 1%, 10%, and 100% label fractions across six datasets. Avg is the mean macro-AUROC across all 18 settings (six datasets × three label fractions). Label-supervised and ECG-text models are shown as reference models but are excluded from the SSL bold/underline comparison.
PTB-XL SuperPTB-XL SubPTB-XL FormPTB-XL RhythmCPSCCSN
Method1%10%100%1%10%100%1%10%100%1%10%100%1%10%100%1%10%100%Avg
Self-supervised ECG-only models
SimCLR63.469.873.560.868.373.455.057.062.551.469.477.759.868.576.559.067.373.265.9
BYOL71.773.876.557.267.471.648.761.670.842.074.477.260.974.478.854.271.974.767.1
BarlowTwins72.976.078.462.670.874.352.160.466.150.173.577.655.172.878.460.771.677.468.4
MoCo-v373.276.778.355.969.276.750.363.771.351.471.774.362.176.775.354.674.377.768.5
SimSiam73.272.775.662.569.376.455.262.971.349.369.575.958.472.975.358.368.677.468.0
TS-TCC70.775.978.953.567.077.948.061.871.243.369.578.257.173.678.755.368.576.867.0
CLOCS68.973.476.357.972.676.252.058.072.747.271.976.359.677.877.554.471.976.167.8
ASTCL72.577.381.061.968.876.544.160.967.052.472.076.157.977.079.556.470.975.868.2
CRT69.778.277.262.070.878.746.459.568.747.473.574.458.076.482.056.273.778.868.4
ST-MEM61.166.971.454.157.963.655.760.066.151.165.474.956.763.370.459.866.971.463.2
Label-supervised ECG model
ECGFounder83.187.289.673.676.581.761.169.785.187.091.694.687.693.696.371.981.791.983.5
ECG-Text foundation models
MERL82.486.388.764.980.684.758.372.479.753.382.988.370.385.390.666.682.788.078.1
HeartLang78.984.486.769.875.183.956.466.179.572.677.391.171.184.891.368.476.189.878.0
AnyChat82.184.486.872.173.282.258.469.777.173.184.794.583.788.992.671.279.589.980.2
ESI72.380.883.761.669.075.656.959.372.856.671.481.768.278.983.860.165.179.471.0
D-BETA83.288.490.177.782.985.270.178.984.086.692.896.785.591.494.980.087.490.785.9
ECG-FM81.387.089.471.776.983.064.676.386.177.091.096.384.792.695.776.087.795.084.0
CardioState-JEPA (Ours)81.386.489.171.079.186.460.570.083.987.892.496.487.693.495.875.183.193.884.1
Figure 3: T-SNE of cardiac codes from co-recorded ECG, PPG, and PCG samples after Stage I (left) and Stage II (right).
Figure 3: T-SNE of cardiac codes from co-recorded ECG, PPG, and PCG samples after Stage I (left) and Stage II (right).
Table 3: PCG linear probe results on the murmur detection and abnormal heart sound detection tasks (macro-AUROC ×100, ↑; mean±std over 3 seeds).
MethodCirCor ↑CinC2016 ↑
StethoLM64.9 ± 1.245.7 ± 0.4
CLAP75.3 ± 1.844.3 ± 0.7
AudioMAE79.1 ± 2.762.4 ± 0.7
CardioState-JEPA (Ours)97.9 ± 0.166.8 ± 0.4
Figure 8: Learned delay alignment on paired recordings. The top panel shows ECG to PPG alignment on VitalDB and the bottom panel shows ECG to PCG alignment on EPHNOGRAM. For each ECG R-peak tR, the predicted event time tR+τ^ (red dashed) is overlaid on the target signal alongside the actual event (green), namely the systolic upstroke for PPG and the first heart sound S1 for PCG. The learned delay tracks the physiological offset between modalities.
Figure 8: Learned delay alignment on paired recordings. The top panel shows ECG to PPG alignment on VitalDB and the bottom panel shows ECG to PCG alignment on EPHNOGRAM. For each ECG R-peak tR, the predicted event time tR+τ^ (red dashed) is overlaid on the target signal alongside the actual event (green), namely the systolic upstroke for PPG and the first heart sound S1 for PCG. The learned delay tracks the physiological offset between modalities.
Table 4: Ablation studies on pretraining modalities, self-supervised objectives, and auxiliary losses.
Model / VariantECG Avg ↑PPG Cls Avg ↑PPG Reg Avg ↓PCG Avg ↑
Pretraining Modality Combination
ECG only89.7 ± 0.5
PPG only78.5 ± 2.610.7 ± 0.6
PCG only60.2 ± 0.9
ECG + PPG91.4 ± 0.480.6 ± 2.810.1 ± 0.8
ECG + PCG88.4 ± 0.679.7 ± 0.7
CardioState-JEPA (Ours)90.9 ± 0.380.4 ± 2.59.1 ± 0.682.3 ± 0.2
Self-Supervised Objective
SimCLR89.5 ± 0.570.1 ± 2.911.1 ± 0.680.0 ± 0.7
BYOL89.3 ± 0.466.7 ± 3.811.0 ± 0.580.3 ± 0.4
BarlowTwins88.6 ± 0.464.1 ± 4.411.3 ± 0.578.8 ± 1.0
MAE84.4 ± 0.562.0 ± 3.811.8 ± 0.578.1 ± 0.3
CardioState-JEPA (Ours)90.9 ± 0.380.4 ± 2.59.1 ± 0.682.3 ± 0.2
Auxiliary Loss Terms
w/o Cross-modal prediction83.8 ± 0.563.9 ± 3.510.7 ± 0.578.4 ± 0.4
w/o State alignment84.4 ± 0.566.3 ± 3.511.2 ± 0.579.3 ± 0.5
w/o Delay modeling85.3 ± 0.668.9 ± 3.711.1 ± 0.681.3 ± 0.5
w/o Phase supervision88.7 ± 0.571.0 ± 3.110.4 ± 0.678.3 ± 0.5
CardioState-JEPA (Ours)90.9 ± 0.380.4 ± 2.59.1 ± 0.682.3 ± 0.2
Figure 9: t-SNE of PPG features on the binary atrial fibrillation task (MIMICPerform-AF) from the Stage I (left) and Stage II (right) checkpoints, colored by class. The class silhouette rises from 0.03 to 0.12.
Figure 9: t-SNE of PPG features on the binary atrial fibrillation task (MIMICPerform-AF) from the Stage I (left) and Stage II (right) checkpoints, colored by class. The class silhouette rises from 0.03 to 0.12.
Table 5: Training configurations for pretraining and downstream linear probing. Regression tasks are shown with a dash in the class column and are scored with mean absolute error, while classification tasks are scored with macro-AUROC.
Dataset# ClassesTrainValidTestOpt.EpochsBSLR
ECG Pretraining
MIMIC-IV-ECG [13]710,56078,951AdamW1961.2e-4
PPG Pretraining
PPG-EXT [29]4,611,607512,401AdamW1961.2e-4
PCG Pretraining
BMD-HS [1]3,436382AdamW1961.2e-4
ECG Downstream
PTB-XL Super [40]517,0842,1462,158AdamW100161e-3
PTB-XL Sub2317,0842,1462,158AdamW100161e-3
PTB-XL Form197,197901880AdamW100161e-3
PTB-XL Rhythm1216,8322,1002,098AdamW100161e-3
CPSC 2018 [27]94,9505511,376AdamW100161e-3
CSN [48]3816,5461,8604,620AdamW100161e-3
PPG Downstream
WESAD22,104297597AdamW100161e-3
DaLiA829,2944,6025,320AdamW100161e-3
MIMIC AF23,239240717AdamW100161e-3
PPG Arrhythmia236,8204,7645,243AdamW100161e-3
BIDMC9,4121,6521,398AdamW100161e-3
UQVital22,1582,5298,158AdamW100161e-3
EarSet1,36844364AdamW100161e-3
WildPPG179,49215,00045,000AdamW100161e-3
Sensors BP1,631180250AdamW100161e-3
UCI BP89,05411,28611,411AdamW100161e-3
BCG BP5218664AdamW100161e-3
PCG Downstream
CirCor Murmur [32]31,745608654AdamW100161e-3
CinC [26]22,006627607AdamW100161e-3
Figure 10: t-SNE of PPG features on the six-class arrhythmia task from the Stage I (left) and Stage II (right) checkpoints, colored by class. The class silhouette rises from 0.01 to 0.09.
Figure 10: t-SNE of PPG features on the six-class arrhythmia task from the Stage I (left) and Stage II (right) checkpoints, colored by class. The class silhouette rises from 0.01 to 0.09.
Table 6: Input length ablation on ECG tasks (macro-AUROC ×100, ↑, 10% training data). Bold marks the best value in each column. Mean and Std are the mean and standard deviation across the three input lengths.
PTB-XL Super ↑PTB-XL Sub ↑PTB-XL Form ↑PTB-XL Rhythm ↑
Method2.5s5s10sMeanStd2.5s5s10sMeanStd2.5s5s10sMeanStd2.5s5s10sMean
ST-MEM65.369.569.268.01.958.960.760.059.90.752.458.153.554.72.562.658.762.261.2
ECG-FM80.581.986.583.02.673.372.275.173.51.262.267.876.068.75.772.377.082.077.1
ECGFounder83.386.587.085.61.674.876.076.275.70.662.668.269.366.72.973.581.790.281.8
CardioState-JEPA85.285.686.485.70.578.478.779.178.70.365.668.370.068.01.887.087.392.488.9
Table 7: Sensitivity to the cross-modal loss weight λcross. The CardioState-JEPA row uses the default weighting. Values other than MAE are macro-AUROC ×100, where higher is better, and lower is better for MAE.
VariantECG Avg ↑PPG Cls ↑PPG Reg ↓PCG Avg ↑
CardioState-JEPA (λcross=1.0)90.980.49.182.3
λcross=0.590.978.510.3479.4
λcross=2.090.677.310.5480.9
Table 8: Sensitivity to the delay supervision loss weight λdelay. The CardioState-JEPA row uses the default weighting. Values other than MAE are macro-AUROC ×100, where higher is better, and lower is better for MAE.
VariantECG Avg ↑PPG Cls ↑PPG Reg ↓PCG Avg ↑
CardioState-JEPA (λdelay=1.0)90.980.49.182.3
λdelay=0.590.878.79.6879.3
λdelay=2.090.878.010.2082.5
Table 9: Sensitivity to the state loss weight λstate. The CardioState-JEPA row uses the default weighting. Values other than MAE are macro-AUROC ×100, where higher is better, and lower is better for MAE.
VariantECG Avg ↑PPG Cls ↑PPG Reg ↓PCG Avg ↑
CardioState-JEPA (λstate=0.05)90.980.49.182.3
λstate=0.2590.774.510.2082.7
λstate=1.090.275.89.6582.7

실제로 확인된 결과

  • PPG 과제에서 평균 분류 AUROC가 최고 성능 베이스라인 대비 72.2에서 80.4로, 평균 회귀 오차(MAE)가 10.9에서 9.1로 개선되었다.
  • ECG의 18개 설정(6개 데이터셋×3개 라벨 비율) 평균 AUROC가 자기지도학습 최고 베이스라인인 MoCo-v3(68.5) 대비 84.1로, 15.5점 더 높았다.
  • PCG의 심잡음(murmur) 탐지와 이상 심음 탐지 과제에서 선형 프로브 기준 최고 성능을 기록했으며, 베스트 자기지도학습 베이스라인 대비 심잡음 탐지가 18.8점 더 높았다.
  • 임상 텍스트나 대규모 정답 라벨로 학습한 일부 ECG 모델과 비교했을 때도 CardioState-JEPA가 여러 벤치마크에서 맞먹거나 더 나은 결과를 보였다.
  • 1단계 학습 후에는 t-SNE 시각화에서 신호별로 뚜렷이 구분된 군집이 나타났지만, 2단계 학습 후에는 신호 구분 없이 섞였고(모달리티 실루엣 지수가 0.121에서 -0.006으로 하락), 동시에 부정맥 분류 등 다운스트림 과제의 클래스 구분력(실루엣 지수)은 오히려 올라갔다.

어디에 쓸 수 있나

  • 웨어러블 기기(스마트워치 등)에서 얻은 PPG 신호만으로도 다른 신호로 미리 학습된 지식을 활용해 부정맥, 혈압, 호흡수 등을 더 정확히 추정하는 데 활용할 수 있다.
  • 청진 녹음(PCG)을 이용한 심잡음 자동 선별 시스템 개발 시, ECG나 PPG 데이터로 함께 학습된 인코더를 기반으로 더 적은 청진 데이터로도 성능을 높이는 데 시도해 볼 수 있다.
  • 병원에서 서로 다른 센서로 수집된 심장 데이터를 하나의 공용 표현 모델로 통합해, 센서별로 별도 모델을 유지·관리하는 부담을 줄이는 방향의 설계에 참고할 수 있다.
  • 적은 라벨(1%, 10%)만 있는 상황에서도 어느 정도 성능을 내야 하는 임상 데이터가 부족한 환경의 사전학습 전략 설계에 참고할 수 있다.

한계와 남은 검증

  • 동시에 녹음된 여러 신호(짝 데이터)는 단일 신호 데이터보다 훨씬 적어서, 지연 정렬기가 비교적 적은 수의 깨끗한 박동 데이터로만 학습되었다.
  • PCG 사전학습 데이터가 세 신호 중 가장 적어, 음향 신호 자체만의 표현력을 얼마나 더 끌어올릴 수 있는지는 제한적으로만 확인되었다.
  • ECG의 경우 3개 신호를 모두 사용한 모델이 2개 신호만 사용한 최상위 모델과 오차범위 안에서 비슷해, 세 번째 신호 추가의 이득이 ECG에서는 PPG·PCG만큼 뚜렷하지 않았다.
  • 지연 정렬기는 원신호에서 기준이 되는 박동 사건을 검출할 수 있다는 전제가 필요해, 잡음이 매우 심한 녹음에서는 비지도 방식의 정렬로 대체된다.
  • 모든 결과는 인코더를 고정한 채 선형 분류기만 학습시킨 것으로, 인코더 전체를 미세조정하거나 더 큰 인코더로 확장하는 실험은 앞으로의 과제로 남겨졌다.

왜 중요한가

지금까지 심전도·맥박·심음 모델은 각자 따로 만들어졌는데, 이 연구는 세 신호가 서로를 가르치는 훈련 선생님 역할을 할 수 있음을 보여준다. 웨어러블 기기나 청진 장비 등 서로 다른 센서에서 얻은 데이터를 하나의 공유 모델로 묶어낼 수 있다면, 각 센서마다 별도 모델을 새로 만드는 비용과 데이터 부족 문제를 줄일 길이 열린다.

이 논문의 용어

  • JEPA(Joint-Embedding Predictive Architecture) · 원본 신호를 그대로 복원하는 대신, 가려진 부분에 대응하는 '숨은 표현(잠재 벡터)'을 맞히도록 학습하는 방식
  • AUROC · 분류 모델이 양성과 음성을 얼마나 잘 구별하는지 나타내는 지표로, 1에 가까울수록 좋다
  • 선형 프로브(linear probing) · 미리 학습된 인코더는 그대로 고정해 두고, 그 위에 얇은 선형 분류기만 새로 학습시켜 성능을 측정하는 평가 방법
  • 지연 정렬기(delay aligner) · 전기·혈류·소리 신호가 같은 심장 박동을 서로 다른 시점에 나타내므로, 그 시간차(지연)를 자동으로 추정해 신호를 맞춰주는 학습된 모듈
  • 동적 이동 평균 모멘텀 인코더(momentum encoder) · 학습 중인 인코더의 가중치를 천천히 평균 내어 만든 별도의 인코더로, 학습 목표(정답에 해당하는 값)를 안정적으로 제공하는 역할을 한다

저자 · Hamza Shafiq

arXiv에서 원문 보기

최신 논문

논문 전체 보기 →

METAL MEDIA 최신 기사

그림 출처: Hamza Shafiq et al., arXiv:2608.12944, CC BY 4.0