Machine Learning | 机器学习简介
Machine Learning | (1) Scikit-learn与特征工程
Machine Learning | (2) sklearn数据集与机器学习组成
Machine Learning | (3) Scikit-learn的分类器算法-k-近邻
Machine Learning | (4) Scikit-learn的分类器算法-逻辑回归
Machine Learning | (5) Scikit-learn的分类器算法-朴素贝叶斯
Machine Learning | (6) Scikit-learn的分类器算法-性能评估
Machine Learning | (7) Scikit-learn的分类器算法-决策树(Decision Tree)
Machine Learning | (8) Scikit-learn的分类器算法-随机森林(Random Forest)
决策树(Decision Tree)
决策树(Decision Tree)是一种基本的分类方法,当然也可以用于回归。我们一般只讨论用于分类的决策树。决策树模型呈树形结构。在分类问题中,表示基于特征对实例进行分类的过程,它可以认为是if-then规则的集合。在决策树的结构中,每一个实例都被一条路径或者一条规则所覆盖。通常决策树学习包括三个步骤:特征选择、决策树的生成和决策树的修剪
优点:计算复杂度不高,输出结果易于理解,对中间值的缺失不敏感,可以处理逻辑回归等不能解决的非线性特征数据
缺点:可能产生过度匹配问题
适用数据类型:数值型和标称型
特征选择
特征选择在于选取对训练数据具有分类能力的特征。这样可以提高决策树学习的效率,如果利用一个特征进行分类的结果与随机分类的结果没有很大差别,则称这个特征是没有分类能力的。经验上扔掉这样的特征对决策树学习的京都影响不大。通常特征选择的准则是信息增益,这是个数学概念。
决策树优缺点分析
决策树的一些优点是:
简单的理解和解释。树木可视化。
需要很少的数据准备。其他技术通常需要数据归一化,需要创建虚拟变量,并删除空值。但请注意,此模块不支持缺少值。
使用树的成本(即,预测数据)在用于训练树的数据点的数量上是对数的。
决策树的缺点包括:
决策树学习者可以创建不能很好地推广数据的过于复杂的树。这被称为过拟合。修剪(目前不支持)的机制,设置叶节点所需的最小采样数或设置树的最大深度是避免此问题的必要条件。
决策树可能不稳定,因为数据的小变化可能会导致完全不同的树被生成。通过使用合奏中的决策树来减轻这个问题。