
115
2
장
머신러닝 프로젝트 처음부터 끝까지
import joblib
joblib.dump(my_model, "my_model.pkl")
# 그리고 나중에...
my_model_loaded = joblib.load("my_model.pkl")
2.7
모델 세부 튜닝
가능성 있는 모델들을 추렸다고 가정하겠습니다. 이제 이 모델들을 세부 튜닝해야 합니다. 그
방법을 몇 개 살펴봅시다.
2.7.1
그리드 탐색
가장 단순한 방법은 만족할 만한 하이퍼파라미터 조합을 찾을 때까지 수동으로 하이퍼파라미터
를 조정하는 것입니다. 이는 매우 지루한 작업이고 많은 경우의 수를 탐색하기에는 시간이 부족
할 수도 있습니다.
대신 사이킷런의
GridSearchCV
를 사용하는 것이 좋습니다. 탐색하고자 하는 하이퍼파라미터
와 시도해볼 값을 지정하기만 하면 됩니다. 그러면 가능한 모든 하이퍼파라미터 조합에 대해 교
차 검증을 사용해 평가하게 됩니다. 예를 들어 다음 코드는
RandomForestRegressor
에 대한
최적의 하이퍼파라미터 조합을 탐색합니다.
from sklearn.model_selection import GridSearchCV
param_grid = [
{'n_estimators': [3, 10, 30], 'max_features': [2, 4, 6, 8]},
{'bootstrap' ...