ID3算法的局限性
每个算法都有自身的局限性,而 算法的局限性主要源于局部最优化这个条件,即信息增益的计算方法,主要包含以下几点:
(1)倾向于选择取值比较多的属性作为划分点。主要原因是对于离散属性而言,可能取值越多,依据其进行划分后子节点的总信息熵越小,即信息增益就越大,所以, 算法在选择划分属性时就会优先考虑该类属性。例如:极端情况下取ID作为切分字段,每个分类的纯度都是100%,即信息熵为0,信息增益达到所有属性中的最大,但是,这样的划分方式是没有意义的。
(2)不能直接处理连续型变量,对于连续性变量, 算法不能直接进行处理,需要对其进行离散化后再处理。
(3)对缺失值较为敏感, 算法没有对缺失值进行考虑,所以,在使用该算法之前需要对缺失值进行处理。
(4)没有剪枝的设置,容易导致过拟合,这一不足导致了模型虽然在训练集上表现很好,但测试集上表现却差强人意,也就是模型的泛化性能有待提高。
关于剪枝和过拟合相关问题,我们会在后续进行详细讨论,此处先讨论其他局限性如何解决。对于 算法的诸多优化措施,最终也构成了 算法的核心内容。
请根据本节内容回答以下问题:
算法局限性最突出的表现是什么?说明原因。