李航《统计学习方法》CH03】的更多相关文章

2.4.1 构造kd树 给定一个二维空间数据集,T={(2,3),(5,4),(9,6)(4,7),(8,1),(7,2)} ,构造的kd树见下图 2.4.2 kd树最近邻搜索算法 三.实现算法 下面算法实现并没有从构建kd树再搜索kd树开始,首先数据分为两部分,train数据和predict的数据,将train的数据抽取k个作为predict的最临近k节点,计算这k个数据和predict的距离,继续计算train中其他数据和predict的欧式距离,若小于k中欧式距离,那么替换较大的原始最临近…
KNN算法 基本模型:给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的k个实例.这k个实例的多数属于某个类,就把输入实例分为这个类. KNN没有显式的学习过程. KNN使用的模型实际上对应于特征空间的划分.特征空间中,对每个训练实例点\(x_i\),距离该点比其它点更近的所有点组成一个区域,叫作单元(cell).每个训练实例拥有一个单元.所有的训练实例点的单元构成对特征空间的一个划分.如下图所示. 三要素:KNN模型由三个基本要素--距离度量,K值选择,分类决策决定.当三要…
1. kd树简介 构造kd树的方法如下:构造根结点,使根结点对应于k维空间中包含所有实例点的超矩形区域;通过下面的递归方法,不断地对k维空间进行切分,生成子结点.在超矩形区域(结点)上选择一个坐标轴和在此坐标轴上的一个切分点,确定一个超平面,这个超平面通过选定的切分点并垂直于选定的坐标轴,将当前超矩形区域切分为左右两个子区域(子结点);这时,实例被分到两个子区域.这个过程直到子区域内没有实例时终止(终止时的结点为叶结点).在此过程中,将实例保存在相应的结点上. 2. kd树建立 3. kd树搜索…
1 简介 k近邻法的输入为实例的特征向量,对应于特征空间的点;输出为实例的类别,可以取多类.k近邻法假设给定一个训练数据集,其中的实例类别已定.分类时,对新的实例,根据其k个最近邻的训练实例的类别,通过多数表决等方式进行预测.因此,k近邻法不具有显式的学习过程.k近邻法实际上利用训练数据集对一特征向量空间进行划分,并作为其分类的“模型”.k值的选择.距离度量及分类决策规则是k近邻法的三个基本要素. 2 模型 2.1 简介 k近邻法中,当训练集.距离度量(如欧氏距离).k值及分类决策规则(如多数表…
1 简介 1.1 介绍 1.2 生成步骤 CART树算法由以下两步组成:(1)决策树生成:基于训练数据集生成决策树,生成的决策树要尽量大;(2)决策树剪枝:用验证数据集对己生成的树进行剪枝并选择最优子树,这时用损失函数址小作为剪枝的标准. 2 算法 2.1 回归树 对回归树用平方误差最小化准则,生成二叉树. 2.1.1 回归树生成 2.2 分类树 对分类树用基尼指数(Gini imlex)最小化准则,进行特征选择,生成二叉树. 2.2.1 分类树生成 2.3 剪枝 CART剪枝算法由两步组成:…
最近阅读了李航的<统计学习方法(第二版)>,对AdaBoost算法进行了学习. 在第八章的8.1.3小节中,举了一个具体的算法计算实例.美中不足的是书上只给出了数值解,这里用代码将它实现一下,算作一个课后作业. 一.算法简述 Adaboost算法最终输出一个全局分类模型,由多个基本分类模型组成,每个分类模型有一定的权重,用于表示该基本分类模型的可信度.最终根据各基本分类模型的预测结果乘以其权重,通过表决来生成最终的预测(分类)结果. AdaBoost算法的训练流程图如下: AdaBoost在训…
K近邻法 1基本概念 K近邻法,是一种基本分类和回归规则.根据已有的训练数据集(含有标签),对于新的实例,根据其最近的k个近邻的类别,通过多数表决的方式进行预测. 2模型相关 2.1 距离的度量方式 定义距离 (1)欧式距离:p=2. (2)曼哈顿距离:p=1. (3)各坐标的最大值:p=∞. 2.2 K值的选择 通常使用交叉验证法来选取最优的k值. k值大小的影响: k越小,只有距该点较近的实例才会起作用,学习的近似误差会较小.但此时又会对这些近邻的实例很敏感,如果紧邻点存在噪声,预测就会出错…
朴素贝叶斯法 首先训练朴素贝叶斯模型,对应算法4.1(1),分别计算先验概率及条件概率,分别存在字典priorP和condP中(初始化函数中定义).其中,计算一个向量各元素频率的操作反复出现,定义为count函数. # 初始化函数定义了先验概率和条件概率字典,并训练模型 def __init__(self, data, label): self.priorP = {} self.condP = {} self.train(data, label) count函数,输入一个向量,输出一个字典,包含…
CH01 统计学方法概论 前言 章节目录 统计学习 监督学习 基本概念 问题的形式化 统计学习三要素 模型 策略 算法 模型评估与模型选择 训练误差与测试误差 过拟合与模型选择 正则化与交叉验证 正则化 交叉验证 泛化能力 泛化误差 泛化误差上界 生成模型与判别模型 分类问题 标注问题 回归问题 导读 直接看目录结构,会感觉有点乱,就层级结构来讲感觉并不整齐. 可以看本章概要部分,摘录几点,希望对本章内容编排的理解有帮助: 1. 统计学习三要素对理解统计学习方法起到提纲挈领的作用 2. 本书主要…
基于统计学习方法角度谈谈CRF 作者:白宁超 2016年8月2日13:59:46 [摘要]:条件随机场用于序列标注,数据分割等自然语言处理中,表现出很好的效果.在中文分词.中文人名识别和歧义消解等任务中都有应用.本文源于笔者做语句识别序列标注过程中,对条件随机场的了解,逐步研究基于自然语言处理方面的应用.成文主要源于自然语言处理.机器学习.统计学习方法和部分网上资料对CRF介绍的相关的相关,最后进行大量研究整理汇总成体系知识.文章布局如下:第一节介绍CRF相关的基础统计知识:第二节介绍基于自然语…
参考博客 Liam Q博客 和李航的<统计学习方法> 感知机学习旨在求出将训练数据集进行线性划分的分类超平面,为此,导入了基于误分类的损失函数,然后利用梯度下降法对损失函数进行极小化,从而求出感知机模型.感知机模型是神经网络和支持向量机的基础.下面分别从感知机学习的模型.策略和算法三个方面来介绍. 1. 感知机模型 感知机模型如下: f(x)= sign(w*x+b) 其中,x为输入向量,sign为符号函数,括号里面大于等于0,则其值为1,括号里面小于0,则其值为-1.w为权值向量,b为偏置.…
作者:桂. 时间:2017-04-19  21:20:09 链接:http://www.cnblogs.com/xingshansi/p/6736385.html 声明:欢迎被转载,不过记得注明出处哦~ 前言 本文为<统计学习方法>第三章:KNN(k-Nearest Neighbor),主要包括: 1)KNN原理及代码实现: 2)K-d tree原理: 内容为自己的学习记录,其中多有借鉴他人的地方,最后一并给出链接. 一.KNN原理及代码实现 KNN对应算法流程: 其实就是在指定准则下,最近的…
作者:桂. 时间:2017-04-21  21:11:23 链接:http://www.cnblogs.com/xingshansi/p/6743780.html 前言 看到最近大家都在用Tensorflow,一查才发现火的不行.想着入门看一看,Tensorflow使用手册第一篇是基于MNIST的手写数字识别的,用到softmax regression,而这个恰好与我正在看的<统计信号处理>相关.本文借此梳理一下: 1)罗杰斯特回归 2)Softmax Regression 3)基于Tenso…
作者:桂. 时间:2017-04-26  12:17:42 链接:http://www.cnblogs.com/xingshansi/p/6767980.html 前言 之前分析的感知机.主成分分析(Principle component analysis, PCA)包括后面看的支撑向量机(Support vector machines, SVM),都有用到核函数.核函数是将信号映射到高维,而PCA一般用来降维.这里简单梳理一下核函数的知识: 1)核函数基本概念; 2)核函数的意义; 内容为自己…
作者:桂. 时间:2017-05-13  14:19:14 链接:http://www.cnblogs.com/xingshansi/p/6847334.html . 前言 内容主要是CART算法的学习笔记. CART算法是一个二叉树问题,即总是有两种选择,而不像之前的ID3以及C4.5B可能有多种选择.CART算法主要有回归树和分类树,二者常用的准则略有差别:回归树是拟合问题,更关心拟合效果的好坏,此处用的是均方误差准则; 分类树是分类问题,更像是离散变量的概率估计,用与熵类似的Gini系数进…
作者:桂. 时间:2017-05-13  21:52:14 链接:http://www.cnblogs.com/xingshansi/p/6850684.html 前言 主要记录SVM的相关知识,参考的是李航的<统计学习方法>,最后的SMO优化算法(Sequential minimal optimization)是二次规划的优化算法,不涉及整体思路的理解,这里打算跳过,以后用到了再来回顾. 一.线性可分支撑向量机 A-问题分析 不同于感知器Perceptron,SVM希望所有点到分离面的最小距…
本系列笔记内容参考来源为李航<统计学习方法> EM算法是一种迭代算法,用于含有隐变量的概率模型参数的极大似然估计或极大后验概率估计.迭代由 (1)E步:求期望 (2)M步:求极大 组成,称为期望极大算法. EM算法引入 EM算法是通过不断求解下界的极大化逼近求解对数似然函数极大化的算法. EM在监督学习中的应用 收敛性 EM算法在高斯混合模型学习中的应用 高斯混合模型 高斯混合模型参数估计的EM算法 EM算法的推广 EM算法还可解释为F函数的极大-极大算法,基于这个解释有若干变形与推广. 首先…
本系列笔记内容参考来源为李航<统计学习方法> k近邻是一种基本分类与回归方法,书中只讨论分类情况.输入为实例的特征向量,输出为实例的类别.k值的选择.距离度量及分类决策规则是k近邻法的三个基本要素. k近邻算法 给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的k个实例,这k个实例的多数属于某个类,就把该输入实例分为这个类. k近邻法没有显示的学习过程. k近邻模型 距离度量 一般为欧式距离,Lp距离.Minkowski距离等 由不同的距离度量所确定的最近邻点是不同的. 式…
目录 logistic回归和最大熵模型 1. logistic回归模型 1.1 logistic分布 1.2 二项logistic回归模型 1.3 模型参数估计 2. 最大熵模型 2.1 最大熵原理 2.2 最大熵模型 2.3 最大熵模型的学习 3. 极大似然估计 4. 最大熵与logistic回归的关系 5. 总结 6. Reference logistic回归和最大熵模型 1. logistic回归模型   logistic回归是一种广义线性回归(generalized linear mod…
目录 SVM 1. 定义 1.1 函数间隔和几何间隔 1.2 间隔最大化 2. 线性可分SVM 2.1 对偶问题 2.2 序列最小最优算法(SMO) 3. 线性不可分SVM 3.1 松弛变量 3.2 求解对偶问题 3.3 支持向量求解参数\(w,b\) 4. 非线性SVM 5. Reference: SVM   支持向量机是一种二分类模型,它以间隔最大作为优化目标,因此它比感知机仅仅以误分类推动的模型要优胜不少.数据线性可分时,SVM直接以间隔最大训练出一个线性分类模型.当数据线性不可分时,SV…
统计学习方法与Python实现(二)——k近邻法 iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 1.定义 k近邻法假设给定一个训练数据集,其中的实例类别已定.分类时,对新的实例,根据其k个最近邻的训练实例的类别,通过多数表决的方式进行预测.k近邻法不具有显式的学习过程,而实际上是利用训练数据集对特征空间进行划分,并作为其分类的模型.k近邻法的三个基本要素是 k值的选择.距离度量和分类决策规则. k近邻法的模型是将特征空间划分成一些称为单元的子空间,并且…
统计学习方法与Python实现(一)——感知机 iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 1.定义 假设输入的实例的特征空间为x属于Rn的n维特征向量,输出空间为y = { +1, -1}的两点,输出的y的值表示实例的类别,则由输出空间到输出空间的函数: 被称为感知机. 模型参数w表示内积的权值向量,b表示偏置.sign(x)为符号函数,≥0取+1,<0取-1. 感知机模型的分类由线性方程 wx + b = 0 确定的分离超平面来完成,根据将特征向…
统计学习方法与Python实现(三)——朴素贝叶斯法 iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 1.定义 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法. 对于给定的训练数据集,首先基于特征条件独立假设学习输入输出的联合概率分布.然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y,从而进行决策分类. 朴素贝叶斯法学习到的是生成数据的机制,属于生成模型. 设Ω为试验E的样本空间,A为E的事件,B1~Bn为Ω的一个划分,则…
本文,意在说明<统计学习方法>第九章EM算法的三硬币例子,公式(9.5-9.6如何而来) 下面是(公式9.5-9.8)的说明, 本人水平有限,怀着分享学习的态度发表此文,欢迎大家批评,交流.感谢您的阅读.欢迎转载本文,转载时请附上本文地址:http://www.cnblogs.com/Dzhouqi/p/3203776.html另外:欢迎访问我的博客 http://www.cnblogs.com/Dzhouqi/…
前言 支持向量机(SVM)是一种很重要的机器学习分类算法,本身是一种线性分类算法,但是由于加入了核技巧,使得SVM也可以进行非线性数据的分类:SVM本来是一种二分类分类器,但是可以扩展到多分类,本篇不会进行对其推导一步一步罗列公式,因为当你真正照着书籍进行推导后你就会发现他其实没那么难,主要是动手.本篇主要集中与实现,即使用著名的序列最小最优化(SMO)算法进行求解,本篇实现的代码主要参考了Platt J. Sequential minimal optimization: A fast algo…
统计学习方法c++实现之二 k近邻算法 前言 k近邻算法可以说概念上很简单,即:"给定一个训练数据集,对新的输入实例,在训练数据集中找到与这个实例最邻近的k个实例,这k个实例的多数属于某个类,就把该输入分为这个类."其中我认为距离度量最关键,但是距离度量的方法也很简单,最长用的就是欧氏距离,其他的距离度量准则实际上就是不同的向量范数,这部分我就不赘述了,毕竟这系列博客的重点是实现.代码地址:https://github.com/bBobxx/statistical-learning k…
K近邻法(K-nearest neighbor,k-NN),这里只讨论基于knn的分类问题,1968年由Cover和Hart提出,属于判别模型 K近邻法不具有显式的学习过程,算法比较简单,每次分类都是根据训练集中k个最近邻,通过多数表决的方式进行预测.所以模型需要保留所有训练集数据,而象感知机这样的模型只需要保存训练后的参数即可,训练集不需要保留 K近邻算法 K近邻法三要素 和其他统计学习方法不同的,K近邻法的三要素是,k值的选择,距离度量和分类决策规则 距离度量 首先如何定义"近"?…
当前,机器学习和数据科学都是很重要和热门的相关学科,需要深入地研究学习才能精通. <机器学习与数据科学基于R的统计学习方法>试图指导读者掌握如何完成涉及机器学习的数据科学项目.为数据科学家提供一些在统计学习领域会用到的工具和技巧,涉及数据连接.数据处理.探索性数据分析.监督机器学习.非监督机器学习和模 型评估.选用的是R统计环境,所有代码示例都是用R语言编写的,涉及众多流行的R包和数据集. 适合数据科学家.数据分析师.软件开发者以及需要了解数据科学和机器学习方法的科研人员阅读参考. 学习参考:…
<统计学习方法>极简笔记P2:感知机数学推导 <统计学习方法>极简笔记P3:k-NN数学推导 <统计学习方法>极简笔记P4:朴素贝叶斯公式推导…
<统计学习方法>极简笔记P4:朴素贝叶斯公式推导 朴素贝叶斯基本方法 通过训练数据集 T={(x_1,y_1),(x_2,y_2),(x_N,y_N)...,(x_1,y_1)} 学习联合概率分布P(X,Y),即学习先验概率分布 P(Y=c_k) 条件概率分布$P(X=x|Y=c_k)$ $k=1,2,...,K$ 假设条件独立 $P(X=x|Y=c_k)=\prod_{j=1}^{n}P(X^{(j)}=x^{(j)}|Y=c_k)$ 然后根据学习到的模型计算后验概率分布,根据贝叶斯定理 $…