引言 最近在读西瓜书,查阅了多方资料,恶补了数值代数、统计概率和线代,总算是勉强看懂了西瓜书中的公式推导。但是知道了公式以后还是要学会应用的,几经摸索发现python下的sklearn包把机器学习中经典的算法都封装好了,因此,打算写几篇博客记录一下sklearn包下的常用学习算法的使用,防止自己以后忘了,嘿嘿。(太忙了,拖拖拉拉几个月只写了六篇,但是还是要加油!) 1.特征降维 降维实际上就是把高...

日常生活中我们往往根据事物的一些特征对他们进行分类,比如饭菜的外观好不好看,咸度合不合适……那决策树也是这个原理,它会根据事物的每一个属性进行一次测试,然后分类,最后在叶子节点上就是最终分出的类。 决策树原理 好看 不好看 适中 不合适 便宜 昂贵 食物的外观 口感 价格 美食 普通 再思考 告辞 类似于上面的图,决策树就是将事物的每一种属性都拿来进行一次测试分类。 决...

目录 写在前面 聚类 数据集 k​均值(k-means)算法 聚类性能度量 初始化问题 k-means++算法 存在的问题 后记 写在前面 无监督学习算法主要作用在训练样本标记信息未知的数据集上,它的目的主要是通过对无标记训练样本的学习,来揭示数据的内在性质及规律。 无监督学习中应用最多、使用最广的是“聚类”算法。 聚类 聚类算法试图产生一个数据集的分划 分划:对于非空集...

理论         “对数几率模型”就是常说的Logistic回归,是一个经典的线性模型。考虑二分类任务,其输出标记,而线性回归模型产生的预测值是连续分布的实数,需要一个阶跃函数将连续值映射为离散二值。用一个对数几率函数近似阶跃函数,得到。从而y和1-y可以分别视为类后验概率和,简记为和。      训...

题目:编程实现基于信息熵进行划分选择的决策树算法,并为西瓜数据集3.0上(P84表4.3)中的数据生成一棵决策树; 代码: 生成决策树: 西瓜数据集Excel文件到这里去找: https://blog.csdn.net/macunshi/article/details/80756016 我的代码是参考这位https://www.cnblogs.com/Kermit-Li/p/4503427.htm...

  1 引言 1.1 机器学习的定义:机器学习就是计算机自动获取知识,研究如何使用计算机来模拟人类学习活动的一门学科,研究计算机获取新知识和新技能、识别现有知识、不断改善性能、实现自我完善的方法。 2 基本术语 2.1 数据集:对于一个问题,一些数据所组成的集合叫做数据集。                 &...

概述 AdaBoost(Adaptive Boosting)是一种集成学习技术,可将弱学习器提升为强学习器。大致思路是:根据初始训练集训练出一个基学习器,再根据基学习器的表现调整训练样本的分布,使得该基学习器分错的样本权重提高,再根据新的分布训练下一个学习器;如此反复直到学习器的数量达到预先指定值T. 算法 推导 针对上面的算法流程中的“6”和“7”...

首先稍微再补充一点理论性的知识。 关于最小化代价函数的几种算法。 Gradient Descent Normal equation Conjugate gradient BFGS L-BFGS 由于难度原因本篇只关注gradient descent梯度下降法,这个方法应用比较广泛,在无法使用正规方程法的许多条件下依然可以奏效,其对比正规方程法的优点是在数据量较大的时候仍然能取得较好的结果因为其复杂...

这篇文章主要是带来机器学习西瓜书决策书这一章的编程习题。相比机器学习实战中的对应章节有了一定的难度上的提升,主要体现在数据集中加入了连续值,对于连续值的处理不能够和离散值同等对待,否则其不同值各自分为一类显然信息增益最大,但这样在实际的应用中并没有意义甚至适得其反。这就涉及到了对于连续值的处理。 连续值处理 最简单的策略就是采用二分法对于连续值进行处理,这正是C4.5决策树算法中采用的机制。 习题...

题意分析 若基学习器直接采用不剪枝决策树,则基本上训练后的每个决策树分类器都是趋于一致。 所以为了保证个体学习器的多样性,应采用单层决策树作为基学习器,即以决策树桩作为弱学习器。 AdaBoost核心思想: 每学到一个学习器,根据其错误率确定两件事: 1.确定该学习器在总学习器中的权重。正确率越高,权重越大。 2.调整训练样本的权重。被该学习器误分类的数据提高权重,正确的降低权重,目的是在下一轮中...

编程实现k均值算法,设置三组不同的k值、三组不同初始中心点,在西瓜数据集4.0上进行实验比较,并讨论什么样的初始中心有助于得到好结果。 1.运行结果:(注:图中方块标注的点为随机选取的初始样本点) k=2时: 本次选取的2个初始向量为[[0.243, 0.267], [0.719, 0.103]] 共进行61轮 共耗时0.10s k=3时: 本次选取的3个初始向量为[[0.343, 0.099],...

引言 最近在读西瓜书,查阅了多方资料,恶补了数值代数、统计概率和线代,总算是勉强看懂了西瓜书中的公式推导。但是知道了公式以后还是要学会应用的,几经摸索发现python下的sklearn包把机器学习中经典的算法都封装好了,因此,打算写几篇博客记录一下sklearn包下的常用学习算法的使用,防止自己以后忘了,嘿嘿。 1.聚类 西瓜书中197页对“聚类”做了详细的解释,以下为摘录...

题目:https://vjudge.net/problem/UVALive-2995 LRJ的方法妙,代码写的更妙..通过控制深度,从一个面就可以搜索到立方体的任意位置。运用的思想是观察到的颜色是否和 实际的立方块颜色矛盾不矛盾 他的代码是这么建系的:  ...