首页 | 小学 | 初中 | 高中 | 作文 | 英语 | 幼教 | 综合 | 早知道 |
学习方法 当前位置:唯才网 > 初中 > 学习方法 > 正文 唯才网手机站

统计学习方法豆瓣

时间:2016-05-07 来源:唯才教育网 本文已影响

篇一:统计学习方法

统计学习方法——CART, Bagging, Random Forest, Boosting

分类: Data Mining Machine Learning2012-11-10 09:46 7917人阅读 评论(12) 收藏 举报 本文从统计学角度讲解了CART(Classification And Regression Tree), Bagging(bootstrap aggregation), Random Forest Boosting四种分类器的特点与分类方法,参考材料为密歇根大学Ji Zhu的pdf与组会上王博的讲解。

? CART(Classification And Regression Tree)

Breiman, Friedman, Olshen & Stone (1984), Quinlan (1993)

思想:递归地将输入空间分割成矩形

优点:可以进行变量选择,可以克服missing data,可以处理混合预测 缺点:不稳定

example:

对于下面的数据,希望分割成红色和绿色两个类,原本数据生成是这样的: Red class: x1^2+x2^2>=4.6

Green class: otherwise

经过不断分割可以得到最后的分类树:

篇二:统计学习精要

统计学习精要(The Elements of Statistical Learning)课堂笔记系列

课程教材:The Elements of Statistical

授课人:复旦大学计算机学院 吴立德教授 ?统计学习精要(The Elements of Statistical Learning)?课堂笔记(一)

前两天微博上转出来的,复旦计算机学院的吴立德吴老师在开?统计学习精要(The Elements of Statistical Learning)?这门课,还在张江...大牛的课怎能错过,果断请假去蹭课...为了减轻心理压力,还拉了一帮同事一起去听,eBay浩浩荡荡的十几人杀过去好不壮观!总感觉我们的人有超过复旦本身学生的阵势,五六十人的教室坐的满满当当,壮观啊。 这本书正好前阵子一直在看,所以才会屁颠屁颠的跑过去听。确实是一本深入浅出讲data mining models的好书。作者网站上提供免费的电子版下载,爽!

从这周开始,如无意外我会每周更新课堂笔记。另一方面,也会加上自己的一些理解和实际工作中的感悟。此外,对于data mining感兴趣的,也可以去coursera听课~貌似这学期开的machine learning评价不错。我只在coursera上从众选了一门 「Model Thinking」,相对来说比较简单,但是相当的优雅!若有时间会再写写这门课的上课感受。笔记我会尽量用全部中文,但只是尽量...

------------课堂笔记开始--------

第一次上课,主要是导论,介绍这个领域的关注兴趣以及后续课程安排。对应本书的第一章。

1. 统计学习是?从数据中学习知识。简单地说,我们有一个想预测的结果(outcome),记为Y,可能是离散的也可能是连续的。同时,还有一些观察到的特征(feature),记为X,X既可能是一维的也可能是多维的。对于每一个观测个体,我们都会得到一个行向量 (x1,...,xp) ,对应它的p个特征的观测值,以及一个观测到的结果值 y 。如果总共有N个个体,那么我们对于每个个体都会得到这些值,则有 (y1,...,yn)T 为观测结果的列向量以及X (n*p)矩阵。这样的数据称之为训练数据集(training set)。这里更多是约定一些notation。

2. 统计学习分类?一般说来,我们有个观测到的结果Y,然后找到一个适合的模型根据X预测Y,这样的称之为有监督的学习(supervised learning)。而有些时候,Y是无法观

测到的,那么只是通过X来学习,称之为无监督的学习(unsupervised learning)。这本书主要侧重有监督的学习。

3. 回归和分类器。这个主要和Y有关。如果Y为离散,比如红黄蓝不同颜色,则称之为分类器(学习模型);反之,若Y为连续,比如身高,则称之为回归(学习模型)。这里更多只是称谓上的区别。

4. 统计学习的任务?预测。通过什么来预测?学习模型(learning models)。按照什么来学习?需要一定的准则,比如最小均方误差MSE,适用于分类器的0-1准则等。基于这些准则、优化过的实现方法称之为算法。

