2. 목차
STEP 1
STEP 2
STEP 3
2
1 데이터 전처리
데이터 전처리
• Y 값 설정
• 시간 관련 특징 추가
- 시간 범주
- 시간에 따른 기온 차
- 시간에 따른 습도 차
- 시간에 따른 일사량 차
2 모델링
3 결과 및 결언
모델링
• LightGBM
• Ensemble
결과 및 결언
팀 문성민
4. 4
Y값 설정
- 𝑌18과 상관관계가 낮았던 𝑌3과 𝑌4를 제외
- 𝑌0부터 𝑌17 를 조합하여 𝑌18이 없는 30일의 데이터로
- 𝑌18이 존재했던 마지막 3일을 기준으로 𝑌값 추정
- 3개의 𝑌값 조합(𝑌𝑎, 𝑌𝑏, 𝑌𝑐)으로 학습하여 𝑌18 값과 𝑅𝑀𝑆𝐸 값 비교
𝑌18 =
1
3
𝑌6 + 𝑌10 + 𝑌12 +
1
3
𝑌0 + 𝑌10 + 𝑌12
2
𝑦18
𝑌0 ~ 𝑌17
𝑌𝑎
𝑇31~𝑇33𝑇1~𝑇30
𝑋0 ~ 𝑋 𝑌18
Train Dataset
𝑌𝑏 𝑌𝑐
𝑦 𝑝𝑟𝑒𝑑
𝑅𝑀𝑆𝐸팀 문성민
38
5. 5
Y값 설정 (실제 코드)
쉬운 식별화를 위한 데이터 전처리 작업
𝑌18 설정
용이한 학습을 위한 스케일링
팀 문성민
6. 6
시간 관련 특징 추가 – 시간 범주
- 시간을 범주화 후 해당 시간의 𝑌18 통계치를 넣음
팀 문성민
범주화를 위한 함수 정의
시간 범주에 해당하는 통계치
7. 7
시간 관련 특징 추가 – 강수량
- 시간과 강수 유무를 동시에 고려한 특징 추가
- 합, 평균 그리고 편차와 같은 기초 통계량 사용
팀 문성민
8. 8
시간 관련 특징 추가 – 시간에 따른 기온 차
- 기온과 관련된 5개의 변수에 대하여 각각 6시간, 12시간, 24시간 그리고 36시
간 전 기온의 차이에 대한 변수 생성
팀 문성민
24시간
12시간
6시간
36시간
주의:
해당 순서로 하지 않을
시 추후 LightGBM의
성능이 달라질 수 있음
9. 9
시간 관련 특징 추가 – 시간에 따른 습도 차
- 습도과 관련된 5개의 변수에 대하여 각각 6시간, 12시간, 24시간 그리고 36시
간 전 기온의 차이에 대한 변수 생성
팀 문성민
24시간
12시간
36시간
6시간 주의:
해당 순서로 하지 않을
시 추후 LightGBM의
성능이 달라질 수 있음
10. 10
시간 관련 특징 추가 – 시간에 따른 습도와 일사량 차
- 습도와 관련된 5개 변수에 대해 10분과 1시간 이전과의 차이에 대한 변수 생성
- 또한, 누적 일사량과 관련된 5개의 변수 중 실제로 측정된 변수 2개(X11, X34)
를 통해, 10분과 1시간 단위의 일사량이라는 변수 생성
팀 문성민
11. 11
시간 관련 특징 추가 – 시간에 따른 습도와 일사량 차
- 습도의 10분 차에 대한 변수 5개의 평균을 도출하고 변수 생성
- 10분 단위 일사량에 대한 변수 2개의 평균을 도출하고 변수 생성
- 습도와 일사량에 대한 평균변수 2개를 곱한 변수 생성
- Why? 습도와 일사량의 관계를 모델에 적용하기 위해
팀 문성민
diff_습도_1_n : 습도의 10분 차에 대한 변수
diff_일사량_1_n : 일사량의 10분 차에 대한 변수
21. 21
결과 및 결언
- Y값 설정이 모델의 성능을 크게 좌우함.
- Y18과 상관관계가 컸던 Y15와 Y16으로 회귀식을 만들어 Y18값을 만들었으나
Public Score가 좋지 못함.
- 시간의 흐름을 반영하여 생성한 Feature인 온도/습도 변화량이 Public Score를
향상시키는데 크게 기여함. 그 중 특히 기온을 활용한 Feature(X00,X07…. 등)
의 기여도가 높았음.
- XGBoost이나 LSTM 모델보단 LightGBM 모델의 성능이 더 좋았으며, GBDT
보다 DART에서 좋은 성능을 보였음.
- 기압 관련 특징 제외한 모델의 성능이 그렇지 않은 모델의 성능보다 우수했음.
- 모델의 예측 값에 편향을 추가 시, Public Score에서 더욱 좋은 성능을 보임
팀 문성민