Airbnb regression
-
Author
hyoseupkwon -
Category
Education
-
view
35 -
download
0
Embed Size (px)
Transcript of Airbnb regression

Airbnb 가격 예측 회귀분석

1. 분석동기 및 데이터 설명
Airbnb에 등록한 각 도시 별 숙소의 ‘Price’와 그것을 결정짓는 중요
한 요인이 무엇인가를 살펴보기 위하여 실시하였다. 또한, 데이터가
다양한 피처를 갖고 수도 적합했기 때문에 분석에 용이할 것이란 점
도 분석을 시작하는 데 큰 동기가 되었다.
1. 분석동기
각 도시 별 데이터는 ‘Tomslee’ 라는 블로거가 크롤링한 데이터를
활용했으며, ‘room type’, ‘city’, ‘reviews’, ‘price’ 와 같은 각 숙소
의 특징을 나타내는 Feature를 갖고 있으며 이와 더불어 ‘Cleaning
Fee’, ‘Check in’, ‘Check out’ 과 같은 정보를 얻기 위하여 크롤링을
통하여 독자적인 데이터셋을 구성했다.
2. 데이터 설명

2. 데이터 전처리
각 instance는 카테고리 Feature를 많이 포함하고 있어, 이들
을 One-Hot-Encoding 하였다.
1. 카테고리 데이터 전처리
Others
Internet Kitchen Detector

2. 데이터 전처리
각 데이터 별 결측치는 크게 2가지 유형으로 발생했다. 첫 번째
는 크롤링을 할 시기에 부킹이 되어있어 접속 차단이 되어 발생한 결
측치고, 두 번째는 자료 자체가 갖고있는 결측치다.
첫 번째 유형으로 발생한 결측치는 각 instance 당 결측
Feature가 10개가 넘었때문에 제거하였고, 두번째 유형으로 발생한
결측치는 최빈값을 통해 보충했다.
2. 결측치 처리
3. 스케일링 및 로그변환
마지막으로 정수 데이터의 경우 퍼포먼스 향상을 위하여
Scaling을 실행했다. 또한 잔차들이 등분산성을 만족시키기 위하여
y값인 ‘Price’를 Log변환 시켰다.

2. 데이터 전처리
- Log변환 전과 후의 ‘Price’ 분포 비교
변환 전 잔차 분포 변환 후 잔차 분포

3. 모델링
전처리 후 Statsmodel class를 활용하여 기초모형을 설정했다. 수정
R-squared 값은 0.621, AIC는 22630의 값을 얻을 수 있었다.
1. 모델링

3. 모델링
해당 모형은 아웃라이어를 제거하지 않은 모형으로 Fox' Outlier
Recommendation 의 기준을 넘는 값들을 살펴보았고,
Fox' Outlier Recommendation을 적용하여 모델을 수정하였다.
그 결과, 수정 R-squared는 0.695, AIC는 14680을 얻어 모델 성능
이 향상된 것을 확인할 수 있었다.
2. 아웃라이어 제거

3. 모델링
한편, 앞서 살펴본 2개의 모델 모두 다중공선성이 나타났다. 이 문제
점을 해소하기 위하여 2가지 방법을 고려했다. 첫 번째는 Heatmap
을 통하여 독립변수간 상관관계를 파악하여 중요도가 낮은 종속변수
를 제거하는 것이었다.
3. 다중공선성 제거

3. 모델링
아래에 나타난 모형은 'Beds, bedrooms, Switzerland,
Private_room'을 제거한 후에 만든 모형으로 수정 R-squared 값과
AIC값은 이전보다 안 좋아졌지만, 다중공선성을 나타내는 지표인
Conditional number는 1.76e+16 에서 11.8로 크게 줄어들었다.
3. 다중공선성 제거

3. 모델링
또한, Explained variance 가 0.8 이상이 되도록 차원의 수를 설정하
여 PCA를 한 결과 3개의 차원으로 줄일 수 있었고, 다음과 같은 모
형을 얻을 수 있었다.
3. 다중공선성 제거

3. 모델링
최종모형은 PCA를 한 모형으로 선택했다. 그 이유는 미세하나 성능이
더 좋았고, RMSE값 또한 작았기 때문이다. 해당 모형을 Cross-
Validation 한 결과 Performance 는 다음과 같다.
4. 최종모형 선택

4. 결론
- 모형을 통해서 추정하고자 했던 Airbnb의 1박당 가격은 숙소의 전
체 평점, 욕실 수, 쉐어드 룸 객실타입, 추가인원 당 추가요금, 화재감
지기 여부, 주방 유무, Facility1, 2(침대 갯수, 침실 수, 최대수용인원),
City1, 2, Room(숙소의 타입 - 개인실, 숙소전체)에 영향을 받는 것으
로 분석되었다. 분석 전 유효할 것이라 생각했던 슈퍼호스트 여부 및
리뷰 수는 최종 모형에서 제외되었다. 또한, 다중공선성 문제를 해결
하여 안정적으로 모형을 사용할 수 있다고 생각한다.

4. 결론
- 최종모형의 Predicted Value과 Target Value의 Scatter Plot