【python scikit-learn】グリッドサーチ

python

グリッドサーチとは、機械学習モデルのハイパーパラメータを最適化するための方法です。ハイパーパラメータとは、モデルの学習を行う際に、モデルに与えるパラメータのことです。例えば、線形回帰モデルの場合、学習率や正則化項などがハイパーパラメータとなります。

scikit-learnのグリッドサーチは、指定したハイパーパラメータの組み合わせを試し、最も性能が良いモデルを探索することができます。scikit-learnでは、GridSearchCVクラスを使用してグリッドサーチを行うことができます。

以下のコードは、scikit-learnのGridSearchCVを使用して、線形回帰モデルのハイパーパラメータを最適化する例です。

from sklearn.model_selection import GridSearchCV
from sklearn.linear_model import LinearRegression
# ハイパーパラメータを指定
parameters = {'fit_intercept':[True,False], 'normalize':[True,False], 'copy_X':[True, False]}
# 線形回帰モデルをインスタンス化
model = LinearRegression()
# GridSearchCVをインスタンス化
grid_search = GridSearchCV(model, parameters, cv=5)
# データを指定
X = [[1, 2], [3, 4], [5, 6]]
y = [1, 2, 3]
# ハイパーパラメータを最適化
grid_search.fit(X, y)
# 最適なハイパーパラメータを表示
print('Best parameters: {}'.format(grid_search.best_params_))

上記のコードでは、GridSearchCVクラスを使用して、線形回帰モデルのハイパーパラメータを最適化しています。まず、ハイパーパラメータを指定します。次に、線形回帰モデルをインスタンス化し、GridSearchCVをインスタンス化します。そして、データを指定し、fitメソッドを使用してハイパーパラメータを最適化します。最後に、best_params_属性を使用して、最適なハイパーパラメータを表示します。

scikit-learnのGridSearchCVを使用することで、ハイパーパラメータを最適化することができます。これにより、モデルの性能を最大化することができます。

タイトルとURLをコピーしました