C4.5决策树案例分析
本次案例分析是对C4.5决策树有所了解后,实现的手动推理
一. 数据
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 本科 | 985 | 无 | 是 |
| 2 | 女 | 本科 | 211 | 无 | 是 |
| 3 | 男 | 研究生 | 普通 | 有 | 是 |
| 4 | 男 | 大专 | 普通 | 有 | 否 |
| 5 | 女 | 本科 | 985 | 无 | 是 |
| 6 | 男 | 研究生 | 普通 | 有 | 是 |
| 7 | 男 | 本科 | 211 | 无 | 是 |
| 8 | 男 | 大专 | 普通 | 有 | 否 |
| 9 | 男 | 本科 | 普通 | 无 | 否 |
| 10 | 女 | 本科 | 普通 | 有 | 否 |
| 11 | 男 | 本科 | 211 | 无 | 是 |
| 12 | 男 | 研究生 | 211 | 无 | 是 |
二. 分析
存在四种影响特征,且均为离散型变量(连续型变量需要离散化),最终的标签只有两类(是/否)
注意:以下计算过程中,结果保留三位小数,采用四舍五入
三. 总体信息熵
样本12个,是 = 8,否 = 4
| 是 | 否 |
|---|---|
| 8 | 4 |
H(X)=−812×log2812−412×log2412≈0.918 \begin{aligned} H(X) &= -\frac{8}{12} \times \log _2 \frac{8}{12} - \frac{4}{12} \times \log _2 \frac{4}{12} \\ &\approx 0.918 \end{aligned} H(X)=−128×log2128−124×log2124≈0.918
四. 分析变量
4.1 分析第一个自变量:性别
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 本科 | 985 | 无 | 是 |
| 2 | 男 | 研究生 | 211 | 无 | 是 |
| 3 | 男 | 研究生 | 普通 | 有 | 是 |
| 4 | 男 | 研究生 | 普通 | 有 | 是 |
| 5 | 男 | 本科 | 211 | 无 | 是 |
| 6 | 男 | 本科 | 211 | 无 | 是 |
| 7 | 男 | 大专 | 普通 | 有 | 否 |
| 8 | 男 | 本科 | 普通 | 无 | 否 |
| 9 | 男 | 大专 | 普通 | 有 | 否 |
| 10 | 女 | 本科 | 211 | 无 | 是 |
| 11 | 女 | 本科 | 985 | 无 | 是 |
| 12 | 女 | 本科 | 普通 | 有 | 否 |
4.1.1 计算性别为男的信息熵
样本9个,是 = 6,否 = 3
| 是 | 否 |
|---|---|
| 6 | 3 |
H(X,性别=男)=−69×log269−39×log239≈0.918 \begin{aligned} H(X, 性别 = 男) &= -\frac{6}{9} \times \log _2 \frac{6}{9} - \frac{3}{9} \times \log _2 \frac{3}{9} \\ &\approx 0.918 \end{aligned} H(X,性别=男)=−96×log296−93×log293≈0.918
4.1.2 计算性别为女的信息熵
样本3个,是 = 2,否 = 1
| 是 | 否 |
|---|---|
| 2 | 1 |
H(X,性别=女)=−23×log223−13×log213≈0.918 \begin{aligned} H(X, 性别 = 女) &= -\frac{2}{3} \times \log _2 \frac{2}{3} - \frac{1}{3} \times \log _2 \frac{1}{3} \\ &\approx 0.918 \end{aligned} H(X,性别=女)=−32×log232−31×log231≈0.918
4.1.3 计算性别的条件熵
H(X,性别)=912×0.918+312×0.918=0.918
\begin{aligned}
H(X, 性别) &= \frac{9}{12} \times 0.918 + \frac{3}{12} \times 0.918 \\
&= 0.918
\end{aligned}
H(X,性别)=129×0.918+123×0.918=0.918
4.1.4 计算性别的信息增益
Gain(X,性别)=H(X)−H(X,性别)=0.918−0.918=0
\begin{aligned}
Gain(X, 性别) &= H(X) - H(X, 性别) \\
& = 0.918 - 0.918 \\
& = 0
\end{aligned}
Gain(X,性别)=H(X)−H(X,性别)=0.918−0.918=0
4.1.5 计算性别的固有属性IV
IV=−∑v=1V∣Dv∣∣D∣×log2∣Dv∣∣D∣
\begin{aligned}
IV= - \sum _{v = 1}^{V} \frac{\\|D^v\\|}{\\|D\\|} \times \log _2 \frac{\\|D^v\\|}{\\|D\\|}
\end{aligned}
IV=−v=1∑V∣D∣∣Dv∣×log2∣D∣∣Dv∣
IV(X,性别)=−912×log2912−312×log2312≈0.811 \begin{aligned} IV(X, 性别) &= - \frac{9}{12} \times \log _2 \frac{9}{12} - \frac{3}{12} \times \log _2 \frac{3}{12} \\ &\approx 0.811 \end{aligned} IV(X,性别)=−129×log2129−123×log2123≈0.811
4.1.6 计算性别的增益率
Gain_ratio=GainIV
\begin{aligned}
Gain\_ratio= \frac {Gain}{IV}
\end{aligned}
Gain_ratio=IVGain
Gain_ratio(X,性别)=00.811=0 \begin{aligned} Gain\_ratio(X, 性别) &= \frac {0}{0.811} \\ &= 0 \end{aligned} Gain_ratio(X,性别)=0.8110=0
4.2 分析第二个自变量:学历
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 大专 | 普通 | 有 | 否 |
| 2 | 男 | 大专 | 普通 | 有 | 否 |
| 3 | 男 | 本科 | 985 | 无 | 是 |
| 4 | 女 | 本科 | 211 | 无 | 是 |
| 5 | 女 | 本科 | 985 | 无 | 是 |
| 6 | 男 | 本科 | 211 | 无 | 是 |
| 7 | 男 | 本科 | 211 | 无 | 是 |
| 8 | 男 | 本科 | 普通 | 无 | 否 |
| 9 | 女 | 本科 | 普通 | 有 | 否 |
| 10 | 男 | 研究生 | 211 | 无 | 是 |
| 11 | 男 | 研究生 | 普通 | 有 | 是 |
| 12 | 男 | 研究生 | 普通 | 有 | 是 |
4.2.1 计算学历为大专的信息熵
样本2个,是 = 0,否 = 2
| 是 | 否 |
|---|---|
| 0 | 2 |
H(X,学历=大专)=−02×log202−22×log222=0 \begin{aligned} H(X, 学历 = 大专) &= -\frac{0}{2} \times \log _2 \frac{0}{2} - \frac{2}{2} \times \log _2 \frac{2}{2} \\ &= 0 \end{aligned} H(X,学历=大专)=−20×log220−22×log222=0
4.2.2 计算学历为本科的信息熵
样本7个,是 = 5,否 = 2
| 是 | 否 |
|---|---|
| 5 | 2 |
H(X,学历=本科)=−57×log257−27×log227≈0.863 \begin{aligned} H(X, 学历 = 本科) &= -\frac{5}{7} \times \log _2 \frac{5}{7} - \frac{2}{7} \times \log _2 \frac{2}{7} \\ &\approx 0.863 \end{aligned} H(X,学历=本科)=−75×log275−72×log272≈0.863
4.2.3 计算学历为研究生的信息熵
样本3个,是 = 3,否 = 0
| 是 | 否 |
|---|---|
| 3 | 0 |
H(X,学历=研究生)=−33×log233−03×log203=0 \begin{aligned} H(X, 学历 = 研究生) &= -\frac{3}{3} \times \log _2 \frac{3}{3} - \frac{0}{3} \times \log _2 \frac{0}{3} \\ &= 0 \end{aligned} H(X,学历=研究生)=−33×log233−30×log230=0
4.2.4 计算学历的条件熵
H(X,学历)=212×0+712×0.863+312×0≈0.503
\begin{aligned}
H(X, 学历) &= \frac{2}{12} \times 0 + \frac{7}{12} \times 0.863 + \frac{3}{12} \times 0 \\
&\approx 0.503
\end{aligned}
H(X,学历)=122×0+127×0.863+123×0≈0.503
4.2.5 计算学历的信息增益
Gain(X,学历)=H(X)−H(X,学历)=0.918−0.503=0.415
\begin{aligned}
Gain(X, 学历) &= H(X) - H(X, 学历) \\
& = 0.918 - 0.503 \\
& = 0.415
\end{aligned}
Gain(X,学历)=H(X)−H(X,学历)=0.918−0.503=0.415
4.2.6 计算学历的固有属性IV
IV(X,学历)=−212×log2212−712×log2712−312×log2312≈1.384
\begin{aligned}
IV(X, 学历) &= - \frac{2}{12} \times \log _2 \frac{2}{12} - \frac{7}{12} \times \log _2 \frac{7}{12}
- \frac{3}{12} \times \log _2 \frac{3}{12} \\
&\approx 1.384
\end{aligned}
IV(X,学历)=−122×log2122−127×log2127−123×log2123≈1.384
4.2.7 计算学历的增益率
Gain_ratio(X,学历)=0.4151.384≈0.300
\begin{aligned}
Gain\_ratio(X, 学历) &= \frac {0.415}{1.384} \\
&\approx 0.300
\end{aligned}
Gain_ratio(X,学历)=1.3840.415≈0.300
4.3 分析第三个自变量:学校
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 本科 | 985 | 无 | 是 |
| 2 | 女 | 本科 | 985 | 无 | 是 |
| 3 | 男 | 本科 | 211 | 无 | 是 |
| 4 | 男 | 研究生 | 211 | 无 | 是 |
| 5 | 女 | 本科 | 211 | 无 | 是 |
| 6 | 男 | 本科 | 211 | 无 | 是 |
| 7 | 男 | 研究生 | 普通 | 有 | 是 |
| 8 | 男 | 研究生 | 普通 | 有 | 是 |
| 9 | 男 | 大专 | 普通 | 有 | 否 |
| 10 | 男 | 本科 | 普通 | 无 | 否 |
| 11 | 女 | 本科 | 普通 | 有 | 否 |
| 12 | 男 | 大专 | 普通 | 有 | 否 |
4.3.1 计算学校为普通学校的信息熵
样本6个,是 = 2,否 = 4
| 是 | 否 |
|---|---|
| 2 | 4 |
H(X,学校=普通)=−26×log226−46×log246≈0.918 \begin{aligned} H(X, 学校 = 普通) &= -\frac{2}{6} \times \log _2 \frac{2}{6} - \frac{4}{6} \times \log _2 \frac{4}{6} \\ &\approx 0.918 \end{aligned} H(X,学校=普通)=−62×log262−64×log264≈0.918
4.3.2 计算学校为211的信息熵
样本4个,是 = 4,否 = 0
| 是 | 否 |
|---|---|
| 4 | 0 |
H(X,学校=211)=−44×log244−04×log204=0 \begin{aligned} H(X, 学校 = 211) &= -\frac{4}{4} \times \log _2 \frac{4}{4} - \frac{0}{4} \times \log _2 \frac{0}{4} \\ &= 0 \end{aligned} H(X,学校=211)=−44×log244−40×log240=0
4.3.3 计算学校为985的信息熵
样本2个,是 = 2,否 = 0
| 是 | 否 |
|---|---|
| 2 | 0 |
H(X,学校=985)=−22×log222−02×log202=0 \begin{aligned} H(X, 学校 = 985) &= -\frac{2}{2} \times \log _2 \frac{2}{2} - \frac{0}{2} \times \log _2 \frac{0}{2} \\ &= 0 \end{aligned} H(X,学校=985)=−22×log222−20×log220=0
4.3.4 计算学校的条件熵
H(X,学校)=612×0.918+412×0+212×0=0.459
\begin{aligned}
H(X, 学校) &= \frac{6}{12} \times 0.918 + \frac{4}{12} \times 0 + \frac{2}{12} \times 0 \\
&= 0.459
\end{aligned}
H(X,学校)=126×0.918+124×0+122×0=0.459
4.3.5 计算学校的信息增益
Gain(X,学校)=H(X)−H(X,学校)=0.918−0.459=0.459
\begin{aligned}
Gain(X, 学校) &= H(X) - H(X, 学校) \\
& = 0.918 - 0.459 \\
& = 0.459
\end{aligned}
Gain(X,学校)=H(X)−H(X,学校)=0.918−0.459=0.459
4.3.6 计算学校的固有属性IV
IV(X,学校)=−612×log2612−412×log2412−212×log2212≈1.459
\begin{aligned}
IV(X, 学校) &= - \frac{6}{12} \times \log _2 \frac{6}{12} - \frac{4}{12} \times \log _2 \frac{4}{12}
- \frac{2}{12} \times \log _2 \frac{2}{12} \\
&\approx 1.459
\end{aligned}
IV(X,学校)=−126×log2126−124×log2124−122×log2122≈1.459
4.3.7 计算学校的增益率
Gain_ratio(X,学校)=0.4591.459≈0.315
\begin{aligned}
Gain\_ratio(X, 学校) &= \frac {0.459}{1.459} \\
&\approx 0.315
\end{aligned}
Gain_ratio(X,学校)=1.4590.459≈0.315
4.4 分析第四个自变量:经验
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 本科 | 985 | 无 | 是 |
| 2 | 女 | 本科 | 211 | 无 | 是 |
| 3 | 女 | 本科 | 985 | 无 | 是 |
| 4 | 男 | 本科 | 211 | 无 | 是 |
| 5 | 男 | 本科 | 211 | 无 | 是 |
| 6 | 男 | 研究生 | 211 | 无 | 是 |
| 7 | 男 | 本科 | 普通 | 无 | 否 |
| 8 | 男 | 研究生 | 普通 | 有 | 是 |
| 9 | 男 | 研究生 | 普通 | 有 | 是 |
| 10 | 男 | 大专 | 普通 | 有 | 否 |
| 11 | 男 | 大专 | 普通 | 有 | 否 |
| 12 | 女 | 本科 | 普通 | 有 | 否 |
4.4.1 计算经验为无的信息熵
样本7个,是 = 6,否 = 1
| 是 | 否 |
|---|---|
| 6 | 1 |
H(X,经验=无)=−67×log267−17×log217≈0.592 \begin{aligned} H(X, 经验 = 无) &= -\frac{6}{7} \times \log _2 \frac{6}{7} - \frac{1}{7} \times \log _2 \frac{1}{7} \\ &\approx 0.592 \end{aligned} H(X,经验=无)=−76×log276−71×log271≈0.592
4.4.2 计算经验为有的信息熵
样本5个,是 = 2,否 = 3
| 是 | 否 |
|---|---|
| 2 | 3 |
H(X,经验=有)=−25×log225−35×log235≈0.971 \begin{aligned} H(X, 经验 = 有) &= -\frac{2}{5} \times \log _2 \frac{2}{5} - \frac{3}{5} \times \log _2 \frac{3}{5} \\ &\approx 0.971 \end{aligned} H(X,经验=有)=−52×log252−53×log253≈0.971
4.4.3 计算经验的条件熵
H(X,经验)=712×0.592+512×0.971=0.750
\begin{aligned}
H(X, 经验) &= \frac{7}{12} \times 0.592 + \frac{5}{12} \times 0.971 \\
&= 0.750
\end{aligned}
H(X,经验)=127×0.592+125×0.971=0.750
4.4.4 计算经验的信息增益
Gain(X,经验)=H(X)−H(X,经验)=0.918−0.750=0.168
\begin{aligned}
Gain(X, 经验) &= H(X) - H(X, 经验) \\
& = 0.918 - 0.750 \\
& = 0.168
\end{aligned}
Gain(X,经验)=H(X)−H(X,经验)=0.918−0.750=0.168
4.4.5 计算经验的固有属性IV
IV(X,经验)=−712×log2712−512×log2512≈0.980
\begin{aligned}
IV(X, 经验) &= - \frac{7}{12} \times \log _2 \frac{7}{12} - \frac{5}{12} \times \log _2 \frac{5}{12} \\
&\approx 0.980
\end{aligned}
IV(X,经验)=−127×log2127−125×log2125≈0.980
4.4.6 计算经验的增益率
Gain_ratio(X,经验)=0.1680.980≈0.171
\begin{aligned}
Gain\_ratio(X, 经验) &= \frac {0.168}{0.980} \\
&\approx 0.171
\end{aligned}
Gain_ratio(X,经验)=0.9800.168≈0.171
五. 信息增益与增益率的统计
| 增益率 | 信息增益 | |
|---|---|---|
| 性别 | 0 | 0 |
| 学历 | 0.300 | 0.415 |
| 学校 | 0.315 | 0.459 |
| 经验 | 0.171 | 0.168 |
六. 选择划分的节点
6.1 计算平均信息增益
G‾=0+0.415+0.459+0.1684=0.261 \begin{aligned} \overline{G} &= \frac{0 + 0.415 + 0.459 + 0.168}{4} \\ & = 0.261 \end{aligned} G=40+0.415+0.459+0.168=0.261
在自变量中,找到其信息增益高于平均信息增益的变量,再选择增益率最高的变量作为划分的节点
6.2 选择节点
其中学校与学历的信息增益均高于平均信息增益,但学校的增益率更高,因此选择学校作为第一个节点
七. 以学校作为根节点

