
"이 드라마, 뜰까요?"
업계 30년 관계자도 답하기 힘든 질문입니다. 배우 캐스팅이 시청률에 얼마나 기여하는지, 어떤 장르가 화제가 될지, 플랫폼 선택이 얼마나 중요한지 — 대부분은 감(感)으로 판단됩니다. "김수현이면 15%, 신인이면 5%" 정도의 어림짐작이 업계 표준이죠.
저는 이 감을 숫자로 만드는 일을 시작했습니다. 논문 6편과 한국 콘텐츠 산업 리포트들을 읽고, K-드라마 방영 전 흥행 예측 시스템 Hit-Predictor를 개발하고 있어요. 이 글은 그 중간 결산 — Hit-Predictor가 어떤 기술 원리로 돌아가는지 개략적으로 소개합니다. 코드를 모르셔도 괜찮도록 가능한 한 쉽게 풀었습니다.
참고로 제가 이 시스템으로 분석한 실제 사례는 [흥행 디코딩 #1] '21세기 대군부인'부터 '유미의 세포들3'까지 에서 보실 수 있어요. 거기선 "그래서 4월 어떤 드라마가 뜰 것 같은가"를 다뤘다면, 이 글은 "어떻게 그걸 계산했는가"를 다룹니다.
1. 흥행 예측은 왜 어려울까?
드라마 한 편 제작비가 수십억에서 수백억 원입니다. 이 투자가 어떤 결과를 낳을지 알면 좋겠지만, 보통은 방영 후에야 드러나죠. 주상필(2019)이 지적했듯이 시청률 절대치는 꾸준히 떨어지고 있고, 대체할 지표는 마땅치 않습니다. 동시간대에 경쟁하는 드라마 3~4편 중 어느 게 이길지, 펀덱스 화제성이 어떻게 움직일지, OTT에서 몇 주나 Top10을 지킬지 — 모두 방영 전엔 불확실합니다.
그래서 업계는 관성적으로 움직입니다. "아이유 캐스팅하면 안정적", "수목 로맨스는 여전히 잘 된다" 같은 휴리스틱이 의사결정의 뼈대예요. 이 휴리스틱들은 대부분 옛 데이터에서 만들어진 패턴인데, 2026년 현재의 시장은 지상파 평균 시청률 5% 이하, Netflix·Disney+ 오리지널 홍수, 글로벌 동시 공개가 일상인 환경으로 이미 바뀌었습니다. 예전의 감이 더 이상 잘 맞지 않는다는 이야기지요.
데이터 분석가로서 이 상황을 보면, 질문이 바뀝니다. "뜰까요?"가 아니라 "뜬다는 걸 어떻게 정의하고, 어떤 신호로 예측할까요?"
2. 기존 연구가 답한 방식
당연하다면 당연하게도 한국에는 이 질문에 답하려 노력한 연구들이 제법 쌓여 있습니다. 제가 특히 많이 참조한 6편을 간단히 소개할게요.
📘 주상필·홍준석·김우주 (2019) — RSI, 상대우위 지표
가장 중요한 논문입니다. 배우·PD·작가의 "과거 작품이 동시간대 경쟁작을 시청률에서 이겼는가"를 누적해서 개인별 RSI(Relative Superiority Index, 상대우위지수)를 계산합니다.
RSI(배우 A) = 승점 합계 ÷ 참여 회차 수
where 승점 = 1(이김), 0.5(동률), 0(짐)
간단하죠. 쉽게 말해 배우의 '승률'입니다. 논문은 이 방식으로 Naive Bayes 모델을 학습시켜 첫 회 시청률 상대우위 예측에서 84% 정분류율을 달성했습니다. 우리 Hit-Predictor의 cast_power, creator_power 축은 이 RSI 공식을 그대로 쓰되, 제가 두 가지를 확장했습니다(뒤에 설명할께요).
📘 최현종 외 (2017) — 데이터 마이닝으로 첫 회 시청률 예측
앞선 논문이 인용한 선행 연구입니다. 여러 변수 중 6개만이 예측에 유의미하다는 점을 밝혔어요: 방송사, 원작 유무, 총 회차수, 이전 시간대 드라마의 후반 25% 편수의 시청률, 여배우 전작 첫 회 평균 시청률, 연출자 수상 횟수.
특히 "이전 시간대 드라마의 후반 25% 시청률"은 lead-in 효과라고 부르는 현상인데, SBS 금토 10시에 지금 방영 중인 드라마가 잘 되면 그 다음 편성될 드라마도 첫 회 시청률이 자동으로 높아진다는 이야기예요. 시청자가 그 시간대에 TV를 켜는 습관이 만들어져 있기 때문입니다. Hit-Predictor는 이걸 platform_strategy 축의 내부 서브필드로 구현했습니다.
📘 남기환·성노윤 (2018) — 초기 시청시간 패턴으로 대흥행 예측
이 논문은 접근이 다릅니다. 방영 전이 아니라 방영 후 1~5회까지의 시청 데이터를 써요. 구체적으로는 "전체 방영 시간의 70% 이상을 시청하는 열혈 시청자"의 분포가 대흥행 드라마에서 비흥행 드라마보다 압도적으로 높다는 발견입니다.
이게 왜 중요하냐면, 방영 전 예측이 100% 정확할 수 없기 때문이에요. 방영 후에 실제 반응을 보고 예측을 업데이트하는 레이어가 필요합니다. Hit-Predictor의 prediction/updater.py 모듈이 바로 이 아이디어 — 1~3회 시청률과 주간 펀덱스 화제성이 들어오면 Bayesian-style(새 데이터가 들어오면 기존 분석 수정)로 사전 예측을 보정합니다.
📘 Ahn et al. (2017) — 빅데이터가 시청률 예측을 돕는가
20부작 한국 드라마 하나(「신사의 품격」)를 대상으로 SNS 버즈(입소문, 관심도)와 시청률의 관계를 회귀분석한 논문입니다. 결론은 CGM(소비자 생성 미디어) 변수들이 R² 0.64로 유의미하지만, 매체별로 예측력이 크게 다르다는 것. 2010년대 초 한국에서 유행했던 me2DAY, DaumYozm 같은 플랫폼이 의미 있었고, 의외로 Twitter는 유의미하지 않았어요.
핵심 시사점은 "버즈를 한 덩어리로 보지 말고, 매체별로 쪼개서 봐야 한다"입니다. Hit-Predictor의 pre_buzz 축은 단일 숫자가 아니라 펀덱스(FUNdex) 등급, 네이버 검색량, 티저 조회수, SNS 언급량을 각각 체크하는 구조로 설계되어 있어요.
📘 강명현 (2019) — 가치평가지표는 시청률과 다르다
이 연구가 던진 역발상이 멋집니다. "시청률이 높으면 화제성도 높다"가 상식인데, 실제 데이터에서는 다른 양상이 나타난다는 거예요.
- 매체별: 지상파 시청률은 확연히 높지만, 가치평가지표(버즈)에선 채널 간 차이 없음
- 편성별: 일일드라마 시청률 최고, 하지만 수목드라마 화제성이 최고
- 장르별: 가족/휴먼 시청률 최고, 하지만 판타지/SF·미스터리 화제성이 최고
- 회귀분석: 가치평가지표가 PC VOD·모바일 VOD 후속 시청의 77%를 설명 (시청률 단독보다 예측력 높음)
Hit-Predictor가 Triple KPI 구조를 채택한 근거가 여기에 있습니다. 첫 회 시청률 예측, 평균 시청률 예측, 동시간대 상대우위 예측을 별개 트랙으로 돌립니다. 드라마가 가치 있다는 것을 한 개의 숫자로 단순화하지 않아요.
📘 윤용아 (2020) — <동백꽃 필 무렵>의 성공 요인
이 논문은 통계가 아니라 질적 분석입니다. 왜 <동백꽃 필 무렵>이 비지상파 역대 1위까지 올랐는지를 장르 혼합, 캐릭터 변형, 가상 공간 설정 세 축으로 풀어냅니다. "멜로드라마의 틀에 미스터리 스릴러를 유기적으로 혼합해 긴장감을 유지했다"는 관찰이 특히 좋았어요.
Hit-Predictor의 genre_market_fit 축에 장르 혼합도를 반영한 이유가 이 논문 때문입니다. "범죄"와 "스릴러"가 붙은 드라마가 2025년 시장에서 왜 강세인지, 단일 장르의 드라마가 왜 고전하는지를 설명하려면 혼합 구조를 봐야 하거든요.
그 외에도 전익진·은혜정 (2014)의 연관규칙 분석이 "가을 시작 드라마 시청률이 유의미하게 높다"는 시청률의 계절 요인을 밝힌 점도 인상깊었네요.
3. 그런데 기존 논문만으론 부족합니다 — 2026년 현재의 상황
위 논문들, 대부분 2014~2020년 시기에 쓰였습니다. 10년 전과 지금의 K-드라마 생태계는 딴 세상이에요.
첫째, 지상파가 더 이상 기준이 아닙니다. 주상필(2019)의 RSI는 지상파 3사 밤 10시대만 분석했습니다. 왜냐하면 동시간대 경쟁작이 있어야 승률을 계산할 수 있기 때문이에요. 그런데 2025년 히트작 대부분이 Netflix(<폭싹 속았수다>, <오징어 게임>), Disney+(<무빙>), tvN 월화 10시대 같은 비지상파 슬롯이에요. Netflix 오리지널은 시청률이 아예 없고, tvN 월화 22시 20분 드라마는 "지상파 5.5%" 벤치마크로 비교하면 다 "패배"로 찍힙니다. 현실과 안 맞죠.
둘째, 시간이 지나면 배우 파워가 약해집니다. 논문은 "최근 5년" 전작을 hard cutoff로 잡습니다. 정확히 5년 안은 100%, 밖은 0%예요. 그런데 이건 지나치게 비연속적입니다. 6년 전 히트작이 한 순간에 의미를 잃을 리가 없죠.
셋째, 지상파 시청률 기대치가 채널·시간대별로 크게 다릅니다. SBS 금토 10시는 평균 8% 기대 슬롯이지만 tvN 월화 10시 20분은 3% 전후가 정상입니다. 같은 4% 시청률이 전혀 다른 의미라는 거예요.
이 세 가지를 해결하지 않으면 논문 방법론은 2026년 현실에서 그냥 작동하지 않습니다.
4. 제가 추가한 3가지
🔧 (a) OTT 환산 공식
Netflix가 2021년 11월부터 공식 주간 Top10 데이터를 XLSX로 무료 공개한다는 사실, 알고 계셨나요? 저는 얼마 전에야 알았어요. 주소는 www.netflix.com/tudum/top10이고 누구나 브라우저로 다운로드할 수 있습니다.
이걸 이용해서 Netflix 순위를 지상파 시청률로 환산하는 공식을 만들었어요.
virtual_rating = base_rank_score × duration_factor × region_factor
base_rank_score: Top1 = 15, Top2~3 = 10, Top4~7 = 7, Top8~10 = 5
duration_factor: 1주 = 1.0, 2~3주 = 1.3, 4~7주 = 1.7, 8주+ = 2.0
region_factor: 한국 Top10만 = 1.0, 한국+글로벌 Top10 = 1.3
상한: 35.0
검증은 실제 히트작 몇 편을 넣어봤을 때 감각적으로 맞느냐로 했습니다.
- 오징어 게임 시즌1 (Global 1위, 12주 체류): 35.0 (상한 도달, 지상파 대히트급)
- 폭싹 속았수다 (한국 1위, 5주 체류): 33.2 (대작 드라마 등가)
- 선재 업고 튀어 (한국 1위, 5주 체류): 25.5 (지상파 히트 수준)
숫자가 납득될 만하게 나옵니다. 이제 Netflix 오리지널도 RSI 계산에 들어갈 수 있게 됐어요.
🔧 (b) 시간 감쇠 가중치
"5년 안/밖" hard cutoff를 지수 감쇠(exponential decay)로 대체했습니다. 정보검색(Information Retrieval) 분야의 BM25 freshness boost, 검색엔진의 PageRank damping factor와 같은 계열의 기법이에요.
def time_decay_weight(years_ago, decay_rate=0.15, full_years=5):
if years_ago <= full_years:
return 1.0
return math.exp(-decay_rate * (years_ago - full_years))
결과를 보면:
- 0 ~ 5년 전: weight = 1.000 (풀 가중치)
- 7년 전: 0.741
- 10년 전: 0.472 (반으로 깎임)
- 15년 전: 0.223
- 20년 전: 0.105 (거의 무시)
아이유의 <나의 아저씨>(2018)가 8년 전작인데 통째로 버려지지 않고 64% 가중치로 RSI에 기여합니다. 수학적으로는 미분 가능한 함수라 나중에 decay_rate를 머신러닝 모델 파라미터로 자동 학습시킬 수도 있어요.
🔧 (c) 채널 × 시간대 벤치마크 세분화
"지상파 5.5% = 승리 기준"을 3단 계층 벤치마크로 쪼갰습니다.
# Level 1: 채널 × 요일 × 시간대 (최정밀)
("SBS", "금토", "22:00"): 8.5, # 지상파 프라임
("tvN", "월화", "22:20"): 3.0, # 선재 업고 튀어 슬롯
("JTBC", "토일", "22:30"): 4.0,
# ...
# Level 2 (요일까지만), Level 3 (채널만), Level 4 (전체 5.5%)
# → 계층적 fallback
이걸 적용하자 변우석 <선재 업고 튀어>(2024, tvN 월화 22:20, 평균 4.1%)의 RSI가 "패배"(0.0)에서 "완승"(1.0)으로 바뀌었어요. 같은 4.1%라도 그 슬롯에선 압도적 승리라는 게 정확한 해석이니까요.
5. Hit-Predictor 전체 구조 — 6축 × Triple KPI
지금까지의 장치들이 어떻게 하나의 시스템으로 묶이는지 설명드릴게요.
6축 (Axes)
드라마 한 편의 흥행 잠재력을 6가지 축으로 나눠 각각 1~10점으로 평가합니다. 각 축은 RSI·필모그래피·외부 데이터로 자동 산출되는 걸 목표로 설계했어요.
- cast_power — 주연 4인의 평균 RSI + 수상 + SNS
- creator_power — 감독 RSI + 작가 RSI + 수상
- ip_power — 원작(웹툰/웹소설/시즌제)의 팬덤 규모
- platform_strategy — 플랫폼 규모 + lead-in + 글로벌 동시공개
- pre_buzz — FUNdex 등급, 검색량, 티저 조회수 (시간 정규화 적용)
- genre_market_fit — 2025 장르 트렌드 + 계절 요인 + 장르 혼합도
Triple KPI
강명현(2019)의 "시청률 ≠ 가치평가지표" 발견을 반영해서, 하나의 종합점수가 아니라 세 개의 다른 예측 트랙을 둡니다.
- first_ep_v2 — 첫 회 시청률 예측 (가중치: 캐스트 13, 사전화제성 20 강조)
- avg_v2 — 평균 시청률/롱런 예측 (가중치: 크리에이터 15, 장르 13 강조)
- rsi_victory_v2 — 동시간대 상대우위 예측 (가중치: 캐스트 RSI 16, 크리에이터 RSI 16 강조)
최종 종합 H-Score는 first_ep × 0.30 + avg × 0.50 + rsi_victory × 0.20입니다. 평균 시청률이 가장 중요한 이유는 첫 회는 변동성이 크지만 평균은 작품성과 시청 충성도를 종합적으로 반영하기 때문입니다.
6. 데이터는 어디서 오는가 — 3단 수집 파이프라인
예측이 의미 있으려면 결국 데이터 품질이 관건입니다. 제가 고생한 끝에 정착한 수집 구조는 이렇습니다.
Tier 1: TMDB API (뼈대)
The Movie Database는 글로벌 영상 콘텐츠 DB예요. 배우 이름을 한국어로 검색하면 필모그래피 목록과 기본 정보를 받아올 수 있습니다. 무료·안정적이고, 제가 시험해본 결과 한국 배우 95% 정도는 커버됩니다. 다만 한계가 있어요 — TMDB는 시청률 데이터가 없습니다. 영화는 박스오피스로 대체되지만 TV 드라마는 비는 자리가 많아요.
Tier 2: 위키백과 ko API (살)
한국어 위키백과는 의외로 이 공백을 메우는 구원자였어요. 한국 드라마 페이지의 인포박스에 방영일, 요일, 시간, 평균 시청률, 최고 시청률이 구조화된 데이터로 존재합니다. 공식 API로 조회하면 되고, API 키도 필요 없어요.
처음엔 나무위키 크롤링을 고려했는데, 위키백과가 훨씬 안정적이고 라이센스도 명확합니다(CC BY-SA). 저도 이걸 깨닫기 전엔 돌아갔어요.
Tier 3: 나무위키 fallback (보완)
위키백과에 없는 OTT 오리지널 최신작이나 마이너 드라마는 나무위키가 여전히 우세합니다. 다만 나무위키는 API가 없고 HTML 스크래핑이라, User-Agent를 명시하고 초당 0.5회 이하로 느리게 긁는 등 서버 부담을 줄이려 신경 썼어요. 라이센스도 CC BY-NC-SA라 비상업·개인 연구 용도에 한해 사용합니다.
추가 데이터 소스
- 닐슨 코리아: 주간 TV 시청률 (지상파/종편/케이블). 이용약관상 재배포는 불가해서 크롤러 코드만 공개하고 데이터는 로컬에만 보관합니다.
- Netflix Top10: 공식 XLSX, 재배포 자유
- 굿데이터 FUNdex: 주간 화제성 리포트
7. 한계 — 그리고 다음 목표
솔직히 아직 완전하지 않습니다. 여러 구멍이 있어요.
첫째, 신인 배우 RSI 부재 문제. 데뷔작 직전의 배우는 필모그래피가 비어서 RSI 계산 불가능합니다. 현재는 기본값 0.3(중립)으로 처리하지만, 이건 정보 손실이 큰 편이에요. 향후 소속사 영향력, 팬덤 크기, 오디션 수상 이력 같은 대체 지표를 넣을 예정입니다.
둘째, 정성적 요소가 전혀 안 들어갑니다. 지금 Hit-Predictor가 측정하는 건 배우 파워, 플랫폼, 화제성 같은 외부 정량 지표뿐이에요. 그런데 드라마가 진짜 뜨거나 망하는 결정적 이유는 "이야기가 재밌느냐, 캐릭터에 공감되느냐, 세계관에 몰입되느냐"입니다. 윤용아(2020)가 <동백꽃 필 무렵>을 분석한 것처럼, 장르 혼합과 캐릭터 변형을 정량화할 수 있어야 진짜 예측입니다.
제 다음 목표는 이것입니다. 첫 회를 감상한 뒤, 작품성·서사 구조·연출 문법을 AI가 분석해서 H-Score를 보정하는 레이어를 붙이는 것. 제가 이전에 만든 컷잘알(장면 분석 AI)에서 시도했던 작업의 연장선이에요. 대본의 텐션 구조, 장면 전환 리듬, 대사의 밀도 등이 반영되면 예측 정확도가 또 한 단계 오를 것으로 봅니다.
셋째, TVING/Wavve/쿠팡플레이는 공식 데이터 부재. Netflix만 Top10을 공개합니다. 국내 OTT는 자체 차트가 없어서 화제성 지표(펀덱스)로 간접 측정해야 해요. 이건 구조적 한계라 당장은 해결이 어렵습니다.
이어지는 글
이번 글은 기술 전반을 훑었습니다. 다음 편부터는 각 기술을 조금 더 깊이 파고들 예정이에요.
- #2 왜 Neural Network보다 Naive Bayes가 이겼나 — 주상필 논문에서 NB 84% vs NN 58%로 예상 밖 역전이 일어난 이유. small data의 curse of dimensionality
- #3 한국 콘텐츠를 글로벌 DB로 분석하며 깨달은 5가지 함정 — TMDB의 order 필드가 쓸모없는 이유, 번역 API가 덫이 되는 이유 등
- #4 Bayesian Update로 방영 후 예측을 매주 갱신하는 법 — prior/posterior, 남기환(2018) 초기 시청시간 패턴의 단순화 구현
실제 4월 K-드라마 8편에 이 시스템을 적용한 결과는 [흥행 디코딩 #1] '21세기 대군부인'부터 '유미의 세포들3'까지에 있습니다. 흥행 예측 콘텐츠 자체에 관심 있으시면 그 시리즈를 이어 읽어주세요.
전체 코드와 데이터는 GitHub 레포에서 확인하실 수 있어요. 피드백과 PR은 언제든 환영입니다.
참고 자료
- 주상필·홍준석·김우주 (2019). TV드라마 참여 인물의 계량 능력지표에 기반한 첫 회 시청률 상대적 우위 예측. 한국콘텐츠학회논문지, 19(6).
- 최현종·박영선·정수미·김화종 (2017). 데이터 마이닝을 통한 지상파 드라마 첫 회 시청률 예측 모형 연구. 한국정보기술학회논문지, 15(1).
- 남기환·성노윤 (2018). 초기 시청시간 패턴 분석을 통한 대흥행 드라마 예측. 지능정보연구, 24(4).
- Ahn, Ma, Lee, Sura (2017). Do big data support TV viewing rate forecasting? A case study of a Korean TV drama. Information Systems Frontiers, 19.
- 강명현 (2019). 가치평가지표를 통한 드라마 시청성과 측정. 한국방송학보, 33(5).
- 윤용아 (2020). TV 드라마 <동백꽃 필 무렵>의 성공 요인 분석 — 대본과 그 장르를 중심으로. 영상기술연구, 32.
- 전익진·은혜정 (2014). 연관 규칙 분석을 이용한 시청률 분석 연구. 한국언론학보, 58(5).
- 굿데이터코퍼레이션 FUNdex 리포트 (2024-2026).
데이터 출처
- TMDB (https://www.themoviedb.org/)
- 위키백과 한국어판 (https://ko.wikipedia.org/)
- Netflix Top 10 (https://www.netflix.com/tudum/top10/)
- 닐슨 코리아 (https://www.nielsenkorea.co.kr/) — 크롤러는 개인 연구용
'Project' 카테고리의 다른 글
| [내배캠 데이터 3기]최종 프로젝트 계획안 작성 (4) | 2024.09.25 |
|---|---|
| 실전 프로젝트 정리 겸 대본 작성 (0) | 2024.09.21 |
| [실전 프로젝트]Amazon Sales Overview (0) | 2024.09.19 |
| [내배캠 프로젝트]피드백 분석: 기초 프로젝트 회고와 개선점 (0) | 2024.08.31 |
| [내일배움캠프 프로젝트] (1-1) 스포티파이 유저행동 분석: ON AIR와 음악 서비스 분석 (3) | 2024.08.21 |