5. 统计学习举例?

分类器:依据邮件发信人、内容、标题等判断是否为垃圾邮件;

回归:前列腺特异抗原(PSA)水平与癌症等因素的关系;

图形识别:手写字母的识别;

聚类:根据DNA序列判断样本的相似性,如亲子鉴定。

6. 课程安排顺序?

第二章,是对于有监督的学习模型的概览。

第三章和第四章将讨论线性回归模型和线性分类器。

第五章将讨论广义线性模型(GLM)。

第六章涉及kernel方法和局部回归。

第七章是模型评价与选择。

第八章是测侧重算法,比如最大似然估计,bootstrap等。本学期预计讲到这里。所以后面的我就暂时不列出了。

目测第二节开始将变得越来越难,前阵子自学第二章痛苦不已啊...一个LASSO就折磨了我好久。当时的读书笔记见:降维模型若干感悟

--------10.15补充---------

上周写的时候只是凭着记忆,笔记没在身边。今天重新翻了翻当时记下的课堂笔记,再补充一些吧。

第九章是可加模型,即 f(x1,...,xp)=f(x1)+...+f(xp)

第十章是boosting模型

第十一章讨论神经网络

第十二章讨论支持向量机 (Support Vector Machine)

第十三章设计原型方法(Prototype)

第十四章从有监督的学习转到无监督的学习(即有X有Y->有X无Y)

第十五章讨论随机森林模型(Random Forest)

第十六章是集群学习

第十七章结构图模型

第十八章高维问题(我最近一直念叨的curse of dimensionality...今年搞笑诺贝尔奖也多少与此有关,见/article/344117/,还有一篇相关的paper) ps. 吴老师对于随机森林等等模型的评论也挺有意思的,大致是,大家都没搞清随机森林为什么效果这么好...而且这一类模型都是computatoinal intensive的,即有一个非常简单的idea然后借助大量的计算来实现。此外,这类方法更多有“猜”的感觉,无法知道来龙去脉,在现实中显得不那么intuitive...(不像econometrics那般致力于causality呢)。

?统计学习精要(The Elements of Statistical

Learning)?课堂笔记(二)

继续一周一次的课堂笔记 :D 昨天去晚了站着听讲,感觉好好啊,注意各种集中。想想整个教室里面就是我和老师是站着的,自豪感油然而生。

第二次课讲的东西依旧比较简单,是这本书第二章的前半部分。作为一个好久之前已经预习过的孩子,我表示万分的得意(最小二乘法难道不是三四年前就学过的?话说以后我再面人的时候,就让他推导最小二乘估计量,嘻嘻...考验一下基本功)。

------------原谅我的废话,笔记开始------------

简单预测方法:最小二乘法(以下沿用计量经济学的习惯,简称OLS) OLS实在是太普遍了,我就不赘述细节了。OLS的思想就是,基于已有的样本信息,找出一条直线,让预测值与真实值之间的残差平方和最小,即 ∑n(y?y^)2 最小。其中, y 为真实的样本观测值(已有样本),而 y^ 是OLS的预测值。用图来讲的话,X为一维向量的时候,就是用一条直线来最好的拟合各个样本点。

这里就很明显了,首先OLS假设是一条直线。那么就是一个参数模型,即我们需要假设一个未知的参数 β ,构成一个线性方程 y=βx ,然后再去估计 β 的值。然后呢,直线会有很

多条,所以我们要找到一个目标——比如这里,就是最小化残差平方和RSS。换言之,我们寻找的就是最优的向量 β^ 使得RSS最小。

解这个最优化问题很简单,我就不重复了。最后解得的最优估计量为:

β^=(X′X)?1X′Y

这里写成矩阵形式,比较简单。X为一维向量的时候,可以改写成 ∑ 形式,我个人不大喜欢,就不展开了。

简单预测方法:K近邻(k nearest neighbor)

