logo
Published on

아파트 실거래가 예측 회고

241115-114657

대회 소개

AI를 공부하기 위해 패스트 캠퍼스에서 진행중인 Upstage AI Lab을 수강하고 있다. 이제 학습을 시작한지 한달이 조금 지났고, 첫번째 내부 대회가 시작되었다. 기간은 11월 4일부터 14일까지 약 2주간 진행되었다. 주제는 아파트의 실거래가를 예측하는 Linear Regression 문제였다. 5명이 한팀으로 진행했다.

중점을 두었던 것

  • 학습을 위한 대회이고, 상금이 있는 것이 아니기 때문에 점수보다는 개개인의 성장이 중요했다.
  • 서로가 서로에게 배우는 시간이 되기를 원했다. 서로에게 배울 수 있는 것은 팀으로 함께 할 때 좋은 점인 것 같다.

진행하면서 좋았던 것

  • 팀원 모두가 서로 다른 백그라운드를 있기에 처음 3일 정도는 역할 구분 없이 전체 과정을 직접 해보는 시간을 가졌다.
  • 결측치를 보간법으로 채울수도 있지만, 원래 데이터를 찾아서 복구하는 방법도 가능했다. 공공데이터포털 등과 같은 데이터를 제공해주는 사이트에서 다양한 데이터를 찾아서 채워넣는 경험도 의미있었다.
  • 역할을 나눠서 프로젝트를 진행하는 방식도 좋았다. 모델을 최적화 하는 역할, 결측치를 채우는 역할, 분석하는 역할 등 서로 다른 영역으로 나눠 함께 협업할 수 있음을 깨닫을 수 있었다.
  • 클론 코딩의 장점을 느껴서 좋았다. 아파트 실거래가 예측 문제는 새로운 문제가 아니기 때문에 블로그와 깃허브에 수많은 사람들이 이미 진행했던 코드와 문서들이 있다. 영역을 나눠 각자가 찾은 의미있는 컬럼을 공유하며 함께 하나의 목표를 향해 달려가는 경험이 짜릿했다.
  • 학습을 위한 데이터가 아닌 실제로 세상에서 쌓인 데이터를 탐색하고 의미를 도출해내는 과정이 좋았다. 마치 살아있는 데이터 같아서 하나씩 깨닫게 될 때마다 세상이 다르게 보이는 것 같았다. 다양한 데이터를 살펴보고 학습해보고 싶다는 생각이 들었다.
  • random_state 값이 얼마나 중요한지 느낄 수 있었다. 팀 간에 이 설정이 통일되지 않으면 내가 테스트할 때는 개선되었던 방법도 다른 팀원에게는 그렇지 않을 수 있었다. 아무것도 아닌 것에 비용을 쓰고 싶지 않다면 필수이다.
  • 도메인 지식이 정말로 중요했다. 결측치를 채울때에도, 파생 변수를 생성할 때에도 도메인 지식 없이는 분명한 한계가 있었다.
  • 대회를 진행하면서 이론으로 배웠을 때는 복잡하게 흩어져있던 지식들이 한곳에 잘 정리되어서 좋았다.

도움이 되었던 외부 서비스

  • 브이월드 지도 사이트에서 필요한 영역을 직접 지정해서 추출할 수 있었다. 한강, 양재천 등과 같은 의미있는 구역을 직접 만들 수 있었다.
  • 학구도안내서비스에서 각 학군의 영역을 찾을 수 있었다.
  • 공공데이터포털 정부에서 운영하는 데이터 포털이므로 수많은 자료를 볼 수 있다. 공시지가부터 각종 통계까지 파일, API로도 모두 사용할 수 있으니 유용하다.
  • 서울 열린데이터 광장에서는 서울과 관련된 많은 정보를 볼 수 있다. 아파트 단지 정보 등 많은 정보가 이곳에 있다.
  • 한국은행 경제통계시스템에서는 국내 통화량, 기준 금리등 경제와 관련된 지표들을 구할 수 있다.
  • 네이버 클라우드 플랫폼에서는 많은 API를 사용할 수 있다. 지도와 관련된 API를 많이 썼는데, 매달 주어지는 무료 사용량이 상당히 커서 부담 없이 사용할 수 있다.
  • 구글 드라이브에서 데이터 파일을 관리하고 공유했다. github에는 용량이 100MB가 넘는 파일들은 올릴 수 없고, 업로드 속도도 느리다. 이곳에서 파일을 관리하면 협업할 때 gdown 라이브러리로 파일을 쉽게 가져올 수 있다.
  • DBpia에서 논문을 볼 수 있어서 도움이 되었다. 유료 서비스이지만 성남 도서관에서 한번 로그인을 하면 180일동안 집에서도 사용할 수 있다. 180일 지나면 도서관에 다시 한번 가면 되기 때문에 사실상 무료로 사용할 수 있다. 다만 유의미한 논문을 찾는 것이 쉽지는 않다.

개선하고 싶은 것

  • 수많은 모델의 특성을 이해하고, 문제에 적용하는 것은 아직 부족하다. 좀 더 학습이 필요하다.
  • 같은 데이터라도 어떻게 표현하는지에 따라 결과가 다를 수 있다. 더 많은 경험과 이해가 필요하다.
  • 언제나 그렇지만 체력이 생각보다 더 중요하다.
  • 사이드 프로젝트를 진행하면서 학습이나 대회가 아닌 실질적으로 도움이 되는 서비스도 만들어보고 싶다.

후기

처음으로 진행한 대회였던만큼 많은 것을 느끼고 배울 수 있었다. 이런 시간이 좀 더 많았으면 좋겠고, 그 시간들을 통해 배우고 성장하고 싶다. 프론트 개발자로 일하다 새로운 분야에 도전하기 시작한 것이 만족스럽다. 이 분야는 공부할 것이 많다.

#패스트캠퍼스 #UpstageAILab #Upstage #부트캠프 #AI #데이터분석 #데이터사이언스 #인공지능개발자 #ML #머신러닝 #경진대회 등