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))
【代码模版】利用k折交叉验证调整正则惩罚参数C--以Logistic模型为例
猜你喜欢
转载自blog.csdn.net/weixin_44680262/article/details/104435690
今日推荐
周排行