본문 바로가기

Artificial Intelligence/Machine Learning

[Machine Learning] 가짜 뉴스 분류 모델 - 파라미터 튜닝

728x90

 

[Machine Learning] 가짜 뉴스 분류 모델 - 머신러닝 모델에 이어서 GridSearchCV를 사용하여 파라미터 튜닝을 진행해보겠습니다.

 

from sklearn.model_selection import GridSearchCV

 

 

GridSearchCV를 통해서 임의로 설정한 파라미터들 중에 가장 좋은 성능을 내게 해주는 값을 찾아서 return 해줍니다. 

 

parameters = {
    'alpha': [ 0.25, 0.5 ,1],
    'fit_prior': [True, False]
}

 

alpha와 fit_prior 값을 설정해줍니다.

 

grid_search = GridSearchCV(naive_bayes, parameters, n_jobs=-1, cv=6, scoring="roc_auc")

 

alpha가 3개 fit_prior이 2개이기 때문에 cv값으로 6을 넣어줍니다.

 

grid_search.fit(X_train_docs, y_train)

GridSearchCV(cv=6, estimator=MultinomialNB(alpha=1), n_jobs=-1,
             param_grid={'alpha': [0.25, 0.5, 1], 'fit_prior': [True, False]},
             scoring='roc_auc')

 

파라미터를 하나씩 넣어보면서 학습을 진행합니다.

 

grid_search.best_params_

{'alpha': 0.25, 'fit_prior': True}

 

best_params_를 통해 임의로 설정한 파라미터의 값 중에서 가장 좋은 결과를 반환하는 파라미터를 알 수 있습니다.

 

naive_bayes_best = grid_search.best_estimator_
y_pred_proba = naive_bayes_best.predict_proba(X_test_docs)

 

가장 좋은 성능을 내게 해주는 파라미터를 naiver_bayes_best에 넣어주고 예측을 해봅니다.

 

파라미터 튜닝을 통해 보다 더 좋은 성능을 가진 모델을 만들 수 있습니다.

728x90