best model 이 튜닝이 불가한 게 선택된 경우
from pycaret.datasets import get_data
from pycaret.regression import *
insurance_df = get_data('insurance')
setup(data = insurance_df, target = 'charges', session_id = 123, fold_shuffle = True,
log_experiment = True, experiment_name = 'insurance_v1')
best = compare_models(sort = 'R2')여기까지 실행하는 경우 잘 작동합니다. 다만 뒤에 tunemodel 실행 시 에러나는데 그게 모델이 튜닝이 안되는 모델이 선택되는 경우가 있는 것 같아요
# 어떤 모델이 선택되었는지 확인
print(f"선택된 모델: {best}")
print(f"모델 이름: {type(best).__name__}")선택된 모델: DummyRegressor()
모델 이름: DummyRegressor이 경우에 pycaret이 처음부터 튜닝할 모델만 알고 가는 게 아니라서 이런 오류가 생기는건지 궁금합니다.
만약 그렇다면 처음부터 include나 exclude로 모델 지정 외에는 없나요?
답변 2
0
안녕하세요! 강사해여입니다.
인프런 인턴님이 너무 잘 답변주셨군요!
Pycaret은 성능을 기준으로 모델을 선택하기 때문에 항상 튜닝기법이 사용 가능한 모델이 선택되지는 않아요!
그래서 중간중간 강의에서 몇 가지 모델을 제외 후 선택하고 있는데, 이러한 이유랍니다.
하지만 실제로 AutoML은 간단한 형태의 구현이 선호되기 때문에 이런 부분에 대해서는 후처리 혹은 예외처리를 사용해 패스해버리는 경우가 많답니다 🙂
감사합니다!
0
안녕하세요, 인프런 AI 인턴입니다. Maitri_7님.
PyCaret을 사용할 때, compare_models 함수를 통해 자동으로 여러 모델을 비교하고 가장 높은 성능을 보이는 모델을 선택하게 됩니다. 이때 선택된 모델이 DummyRegressor와 같이 튜닝이 불가능한 모델일 경우, tune_model을 실행할 때 에러가 발생할 수 있습니다. 이는 DummyRegressor가 매우 단순한 모델로, 튜닝할 하이퍼파라미터가 거의 없기 때문입니다.
문제 해결 방법
- 특정 모델 제외:
compare_models함수에서include또는exclude파라미터를 사용하여 특정 모델을 포함하거나 제외할 수 있습니다.DummyRegressor를 제외하고 다른 모델만 비교하려면exclude파라미터를 사용할 수 있습니다.
best = compare_models(sort='R2', exclude=['DummyRegressor'])
- 모델 명시:
초기 단계에서 튜닝 가능한 모델만 선택할 수도 있습니다.include파라미터를 사용하여, 튜닝이 가능한 모델만 포함하도록 하세요.
best = compare_models(sort='R2', include=['LinearRegression', 'RandomForestRegressor', ...])
여기에서 ‘…‘은 본인이 원하는 모델의 이름을 추가합니다.
추가 설명
DummyRegressor는 기본적으로 baseline 성능을 측정하는 용도로 사용됩니다. 따라서, 실질적으로 성능을 향상시키고자 할 때에는 해당 모델을 제외하고 진행하는 것이 바람직합니다.
아래 링크에서 좀 더 구체적인 방법과 예제를 참고할 수 있으니 확인해 보시기 바랍니다:
- PyCaret 튜토리얼: PyCaret에서 특정 모델 제외하기
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
RandomForest vs lgb
0
6
1
[문의] 섹션 7 미션 진행 중...
0
7
1
전처리 관련질문
0
6
2
수강기간즘연장해주세요
0
6
1
기본 브랜치의 이름이 master에요.
0
8
1
작업형3 기출
0
6
1
plans 생성이 안됩니다.
0
13
2
유형2에서 데이터분할 생략 가능여부
0
9
1
mia /goal 실습시.. 아웃풋 폴더
0
7
0
mia /goal 실습시 키체인 오류(맥미니)
0
8
1
9회 기출 유형3 질문
0
8
1
lgb 기초편
0
6
1
메일자동 분류 문의 드립니다.
0
9
2
수업자료 문의
0
8
1
괄호 사용
0
11
1
작업형 2 데이터 전처리 질문
0
11
0
더빙에 어떤 ai가 쓰였는지 궁금합니다.
0
12
0
강의노트는 어디있나요?
0
32
1
pycaret 인코딩 버그 있는 것 같네요
0
50
1
pycaret 인코딩 버그 있는 것 같네요
0
53
1
13강 질문
0
88
2
.
0
134
2
핫픽스코드 수정필요
0
86
2
ydata_profiling 랜더링 이슈
0
71
1





