Sklearn自定义实现GridSearch

本文介绍了如何使用Sklearn的ParameterGrid实现一个自定义GridSearch函数,允许用户设置自己的评价指标,并在固定验证集上选择最优模型。示例展示了在SVM场景下的应用,但文章结论指出固定验证集可能引发过拟合,建议在数据处理上做好优化。

引言:本文旨在利用Sklearn中的ParameterGrid来实现一个自定义化的网格搜索(GridSearch)函数,应用场景的话是可以自定义评价指标、同时能够在固定的验证集而非默认使用K-fold进行最优模型保存。

问题概述

 网格搜索(GridSearch)可以帮助我们确定最优的模型参数,但它的封装程度较高,难以进行自定义的评价指标设置;此外默认使用K-fold来选取最优参数也比较烦人。因此本文设计的自定义GridSearch流程实现了在固定的evaluation set进行最优模型的选取。

设计思路

 设计流程和原始的GridSearch一致,主要是利用了Sklearn中原本就有的ParameterGrid来生成一系列的候选参数,循环创建对应的模型,在验证集上评估模型的效果并保存系列模型的得分,最终选取最优模型。代码如下:

def custom_GridSearch(params,model,train_feature,train_label,eval_feature,eval_label,criterion):
    from sklearn.model_selection import ParameterGrid
    candidatas=ParameterGrid(params)
    result={
   
   }

    for i in range(candidatas.__len__
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值