使用scikit-learn从GridSearchCV获取进度更新

No_*_*cks 4 scikit-learn grid-search

我目前正在Python中实现支持向量回归,我通过GridSearchCV估计参数C和gamma.我最初从大约400种C和γ组合中搜索.这是一个非常详尽的搜索,现在已经在我的计算机上运行了一个多小时.

我想要的是接收状态更新,例如剩下多少组合进行测试或类似,因为目前很难判断程序是否正在运行,或者它是刚刚冻结还是正在进行的任何事情.

从我在sci-kit学习文档中读到的内容,我似乎无法找到任何帮助.有没有环绕?

eic*_*erg 5

GridSearchCV有一个verbose=关键字.尝试将其设置为例如100.

如果您sklearn.cross_validation.cross_val_score用于评估模型,还可以将其verbose=设置为高级别.

如果您需要更多细节,还可以"破解"您想要使用的评分对象,使其在每次调用时将分数打印到屏幕或文件,例如:

from sklearn.metrics.scorer import accuracy_scorer

def my_accuracy_scorer(*args):
    score = accuracy_scorer(*args)
    print('score is {}'.format(score))
    return score
Run Code Online (Sandbox Code Playgroud)

使用此功能作为scoring关键字in cross_val_scoreGridSearchCV,通过putscoring=my_accuracy_scorer