귀퉁이 서재

캐글 필사 - 3. San Francisco Crime Classification 본문

캐글 (Kaggle)

캐글 필사 - 3. San Francisco Crime Classification

Baek Kyun Shin 2019. 10. 17. 10:50

샌프란시스코의 범죄에 대한 컴피티션입니다. (https://www.kaggle.com/c/sf-crime) 2003.1.6.부터 2015.5.13. 까지의 샌프란시스코에서 발생한 범죄에 대한 정보를 기반으로 분석을 해야 합니다. 훈련 데이터와 테스트 데이터는 매주 로테이션됩니다. 즉 1, 3, 5, 7,... 주는 훈련 데이터, 2, 4, 6, 8,..... 주는 테스트 데이터로 쓰입니다. 총 훈련 데이터는 약 870,000개입니다. 테스트 데이터까지 하면 170만 건입니다. 12년 동안 샌프란시스코에서만 170만 건의 범죄가 일어났다니.. '새삼 범죄가 많은 도시구나' 알게 되었습니다. Feature는 아래와 같습니다.

Dates - 범죄가 일어난 일시 
Category - 범죄 유형 (이 값이 Target variable임) 
Descript - 범죄에 대한 자세한 설명 
DayOfWeek - 요일 
PdDistrict - 경찰 관할 지역 명칭 
Resolution - 범죄 해결 여부 
Address - 범죄 발생 주소 
X - 경도(Longitude) 
Y - 위도(Latitude)

이 중 Descript와 Resolution은 테스트 데이터에는 없는 Feature입니다. 즉, 모델링하는데 필요 없는 Feature라는 뜻입니다.

본 분석을 위해서 Yannis Pappas의 커널 (Reference 1)을 참고했습니다. 모델은 LGBM을 사용했습니다. GBM은 하이퍼 파라미터가 굉장히 중요합니다. 하이퍼 파라미터에 따라 모델 성능이 달라지기 때문입니다. 하지만 어떤 하이퍼 파라미터로 세팅을 해주어야 하는지 결정하는 것은 쉽지 않은 작업입니다. 임의로 해줄 수도 없고 말이죠. 이를 해결하기 위한 방법 중 하나가 Bayesian Optimization입니다. 적절한 하이퍼 파라미터를 골라주는 기법입니다. 제 노트북에선 Bayesian Optimization을 하는 부분까진 다루지 않았습니다. 이는 추후 과제로 남기고 Yannis Pappas가 구한 하이퍼 파라미터를 그대로 활용했습니다. Bayesian Optimization에 대한 훌륭한 자료를 공유해드립니다. 설명이 정말 깔끔하고 이해하기 쉽게 잘 쓴 블로그 글입니다. (Reference 2)

깃헙을 참고해주시기 바랍니다.

References

Reference 1: Yannis Pappas Kernel

Reference 2: Bayesian Optimization 개요: 딥러닝 모델의 효과적인 hyperparameter 탐색 방법론

Comments