【代码模版】利用k折交叉验证调整正则惩罚参数C--以Logistic模型为例

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
# 创建选择最优参数C的模型
def select_c_function(i):
	# 将含有参数的模型实例化
    lr = LogisticRegression(C=i, penalty='l1', solver='liblinear')
    # 对模型进行K折交叉验证,注意scoring可以根据需要改变(其他选择查看API)
    recall_score = cross_val_score(lr, x_train, y_train.values.ravel(), scoring='recall', cv=10)
    return recall_score.mean()  # 返回K次交叉验证评分的均值

c_range = []  # 此处填写参数C的取值范围
for i in c_range:
    avg_score = select_c_function(i)
    print('当C值为{}时,K折交叉验证的平均分是{}'.format(i, avg_score))
发布了22 篇原创文章 · 获赞 0 · 访问量 945

猜你喜欢

转载自blog.csdn.net/weixin_44680262/article/details/104435690