Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

来源:网络采摘    作者:果子整理    人气:    发布时间:2020-08-01    

关注前沿科技 白交 发自 凹非寺
量子位 报道 | 公众号 QbitAI

白交 发自 凹非寺

量子位 报道 | 公众号 QbitAI

今天的这篇入门贴,我们就来介绍一下决策树与随机森林

这篇帖子适合机器学习基础为0的同学~

当然,有基础的同学也可以来看一下,加深一下理解哈!

作者还是此前介绍过的普林斯顿大学毕业,现为Facebook工程师——Victor Zhou。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

决策树

在介绍随机森林之前,先来介绍一下决策树。

简单来说,一堆决策树捆绑在一起,就组成了一个随机森林。

我们先来看一组数据集。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

如果给你一个随机的横坐标x,你会觉得是什么颜色的点?

蓝色?绿色?如果你说了其中一个,那你一定是在逗我。

我们看这个图,x=2的这条线似乎成了一个分割线。于是合理怀疑,当x<2的时候,是蓝色,当x>2的时候,为绿色。

那么刚才,你就相当于评估了一个决策树。

决策树就是在给定的数据集的情况下,对新样本进行分类。

而图中已有的蓝色和绿色标记点就相当于我们的数据集,而随机的x,就是新样本,我们正在做的,就是在给新样本进行分类。

而如果在数据集中添加了一种颜色——红色。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

如果我们再按照那种方式分类,结果就会出现误差。在x<2的时候,就无法立即将其分为蓝色或者红色。

于是,就会出现另一个决策点。设定一个y,当y<2时,就为蓝色,反之,就为红色。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

将其分为三类。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

这就是决策树背后的基本思想。

怎么样,很简单对吧?接下来,我们就来训练决策树。

训练决策树——确定根节点

将使用上述的包含3类——红绿蓝的数据集。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

训练决策树的首要任务确定树中的根决策节点。这里有x,y,你可以设定任意一个阈值。

那么我们就设定x阈值(临界值)为2。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

根据结果来看,我们这一个根节点做出了较好的分割,已经尽可能的将不同种类分开来。

绿色的都在右边,不是绿色的都在左边。

但是,我们的目标是找到一个根节点,做到最好的拆分。而如果量化拆分的是否最好,就需要引入一个基尼杂质的概念。

基尼杂质

就按照上述两种颜色——绿蓝来说,若以x=2为分割,那么就将数据集完美的分为两个分支。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

但若是以x=1.5呢?分割就不会那么完美了。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

那如果我们对数据点进行了错误的分类(就如上图那个蓝色),发生这种错误的可能性,就是基尼杂质。

我们来举个例子,以上述那个整个数据集为例,计算一下基尼杂质。那么对数据点的判断主要有以下四种。

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

那么其中错误的可能性:25%+25%,所以基尼杂质是0.5。

用公式来表示:

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

其中G为基尼杂质,C为种类数。

上述例子,就可表示为:

 Facebook工程师教你什么是随机森林,就算零基础也可以看懂 | 干货_创事记

试想,如果以完美拆分的数据集为例。

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

责任编辑:果子整理