K近邻的思想就更简单了。不就是想预测某个点x对应的y么?那么就把它的邻居都找来,平均一下好了。不是有句话叫做什么“一个人的收入就大概是他的圈子收入的平均值么?” 所以 y^=mean(yi|xi∈Nk(x)) ,这里 Nk(x) 表示点x的K近邻。至于这个近邻怎么定义嘛,嘻嘻,很简单啊,欧几里德距离就可以嘛~

评语:吴老师对于这两个算法的直观评价是,OLS呢就是勤奋的学生,预测前先做足功课,预测的时候只要知道X,噼里啪啦一下子y就估计出来了。然而knn则是一个临时抱佛脚的学生,预测的时候开始找自己的k近邻,然后把它们平均一下就好了。哈哈,大意如此,大家可以体会一下这种精神。我个人感觉呢,OLS属于以不变应万变的,而knn则是见机行事的。 统计决策理论(Statistical Decision Theory)

说了这么多,这个模型好不好到底怎么判读呢?凡事总得有个标准呢。这一系列的标准或者说准则,就是统计决策理论了。

首先呢,大致我们需要对X,Y有个分布上的描述:用 P(X,Y) 记作向量 (X,Y) 的联合分布,然后 p(X,Y)为其对应的密度函数。之后为了估计Y,我们会有很多很多模型,即各种 f(X) ,而这些 f(X) 组成的函数空间记为 F 。

然后我们定义一个损失函数,比如在均方误差意义下, L(Y,f(X)=(Y?f(X))2 ,这样就有了一个选择的标准——使得损失函数的期望最

小: EPE(f)=E(Y?f(X))2=∫[y?f(x)]2P(dx,dy) 。接下来就是,到底在 F 空间里面,哪一个 f 最符合这个标准呢?

首先自然是把联合分布变为条件分布。这个idea显而易见——我们总是知道X的(原谅我吧,全中文确实比较难写,偶尔穿插英文一下 ^_^)。所以conditional on X,我们就有了

EPE(f)=∫[y?f(x)]2P(dx,dy)=∫x{∫y[y?f(x)]2p(y|x)dy}p(x)dx

去解最小化问题,最终我们得到的就是在每个点X上, f(X)=E(y|X=x) 。通俗的讲就是,对于每个点预测,把和它X向量取值一样的样本点都找出来,然后取他们的平均值就可以了。很直观的不是么?这里也有点最大似然的想法呢——比如预测一个男孩的身高,最保险的就是把和它同龄的其他男孩的身高平均一下,不是么?

但是说来简单啊,很多时候 P(X,Y) 都是未知的,根本无法计算嘛。所以只能近似: ? 回忆一下knn,就是放松了两点:1) xk 取的是x的近邻,而不一定是x; 2)用样本

平均数代替了期望

? 而OLS呢,也是最后在 E(β)=E[(X′X)?1X′Y] 这里,用样本平均代替了期望。 近似嘛,自然有好的近似和不好的近似。很显然的,当样本比较大、尤其是比较密集的时候,x的邻居应该都离x很近,所以这个误差可以减小;此外,当样本很大的时候,根据大数定律,平均数收敛于期望。所以,这两种算法应该说,都在大样本下会有更好的效果。 模型选择、训练误差与测试误差、过拟合

这里讲的比较简单。模型选择就是 F 的选择,即选择哪一类函数空间 F ,然后再其中找/估计最优的 f(X) 。很显然,如果只有若干个有限的样本,我们总能把各个样本用直线或者曲线依次连起来,这样的话就有无数个f可以作为此问题的解。显然这不是我们想要的——这样的称为“不设定问题”,即可能无解、可能多个解、还可能因为一点点X的变化导致整个解的解答变化。因此我们需要先设定一个解的类别。

训练误差:预测模型估计值与训练数据集之间的误差。RSS就是一个典型的训练误差组成的残差平方和。

测试误差:用训练集以外的测试数据集带来的误差,显然我们更关心的是测试误差——训练总能训练的很好,让损失函数期望最小,然而测试集则不一定这样。一般说来,测试误差>训练误差。

过拟合:选择一个很复杂的f,使得训练误差很小,而实际的测试误差不一定小。最极端的就是刚才说的,把训练集的点一个个依次连起来...训练误差肯定是0是不是?

