계산 방법론 · 공개 버전 2.2
Calculation methodology · Public version 2.2
위험 감소 추정치는 이렇게 계산해요
How the risk-reduction estimate is calculated
앱은 기록된 MPA·VPA 시간을 질환별 논문 집단의 비선형 상대위험 곡선에 연결해요. 아래 식은 앱 엔진과 공개 JSON이 사용하는 식이에요.
The app connects logged MPA and VPA minutes to condition-specific, nonlinear relative-risk curves from studied populations. The equations below match the app engine and public JSON.
1 · 강도 환산
1 · Intensity conversion
하루의 MPA·VPA 시간을 같은 단위로 바꿔요
Convert a day's MPA and VPA minutes to one unit
Mt는 그날 측정된 중강도 시간(분), Vt는 고강도 시간(분)이에요. 표준화에 사용하는 대표 한계 MET 값은 MPA 3.5, VPA 7이에요.
Mt is the day's measured moderate-intensity time in minutes, and Vt is vigorous-intensity time. The representative marginal MET values used for standardisation are 3.5 for MPA and 7 for VPA.
zt = 7 × (3.5 × Mt + 7 × Vt) ÷ 60
zt의 단위는 주당 한계 MET-시간이에요.
zt is measured in marginal MET-hours per week.
VPA가 MPA보다 개인에게 정확히 두 배의 효과를 낸다는 뜻은 아니에요. 논문의 총활동량 곡선에 두 강도를 함께 넣기 위한 표준화일 뿐이에요.
This does not mean VPA has exactly twice the personal effect of MPA. It is only a standardisation step for placing both intensities on the source's total-activity curve.
2 · 최근 습관 상태
2 · Recent-habit state
오늘과 이전 기록을 지수가중 평균으로 이어요
Carry today and prior records forward with an EWMA
앱은 28일 반감기 h를 사용해요. 전날 상태를 남기는 비율 λ와 오늘 기록의 가중치 α는 다음과 같아요.
The app uses a 28-day half-life h. The retained share of yesterday's state, λ, and today's weight, α, are:
h = 28λ = 2(−1 ÷ h) ≈ 0.9755486421α = 1 − λ ≈ 0.02445135795전날의 원시 습관 활동량을 Ht−1이라고 하면 오늘 상태는 아래처럼 갱신해요.
If the prior day's raw habitual dose is Ht−1, today's state is updated as follows:
Ht = λ × Ht−1 + α × zt운동 중에는 완료한 매 1분마다 같은 원리로 현재 세션을 더해 화면을 갱신해요.
During a workout, the same rule adds each completed qualifying minute to update the display.
Hcurrent(m) = Hpre + α × 7 × METintensity × m ÷ 60
최근 활동량을 부드럽게 평균내기 위해 앱이 정한 제품 계산값이에요. 논문이 효과가 28일에 절반으로 줄어든다고 보고한 것은 아니에요.
It is a product calculation parameter for smoothing recent activity. It does not mean the source reported that a biological effect halves after 28 days.
3 · 논문 곡선 조회
3 · Source-curve lookup
현재 활동량 사이의 RR을 선형 보간해요
Linearly interpolate RR at the current activity dose
논문 저자 패키지의 인접한 두 조회점 (x0, RR0), (x1, RR1) 사이에 Ht가 있으면 아래처럼 RR을 구해요.
When Ht lies between adjacent source-package lookup points (x0, RR0) and (x1, RR1), RR is calculated as:
q = (Ht − x0) ÷ (x1 − x0)
RR(Ht) = RR0 + q × (RR1 − RR0)
각 모형이 평가한 최대 범위를 넘으면 RR 조회에만 그 최대값을 적용해요. 원시 H는 그대로 보관해 이후 쉬는 날의 감소 계산에 사용해요. 근거 범위 밖으로 곡선을 임의 연장하지 않아요.
Above a model's evaluated maximum, only the RR lookup is clamped to that maximum. Raw H is retained for later decay. The app does not invent an extrapolation beyond the evidence range.
4 · 달력 수치
4 · Calendar values
누적 수치와 당일 변화는 서로 다른 값이에요
The cumulative value and daily change are different quantities
누적 위험 감소 추정치
Cumulative risk-reduction estimate
Bt = 100 × (1 − RR(Ht))현재 습관 활동량이 비활동 기준 RR=1과 얼마나 떨어져 있는지 보여줘요. 매일의 값을 단순히 더한 수치가 아니에요.
This is the current habit state's distance from the inactive reference RR=1. It is not a sum of daily values.
당일 변화
Daily change
ΔBt = 100 × (RR(Ht−1) − RR(Ht))양수면 활동 습관 추정치가 개선된 날이고, 음수면 이전보다 감소한 날이에요. 단위는 퍼센트포인트예요.
A positive value means the rolling habit estimate improved; a negative value means it declined. The unit is percentage points.
같은 운동 1분이라도 시작 전의 H와 질환 곡선의 기울기에 따라 변화량이 달라져요. 그래서 앱은 고정된 “분당 몇 퍼센트”를 사용하지 않아요.
The same additional minute can produce a different model change depending on the starting H and the local slope of the condition's curve. The app therefore uses no fixed “percent per minute.”
5 · 기록 상태
5 · Record status
측정된 0분과 미측정은 다르게 다뤄요
Measured zero and unmeasured are treated differently
측정된 MPA 0분·VPA 0분
Measured MPA 0 min · VPA 0 min
측정이 완료됐지만 해당 강도 시간이 없었던 날이에요. zt=0으로 계산해 Ht=λHt−1가 되고, 확인 가능한 당일 감소를 표시할 수 있어요.
Measurement completed, but no qualifying intensity time was found. The app uses zt=0, so Ht=λHt−1, and can show the resulting daily decline.
미측정 또는 강도 판정 불가
Unmeasured or intensity unavailable
운동하지 않았다고 단정하지 않아요. 내부 습관 상태는 날짜 경과에 따라 이어가지만, 그날을 확인된 0분으로 표시하거나 계산된 당일 변화를 공개하지 않아요.
The app does not assume inactivity. It advances the internal habit state across the date, but does not label that day as confirmed zero or publish a calculated daily change.
6 · 질환별 독립 계산
6 · Independent condition models
같은 H를 세 개의 곡선에 각각 넣어요
Evaluate the same H on three separate curves
- 심장Heart관상동맥질환 발생 곡선을 사용해요.Uses the incident coronary heart disease curve.
- 뇌졸중Stroke치명·비치명 뇌졸중 곡선을 사용해요.Uses the fatal and non-fatal stroke curve.
- 제2형 당뇨병Type 2 diabetes비치명 제2형 당뇨병 곡선을 사용해요.Uses the non-fatal type 2 diabetes curve.
세 수치는 서로 평균내거나 더하지 않아요. 한 질환의 수치가 다른 질환의 수치를 대신하지도 않아요.
The three estimates are never averaged or added, and one condition's estimate never substitutes for another's.
7 · 해석 한계
7 · Interpretation limits
이 수치는 개인의 절대 발병확률이 아니에요
This is not an individual's absolute event probability
- 여러 연구 집단을 합친 상대위험 곡선에 사용자의 기록을 적용한 웰니스 추정치예요.
- It is a wellness estimate that applies a user's records to a pooled study-population relative-risk curve.
- 개인의 시작 절대위험을 계산하지 않으므로 “발병 가능성이 몇 퍼센트”라는 뜻이 아니에요.
- Because the app does not calculate an individual's baseline absolute risk, the result is not a percentage chance of an event.
- 운동 직후 생물학적 위험이 화면 수치만큼 즉시 변했다는 뜻이 아니에요.
- It does not mean biological risk changed by the displayed amount immediately after exercise.
- 진단, 치료효과, 인과효과 또는 응급 판단에 사용할 수 없어요.
- It cannot be used for diagnosis, treatment effect, causal effect, or emergency decisions.
- 논문 곡선의 신뢰구간은 표시할 수 있지만, 매 1분 변화량 자체의 신뢰구간은 제공되지 않아요.
- The source curve can include confidence bounds, but a confidence interval for each one-minute change is not available.
검증 가능한 공개 자료
Verifiable public data
앱과 같은 식·곡선 데이터를 공개해요
The app's equations and curve data are public
계산식, 질환별 RR 조회점, 평가 범위와 해석 제한을 JSON으로 확인할 수 있어요. 스키마는 허용된 필드와 단위를 검증해요.
The equations, condition-specific RR lookup points, evaluated ranges, and interpretation limits are available as JSON. Its schema validates the allowed fields and units.