🎚 임계값 캘리브레이션
실제 쌓인 스냅샷의 신호 분포를 읽어 떡상 점수·라이프사이클 임계값을 추천합니다. (읽기 전용 — DB를 바꾸지 않음)
데이터 준비도
분포를 산출하기에 충분한 데이터가 모였습니다. 아래 권장값을 검토 후 적용하세요. (데이터가 더 쌓이면 재실행해 미세조정)
떡상 점수 신호 분포
| 신호 | 표본 | p50 | p75 | p90 | p95 |
| 속도 smoothV (조회/일) | 237 | 253 | 1,317 | 5,098 | 13,694 |
| 급등 초과분 (surge−1) | 2 | 0.75 | 0.93 | 1.04 | 1.07 |
| 가속 초과분 (accel−1) | 114 | 0.43 | 0.76 | 1.20 | 1.66 |
| 구독비 subRatio | 237 | 0.0024 | 0.0087 | 0.0282 | 0.0599 |
권장 $SCORE_CFG (정규화 기준점 = 해당 신호의 중앙값)
속도 기준 mom_ref
현재 3,000
→
권장 250
급등 기준 surge_ref
현재 1.50
→
권장 0.75
구독비 기준 sub_ref
현재 0.0100
→
권장 0.0024
가속 기준 accel_ref
현재 0.80
→
권장 0.43
$SCORE_CFG = [
'mom_ref' => 250.0,
'surge_ref' => 0.75,
'sub_ref' => 0.0024,
'accel_ref' => 0.43,
'recency_flat' => 14.0, 'recency_scale' => 30.0,
'w_mom'=>1.0, 'w_surge'=>1.6, 'w_sub'=>1.4, 'w_accel'=>1.0,
'smooth'=>3, 'score_scale'=>1000.0,
];
가중치(w_*)·최신성은 데이터가 아니라 취향이라 그대로 뒀습니다. 작은 채널을 더 띄우려면 w_surge·w_sub를 올리세요.
라이프사이클 신호 분포
| 신호 | 표본 | p50 | p75 | p90 | p95 |
| 추세비 trendRatio (후반/전반 속도) | 174 | 1.00 | 1.00 | 1.47 | 1.76 |
| 후반 속도 recentV (조회/일) | 174 | 138 | 430 | 1,770 | 5,556 |
권장 $LC_CFG (rise=p78 · cool=p30 · floor=p12)
상승 기준 (상위 ~22%) rise_ratio
현재 1.30
→
권장 1.10
둔화 기준 (하위 ~30%) cool_ratio
현재 0.70
→
권장 0.74
정체 하한 (조회/일) floor
현재 10
→
권장 12
$LC_CFG = [
'new_days' => 7,
'rise_ratio' => 1.10,
'cool_ratio' => 0.74,
'floor' => 12.0,
'window_days' => 21,
];
권장값 적용 시 분류 미리보기
현재값:
🚀 상승 21➡ 꾸준 96📉 둔화 40😴 정체 17🆕 신규 68
권장값:
🚀 상승 32➡ 꾸준 80📉 둔화 43😴 정체 19🆕 신규 68
적용법 · 위 권장 블록을 복사해 trending_feed.php 상단 $SCORE_CFG 와 lifecycle.php 상단 $LC_CFG 에 붙여넣으면 됩니다.
방법론 · 정규화 기준점(*_ref)은 해당 신호의 중앙값에 둡니다 — 그래야 점수가 한쪽으로 쏠리지 않고 영상 간 변별이 생깁니다. 라이프사이클은 후반/전반 속도비(trendRatio)의 백분위로 끊습니다: 상위 ~22%=상승, 하위 ~30%=둔화, 그 사이=꾸준, floor 미만 속도=정체.
※ 데이터가 쌓일수록 분포가 바뀌므로 주기적으로 재실행해 미세조정하세요. 표본이 적은 신호(가속·구독비)는 특히 잠정입니다.