일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 뷰티 광고
- ASAC5기
- Python
- pandas
- EDA
- text summarization
- selenium
- deep learning
- 크롤링
- SQL
- ASAC
- 머신러닝
- Crawling
- 파이썬
- Machine learning
- YouTube
- ML
- BFS
- Shorts
- JSON
- CCP자격증
- DFS
- join
- 파이썬 이미지 처리
- 백준
- ASAC14일차
- 데이터분석
- 프로그래머스
- sql eda
- cnn optuna
- Today
- Total
낼름낼름 동동이
뷰티 쇼츠 광고 조회수 예측 1: 개요 본문
ASAC의 ML 프로젝트를 마무리하고 나서, 마음이 맞는 몇몇 팀원들과 함께 프로젝트를 이어가기로 했다. 이번에는 메타데이터뿐만 아니라 시청각 데이터를 포함하여 조회수를 예측하는 머신러닝 모델을 만들어보려고 했다. 단순히 포트폴리오용이 아닌, 성능을 개선하여 학회에 제출할 수 있을 만큼 발전시키기로 목표를 세웠다.
실제로 발표된 논문을 보았을 떄, 유튜브 동영상의 조회수를 예측하는 모델 연구는 활발하게 이루어져 왔으나 2021년 7월 출시된 쇼츠의 조회수를 예측하는 선행 연구는 비교적 부족함에 따라 뷰티 광고 중 유튜브 쇼츠에 특화된 조회수 예측 모델을 만들어보기로 하였다.
내가 맡게 된 역할
팀원들과 회의를 통해 데이터 수집 및 전처리에 대한 역할을 분담했다. 데이터를 수집하고 전처리하는 과정은 나눠서 하기로 했고 사용할 데이터가 확정되면 추후 모델을 돌려보면서 파라미터 튜닝은 개인적으로 진행해서 결과를 비교해보기로 하였다. 나는 한 번도 다뤄본 적이 없는 청각 데이터에 관심이 생겨서 청각 데이터 처리를 전담하기로 하였다.
데이터 수집 방법
수집 방식 | 국내 뷰티 유튜버 192명 선정, YouTube Data API를 이용해 해당 유튜버의 광고 쇼츠 추출 (최종 2184개 쇼츠 선정) |
메타 데이터 | 쇼츠 게시일, 구독자 수, 광고 표현 방식, 채널 생성 기간 등 (총 7개 변수) |
시청각 데이터 | 썸네일 이미지의 HSV, 유튜버 외모의 매력도 , 유튜버 목소리의 기본 주파수 편차, 발화속도 각각의 평균값 등 (총 9개 변수) |
유튜브 API를 활용한 데이터 수집 경험을 바탕으로, 유튜브 영상 ID만 있으면 필요한 데이터를 수집하는 것이 매우 쉽다는 것을 알게 되었다. 그래서 첫 번째 과제는 뷰티 유료 광고 영상 ID를 수집하는 것이 되었다.
우선 국내에 존재하는 뷰티 쇼츠 유튜버를 선정해야 했는데, 이 과정에서는 일부 수작업이 필요했다. 이렇게 할 수밖에 없었던 이유는 두 가지 문제 때문이었다.
- 유튜브 API에서는 '뷰티 카테고리' + '쇼츠' + '국내 영상' + '유료 광고 포함' 필터를 걸어서 영상 ID를 찾으면 모든 영상을 가져오지 않고 일부만 가져오는 문제가 있었다. 우리가 생각하는 국내 영상이 아니거나, 유료 광고임에도 불구하고 유료 광고 필터에 걸리지 않는 등 API상의 문제였다.
- 한 번에 가져올 수 있는 영상이 50개로 제한되어 있고, YouTube API에서 제공하는 NextToken을 활용해 51번째 영상을 수집하려고 할 때, API가 반환하는 영상은 1050번째 영상으로, 각 페이지네이션 토큰에 담긴 영상 개수가 50개를 훌쩍 넘는 문제가 있었다. 즉, 51번째 영상 부터 999번째 영상은 수집이 안되는 문제이다.
이러한 두 가지 이유로 인해, 뷰티 유튜버를 하나하나 검증하면서 수집했다. 총 192명의 뷰티 유튜버를 수집했고, 그들의 유료 광고 포함 영상 2184개의 영상 ID를 수집하는 데 성공했다.
모델링
모델의 종속 변수는 쇼츠의 조회수로, 편차에 따른 학습 저하를 예방하고자 자연로그를 취해 구하였다. 전체 데이터 중 1747개를 학습, 437개를 평가 데이터로 분리했고 모든 모델의 목적함수로는 평균 오차 제곱(MSE)을 채택했다. 최종적으로 XGBoost 회귀 모델이 MSE 1.36으로 가장 우수한 성능을 기록하는 결과를 만들어내었다.
RandomForest | XGBoost | 선행 연구 | |
MSE | 1.45 | 1.36 | 5.03 |
프로젝트 진행 중 작성했던 코드에 대한 내용은 다음 글에서 소개하도록 하겠다.
전체 코드는 Github에서도 확인해볼 수 있다.
2024.06.15 - [ASAC_빅데이터분석/3. 프로젝트] - 뷰티 쇼츠 광고 조회수 예측 2: 음원 데이터 수집
'데이터분석 > 프로젝트' 카테고리의 다른 글
[ASAC 0703] 프롬프트 기반 게임 아트 생성AI 프로젝트 기획 (0) | 2024.07.03 |
---|---|
[ASAC 0702] WWH_Yelp EDA 1차 (0) | 2024.07.02 |
[ASAC 0628] 우형_연계 프로젝트 시작 : GIT 설치 (0) | 2024.06.28 |
뷰티 쇼츠 광고 조회수 예측 3: 데이터 전처리 + 모델링 (2) | 2024.06.15 |
뷰티 쇼츠 광고 조회수 예측 2: 음원 데이터 수집 (0) | 2024.06.15 |