![](https://img-blog.csdnimg.cn/20190918140213434.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
统计学习方法
文章平均质量分 63
书籍参考: 李航--统计学习方法
视频参考: B站2021机器学习(西瓜书+李航统计学习方法)实践部分+Python
NewSuNess
积极,努力
展开
-
统计学习:决策树实现与梯度下降法(python实现, ID3算法)
一、ID3算法ID3算法的核心是在决策树各个结点上应用信息增益准则选择特征,递归的构建决策树。具体方法是:从根节点开始,对结点计算所有可能的特征的信息增益,选择信息增益最大的特征作为结点的特征,由该特征的不同取值建立子节点;在对子结点递归的调用以上方法,构建决策树;直到所有特征的信息增益均很小或者没有特征可以选择为止。在统计论里,熵是表示随机变量不确定性的度量。熵越大,随机变量的不确定性越大。信息增益表示得知特征X的信息而使得类Y的信息的不确定性减少的程度。简而言之:信息增益大的特征具有更强的分类能原创 2021-12-24 17:11:57 · 2014 阅读 · 2 评论 -
统计学习:模型评估与选择--绘制性能度量P-R曲线(python代码)
将查准率与查全率作为坐标系构建坐标空间,就可以得到所谓的ROC空间。P-R曲线的定义为:根据学习器的预测结果(一般为一个实值或概率)对测试样本进行排序,将最可能是“正例”的样本排在前面,最不可能是“正例”的样本排在后面,按此顺序逐个把样本作为正例进行预测,每次计算出当前的P值和R值。。P-R曲线的评估方法:若一个学习器A的P-R曲线被另一个学习器B的P-R曲线完全包住,则称B的性能优于A。若A和B的曲线发生了交叉,则谁的曲线下面积大,谁的性能更优。但一般来说曲线下的面积是很难估算的,因此使用BEP(平衡原创 2021-12-20 18:14:51 · 1498 阅读 · 0 评论 -
统计学习:模型评估与选择--查准率与查全率(python代码)
模型评价指标及python代码实现原创 2021-12-20 12:57:10 · 4362 阅读 · 1 评论 -
统计学习:模型评估与选择--调参与最终模型(网格搜寻与贝叶斯优化hyperopt工具包)python代码
一、网格法超参数选择本次使用k近邻算法为例,k近邻算法需要的超参数类型有三个:1、n_neighbors= 邻居个数 输入为int型数据2、algorithm= 数据所使用的算法类型,有brute,ball_tree, kd_tree三种类型可选3、p= 距离表示选择 1表示哈曼顿距离, 2表示欧氏距离代码如下:代码的思路为首先导入鸢尾花数据集,然后将其划分为训练集和测试集,这一步使用工具为train_test_split,然后实例化一个k近邻算法的模型,创建三个列表分别存储k近邻算法需要用原创 2021-12-19 20:34:28 · 785 阅读 · 0 评论 -
统计学习:模型评估与验证--K折交叉验证与自助法
一、K折交叉验证如果给定的样本数据充足,进行模型选择的一种简单方法是随机的将数据集切分成三部分,分为训练集,验证集和测试集。训练集用来训练模型,一般来说数据量要更大一些,验证集用于模型的选择,而测试集用于最终对学习方法进行评估(查看模型泛化能力)在学习到的不同复杂度的模型中,选择对验证集有最小预测误差的模型,由于验证集有足够多的数据,用他对模型选择也是有效的。但是,在许多实际应用中数据时不充足的。为了更好地选择模型,可以采用交叉验证的方法。交叉验证的基本思想就是重复的使用数据;把给定的数据进行切分,将原创 2021-12-18 18:35:22 · 2136 阅读 · 0 评论 -
统计学习:模型评估与选择--留出法(python实现)
使用测试集来测试学习器对新样本的判别能力,然后在测试集上的“测试误差”作为泛化误差的近似,且假设测试样本是从样本真实分布中独立同分布采用而得。这样的目的也就是利用测试样本模拟真实模型应用场景,看下模型对于现实的数据预测能力如何。原创 2021-12-18 12:19:14 · 3384 阅读 · 3 评论 -
统计学习:模型评估与模型选择---多项式拟合目标函数(python实现版)
统计学习的目的是使学到的模型不仅对已知数据,而且对于未知数据都能很好地预测能力。不同的学习方法会给出不同的模型。当损失函数给定时,基于损失函数的模型训练误差(training error)和模型的测试误差(test error)就自然成为学习方法评估的标准。如果一味的追求提高对训练数据的预测能力,所选模型的复杂度往往会比真模型更高。**这种现象被称为–过拟合。**通俗的的解释就是,模型在训练集上表现得非常好,但是在预测集上表现得很差。本次代码使用sklearn包来完成模型拟合,使用绘图包matplotl原创 2021-12-18 10:43:57 · 726 阅读 · 0 评论