2023 전력사용량 예측 AI 경진대회

알고리즘 | 정형 | 시계열 | 에너지 | SMAPE

  • moneyIcon 상금 : 2,000만원
  • 2,717명 마감

 

[Private 69] EXTRATREE 단일 모델

공동작성자

stroke
2023.09.22 18:46 1,030 조회 language

모두 고생하셨습니다.
개발환경은 colab 과 jupyter note으로 진행하였고,
프로젝트 진행함에 있어 간략한 설명을 드리고자 합니다.

- 전처리
   * 강수량은 0으로 대체함.
   * 일조, 일사는 train에만 존재하여 제거함.
   * 용량 관련 컬럼은 '-'으로 표시되어 있는 값 다수 존재, 설비가 없는 것으로 판단하여 0으로 변환함.
   * num_data_time는 건물번호와 일시를 합친것으로 제거함.
   * 풍속과 습도의 경우 같은 지역의 건물이라면 풍속과 습도가 같을 것으로 판단함. 풍속과 습도 같은 건물을 뽑아 값이 1000개 이상 같으면 대체 아니면 직전 값과 직후 값의 평균으로 대체함.

- Feature Engineering
   * 휴일과 영업일을 구분하는 컬럼을 생성함.
   * 시간은 주기성을 가지므로 주기성인 반영된 sin, cos 함수의 시간 형태 적용함.
   * 요일 및 주차 생성함.
   * Cool Degree Hour: 일정 기준 온도를 넘어설 때 차이 누적 시간 생성함.
   * 기온 습도를 이용하여 불쾌지수, 불쾌정도, Tw, 체감온 생성함.

 - 모델 선정 및 학습
   * pycaret을 활용하여 SMAPE 성능이 가장 좋은 EXTRATREE를 선정함.
   * Feature Importance 기반으로 Feature Selection 진행함.
   * Grid Search를 통해 하이퍼파라미터 튜닝 후 결과 확인함.
   * 성능이 잘 나온 것을 확인하고 train/validation 나누지 않고 전체 데이터 학습 및 test 적용

 - 마무리
   * 건물 유형별, 타입별 모델을 생성하여 진행했지만 성능이 좋지 않아 단일 모델을 선정함.
   *  Feature Importance 및 Grid Search는 참고용으로 진행했으며, 추가적인 테스트 및 데이터 기반 판단을 통해 추가 변경함.
   * 파생변수 및 Feature Selection 부분을 보완하면 개선될 것으로 판단됨.

코드