Tensorflow: グリッド検索パラメータをTensorFlowEstimatorカスタムモデルに渡します

作成日 2016年04月20日  ·  3コメント  ·  ソース: tensorflow/tensorflow

GridSearchCVは、ハイパーパラメーターを自動的にテストおよび最適化するための優れた方法です。 TensorFlowEstimatorで使用して、learning_rate、batch_sizeなどを最適化します。 カスタムモデルの他のパラメーターをカスタマイズするためにも使用できるとしたら、それは素晴らしい追加です。

たとえば、畳み込みニューラルネットワークを使用したカスタムモデルがあり、ストライド値を最適化するとします。 この擬似コードは、私が達成しようとしていることを説明しています。

例として、モデル関数へのカスタム「params」入力を使用しました。これが、この機能を実装するための正しい方法である必要があることを意味するものではありません。

# My custom model. 
# Feature request: New params dict with values filled by GridSearchCV
def cnn_model(X, Y, params):
  stride = params['stride']
  ... custom model definition here ...

# Create the Convnet classifier
cnn_classifier = learn.TensorFlowEstimator(model_fn=cnn_model)

# Grid search on different stride values.
parameters = {'stride': [1, 2, 3],}
grid_searcher = GridSearchCV(cnn_classifier, parameters)
grid_searcher.fit(X, Y)
feature

最も参考になるコメント

@ilblackdragonこれに関する更新はありますか?

全てのコメント3件

それは私たちのTODOリストにあります。 ハイパーパラメータをモデルに渡す一般的な方法をうまく行う方法を理解しようとしているだけです。

@ilblackdragonこれに関する更新はありますか?

モデル関数にはparams引数があります。 TensorFlowEstimatorは非推奨です。 params Estimatorを使用してください。 これでうまくいくはずです。うまくいかない場合は、もう一度開いてください。

このページは役に立ちましたか?
0 / 5 - 0 評価