我们关心的自然是怎么降低测试误差。显然这东西会跟训练误差有关,但是它还跟f的复杂度有关。最最棘手的就是,f的复杂度是一个难以衡量的问题。早期的研究有用自由度来衡量这个复杂度的,但是也不是那么的靠谱...后面的有人鼓捣出来PAC(使得近似正确的概率

篇三:22本数据分析、挖掘的好书推荐―绝对干货,不看后悔!

1. 深入浅出数据分析

这书挺简单的,基本的内容都涉及了,说得也比较清楚,最后谈到了R是大加分。 难易程度:非常易。

2.啤酒与尿布

通过案例来说事情,而且是最经典的例子。

难易程度:非常易。

3.数据之美

一本介绍性的书籍,每章都解决一个具体的问题,甚至还有代码,对理解数据分析的应用领域和做法非常有帮助。

难易程度:易。

4.集体智慧编程

学习数据分析、数据挖掘、机器学

统计学习方法豆瓣

习人员应该仔细阅读的第一本书。作者通过实际例子介绍了机器学习和数据挖掘中的算法,浅显易懂,还有可执行的Python代码。 难易程度:中。

5.Machine Learning in Action

用人话把复杂难懂的机器学习算法解释清楚了,其中有零星的数学公式,但是是以解释清楚为目的的。而且有Python代码,大赞!目前中科院的王斌老师(微博: @王斌_ICTIR)已经翻译这本书了 机器学习实战 (豆瓣)。这本书本身质量就很高,王老师的翻译质量也很高。

难易程度:中。

6.推荐系统实践

这本书不用说了,研究推荐系统必须要读的书,而且是第一本要读的书。 难易程度:中上。

7.数据挖掘导论

最近几年数据挖掘教材中比较好的一本书,被美国诸多大学的数据挖掘课作为教材,没有推荐Jiawei Han老师的那本书,因为个人觉得那本书对于初学者来说不太容易读懂。

难易程度:中上。

8.The Elements of Statistical Learning

这本书有对应的中文版:统计学习基础 (豆瓣)。书中配有R包,非常赞!可以参照着代码学习算法。

难易程度:难。

9.统计学习方法

李航老师的扛鼎之作,强烈推荐。

难易程度:难。

10.Pattern Recognition And Machine Learning

经典中的经典。

11.Machine Learning

去年出版的新书,作者Kevin Murrphy教授是机器学习领域中年少有为的代表。这书是他的集大成之作,写完之后,就去Google了,产学研结合,没有比这个更好的了。

12.Bayesian Reasoning and Machine Learning

看名字就知道了,彻彻底底的Bayesian学派的书,里面的内容非常多,有一张图将机器学习中设计算法的关系总结了一下,很棒。

13.Machine Learning for Hackers

也是通过实例讲解机器学习算法,用R实现的,可以一边学习机器学习一边学习R。

14.Probabilistic Graphical Models

鸿篇巨制,这书谁要是读完了告诉我一声。

15.Convex Optimization

凸优化中最好的教材,没有之一了。课程也非常棒,Stephen老师拿着纸一步一步推到,图一点一点画,太棒了。

16.Graphical Models, Exponential Families, and Variational Inference

这个是Jordan老爷子和他的得意门徒 Martin J Wainwright 在 Foundation of Machine Learning Research上的创刊号,可以免费下载,比较难懂,但是一旦读通了,graphical model的相关内容就可以踏平了。

17.Introduction to Semi-Supervised Learning

半监督学习必读必看的书。

18.Learning to Rank for Information Retrieval

微软亚院刘铁岩老师关于LTR的著作,啥都不说了,推荐!

19.Learning to Rank for Information Retrieval and Natural Language Processing

李航老师关于LTR的书,也是当时他在微软亚院时候的书,可见微软亚院对LTR的研究之深,贡献之大。

20.SciPy and NumPy

这本书可以归类为数据分析书吧,因为numpy和scipy真的是非常强大啊。

21.Python for Data Analysis

作者是Pandas这个包的作者,看过他在Scipy会议上的演讲,实例非常强,用pandas做数据分析!

22.Bad Data Handbook

很好玩的书,作者的角度很不同。