西瓜书习题3.4 (交叉验证法)

西瓜书习题3.4 (交叉验证法):

​ 选择两个UCI数据集,比较10折交叉验证法和留一法所估计出的对率回归的错误率.

1.数据集长啥样?

​ 于是就下载了一组UCI数据集,它长这样:

1562751598858

至于这些数据是啥意思、UCI又是啥,咱也不知道咱也不敢问qwq~,只知道有748行、5列,在咱眼里它就是一个 (748 * 5)的矩阵。第5列数据是0和1,那它肯定是labels,属于二分类问题。

2.啥是十折交叉验证法?啥是留一法?

k折交叉验证法:

​ 我们将数据集随机分成k份,使用其中 k-1 份进行训练而将另外1份用作测试。该过程可以重复 k 次,每次使用的测试数据不同。

(1)每一次迭代中留存其中一个桶。第一次迭代中留存桶1,第二次留存桶2,其余依此类推。

(2)用其他 k-1 个桶的信息训练分类器(第一次迭代中利用从桶2到桶 k 的信息训练分类器)。

(3)最终返回这 k 次测试结果的accuracy的均值

十折交叉验证法就是 k=10 的情况
留一法则是 k=总样本数 的情况,即每次迭代从总样本取一条数据做测试集,剩余的全做训练集
3.以上一顿分析猛如虎,是时候该撸码实现啦 qwq
import numpy as np
import pandas as pd


# sigmoid函数
def sigmoid(z):
    return 1.0 / (1.0 + np.exp(-z))


# 梯度上升算法
def grad(train_X, labels, iters=2000):
    m, n = train_X.shape
    # 步长alpha
    alpha = 0.05
    # 初始化权重,全设为1
    weights = np.ones((n, 1)
  • 7
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值