[도서 리뷰] 헤드 퍼스트 데이터 분석 ( Head First Data Analysis )
[패스트캠퍼스]해외 영화의 매출액 예측하기
1. 데이터 사이언스 SCHOOL
프로젝트 목표
투자자가 수입할 영화를 결정하는데 도움이 될만한 회귀 분석 모형을 만든다.
따라서 분석에 사용할 독립 변수는, 영화 제작시점에서만 알 수 있는 정보로 제한한다.
이를 통해 국내에서 흥행한 외화의 요소에 대해 알아보고, business insight를 도출해낼
수 있을것이라 기대한다.
Workflow
해외 영화의 매출액 예측하기
4인 팀 project / 2016.01 ~ 2016.03
포트폴리오 개요
Source Code: https://github.com/haesoly/predict_movie_sales
- 프로젝트 목표
- Workflow
- Data 설명
- Issue
- 최종 모형
- 결과 해석
Data구하기 전처리 분석 모형 검증
1. 크롤링: BeautifulSoup 패키지
2. DB 설계
3. AWS서버내의
Mysql에 DB저장
1. OLS 선형회귀분석
: statsmodels 패키지
2. RandomForestRegressor
이용해 변수 중요도 구하기
Cross-validation
2. 데이터 사이언스 SCHOOL
Dataset
- 2010년 이후, 7년동안 미국, 한국에서 동시 개봉한 외화 : 878편
- 네이버 영화, BOX OFFICE MOJO 사이트 크롤링
- 추가 작업: kaggle imdb 데이터로 nan값 채움
- nan값이 없는 343편의 영화를 분석 대상으로 선정
X : 독립 변수
Y : 종속 변수
변수 자료형 변수 설명
1 장르 Category 19개의 카테고리 값
인코딩 방식: 다중값을 가질 경우,
해당 장르 가중치를 1로 주는 대신
‘1 / 장르갯수’ 로 부여
2 관람 등급 Category 4개의 카테고리 값
3 시리즈물 Numeric 전작 시리즈 영화 매출액의 합
4 영화 제작비 Numeric 달러
5 감독 지수 Numeric 10년동안 국내에서 제작한 영화
매출액의 합
6 배우 지수 Numeric 5년동안 국내에서 출연한 영화
매출액의 합
7 개봉계절 Category 4개의 카테고리 값
변수 자료형 변수 설명
1 국내 매출액 Numeric 달러
3. 데이터 사이언스 SCHOOL
Issue 1. Overfitting
예상 원인: 장르 독립 변수의 unbalanced data (19개의 카테고리)
Issue 2. Numeric 값 간의 다중공선성 제거
해결방법: 카테고리 제거/통합
해당 장르의 개수가
data개수의 10% 미만에
해당하는 경우:
해당 장르 제거
변수간 correlation을 구한뒤
유사성이 높아보이는
장르 통합
19개의 장르 -> 9개의 장르
해결방법: 변수 선택
PCA시도:
PCA로 차원축소를 할 경우,
정보를 지나치게
삭제한다고 판단해,
변수 선택 방법 이용
p-value와
RandomForestRegressor로
확인해본 결과
매출액에 가장 영향력이 높은
변수라고 생각한,
project_budget(예산) 사용
4. 데이터 사이언스 SCHOOL
최종 모형
[변수 설명]:
①예산 ②시리즈 ③개봉계절: 봄 ④관람등급: 청소년 관람불가 ⑤판타지
①
②
③
④
⑤
교차 검증의 R 스퀘어 평균값은
0.51로 overfitting 제거 확인
결과 해석
1. 어떤 변수가 가장 매출액에 영향을 미칠까?
: 예산이 높은 영화 중요 =스케일 큰 영화
2. 우리나라 사람들은 어떤 장르의 외화를 선호할까?
: 판타지, 액션 영화 장르이면 흥행할 확률이 높아진다
3. 배우, 감독 중 어떤 요소를 더 중요시할까?
: 배우보다 감독이 영향을 미친다. 즉, 감독을 보고 선택하기보다는
우리나라에 흥행한 영화를 한번이라도 제작한 감독이
또 성공할 확률이 높다
4. 개봉 계절과도 관련이 있을까?
: 봄에는 매출액이 감소할 확률 높아지므로, 피하는 것이 좋다