八. 将剩余的6个样本用其他三个自变量进一步划分
九. 待划分的数据
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 研究生 | 普通 | 有 | 是 |
| 2 | 男 | 大专 | 普通 | 有 | 否 |
| 3 | 男 | 研究生 | 普通 | 有 | 是 |
| 4 | 男 | 大专 | 普通 | 有 | 否 |
| 5 | 男 | 本科 | 普通 | 无 | 否 |
| 6 | 女 | 本科 | 普通 | 有 | 否 |
十. 带划分数据的总体信息熵
样本6个,是 = 2,否 = 4
| 是 | 否 |
|---|---|
| 2 | 4 |
H(X1)=−26×log226−46×log246≈0.918 \begin{aligned} H(X_1) &= -\frac{2}{6} \times \log _2 \frac{2}{6} - \frac{4}{6} \times \log _2 \frac{4}{6} \\ &\approx 0.918 \end{aligned} H(X1)=−62×log262−64×log264≈0.918
十一. 分析剩余变量
11.1 分析第一个剩余变量:性别
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 研究生 | 普通 | 有 | 是 |
| 2 | 男 | 研究生 | 普通 | 有 | 是 |
| 3 | 男 | 大专 | 普通 | 有 | 否 |
| 4 | 男 | 大专 | 普通 | 有 | 否 |
| 5 | 男 | 本科 | 普通 | 无 | 否 |
| 6 | 女 | 本科 | 普通 | 有 | 否 |
11.1.1 计算性别为男的信息熵
样本5个,是 = 2,否 = 3
| 是 | 否 |
|---|---|
| 2 | 3 |
H(X1,性别=男)=−25×log225−35×log235≈0.971 \begin{aligned} H(X_1, 性别 = 男) &= -\frac{2}{5} \times \log _2 \frac{2}{5} - \frac{3}{5} \times \log _2 \frac{3}{5} \\ &\approx 0.971 \end{aligned} H(X1,性别=男)=−52×log252−53×log253≈0.971
11.1.2 计算性别为女的信息熵
样本1个,是 = 0,否 = 1
| 是 | 否 |
|---|---|
| 0 | 1 |
H(X1,性别=女)=−01×log201−11×log211=0 \begin{aligned} H(X_1, 性别 = 女) &= -\frac{0}{1} \times \log _2 \frac{0}{1} - \frac{1}{1} \times \log _2 \frac{1}{1} \\ &= 0 \end{aligned} H(X1,性别=女)=−10×log210−11×log211=0
11.1.3 计算性别的条件熵
H(X1,性别)=56×0.971+16×0≈0.809
\begin{aligned}
H(X_1, 性别) &= \frac{5}{6} \times 0.971 + \frac{1}{6} \times 0 \\
&\approx 0.809
\end{aligned}
H(X1,性别)=65×0.971+61×0≈0.809
11.1.4 计算性别的信息增益
Gain(X1,性别)=H(X1)−H(X1,性别)=0.918−0.809=0.109
\begin{aligned}
Gain(X_1, 性别) &= H(X_1) - H(X_1, 性别) \\
& = 0.918 - 0.809 \\
& = 0.109
\end{aligned}
Gain(X1,性别)=H(X1)−H(X1,性别)=0.918−0.809=0.109
11.1.5 计算性别的固有属性IV
IV(X1,性别)=−56×log256−16×log216≈0.650
\begin{aligned}
IV(X_1, 性别) &= - \frac{5}{6} \times \log _2 \frac{5}{6} - \frac{1}{6} \times \log _2 \frac{1}{6} \\
&\approx 0.650
\end{aligned}
IV(X1,性别)=−65×log265−61×log261≈0.650
11.1.6 计算性别的增益率
Gain_ratio(X1,性别)=0.1090.650≈0.168
\begin{aligned}
Gain\_ratio(X_1, 性别) &= \frac {0.109}{0.650} \\
&\approx 0.168
\end{aligned}
Gain_ratio(X1,性别)=0.6500.109≈0.168
11.2 分析第二个剩余变量:学历
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 大专 | 普通 | 有 | 否 |
| 2 | 男 | 大专 | 普通 | 有 | 否 |
| 3 | 男 | 本科 | 普通 | 无 | 否 |
| 4 | 女 | 本科 | 普通 | 有 | 否 |
| 5 | 男 | 研究生 | 普通 | 有 | 是 |
| 6 | 男 | 研究生 | 普通 | 有 | 是 |
11.2.1 计算学历为大专的信息熵
样本2个,是 = 0,否 = 2
| 是 | 否 |
|---|---|
| 0 | 2 |
H(X1,学历=大专)=−02×log202−22×log222=0 \begin{aligned} H(X_1, 学历 = 大专) &= -\frac{0}{2} \times \log _2 \frac{0}{2} - \frac{2}{2} \times \log _2 \frac{2}{2} \\ &= 0 \end{aligned} H(X1,学历=大专)=−20×log220−22×log222=0
11.2.2 计算学历为本科的信息熵
样本2个,是 = 0,否 = 2
| 是 | 否 |
|---|---|
| 0 | 2 |
H(X1,学历=本科)=−02×log202−22×log222=0 \begin{aligned} H(X_1, 学历 = 本科) &= -\frac{0}{2} \times \log _2 \frac{0}{2} - \frac{2}{2} \times \log _2 \frac{2}{2} \\ &= 0 \end{aligned} H(X1,学历=本科)=−20×log220−22×log222=0
11.2.3 计算学历为研究生的信息熵
样本2个,是 = 2,否 = 0
| 是 | 否 |
|---|---|
| 2 | 0 |
H(X1,学历=本科)=−22×log222−02×log202=0 \begin{aligned} H(X_1, 学历 = 本科) &= -\frac{2}{2} \times \log _2 \frac{2}{2} - \frac{0}{2} \times \log _2 \frac{0}{2} \\ &= 0 \end{aligned} H(X1,学历=本科)=−22×log222−20×log220=0
11.2.4 计算学历的条件熵
H(X1,学历)=26×0+26×0+26×0=0
\begin{aligned}
H(X_1, 学历) &= \frac{2}{6} \times 0 + \frac{2}{6} \times 0 + \frac{2}{6} \times 0\\
&= 0
\end{aligned}
H(X1,学历)=62×0+62×0+62×0=0
11.2.5 计算学历的信息增益
Gain(X1,学历)=H(X1)−H(X1,学历)=0.918−0=0.918
\begin{aligned}
Gain(X_1, 学历) &= H(X_1) - H(X_1, 学历) \\
& = 0.918 - 0 \\
& = 0.918
\end{aligned}
Gain(X1,学历)=H(X1)−H(X1,学历)=0.918−0=0.918
11.2.6 计算学历的固有属性IV
IV(X1,学历)=−26×log226−26×log226−26×log226≈1.585
\begin{aligned}
IV(X_1, 学历) &= - \frac{2}{6} \times \log _2 \frac{2}{6} - \frac{2}{6} \times \log _2 \frac{2}{6}
- \frac{2}{6} \times \log _2 \frac{2}{6} \\
&\approx 1.585
\end{aligned}
IV(X1,学历)=−62×log262−62×log262−62×log262≈1.585
11.2.7 计算学历的增益率
Gain_ratio(X1,学历)=0.9181.585≈0.579
\begin{aligned}
Gain\_ratio(X_1, 学历) &= \frac {0.918}{1.585} \\
&\approx 0.579
\end{aligned}
Gain_ratio(X1,学历)=1.5850.918≈0.579
11.3 分析第三个剩余变量:经验
| ID | 性别 | 学历 | 学校 | 经验 | 是否录用 |
|---|---|---|---|---|---|
| 1 | 男 | 研究生 | 普通 | 有 | 是 |
| 2 | 男 | 研究生 | 普通 | 有 | 是 |
| 3 | 男 | 大专 | 普通 | 有 | 否 |
| 4 | 男 | 大专 | 普通 | 有 | 否 |
| 5 | 女 | 本科 | 普通 | 有 | 否 |
| 6 | 男 | 本科 | 普通 | 无 | 否 |
11.3.1 计算经验为无的信息熵
样本1个,是 = 0,否 = 1
| 是 | 否 |
|---|---|
| 0 | 1 |
H(X1,经验=无)=−01×log201−11×log211=0 \begin{aligned} H(X_1, 经验 = 无) &= -\frac{0}{1} \times \log _2 \frac{0}{1} - \frac{1}{1} \times \log _2 \frac{1}{1} \\ &= 0 \end{aligned} H(X1,经验=无)=−10×log210−11×log211=0
11.3.2 计算经验为有的信息熵
样本5个,是 = 2,否 = 3
| 是 | 否 |
|---|---|
| 2 | 3 |
H(X1,经验=有)=−25×log225−35×log235≈0.971 \begin{aligned} H(X_1, 经验 = 有) &= -\frac{2}{5} \times \log _2 \frac{2}{5} - \frac{3}{5} \times \log _2 \frac{3}{5} \\ &\approx 0.971 \end{aligned} H(X1,经验=有)=−52×log252−53×log253≈0.971
11.3.3 计算经验的条件熵
H(X1,经验)=16×0+56×0.971≈0.809
\begin{aligned}
H(X_1, 经验) &= \frac{1}{6} \times 0 + \frac{5}{6} \times 0.971 \\
&\approx 0.809
\end{aligned}
H(X1,经验)=61×0+65×0.971≈0.809
11.3.4 计算经验的信息增益
Gain(X1,经验)=H(X1)−H(X1,经验)=0.918−0.809=0.109
\begin{aligned}
Gain(X_1, 经验) &= H(X_1) - H(X_1, 经验) \\
& = 0.918 - 0.809 \\
& = 0.109
\end{aligned}
Gain(X1,经验)=H(X1)−H(X1,经验)=0.918−0.809=0.109
11.3.5 计算经验的固有属性IV
IV(X1,经验)=−56×log256−16×log216≈0.650
\begin{aligned}
IV(X_1, 经验) &= - \frac{5}{6} \times \log _2 \frac{5}{6} - \frac{1}{6} \times \log _2 \frac{1}{6} \\
&\approx 0.650
\end{aligned}
IV(X1,经验)=−65×log265−61×log261≈0.650
11.3.6 计算经验的增益率
Gain_ratio(X1,经验)=0.1090.650≈0.168
\begin{aligned}
Gain\_ratio(X_1, 经验) &= \frac {0.109}{0.650} \\
&\approx 0.168
\end{aligned}
Gain_ratio(X1,经验)=0.6500.109≈0.168
十二. 增益率与信息增益的统计
| 信息增益 | 增益率 | |
|---|---|---|
| 性别 | 0.109 | 0.168 |
| 学历 | 0.918 | 0.579 |
| 经验 | 0.109 | 0.168 |
十三. 选择划分的节点
13.1 计算平均信息增益
G‾=0.109+0.918+0.1093≈0.379 \begin{aligned} \overline{G} &= \frac{0.109 + 0.918 + 0.109}{3} \\ & \approx 0.379 \end{aligned} G=30.109+0.918+0.109≈0.379
13.2 选择节点
只有学历的信息增益高于平均信息增益,因此选择学历作为节点
十四. 以学历作为节点再次分裂

十五. 手推实现




本次案例是对C4.5决策树的手推实现,如果有小伙伴有具体的代码实现讲解更好了。
该案例分析基于C4.5决策树算法,计算了性别、学历、学校和经验四个特征的信息熵、条件熵、信息增益、固有属性IV和增益率。结果显示,学历具有最高的信息增益和增益率,因此首先以学历作为划分节点。后续分析中,学历依然具有最高信息增益,成为第二次划分的依据。

1万+

被折叠的 条评论
为什么被折叠?



