원자력 발전소 상태 판단 알고리즘 공모전 도전 3,4일차!

솜씨좋은장씨

·

2020. 2. 9. 14:45

 

[산업] 원자력발전소 상태 판단 대회

출처 : DACON - Data Science Competition

dacon.io

그동안 Dev-Matching, Naver AI Burning DAY를 도전하느라

도전 1, 2일차에서 시간이 많이 지났지만 아직 종료일인 12일까지는 시간이 남아 다시 도전을 시작했습니다.

 

이번에는 Gradient Boosing 중 하나인 LightGBM을 사용해보기로 했습니다.

해당 과정은 Google Colab GPU 환경에서 실시했습니다.

 

먼저 LightGBM을 사용하기 위해서 Colab환경에 설치를 하였습니다.

해당과정은 아래 링크에서 볼 수 있습니다.

 

[Ensemble] Colab에서 LightGBM 사용하기!

원자력 발전소 상태판단 알고리즘을 도전해보면서 머신러닝을 공부하며 Gradient Boosing알고리즘 중의 하나인 LightGBM 알고리즘을 알게되었고 DACON KB 금융문자분석경진대회에서도 수상자들이 사용했다는 것을..

somjang.tistory.com

 

데이터 불러오는 과정은 1일차, 2일차와 동일하게 사용하였습니다.

LightGBM의 LGBMClassifier 모델을 사용해보았습니다.

from lightgbm import LGBMClassifier, plot_importance
lgb = LGBMClassifier(n_estimators=100)
lgb.fit(X_train, y_train, verbose=2)

 

결과는!

 

n_estimators의 값이너무 커서 오버피팅이 되었는지 좋지 못한 결과를 얻었습니다.

 

이번에는 n_estimators의 값을 줄여서 다시 도전해보았습니다.

from lightgbm import LGBMClassifier, plot_importance
lgb2 = LGBMClassifier(n_estimators=5)
lgb2.fit(X_train, y_train, verbose=2)

결과는!

아까보다는 확실히 좋은 결과를 얻을 수 있었습니다.

 

이번에는 n_estimator를 5에서 4로 바꾸어 도전해보았습니다.

from lightgbm import LGBMClassifier, plot_importance
lgb3 = LGBMClassifier(n_estimators=4)
lgb3.fit(X_train, y_train, verbose=2)

결과는!

 

이번엔 다른 변수도 조금씩 바꾸어 도전해보았습니다.

lgb4 = LGBMClassifier(learning_rate=0.01, n_jobs=-1, n_estimators=8)
lgb4.fit(X_train, y_train, verbose=2)

결과는!

 

lgb5 = LGBMClassifier(learning_rate=0.01, n_jobs=-1, n_estimators=8, random_state=0)
lgb5.fit(X_train, y_train, verbose=2)

결과는!

 

lgb6 = LGBMClassifier(learning_rate=0.01, n_jobs=-1, n_estimators=16, random_state=0, num_leaves=16)
lgb6.fit(X_train, y_train, verbose=2)

결과는!

위의 방법대로 나도 도전(연습)해보기

 

[산업] 원자력발전소 상태 판단 대회

출처 : DACON - Data Science Competition

dacon.io