Grid Search 用の関数を作る
データサイエンスでは、アルゴリズムやモデル、プロセスを「ゼロから」実装してみるのはとても良いアイデアです。こうすることで、内部で何が起きているのかをより深く理解できます。もちろん、この作業には優れたパッケージやライブラリがたくさんあります(そして、すぐにそれらも使っていきます!)が、まずは自作することでデータサイエンスの実務で大きな強みになります。
この演習では、2つのハイパーパラメータを受け取り、モデルを作成して結果を返す関数を作成します。この関数は後続の演習でも使用します。
X_train、X_test、y_train、y_test の各データセットが利用可能です。
この演習はコースの一部です
Pythonでのハイパーパラメータチューニング
演習の手順
- 学習率と最大深さを指定する
learning_rateとmax_depthという2つの引数を取る関数を作成します。 - 関数内で GBM モデルを構築し、入力されたハイパーパラメータでデータに適合させる処理を追加します。
- 関数の返り値として、作成したモデルの結果と、選択したハイパーパラメータ(
learning_rateとmax_depth)を返します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create the function
def gbm_grid_search(____, ____):
# Create the model
model = GradientBoostingClassifier(____=___, ____=____)
# Use the model to make predictions
predictions = model.fit(____, ____).predict(____)
# Return the hyperparameters and score
return([____, ____, accuracy_score(____, ____)])