KT 에이블스쿨 53일차(1)

박기범·2023년 4월 14일
0

에이블스쿨

목록 보기
59/95
post-custom-banner

오늘은 미니프로젝트5 5일차로 캐글을 진행했습니다.



실습 내용

어제와 비슷한 주제이지만 제공된 컬럼만 가지고 분류모델을 진행했습니다.



실습 코드

저는 AutoML인 PyCaret을 사용했습니다. 원래는 이제 PyCaret을 통해 나온 상위 3개의 모델을 가지고 soft보팅을 한 후 해당 모델을 튜닝까지 진행할려고 했지만 시간부족으로 전부 진행하지 못해서 중간 단계로만 제출하니 낮은 점수가 나왔습니다.

	!pip install pycaret
	!pip install markupsafe==2.0.1

원래 !pip install pycaret[full]을 해주어야 catboost까지 자동 모델링이 가능한데 에러가 나와서 그냥 !pip install pycaret로 설치했습니다.

	from pycaret.classification import *

분류 모델 문제를 진행해서 위와 같이 호출해줍니다.

    exp = setup(data=train_df, target='Activity_dynamic', train_size=0.9, normalize=True, polynomial_features=True, remove_multicollinearity=True)

    best_5 = compare_models(sort='Accuracy', n_select=5)

    blended = blend_models([best_5[0], best_5[1]], fold=5, method='soft')

    tunning_model = tune_model(blended)

이제 이렇게 모델링이 끝났다면 아래와 같이 test 셋에도 전처리를 진행해줍니다.

    # test에 대한 전처리
    pipeline = get_config('pipeline')
    test_auto_preprocessed = pipeline.transform(test)

test데이터에 대해 전처리까지 완료했으면 마지막으로 예측값을 만듭니다.

	y_pred = tunning_model.predict(test_auto_preprocessed)

시간이 더 있었다면 좋은 모델을 만들었을텐데 욕심이 과했다고 생각합니다.







머신러닝 미니프로젝트가 완료된 하루였습니다.




※공부하고 있어 다소 틀린점이 있을 수 있습니다. 언제든지 말해주시면 수정하도록 하겠습니다.
※용어에 대해 조금 공부 더 해서 수정하겠습니다.

profile
개발자가 되기 위한 한걸음
post-custom-banner

0개의 댓글