机器学习: 决策数与随机森林
文章目录
- Github
- 数学基础
- 概率公式
- 先验概率与后验概率
- 信息熵
- 互信息
- 条件熵
- 决策树
- 信息增益
- 信息增益率
- 基尼系数
- 决策树生成
- 决策树剪枝
- Bagging 与 随机森林
- Bagging
- 随机森林
Github
系列文章 pdf 版本已经上传至: https://github.com/anlongstory/awsome-ML-DL-leaning/tree/master/xiaoxiang-notes
欢迎 Star 和下载 ?
数学基础
概率公式
这里用 Venn 图来表示事件A 与事件 B 的关系,P(A)P(A)P(A) 与 P(B)P(B)P(B) 分别表示它们各自发生的概率,其中它们的交叠区域用 P(A,B)P(A,B)P(A,B) 表示 A 和 B 共同发生的概率。 基于上面的表示,可以给出条件概率的公式:
P(A∣B)=P(A,B)P(B)P(A|B)= \frac{P(A,B)}{P(B)}P(A∣B)=P(B)P(A,B)
条件概率公式(1)表示,在事件 B 发生的条件下,事件 A 发生的概率,结合上面的 Venn 图不难理解这个公式,将(1)转换一下并推广,可以得到全概率公式,事件组{ BiB_iBi} 是样本空间的一个划分:
P(A)=∑i=1nP(Bi)P(A∣Bi)P(A)= \sum_{i=1}^{n}P(B_{i})P(A|B_{i})P(A)=i=1∑nP(Bi)P(A∣Bi)
所以根据条件概率的公式和全概率公式,可以得到贝叶斯公式:
P(Bi∣A)=P(ABi)P(A)=P(Bi)P(A∣Bi)∑P(Bi)P(A∣Bi)P(B_i|A)= \frac{P(AB_i)}{P(A)}=\frac{P(B_i)P(A|B_i)}{\sum P(B_i)P(A|B_i)}P(Bi∣A)=P(A)P(ABi)=∑P(Bi)P(A∣Bi)P(Bi)P(A∣Bi)
贝叶斯公式是建立在条件概率的基础上,寻找事情发生的原因。
先验概率与后验概率
以事件A为例,在上面提到的全概率公式 P(A)P(A)P(A) 就称为先验概率(Prior probability),即在事件 B 发生之间我们对事件 A 的概率有一个判断。 P(A∣B)P(A|B)P(A∣B) 称为后验概率(Posterior probability),即在事件 B 发生以后我们对事件 A 的发生概率有了一个新的估计。
假如在编号为 1,2 盒子里各有 10 个球, A 中有 4红,6白,B 中有 2红,8白。现从它们之中随机取一个球是红色的球,问这个球从编号 1 盒子中取得概率是多少?
设取出红球的事件为 B,从编号 1 盒子中抽球的事件为 A,所以从 A 盒子中取出一个球并且 是红球的概率可以表示为P(B∣A)P(B|A)P(B∣A):
P(B)=6/20,P(A)=10/20,P(B∣A)=4/10P(B)=6/20,P(A)= 10/20 , P(B|A)= 4/ 10P(B)=6/20,P(A)=10/20,P(B∣A)=4/10
根据贝叶斯公式可以得到:
P(A∣B)=P(A)P(B∣A)P(B)=(10/20)∗(4∗10)6/20=23P(A|B)= \frac{P(A)P(B|A)}{P(B)}= \frac{(10/20)*(4*10)}{6/20}=\frac{2}{3}P(A∣B)=P(B)P(A)P(B∣A)=6/20(10/20)∗(4∗10)=32
可以看到在事件 B 发生之间从 A 盒子中取球的先验概率为 12\frac{1}{2}21,当事件 B 发生以后 A 的后验概率就变成了 23\frac{2}{3}32 。
信息熵
信息本身是一个很抽象的概念,但是信息论之父香农在 1948 年的论文中借鉴了热力学中“熵(entropie)”的概念,提出了信息熵。在热力学中,熵是表示体系的混乱程度,体系越混乱,熵就越大。对应到信息论中,熵(信息熵)表示信息量的多少(不确定程度) ,熵越大,不确定性就越大,而不确定性大,代表事情发生的概率小,所以不确定性是概率的减函数。
我们知道,当事件A与事件B相对独立的时候,事件A,B 一起发生的概率为:P(A,B)=P(A)P(B)P(A,B)=P(A)P(B)P(A,B)=P(A)P(B)
而对于两个独立事件的不确定性应该满足可加性,设不确定性函数 f(x)f(x)f(x) 为: f(A,B)=f(A)+f(B)f(A,B)=f(A)+f(B)f(A,B)=f(A)+f(B)
首先将两个数相乘转换称两个数相加的关系,很显然,我们可以借助对数函数的性质,又因为两个是负相关,所以前面再加一个负号,这样我们就可以得到不确定性的计算表达式:
f(p)=log1p=−logpf(p)=log \frac{1}{p}= - log pf(p)=logp1=−logp
上面的式子是单个事件的不确定性,由 n 个事件共同组成的样本空间 UUU 的不确定性应当为单个事件的统计平均值 EEE,这就是信息熵,可以得到它的数学表达式为:
H(U)=E[−logp]=−∑i=1npilogpiH(U)= E[-logp]= - \sum_{i=1}^{n} p_i log p_iH(U)=E[−logp]=−i=1∑npilogpi
上式中 log 以 2 为底单位为比特(bit),也可以以 e 为底,这时单位为纳特(nat)。
以二分类问题为例,设事件 A 与 事件 B 发生的概率分别为 ppp 和 1−p1-p1−p,根据信息熵的定义:
H(U)=−plogp−(1−p)log(1−p)H(U)=-plogp-(1-p)log(1-p)H(U)=−plogp−(1−p)log(1−p)
H(U)H(U)H(U) 的曲线如下:
可以看到,当 $p = 0.5$ 时,熵取值最大,不确定最大,满足熵的定义。
互信息
由上面的概率公式变换一下,可以得到:
P(A,B)=P(A∣B)P(B)=P(B∣A)P(A)P(A,B)=P(A|B)P(B)=P(B|A)P(A)P(A,B)=P(A∣B)P(B)=P(B∣A)P(A)
根据不确定函数对于概率的关系可得熵有如下关系:
H(A,B)=H(A∣B)+H(B)=H(B∣A)+H(A)H(A,B)=H(A|B)+H(B)=H(B|A)+H(A)H(A,B)=H(A∣B)+H(B)=H(B∣A)+H(A)
因此,由公式(6)可以得到:
I(A;B)=H(A)−H(A∣B)=H(B)−H(B∣A)I(A;B)=H(A)-H(A|B)=H(B)-H(B|A)I(A;B)=H(A)−H(A∣B)=H(B)−H(B∣A)
这个差就叫做 A 和 B 的互信息,我们记作 I(A;B)I(A;B)I(A;B) ,按照熵的定义,互信息的展开式为:
I(A;B)=H(A)−H(A∣B)=H(A)+H(B)−H(A,B)=−∑xp(x)logp(x)−∑yp(y)logp(y)+∑x,yp(x,y)logp(x,y)=∑x,yp(x,y)logp(x,y)p(x)p(y)I\left ( A;B\right )=H\left ( A \right )-H\left ( A|B \right ) \\ = H\left ( A \right ) + H\left ( B \right ) -H\left ( A,B \right ) \\ = - \sum_{x} p(x)logp(x)-\sum_{y} p(y)logp(y)+\sum_{x,y}p(x,y)logp(x,y)\\ = \sum_{x,y} p(x,y)log \frac{p(x,y)}{p(x)p(y)}I(A;B)=H(A)−H(A∣B)=H(A)+H(B)−H(A,B)=−∑xp(x)logp(x)−∑yp(y)logp(y)+∑x,yp(x,y)logp(x,y)=∑x,yp(x,y)logp(x)p(y)p(x,y)
互信息表示的是事件之间在不确定性熵相互影响的程度。
条件熵
由公式(6)可以得到:
H(A,B)=H(A∣B)+H(B)=H(B∣A)+H(A)H(A,B)=H(A|B)+H(B)=H(B|A)+H(A)H(A,B)=H(A∣B)+H(B)=H(B∣A)+H(A)
这里的条件熵就是 H(A∣B)H(A|B)H(A∣B) 或者是 H(B∣A)H(B|A)H(B∣A)。根据上面的公式可以得到条件熵的表达式为:
H(A∣B)=H(A,B)−H(B)H(A|B)=H(A,B)-H(B)H(A∣B)=H(A,B)−H(B)
即 (A,B) 发生所包含的熵,减去 B 单独发生包含的熵,就是表示在 B 发生的前提下,A 发生时带来的熵。
H(A,B)−H(B)=−∑x,yp(x,y)logp(x,y)+∑yp(y)logp(y)=−∑x,yp(x,y)logp(x,y)+∑y(∑xp(x,y))logp(y)=−∑x,yp(x,y)logp(x,y)+∑x,yp(x,y)logp(y)=−∑x,yp(x,y)logp(x,y)p(y)=−∑x,yp(x,y)logp(x∣y)H\left ( A,B \right )-H\left ( B \right ) \\ = - \sum_{x,y} p(x,y)logp(x,y)+\sum_{y}p(y)logp(y)\\ = - \sum_{x,y} p(x,y)logp(x,y)+\sum_{y} \left ( \sum_{x}p(x,y)\right ) logp(y) \\ = - \sum_{x,y} p(x,y)logp(x,y)+\sum_{x,y} p(x,y)logp(y)\\ = - \sum_{x,y} p(x,y)log \frac{p(x,y)}{p(y)}\\ = - \sum_{x,y} p(x,y)log p(x|y)H(A,B)−H(B)=−∑x,yp(x,y)logp(x,y)+∑yp(y)logp(y)=−∑x,yp(x,y)logp(x,y)+∑y(∑xp(x,y))logp(y)=−∑x,yp(x,y)logp(x,y)+∑x,yp(x,y)logp(y)=−∑x,yp(x,y)logp(y)p(x,y)=−∑x,yp(x,y)logp(x∣y)
再由上面公式进一步推导可得:
H(A,B)−H(B)=−∑x,yp(x,y)logp(x∣y)=−∑x∑yp(y)p(x∣y)logp(x∣y)=∑yp(y)(−∑xp(x∣y)logp(x∣y))=∑yp(y)H(X∣Y=y)H\left ( A,B \right )-H\left ( B \right ) \\ = - \sum_{x,y} p(x,y)log p(x|y) \\ = - \sum_{x}\sum_{y}p(y)p(x|y)logp(x|y) \\ = \sum_{y} p(y)\left ( - \sum_{x}p(x|y)logp(x|y) \right )\\ = \sum_{y}p(y)H(X|Y=y)H(A,B)−H(B)=−∑x,yp(x,y)logp(x∣y)=−∑x∑yp(y)p(x∣y)logp(x∣y)=∑yp(y)(−∑xp(x∣y)logp(x∣y))=∑yp(y)H(X∣Y=y)
决策树
这里给出一个选择见还是不见相亲对象的决策树示意图,通过对判别标准一个个的进行比较,最终导致两个结果:见 或者 不见。
首先决策树是一种树形结构(不全是二叉树),其中每个内部节点表示在一个属性上的测试,每个分支都代表一个测试输出,每个叶节点都代表一种类别,决策树是以实例为基础的归纳学习。 决策树学习采用的是自顶向下的递归方法,基本思想是以信息熵为度量构造一棵熵值下降最快的树,到叶子节点处的熵为 0,此时每个叶节点中的实例都属于同一类。很显然,决策树属于有监督学习。
信息增益
根据前面数学基础部分的熵与条件熵的概念得到的熵分别为 经验熵 和 经验条件熵。假设特征 AAA 对训练数据集 DDD 的信息增益为 g(D,A)g(D,A)g(D,A),而这里的信息增益 g(D,A)g(D,A)g(D,A) 就是指经验熵H(D)H(D)H(D)与经验条件熵H(D∣A)H(D|A)H(D∣A)之差:
g(D,A)=H(D)−H(D∣A)g(D,A)=H(D)-H(D|A)g(D,A)=H(D)−H(D∣A)
信息增益表示得知特征 AAA 的信息使得类 X 的信息的不确定性减少的程度,即为训练集 DDD 和特征 A 的互信息。
这里用李航博士《统计学习方法》中的例子来帮助理解:
这里将上述表格的信息进行一个归纳总结,总共有 4 个特征,然后每个特征对应最后的类别为 是/否
:
特征 | 分布 |
---|---|
A1 年龄 | { 5青年 : [2是 3否] } { 5中年 : [ 3是 2否 ] } { 5老年 : [ 4是 1否 ] } |
A2 工作 | { 10没有工作 : [ 4是 6否 ] } { 5有工作 : [ 5是 ] } |
A3 有房子 | {9没有房子 : [ 3是 6否 ] } { 6有房子 : [ 6是 ] } |
A4 信贷 | { 6好 : [4是 2否] } { 5一般 : [ 1是 4否 ] } { 4非常好 : [ 4是 ] } |
类别 D | 9 是 6 否 |
以其中一个归纳举例,{ 5青年 : [2是 3否] } 表示 A1年龄 这个特征中 有 5 个是青年,5个青年中有 2 个批准申请贷款,3个不批准申请贷款,依次类推。
根据上面的定义式:
经验熵 H(D)H(D)H(D):
H(D)=−915log2915−615log2615=0.971H(D)= - \frac{9}{15}log_2 \frac{9}{15}- \frac{6}{15}log_2 \frac{6}{15}=0.971H(D)=−159log2159−156log2156=0.971
因为其中 类别 D 有 9 个是批准,6个不批准。
条件经验熵 H(D∣A1)H(D|A^1)H(D∣A1):
最后求得 H(D∣A1)=0.888H(D|A^1)= 0.888H(D∣A1)=0.888 。
这里得 D1,D2,D3,分别对应 青年,中年,老年,括号里的概率分别对应青年,中年,老年中的 是
和 否
的个数。
依次类推可以计算得到 H(D∣A2)H(D|A^2)H(D∣A2), H(D∣A3)H(D|A^3)H(D∣A3),H(D∣A4)H(D|A^4)H(D∣A4)。
信息增益 g(D,A1)g(D,A^1)g(D,A1):
根据定义式可得:
g(D,A1)=H(D)−H(D∣A1)=0.971−0.888=0.083g(D,A^1)=H(D)-H(D|A^1)=0.971-0.888=0.083g(D,A1)=H(D)−H(D∣A1)=0.971−0.888=0.083
同理可得:
g(D,A2)=H(D)−H(D∣A2)=0.971−0.647=0.324g(D,A^2)=H(D)-H(D|A^2)=0.971-0.647=0.324g(D,A2)=H(D)−H(D∣A2)=0.971−0.647=0.324
g(D,A3)=H(D)−H(D∣A3)=0.971−0.551=0.420g(D,A^3)=H(D)-H(D|A^3)=0.971-0.551=0.420g(D,A3)=H(D)−H(D∣A3)=0.971−0.551=0.420
g(D,A4)=H(D)−H(D∣A4)=0.971−0.608=0.363g(D,A^4)=H(D)-H(D|A^4)=0.971-0.608=0.363g(D,A4)=H(D)−H(D∣A4)=0.971−0.608=0.363
信息增益率
知道信息增益的概念后,这里直接给出信息增益率的定义式:
gr(D,A)=g(D,A)H(A)g_{r}(D,A)= \frac{g(D,A)}{H(A)}gr(D,A)=H(A)g(D,A)
继续上面的例子:
特征 A1A^1A1 中有 5 个青年,5个中年,5个老年,A2A^2A2 中 10 个没有工作,5个有工作,同理A3A^3A3,A4A^4A4 可得:
H(A1)=−515log2515−515log2515−515log2515=1.585H(A^1)=- \frac{5}{15}log_2\frac{5}{15}- \frac{5}{15}log_2\frac{5}{15}- \frac{5}{15}log_2\frac{5}{15}=1.585H(A1)=−155log2155−155log2155−155log2155=1.585H(A2)=−1015log21015−515log2515=0.918H(A^2)=- \frac{10}{15}log_2\frac{10}{15}- \frac{5}{15}log_2\frac{5}{15}=0.918H(A2)=−1510log21510−155log2155=0.918H(A3)=−915log2915−615log2615=0.971H(A^3)=- \frac{9}{15}log_2\frac{9}{15}- \frac{6}{15}log_2\frac{6}{15}=0.971H(A3)=−159log2159−156log2156=0.971H(A4)=−615log2615−515log2515−415log2415=1.565H(A^4)=- \frac{6}{15}log_2\frac{6}{15}- \frac{5}{15}log_2\frac{5}{15}-\frac{4}{15}log_2\frac{4}{15}=1.565H(A4)=−156log2156−155log2155−154log2154=1.565
所以上面的信息增益为:
gr(D,A1)=0.0831.585=0.052g_r(D,A^1)= \frac{0.083}{1.585}=0.052gr(D,A1)=1.5850.083=0.052gr(D,A2)=0.3240.918=0.353g_r(D,A^2)= \frac{0.324}{0.918}=0.353gr(D,A2)=0.9180.324=0.353gr(D,A3)=0.4200.971=0.432g_r(D,A^3)= \frac{0.420}{0.971}=0.432gr(D,A3)=0.9710.420=0.432gr(D,A4)=0.3631.565=0.232g_r(D,A^4)= \frac{0.363}{1.565}=0.232gr(D,A4)=1.5650.363=0.232
基尼系数
对于分类问题,假设有 K 类,属于第 k 类的概率为 pkp_{k}pk,则概率分布的基尼系数为:
Gini(p)=∑k=1Kpk(1−pk)=1−∑k=1Kpk2Gini(p)=\sum_{k=1}^{K}p_{k}(1-p_{k})=1- \sum_{k=1}^{K}p_{k}^2Gini(p)=k=1∑Kpk(1−pk)=1−k=1∑Kpk2
如果样本集合 DDD 根据特征 AAA 是否取某一个值 a 被分割成 D1D_1D1,D2D_2D2两部分,则在特征 AAA 的条件下,集合 DDD 的基尼系数定义为:
Gini(D,A)=∣D1∣DGini(D1)+∣D2∣DGini(D2)Gini(D,A)= \frac{|D_1|}{D}Gini(D_1)+\frac{|D_2|}{D}Gini(D_2)Gini(D,A)=D∣D1∣Gini(D1)+D∣D2∣Gini(D2)
基尼指数 Gini(D)Gini(D)Gini(D) 表示集合 DDD 的不确定性,Gini(D,A)Gini(D,A)Gini(D,A) 表示经 A=aA=aA=a 分割后集合 DDD 的不确定性。基尼指数值越大,样本集合的不确定性就越大,与熵相似。
以上述题目为例,年龄特征 A1A^1A1 :青年,中年,老年
会分别划分为:
Gini(D,A1 = 1) 对应 D1 = 青年,D2 = 中年,老年
Gini(D,A1 = 2) 对应 D1 = 中年,D2 = 青年,老年
Gini(D,A1 = 3) 对应 D1 = 老年,D2 = 青年,中年
依次类推。 ∣Di∣|D_i|∣Di∣ 指对应类别的样本总数,∣D∣|D|∣D∣ 表示集合总样本数。
H(D∣A1)=515(2×25×(1−25))+1015(2×710×(1−710))=0.44H(D|A^1)= \frac{5}{15} \left( 2 \times \frac{2}{5} \times \left(1-\frac{2}{5} \right) \right)+ \frac{10}{15} \left( 2 \times \frac{7}{10} \times \left(1-\frac{7}{10} \right) \right)=0.44H(D∣A1)=155(2×52×(1−52))+1510(2×107×(1−107))=0.44
依次类推:
Gini(D,A1)Gini(D,A^1)Gini(D,A1)
Gini(D,A1=1)=0.44Gini(D,A^1 = 1) = 0.44Gini(D,A1=1)=0.44 #青年
Gini(D,A1=2)=0.48Gini(D,A^1 = 2) = 0.48Gini(D,A1=2)=0.48 #中年
Gini(D,A1=3)=0.44Gini(D,A^1 = 3) = 0.44Gini(D,A1=3)=0.44 #老年
Gini(D,A2)Gini(D,A^2)Gini(D,A2)
Gini(D,A2=1)=0.32Gini(D,A^2 = 1) = 0.32Gini(D,A2=1)=0.32
Gini(D,A3)Gini(D,A^3)Gini(D,A3)
Gini(D,A3=1)=0.27Gini(D,A^3 = 1) = 0.27Gini(D,A3=1)=0.27 # 所有基尼指数中的最小值
Gini(D,A4)Gini(D,A^4)Gini(D,A4)
Gini(D,A4=1)=0.36Gini(D,A^4 = 1) = 0.36Gini(D,A4=1)=0.36
Gini(D,A4=2)=0.47Gini(D,A^4 = 2) = 0.47Gini(D,A4=2)=0.47
Gini(D,A4=3)=0.32Gini(D,A^4 = 3) = 0.32Gini(D,A4=3)=0.32
基尼指数主要是用来选择 最优特征 和 最优切分点 的。
决策树生成
经过上面一些概念的讲解,下面3种决策树生成树生成算法就不难理解了,主要来看一下他们的区别:
- ID3 : 使用信息增益(互信息)g(D,A)g(D,A)g(D,A)来进行特征选择 (信息增益最大化)
- C4.5 :使用的是信息增益率 gr(D,A)g_r(D,A)gr(D,A) 来进行特征选择 (信息增益率最大化)
- CART : 使用基尼指数 Gini(D,A)Gini(D,A)Gini(D,A) 来进行特征选择 (基尼指数最小化),上面 Gini(D,A3=1)=0.27Gini(D,A^3 = 1) = 0.27Gini(D,A3=1)=0.27 是最小的,所以 A3A^3A3 是最佳分割特征,A3=1A^3=1A3=1 是最佳分割点
决策树剪枝
在 ID3 算法中是没有剪枝操作的,所以这种方法容易出现过拟合,在 C4.5 中加入了剪枝操作,主要是在决策树学习的损失函数中加入了叶节点个数的考虑,将其作为惩罚项,自下而上递归地将叶节点回缩以后计算损失函数,损失函数值变小,则删除当前节点。
CART 是指分类与回归树,其首先从生成算法生成的树底端不断剪枝,直到根节点,形成一个子树序列,然后通过验证法计算每一个子树的损失函数,从中选择最优的子树。
Bagging 与 随机森林
Bagging
Bootstraping 方法又称自助法,是有放回的抽样方法,基于这种方法我们将介绍 Bagging 方法的思路:
- 从样本集中有放回的重采样,每次选出 n 个样本
- 在所有属性上,对这 n 个样本建立分类器(ID3,C4.5,CART,SVM,Logistic 回归等)
- 重复以上两步 m 次,获得 m 个分类器
- 将数据放在这 m 个分类器上,最后根据这 m 个分类器的投票结果,决定数据属于哪一类
随机森林
而 随机森林方法是在 bagging 方法上做了修改:
- 从样本集中有放回的重采样,每次选出 n 个样本
- 从所有属性中随机选择 k 个属性,选择最佳分割作为节点建立 CART 决策树
- 重复以上两步 m 次,获得 m 个 CART 决策树
- 这 m 个 CART 决策树形成随机森林,通过投票,决定数据属于哪一类
因为随机森林在选取的时候充满随机性,所以基本是不可复线的,即同样的参数下跑的分类结果可能存在略微差异,但大体相似。
参考文献:
https://baike.baidu.com/item/信息熵/7302318
https://blog.csdn.net/weixin_34370347/article/details/87143933
机器学习: 决策数与随机森林相关推荐
- 机器学习中决策树的随机森林_决策树和随机森林在机器学习中的使用
机器学习中决策树的随机森林 机器学习 (Machine Learning) Machine learning is an application of artificial intelligence ...
- 机器学习可解释性【随机森林规则提取】
引言 目前,机器学习模型应用于各行各业,数据量够多,那就用深度学习吧,数据量少了,传统机器学习算法也能行. 然而机器学习模型作为"黑盒模型",人们越来越担心其安全性,因而希望模型具 ...
- 机器学习基础算法之随机森林
英文原文<The Random Forest Algorithm> 专知 编译<机器学习基础算法之随机森林> [导读]在当今深度学习如此火热的背景下,其他基础的机器学习算法显得 ...
- 【机器学习基础】数学推导+纯Python实现机器学习算法26:随机森林
Python机器学习算法实现 Author:louwill Machine Learning Lab 自从第14篇文章结束,所有的单模型基本就讲完了.而后我们进入了集成学习的系列,整整花了5篇文章的篇 ...
- 机器学习算法概述:随机森林逻辑回归
摘要: 机器学习算法入门介绍:随机森林与逻辑回归! 随机森林是用于分类和回归的监督式集成学习模型.为了使整体性能更好,集成学习模型聚合了多个机器学习模型.因为每个模型单独使用时性能表现的不是很好,但如 ...
- 机器学习利器——决策树和随机森林
更多深度文章,请关注:https://yq.aliyun.com/cloud 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率, ...
- 机器学习算法篇(随机森林树)
随机森林树: 1.定义: 随机森林只利用多颗决策树对样本进行训练并预测的一种分类器,可回归可分类:随机森林是基于多颗决策树的集成算法,常见决策树算法主要分为: ID3(利用信息增益进行特征选择),C4 ...
- 机器学习(9)--决策树和随机森林
一.决策树 认识:决策树思想的来源非常朴素,程序设计中的条件分支结构就是if-then结构,最早的决策树就是利用这类结构分割数据的一种分类学习方法 举例说明: 案例一: 案例二: 如何去划分是否能得到 ...
- 机器学习(10)-随机森林案例(调参)之公共自行车使用量预测
随机森林案例之公共自行车使用量预测 1. 前言 1.1 背景介绍 1.2 任务类型 1.3 数据文件说明 1.4 数据变量说明 1.5 评估方法 2. 数据预处理 2.1 观察数据有没有缺失值 2.2 ...
最新文章
- 在SharePoint 2010使用OWA查看自己邮箱的内容
- Android 学习笔记之Volley开源框架解析(一)
- linux 系统网络服务器组建,配置和管理实训教程 pdf,Linux网络服务器配置管理项目实训教程2...
- 前端工程师面经——概述及面试技巧加考点篇(一)
- 前端学习(1331):mongoose第三方模块
- Mybatis(4)入门案例中设计模式分析
- 【Python】Python库之Web网站开发
- Python 35个内置函数,你都ok吗?
- deepin中自定义安装的软件如何加入到启动器
- 李飞飞重返祖国执掌Google AI中国团队:不忘初心,中国已觉醒
- 机器学习之问题建模(一)
- Kubernetes集群管理部署
- ios微信分享失效_微信分享ios失败?
- 在php中cm和kg用什么表示,将g/cm³换算为kg/m³ (克每立方厘米换算为千克每立方米)...
- 3G来了,我们能干点啥软件?(转)
- 如何在word中的方框中打勾
- 的撒困的空间三看到你塞拉
- 头文件和Include: Why and How
- 编写一个C程序,输入a,b,c三个值,输出其中最大者
- vulnhub-Brainpan (考点:windows exe和linux elf下的两种缓冲区溢出)
热门文章
- Docker--10张图带你深入理解Docker容器和镜像
- 【阿里天猫精灵专题】TB-02 RGB冷暖灯控制
- Wireshark 301: Spying on what people are downloading (Part 2 of 2)
- VMware vCenter Converter 物理机迁移
- 虚拟带库 Vistor + TSM 安装 (在家折腾了一个周末)
- APP全栈工程师修炼之路(一)
- 【附源码】Python计算机毕业设计农田节水灌溉监测系统
- 小红书java算法难吗_Java面试系列之记一次小红书之旅
- python之路金角大王_Python 之路03 - Python基础3
- 互联网晚报 | 11/11 星期五 | 苹果默认不再接受隔空投送;扎克伯格就万人被裁视频致歉;波司登旗舰店被曝先提价再打折...