机器学习 | 决策树 理论篇

决策树学习的目的是为了产生一棵泛化能力强,即处理未见示例能力强的决策树。 决策树学习的关键在于如何选择最优划分属性。 我们希望决策树的分支结点所包含的样本尽可能属于同一类别,即结点的“纯度”(purity)越来越高。 经典的属性划分方法 信息增益 增益率 基尼指数 信息增益 “信息熵”是度量样本集合纯度最常用的一种指标。 属性a对样本集D进行划分所获得的“信息增益”: 一般而言,信息增

- 阅读全文 -

机器学习 | 决策树 实践篇

问题 基于表中编号为1、2、3、6、7、9、10、14、15、16、17的11个样本的色泽、根蒂、敲声、文理特性构建决策树,编程实现。 代码实现 #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Sun Oct 14 21:45:45 2018 @author: harley 青绿:0,乌黑:1,浅白:2 蜷缩:0,稍蜷

- 阅读全文 -

机器学习 | 线性回归模型拟合bodyfat数据代码实现及泛化误差评估

线性回归模型来拟合bodyfat数据,数据集介绍可阅读:https://www.mathworks.com/help/nnet/examples/body-fat-estimation.html 在matlab中,在命令行中输入[X,Y] = bodyfat_dataset; 即可获得一个拥有13个属性,252个样本的数据集。使用前200个样本来获得模型,并写出你所获得的模型。使用后52个样本做测

- 阅读全文 -

机器学习 | 简单数据拟合及实现 实践篇

数据 X=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20] Y=[2.94,4.53,5.96,7.88,9.02,10.94,12.14,13.96,14.74,16.68, 17.79,19.67,21.20,22.07,23.75,25.22,27.17,28.84,29.84,31.78] 拟合直线图 拟合的直线方程 直线方程:y=

- 阅读全文 -

机器学习 | k-近邻算法原理及代码实现

k-近邻算法原理 存在一组带标签的训练样本集,输入未带标签的新数据,将新数据每个特征属性与样本集中数据对应的特征属性进性比较,取k个最相似数据中出现次数最多的分类,做为新数据的分类。** 代码实现 from numpy import * import operator def createDataSet(): group = array ([[1.0,1.1],[1.0,1.0],[0,

- 阅读全文 -

机器学习 | 模型评估与选择之性能度量

性能度量是衡量模型泛化能力的评价标准,反映了任务需求;使用不同的性能度量往往会导致不同的评判结果。 回归任务最常用的性能度量是“均方误差”: 一般式子 对于数据分布D和概率密度函数p(.) 均方误差可描述成: 对于分类任务,错误率和精度是最常用的两种性能度量: 错误率:分错的样本占样本总数的比例 精度:分对的样本占样本总数的比例 分类错误率: 分类精度: 一般式子 对于数据分布D和概率密度

- 阅读全文 -

机器学习 | 模型评估与选择之评估方法

基本概念 错误率:分类错误的样本占样本总数的比例 精度:分类正确的样本占样本总数的比例,即精度=1-错误率。 过拟合:由于学习能力过于强大,以至于把训练样本所包含的不太一般的特性都学到了。 欠拟合:由于学习能力太低下,以至于把训练样本所包含一般的特性没学好。 对数据集D进行适当的处理,从中产生训练集S和测试集T。 留一法:与交叉验证法相比,省去第五步,每个样本就是一个最小的子集,不可分,可以省

- 阅读全文 -