原文地址:https://www.jianshu.com/p/d8ceeee66a6f Decision Tree 基本思想在于每次分裂节点时选取一个特征使得划分后得到的数据集尽可能纯. 划分标准 信息增益(Information Gain) 信息增益 = 未划分数据集的信息熵 - 划分后子数据集的信息熵的数学期望值. 事件\(x_i\)的信息量\(=-logP(x_i)\),信息熵就是信息量的期望值,记作\(H(x)\),即\(H(x)=-\sum_{i=1}^{n}P(x_i)logP(x_…
假设我们有很多机器学习算法(可以是前面学过的任何一个),我们能不能同时使用它们来提高算法的性能?也即:三个臭皮匠赛过诸葛亮. 有这么几种aggregation的方式: 一些性能不太好的机器学习算法(弱算法),如何aggregation,成为表现比较好的算法?来看一下: 我们可以看出,有时候aggregation的表现像是在做feature transform,有时候又像是在做regularization. Blending:uniform Blending. linear Blending. a…
咱们正式进入了机器学习的模型的部分,虽然现在最火的的机器学习方面的库是Tensorflow, 但是这里还是先简单介绍一下另一个数据处理方面很火的库叫做sklearn.其实咱们在前面已经介绍了一点点sklearn,主要是在categorical data encoding那一块.其实sklearn在数据建模方面也是非常666的.一般常用的模型都可以用sklearn来做的.既然它都这么牛逼了,咱们为啥还要学TensorFlow呢?其实主要的原因有两个,一是因为Google在流量方面的强势推广,导致绝…
参考资料(要是对于本文的理解不够透彻,必须将以下博客认知阅读): 1. https://zhuanlan.zhihu.com/p/86263786 2.https://blog.csdn.net/liuy9803/article/details/80598652 3.https://blog.csdn.net/perfect1t/article/details/83684995 4.GBDT算法原理以及实例理解(!!) 5.Adaboost算法原理分析和实例+代码(简明易懂)(!!) 目录 1.…
目录 第十章.random模块 第十章.random模块 #随机生成0-1之间的小数 import random print(random.random()) print(random.randint(1, 3))#随机生成1,2,3任一数 print(random.uniform(1, 3))#大于1小于3的小数 print(random.choice([1,2,3,"a"]))#随机选一个元素 # random.sample([], n)n表示选其中n个元素 print(rando…
一.Table for Content 在之前的文章中我们介绍了Decision Trees Agorithms,然而这个学习算法有一个很大的弊端,就是很容易出现Overfitting,为了解决此问题人们找到了一种方法,就是对Decision Trees 进行 Pruning(剪枝)操作. 为了提高Decision Tree Agorithm的正确率和避免overfitting,人们又尝试了对它进行集成,即使用多棵树决策,然后对于分类问题投票得出最终结果,而对于回归问题则计算平均结果.下面是几条…
http://www.cnblogs.com/joneswood/archive/2012/03/04/2379615.html 1.      什么是Treelink Treelink是阿里集团内部的叫法,其学术上的名称是GBDT(Gradient Boosting Decision Tree,梯度提升决策树).GBDT是“模型组合+决策树”相关算法的两个基本形式中的一个,另外一个是随机森林(Random Forest),相较于GBDT要简单一些. 1.1    决策树 应用最广的分类算法之一…
Today, I want to show how I use Thomas Lin Pederson's awesome ggraph package to plot decision trees from Random Forest models. I am very much a visual person, so I try to plot as much of my results as possible because it helps me get a better feel fo…
本文主要基于台大林轩田老师的机器学习技法课程中关于使用融合(aggregation)方法获得更好性能的g的一个总结.包含从静态的融合方法blending(已经有了一堆的g,通过uniform:voting/average.non-uniform:linear/non-linear和condition的融合形式来获取更好地性能).动态融合方法learning(没有一堆的g set,而是通过online learning获取g,边学习g,变边进行融合,对照于blending中的uniform融合形式…
Bagging 从原始样本集中抽取训练集.每轮从原始样本集中使用Bootstraping(有放回)的方法抽取n个训练样本(在训练集中,有些样本可能被多次抽取到,而有些样本可能一次都没有被抽中).共进行k轮抽取,得到k个训练集.(我们这里假设k个训练集之间是相互独立的,事实上不是完全独立) 每次使用一个训练集得到一个模型,k个训练集共得到k个模型.但是是同种模型.(注:k个训练集虽然有重合不完全独立,训练出来的模型因为是同种模型也是不完全独立.这里并没有具体的分类算法或回归方法,我们可以根据具体问…