Tensorflow: Transmettre les paramètres de recherche de grille au modèle personnalisé TensorFlowEstimator

Créé le 20 avr. 2016  ·  3Commentaires  ·  Source: tensorflow/tensorflow

GridSearchCV est un excellent moyen de tester et d'optimiser automatiquement les hyper-paramètres. Je l'utilise avec TensorFlowEstimator pour optimiser learning_rate, batch_size, ...etc. Ce serait un excellent ajout si je pouvais également l'utiliser pour personnaliser d'autres paramètres dans mon modèle personnalisé.

Par exemple, supposons que j'ai un modèle personnalisé avec un convnet et que je souhaite optimiser la valeur de la foulée. Ce pseudo-code explique ce que j'essaie de réaliser.

J'ai utilisé une entrée "params" personnalisée pour la fonction de modèle à titre d'exemple, sans pour autant impliquer que c'est nécessairement la bonne façon d'implémenter cette fonctionnalité.

# 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

Commentaire le plus utile

@ilblackdragon Une mise à jour à ce sujet ?

Tous les 3 commentaires

C'est sur notre liste TODO. J'essaie juste de comprendre comment le faire correctement pour avoir un moyen général de transmettre des hyper-paramètres dans les modèles.

@ilblackdragon Une mise à jour à ce sujet ?

La fonction de modèle a l'argument params . TensorFlowEstimator est obsolète, veuillez utiliser Estimator qui prend l'argument params . Cela devrait fonctionner maintenant, veuillez rouvrir si ce n'est pas le cas.

Cette page vous a été utile?
0 / 5 - 0 notes