グリッドサーチCV
メニューを表示するにはスワイプしてください
モデルの性能を向上させるために、ハイパーパラメータの調整を行う。基本的な考え方は、さまざまな値を試し、クロスバリデーションスコアを計算し、最も高いスコアを選択すること。
このプロセスは、GridSearchCV モジュールの sklearn.model_selection クラスを使用して実行できる。
GridSearchCV には、モデルとパラメータグリッド(param_grid)が必要。
例:
param_grid = {'n_neighbors': [1, 3, 5, 7]}
GridSearchCV を初期化した後、.fit(X, y) を呼び出す。
- 最適なモデルは
.best_estimator_に格納される; - そのクロスバリデーションスコアは
.best_score_に格納される。
12345678910111213import pandas as pd from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import GridSearchCV df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/penguins_pipelined.csv') X, y = df.drop('species', axis=1), df['species'] param_grid = {'n_neighbors': [1,3,5,7,9]} grid_search = GridSearchCV(KNeighborsClassifier(), param_grid) grid_search.fit(X, y) print(grid_search.best_estimator_) print(grid_search.best_score_)
GridSearchCV はフィッティング後、自動的に最適な推定器を全データセットで再学習します。
grid_search オブジェクトは最終的な学習済みモデルとなり、そのまま .predict() や .score() で直接利用可能です。
12grid_search.fit(X, y) print(grid_search.score(X, y)) # training accuracy (not reliable for real evaluation)
すべて明確でしたか?
フィードバックありがとうございます!
セクション 4. 章 6
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 4. 章 6