Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

아파트 시세,어쩌다 머신러닝까지

2,386 views

Published on

데이터야놀자 2018 발표자료
아파트 시세,어쩌다 머신러닝까지

Published in: Software

아파트 시세,어쩌다 머신러닝까지

  1. 1. 아파트 시세, 어쩌다 머신러닝까지… by Yun, Seok-joon
  2. 2. 자기소개 윤 석 준 (Seok-joon, Yun) (주) 직방 개발자 아파트 시세 담당 https://www.facebook.com/seokjoon.yun.9 https://devstarsj.github.io seokjoon.yun@gmail.com
  3. 3. 평범한 백엔드 개발자 주요 관심사 - AWS Lambda와 API Gateway를 이용해서 Serverless Web API 만들기 - Monolith to Serverless using AWS Lambda - AWS Lambda + API Gateway Binary Response - Image Converter using AWS Lambda (typescript) + Akamai CDN - Excel Downloader using AWS Lambda (python) - Html to PDF using AWS Lambda (typescript)
  4. 4. Data Science 관련 스터디 https://www.facebook.com/thepsybus
  5. 5. 도메인 지식
  6. 6. 부동산 팟캐스트
  7. 7. 부동산 서적
  8. 8. 부동산 강의 • 골목대장 지역분석 45기 : 2017.10 ~ 2017.12 정규강의 •레오와 함께하는 8.2대책 대응법과 대출 활용법 : 2017.09 •소액부동산 경매 투자전략과 투자지역 찾는 방법 by 미소영 : 2017.10 •서울 부동산의 미래' 빠숑 김학렬 저자강연 : 2017.10 •엘도님의 엑셀차트 입주물량 온라인 특강 : 2017.11 •부동산효녀 아임해피의 "똑똑한 부동산투자" 저자특강 : 2018.02 •바람의색상님의 실전투자 KNOWHOW : 2018.02 특강 • 어벤져스쿨 부동산 컨퍼런스 : 2017.10 • 부동산 트랜드 빅쇼 1차 : 2018.03, 2차 : 2018.06컨퍼런스
  9. 9. 구) 으뜸 공인중개사사무소 대표 공인중개사
  10. 10. 논리적 프로그램 + 수학적 통계적 계산
  11. 11. 미래 시세 예측 X 과거 시세 Interpolation
  12. 12. 아파트 시세, 어떻게 머신러닝으로… by Yun, Seok-joon
  13. 13. 시세 데이터 • raw data : 1100만 건 • train data : 2000만 건 • predict data : 3800만 건 피처 개수 • 30 ~ 250 개
  14. 14. AWS EC2 using custom AMI • AWS Deep Learning AMI를 이용해서 custom AMI 생성 • 모델 및 필요한 라이브러리 설치 • AWS, GCP, Git credential 정보 • Git repository • 실행 스크립트 • git pull & run jupyter notebook • ec2 stop / terminate
  15. 15. AWS EC2 using custom AMI
  16. 16. AWS EC2 using custom AMI
  17. 17. AWS EC2 using custom AMI
  18. 18. Google Sheet API Google API
  19. 19. Google Sheet API Google API
  20. 20. Pipeline using Jupyter Notebook
  21. 21. Slack Notification
  22. 22. Machine Learning Pipeline on Cloud Platform 학습 데이터 생성 모델 생성 (fit) 결과 생성 (predict) 분석 / 시각화 Parquet Parquet pickle Hyperparameter Tuning
  23. 23. Hyperparameter Tuning using AWS SageMaker https://devstarsj.github.io/2018/09/15/aws-sagemaker-hpt-tutorial - Grid Search - Randomize Search - Bayesian Optimization
  24. 24. Hyperparameter Tuning using AWS SageMaker https://devstarsj.github.io/2018/09/15/aws-sagemaker-hpt-tutorial - Grid Search - Randomize Search - Bayesian Optimization
  25. 25. AWS SageMaker https://devstarsj.github.io/2018/09/15/aws-sagemaker-hpt-tutorial • 예제코드만 따라해봐도 쉽게 사용이 가능하다. https://github.com/awslabs/amazon-sagemaker-examples • 비용이 비싸다. • On Demand Instance만 지원 (Spot 미지원) • 각각의 Train 작업별로 별도 Instance를 생성한다. 1대로 설정해라.
  26. 26. 아파트 시세, 어디까지 머신러닝을… by Yun, Seok-joon
  27. 27. 첨부터 끝까지 다 해봤다. • 데이터 수집, 정제 • Hyperparameter Tuning • 모델 적용 • 예측 데이터 생성 • 분석 / 시각화 • API 개발
  28. 28. 그중 가장 재밌었던 것은 • Pipeline 작업 • 작업을 작은 단위로 분리 • 코드 모듈화 그래서 내가 하고싶은 것은 Automated Machine Learning Pipeline on Cloud Platform 구축
  29. 29. 학습 데이터 생성 모델 생성 (train) 결과 생성 (predict) 분석 / 시각화 Parquet Parquet pickle Hyperparameter Tuning Machine Learning Pipeline on Cloud Platform (as-is)
  30. 30. Train (CV) #n 학습 데이터 생성 #n 학습 데이터 생성 #2 Automated Machine Learning Pipeline on Cloud Platform (to-be) 학습 데이터 생성 #1 분석 / 시각화 Ensemble (Stacking) Train (CV) #2 Train (CV) #1 Parquet ParquetHyperparameter Tuning #n Hyperparameter Tuning #2 Hyperparameter Tuning #1 서비스
  31. 31. CrossValidationModel on single machine https://github.com/DevStarSJ/Kaggler/blob/master/modules/CrossValidationModel.py class CrossValidationModel: def fit(self, model, data, n_splits=10, target_col = 'target', shuffle=True) def score(self, metric) def predict(self, data) def predict_stack(self, data) def predict_average(self, data) predict predict_stack predict_average
  32. 32. CrossValidationModel on Cloud 학습데이터 N-Fold Train Predict Train Predict Train Predict Train Predict Train Predict Train Predict Train Predict Train Predict Train Predict Train Predict 학습데이터 Stacking 학습데이터 …
  33. 33. 그중 가장 재밌었던 것은 • Pipeline 작업 • 작업을 작은 단위로 분리 • 코드 모듈화 그래서 내가 하고싶은 것은 Automated Machine Learning Pipeline on Cloud Platform 구축 Kaggle team 초대 환영합니다. seokjoon.yun@gmail.com 나머지 일들은 ? 동료가 필요합니다.
  34. 34. mailto://sj@zigbang.com
  35. 35. 더 나아가기 위해서는… • 통계학, 수학적 지식이 필요 -> 방송통신대 정보통계학과 편입 • 혼자라 외로워요. 내가 맞게 하고 있나요 ? -> 외부 활동/스터디 활발히 참가 • 회사일 이외의 데이터 분석 및 ML 기법 학습 -> Kaggle 대회 참가 및 Kernel 분석
  36. 36. Q & A 감사합니다.

×