2016-04-13 2 views
3

Je suis en train de mettre en œuvre une régression de vecteur de support en Python, où j'estime les paramètres C et gamma à travers le GridSearchCV. Je recherche d'abord environ 400 combinaisons de C et de gamma. C'est une recherche très exhaustive qui fonctionne depuis plus d'une heure sur mon ordinateur.Obtenir des mises à jour de progression de GridSearchCV avec scikit-learn

Ce que je voudrais est recevoir des mises à jour d'état par exemple. combien de combinaisons reste-t-il à tester ou similaire, puisqu'il est actuellement difficile de dire si le programme fonctionne ou s'il est simplement gelé ou quoi que ce soit. D'après ce que j'ai lu sur le sci-kit, apprenez la documentation, je n'arrive pas à trouver d'aide pour ça. Y a-t-il un enveloppement?

Répondre

5

GridSearchCV a un mot-clé verbose=. Essayez de le définir par ex. 100.

Si vous utilisez sklearn.cross_validation.cross_val_score pour évaluer votre modèle, vous pouvez également définir son verbose= à un niveau élevé.

Si vous avez besoin de plus de détails, il y a aussi la possibilité de « pirater » l'objet de notation que vous souhaitez utiliser pour le faire imprimer le score à l'écran ou dans un fichier à chaque fois qu'il est appelé, par exemple:

from sklearn.metrics.scorer import accuracy_scorer 

def my_accuracy_scorer(*args): 
    score = accuracy_scorer(*args) 
    print('score is {}'.format(score)) 
    return score 

Utilisez cette fonction que le mot-clé scoring dans cross_val_score ou GridSearchCV, en mettant scoring=my_accuracy_scorer