使用线性回归,聚类,还是决策树?

2018-04-06 16:19:16 浏览数 (1)

本文为译文。原文链接https://dzone.com/articles/decision-trees-vs-clustering-algorithms-vs-linear。

决策树、聚类和线性回归算法之间的差异已经在很多文章中得到了说明(比如这篇和这篇)。但是, 这些算法各自的适用场景并不总是清晰。本文解释了在哪些场景中可以使用这些机器学习算法,以及在为您的需求选择算法时应考虑哪些因素。

线性回归用例

线性回归的一些用途如下:

  • 产品销售; 定价,效能和风险系数
  • 帮助你理解消费者行为、利润和其他商业要素
  • 预测趋势;做出估计和预判
  • 评估产品的营销效果,制定产品价格和促销策略
  • 金融服务和保险领域的风险评估
  • 从汽车的测试数据中研究引擎性能
  • 计算生物系统的参数之间的因果关系
  • 分析市场调研和客户调查结果
  • 天文数据分析
  • 预测房屋面积增加时的房价变化

线性回归的其他用例包括股票交易,电子游戏,体育博彩和航行时间预测。

决策树用例

决策树的一些用途如下:

  • 建立客户服务知识管理平台,提高一次解决率,降低平均处理时间,提升客户满意率
  • 在金融方面,预测未来结果及其概率
  • 二项期权定价预测与实物期权分析
  • 判断客户是否愿意在特定环境下(线上或线下)购买某产品
  • 产品规划; 例如,格柏产品公司(Gerber Products,Inc.)使用决策树来决定是否继续为制造玩具规划PVC
  • 一般商业决策
  • 贷款审批

聚类算法用例

聚类算法的一些用途如下:

  • 客户细分
  • 利用物理特征对物种进行分类
  • 产品分类
  • 电影推荐
  • 在某个区域中选择放置蜂窝塔的位置
  • 高效执法
  • 在事故多发地区搭建紧急病房
  • 基因聚集成簇
  • 属性数量的影响

如何选择合适的机器学习算法

看完以上用例,您已经了解了这些机器学习算法适用的场景,接下来我们讨论如何根据需要选择完美的算法。

线性回归选择标准

让我们来谈谈分类和回归能力,错误率,数据兼容性,数据质量,计算复杂度,可理解性和透明度。

分类和回归能力

回归模型预测连续变量,例如一天的销售量或城市温度。

它的分类能力是受限的,因为它依赖多项式(如直线)来拟合数据集。

假设你用训练数据拟合一条直线。你想添加另一个数据点,但要拟合它,现有的模型就需要改变(阈值本身也可能改变)。这将发生在我们添加到模型里的每个数据点上; 因此,线性回归并不适合作为分类模型。

错误率

线性回归比另外两个算法更难降低错误率。

数据兼容性

线性回归要求数据连续。

数据质量

每个缺失值都意味着你将删除一个数据点,而这个点有可能本可以帮助你找到最优的回归。而在简单的线性回归中,异常值可能会严重破坏回归结果。

计算复杂度

与决策树和聚类算法相比,线性回归通常在计算上并不昂贵。对于有X个特征的N个训练样例,复杂度通常是O(X^2),O(XN),或O(C^3)。

易于理解和透明

线性回归本质上就是很容易理解、很透明的。用简单的数学符号就可以表示它,人们理解起来也很容易。

决策树选择标准

决策树是将对象分类为某个已知类的一种方法。它是一种监督学习。

聚类算法可以进一步分类为“渴望学习”,因为它首先在训练数据集上建立出一个分类模型,然后对测试数据集进行分类。它在测试数据尚未到来时就进行了学习,此时它已经准备好了,因而很“渴望”分类那些测试数据。决策树的这个性质是它被称为“渴望学习”的原因。

分类和回归能力

决策树可以用于回归和分类。

计算效率

决策树具有内存分类模型,不会带来高昂的计算成本,因为它们不需要经常进行数据库搜索。

任意复杂决策边界

决策树难以模拟任意的决策边界。

易于理解和透明

正是因为决策树基于规则的决策过程极其透明,它被广泛用于银行的贷款审批。

数据质量

决策树能够处理错误严重或有缺失值的数据集。

增量学习

决策树分批工作,它一次对一组训练数据进行建模。因此,它不适合进行增量学习。

错误率

它们的错误率相对较高,但比线性回归低。

数据兼容性

决策树可以处理具有数值属性或标称属性的输入数据。

假设

决策树广为人知的原因之一,正是它无需任何关于数据空间分布或分类器结构的假设。

属性数量的影响

如果存在复杂的、甚至人类都难以捉摸的因素,那么决策树往往会产生错误的结果。例如,在客户细分场景中,决策树很难返回准确的细分。

聚类算法选择标准

聚类算法通常用于找出多个数据在某些特征上具有的相似之处。它是无监督学习的一种。

然而,聚类算法不是渴望学习,也并不直接从训练数据中学习。它们在得到测试数据后才开始处理数据。

分类和回归能力

聚类算法不能用于回归任务。

数据处理能力

聚类可以处理大多数类型的数据集,并忽略缺失的值。

数据集质量

它可以处理连续或离散数据值。

易于理解和透明

与决策树不同,聚类算法通常相对难以理解,透明度较低。通常情况下,它需要额外的具体的解释,才能让决策者明白它的计算结果。

计算效率

聚类算法通常需要进行频繁的数据库搜索。因此,它通常在计算上是昂贵的。

任意复杂的决策边界

聚类算法是基于实例的学习,因此一个经过微调的聚类算法可以很容易地包含任意复杂的决策边界。

增量学习

聚类算法天然地支持增量学习。它比线性回归和决策树要合适得多。

错误率

聚类的测试错误率接近于贝叶斯分类器。

属性数量的影响

凭借它处理任意复杂边界的能力,聚类算法可以处理多个属性和它们之间的复杂交互关系。这是决策树不具备的能力。

希望本文可以帮助你使用这些算法!

线性回归决策树线性回归决策树

0 人点赞