대구 교통사고 피해 예측 AI 경진대회

알고리즘 | 정형 | 회귀 | 교통 | RMSLE | 정성평가

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

 

[LB: 4267] AUTOML을 이용한 베이스라인

2023.12.05 23:46 2,329 조회 language

일정이 바빠져서 그만두려고 합니다.
다양한 전처리 방식과 feature_enginerring으로 점수를 높일 수 있을 것이라고 생각합니다.
CPU환경에도 영향을 받으니 이 부분도 주의하시길 바라며
제가 사용한 환경은 i7-9750H입니다.

train_df와 test_df 파일과 관련해서 전처리한 파일이 있는데, 이는 DACON측에서 답변을 받고 추가하도록 하겠습니다.

코드
로그인이 필요합니다
0 / 1000
아기황제펭귄
2023.12.06 08:52

안녕하세요. 많은 인사이트를 얻었습니다. 좋은 공부가 되었습니다. 감사합니다! 

> train_df와 test_df 파일과 관련해서 전처리한 파일이 있는데, 이는 DACON측에서 답변을 받고 추가하도록 하겠습니다.

이 부분은 데이터의 x, y coordinate에 해당할까요? 혹시 그게 아니라면 코드 데이터의 x, y coordinate는 무엇에 해당하나요?

meister1378
2023.12.06 08:56

그 부분이 맞습니다! 위도 경도에 관하여 전처리한 파일이 있는데, 데이콘 측에서 아직 정확한 답변을 주지 않아서요 있는지 없는지에 따라서 점수 차이는 크게 없는걸로 알고 있습니다

아기황제펭귄
2023.12.06 09:56

답변주셔서 감사합니다!

zs1397
2023.12.06 13:01

코드그대로 실행해봤는데 ValueError: could not convert string to float: '대구광역시'이에러가 뜨는데 왜 뜨는걸까요..? ㅜㅜㅜㅜ train_df.corr() 이부분에서 발생합니다

meister1378
2023.12.06 14:41

아마 pandas버전이 달라서 object 변수들이 처리가 안되서 생긴 문제 같네요. 제가 작업한 환경은 pandas 1.5.3입니다

셀렌디스
2023.12.06 15:49

안녕하세요. 모델 같은 경우 ['Random Forest', 'LightGBM', 'Xgboost', 'CatBoost']가 앙상블 된 모델인건가요?

meister1378
2023.12.06 15:52

그렇습니다

비비드백
2023.12.06 16:55

대단하세요! 좋은 인사이트 감사합니다 AUTO ML관련해서 공부를 해봐야겠네용:)

지운지운
2023.12.07 00:07

좋은 코드 감사합니다. 한가지 궁금하점이 있습니다. meister1378님께서는 예측 모델링을 하실때, 시도가능한 모든 모델링을 적용하시는 편이신가요? 예를 들면 AutlML에도 종류가 많던데(autogluon, pycaret 등) 이러한 것들을 모두 적용해보고 그 중 best를 선정해, 이후 작업들을 진행하시는지 궁금합니다.

meister1378
2023.12.07 00:56

그렇습니다. pycaret은 진행해보지 않았지만, autogluon에서는 좋은 결과를 얻지는 못했습니다. 처음에는 파라미터 없이 단일 모델의 결과를 확인하고, 파라미터 조정을 하며 과적합을 확인합니다. 그 이후에 앙상블을 할 모델들을 선별하고 좋은 성능을 낼 수 있도록 feature를 생성하고 제거하는 작업을 반복합니다.

지운지운
2023.12.07 20:56

감사합니다! 하나 더 배워갑니다!

서연_
2023.12.07 14:36

rmsle로 custom_metric을 넣는데 오류가 걸리네요.
혹시 이 부분은 어떻게 해결하셨나요?

meister1378
2023.12.07 15:00

저는 custom_metric을 사용하지 않고 RMSE 평가 산식을 사용하였습니다.. custom_metric을 사용하면 자꾸 오류가 생겨서 mae같은 다른 평가지표를 사용했을 때보다 RMSE가 가장 높게 나와서 평가산식으로 채택했습니다.

해당 이슈에 관련해서 저도 찾아본게 있는데 참고하시길 바라겠습니다.
https://github.com/mljar/mljar-supervised/issues/390

서연_
2023.12.07 15:15

아침에 auto_ml의 repo를 찾아가며 제공해주신 url의 issue를 참고했었는데 저만 안되는게 아니라 작성자님도 안되었었군요.

답글 감사합니다

욱근
2023.12.08 12:12

혹시 에러가 다음과 같았다면 예측 값이 음수가 나와 log에 대입할 수 없어서 발생하는 에러로 알고 있습니다.
ValueError: Mean Squared Logarithmic Error cannot be used when targets contain negative values.

def custom_metric(y_true, y_pred, sample_weight=None):
    squared_error = (np.log1p(y_true) - np.log1p(y_pred)) ** 2
    rmsle = np.sqrt(np.mean(squared_error))
    return rmsle

meister1378
2023.12.09 22:16

해당 함수를 이용하면 다른 모델은 사용 가능한데 CatBoost랑, Ensemble에서 오류가 생깁니다. 정보 제공 감사합니다

뎅잉텅엉령웡
2023.12.08 03:21

AutoMLException: No models produced. 
Please check your data or submit a Github issue at https://github.com/mljar/mljar-supervised/issues/new. 이런 오류가 발생하는데 주피터 노트북과 코랩 둘다 혹시 이유를 아실까요?

meister1378
2023.12.09 22:16

이 부분은 잘 모르겠네요...