【模型评估】k折交叉验证和sklearn运用实战(cross validation)

k折交叉验证(cross validation)

留一法是特殊的k折交叉验证。k折交叉验证主要用于判断是否过拟合。k折交叉验证一般采用分层采样法取得训练集和验证集。分层采样是指,每个类按照比例在总体中随机取数据。

k折交叉验证(cross validation)实例

这是之前用过的逻辑回归的例子,重点放在后面的交叉验证上。
用sklearn中的数据集iris
导入需要的包

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import (brier_score_loss, precision_score, recall_score,f1_score)
from sklearn.model_selection import learning_curve
import numpy as np
import matplotlib.pyplot as plt

取出需要的数据,其中iris_X有4个属性,共有150个样本点,iris_y的取值有3个,分别是0,1,2

iris = load_iris()
iris_X = iris.data   #x有4个属性,共有150个样本点
iris_y = iris.target #y的取值有3个,分别是0,1,2
print(iris_X.size)
print(iris_X)
print(iris_y)

将所有的数据分为测试集和训练集,训练集有420个点

X_train, X_test, y_train, y_test = train_test_split(iris_X, iris_y, test_size=0.3)
print(X_train.size)

选择逻辑回归作为分类器

clf = LogisticRegression(random_state=0, solver=''newton-cg', multi_class='multinomial')

训练模型,这里计算出参数 w k , b w_k,b wk,b,输出 w k ,

  • 2
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值