ID3 算法, 即 Iterative Dichotomiser 3(迭代二分器第三代)。算法通过迭代地选择具有最高信息增益的特征来分割数据集,从而递归地生成决策树模型,直至数据集被完美分类或无可分割的特征为止。
ID3 构建决策树的流程:
- 找到最优特征(信息增益值最高)。
- 最优特征,特征值作为有向边,判断子数据集
- 全部是同一类:输出叶子节点。
- 多类:
- 如果子数据集中还有特征,那么再次找寻最优特征。
- 如果子数据集中只剩下最后的分类结果了,那么输出最多的一类作为叶子节点。
- 直到叶子节点全部输出,或者无数据可遍历。
ID3 算法的特点:
- 只能处理离散型数据的学习计算。不能处理连续型数据。
- 容易产生过拟合现象(overfitting),泛化能力弱。
使用到的公式
- 信息熵(Entropy) H(X)=−∑i=1npilog2piH(X)=-\sum\limits_{i=1}^{n} p_i\log_{2}{p_i}H(X)=−i=1∑npilog2pi 其中,XXX表示样本,pip_ipi表示概率,并且∑i=1npi=1\sum\limits_{i=1}^{n}p_i=1i=1∑npi=1。例如投掷硬币,正面朝上的概率为1/2,反面朝上的概率为1/2,那么H(X)=−(12log212+12log212)=1H(X)=-(\frac{1}{2}\log_2\frac{1}{2}+\frac{1}{2}\log_2 \frac{1}{2})=1H(X)=−(21log221


2万+

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



