1. 개요와 PART 구조
연구는 데이터 → 추정 순서로 흐른다. 문서 흐름은 연구계획 → PART 1 · 2 · 3 → 논문 · mock-up.
| PART | 일 | 내용 |
|---|---|---|
| PART 1 | 데이터 · 정제 · 스플릿 · 보간 | 입수 → 정제(세션평균·이상점) → 분할(day1 보정 / day2~7 추정 60:20:20, 예측구간 미분리) → 분단위 보간 타깃 생성. |
| PART 2 | 추정 (estimation · Nowcasting) | 군집 프로파일 + day1 보정 + 위상 + 워치로 분단위 BP를 추정 (새 사람 = cross-subject, 과거 BP추정변수 제외). |
2. PART 1 — 데이터 · 정제 · 스플릿 · 보간
데이터 현황 + 정제 + 분할 구조. 120명·8,195측정·워치 24종. 이상점 2건 제거 + 1분 2회 세션평균 → 4,169 세션(개인내 SBP SD 7.97→7.26). day1 보정 / day2~7 추정(예측구간 미분리).
- 정제 — 생리불가 이상점만 제거(SBP=12·DBP=17; 저혈압 가능값 유지), 연속 측정(Δt≤3분)을 세션평균(시각=마지막).
- 분할 — day1 = 튜닝(초기 BP 보정용), day2~6 = 학습(사람 60:20:20 train:valid:test), days2-7 = 추정 대상(120명). 성과는 test 실측점에서만.
- 분단위 보간 타깃 — 측정 사이를 분단위로 채운 BP를 모형의 타깃으로 쓴다. 보간함수는 train 사람 day2~6에서만 적합(군집 일주기), val·test엔 적용만 하고 학습엔 미사용.
누수 차단 규칙 (핵심). 모형 입력에 실측 과거 BP는 day1 튜닝을 제외하고 쓰지 않는다. 설문·와치, 그리고 설문·와치로 추정한 BP는 입력 가능. 타깃 = 분단위 보간 BP, 성과 측정 = 실측 BP에서만(보간값으로 성과를 재지 않음).
3. PART 2 — 추정 (Nowcasting) · 시스템
새 사람이 와도 설문으로 군집을 판별하면 그 군집의 기본 파라미터 프로파일을 가져온다. 1분 실제 측정으로 초기 BP를 고정하고, 와치 정보로 분단위로 현재 BP를 업데이트한다.
시스템 핵심. 새 개인 → 설문 군집 → 기본 프로파일 → 1분 측정 = 초기 BP → 와치 분단위 업데이트 → Nowcast(현재) 분단위 추정 곡선. 심한 운동·큰 충격·수면 부족·최근 보행 부족 같은 what-if 시나리오에서 혈압이 어떻게 변할지 보여준다.
4. 모형 — 전 계열 총동원
아는 모든 모형 계열을 single-task·multi-task로 비교한다.
| 계열 | 모형 | task |
|---|---|---|
| 전통 시계열 | AR · ARIMA · VAR · VARX | single · multi(VAR/VARX) |
| 회귀 | Ridge · ElasticNet · 선형 | single · multi |
| 위상 스펙트럴 | Harmonic/Fourier · 위상커널 · 합성커널(역시간×위상) | single · multi |
| Perceptron | MLP | single · multi |
| Tree | RandomForest · ExtraTrees · LightGBM · XGBoost · CatBoost · MT-GBM | single · multi(MT-GBM) |
| Transformer | FT-Transformer · Sequence Transformer · Multi-task Transformer | single · multi |
Multi-task의 이점. SBP·DBP를 하나의 구조로 공유해 동시 학습하면 두 출력이 상호 제약하여, 자연스럽게 오버핏이 방지된다(별도 두 모형보다 test에서 유리할 수 있음).
입력: 설문 · 와치 · day1 튜닝 BP · (설문·와치로) 추정한 BP. 실측 과거 BP는 미사용(day1 제외). 타깃: 분단위 보간 BP. 평가: 실측점.
5. 평가 원칙
1. 성과는 test의 실측 BP에서만 측정한다(보간값으로 metric을 재지 않음).
2. Interpolation은 도구 — 타깃 생성·feature 정렬엔 자유, 평가 set만 실측으로 둔다.
3. Metric = MAE + BHS, train/valid/test 분리.
4. 누수 차단 — 보간함수·모형은 train 사람에서만 적합(days2-7 추정).
2. Interpolation은 도구 — 타깃 생성·feature 정렬엔 자유, 평가 set만 실측으로 둔다.
3. Metric = MAE + BHS, train/valid/test 분리.
4. 누수 차단 — 보간함수·모형은 train 사람에서만 적합(days2-7 추정).
측정 잡음 — 1분 2회 측정의 per-reading SD≈4.8 mmHg. 세션평균이 이를 줄이고, 분단위 보간은 이 정제된 곡선을 타깃으로 삼는다. 성과는 항상 실측점에서.
6. Mock-up (환자 대시보드)
마지막에 mock-up을 만든다. 환자 ID를 선택하면 그 환자의 모든 내용(프로파일·분단위 BP 곡선 Nowcast + what-if 시나리오 반응·성과)을 확인할 수 있는 대시보드. GitHub에 만들어 게시한다.
7. 로드맵
- PART 1 — 정제 ✓ · 분할 ✓ · 분단위 보간(1분 해상도 마무리 중).
- PART 2 추정 — 군집 프로파일 + day1 보정 + 와치 Nowcasting.
- Mock-up — 환자 대시보드 → GitHub 게시.
- 문서 — PART 1·2·3 그림책 + 논문 갱신·게시.
8. 한계와 산출물
- 분단위 순간 BP는 measurement error(per-reading SD≈4.8) + 개인 내 생리가 정밀도 한계를 정함. 임상 가치는 일평균·1일 곡선에 무게.
- cuffless의 임상 진단 사용은 권고되지 않음(AHA/ACC 2025) → 연구·추세 추정으로 포지셔닝. 통계적 유의성으로 판단.
- 산출물: PART 1·2·3 그림책 · 논문(저자 이규성·차상현·성봉주·박대근·김효영, 저널 TBD) · 환자 대시보드 mock-up · 파이프라인 코드.