云栖君导读:机器学习算法介绍那么多?但是,到底如何根据不同的场景,应用选择它们呢?且来听听大牛怎么说!


许多文章简单的定义了决策树,聚类和线性回归,以及它们之间的差异,但是他们往往忽视了在哪里使用这些算法。


决策树,聚类和线性回归算法之间的差异已经在许多文章中得到了阐述。但是,这些算法可以使用在什么地方并不是很清楚。通过这篇博文,我解释了在哪里可以使用这些机器学习算法,以及在为你的需求选择特定算法时需要考虑哪些因素。


一、线性回归用例


线性回归的一些用途:


  1. 产品的销售,定价和风险参数。
  2. 产生对消费者行为,盈利能力和其他商业因素的见解。
  3. 评估趋势,做出估计和预测。
  4. 确定产品的营销效果,定价和促销。
  5. 评估金融服务和保险的风险。
  6. 从汽车测试数据研究发动机的性能。
  7. 计算生物系统参数之间的因果关系。
  8. 进行市场调查研究和客户调查结果分析。
  9. 天文数据分析。
  10. 随着房屋面积的增加预测房价。

线性回归经常用于一些案例包括股票交易,视频游戏,体育博彩和飞行时间预测。


二、决策树用例:


决策树的一些用途:


  1. 建立客户服务知识管理平台,提高首次呼叫解决率,平均处理时间和客户满意率。
  2. 在财务方面,预测未来的财务并给出这些结果出现的概率。
  3. 二项期权定价预测与实物期权分析。
  4. 客户愿意在给定的环境下购买给定的产品,即离线和在线两种。
  5. 产品规划,例如,**产品公司(Gerber Products,Inc.)使用决策树来决定是否继续为制造玩具规划PVC。
  6. 一般商业决策。
  7. 贷款批准。


三、集群用例


聚类算法的一些用途:


  1. 客户细分。
  2. 利用物理尺度对物种进行分类。
  3. 产品分类。
  4. 电影推荐。
  5. 在特定区域放置蜂窝塔的位置。
  6. 考虑到一个地区最容易发生事故的地区的因素,设置紧急病房。
  7. 属性数量的影响。


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


现在你已经了解了这些机器学习算法的具体用例,接下来让我们讨论如何根据需要选择完美的机器学习算法。


4.1线性回归选择标准:


首先,让我们来谈谈分类和回归功能、错误率、数据兼容性、数据质量、计算复杂性、可理解性和透明度等这些因素对算法的影响。


分类和回归功能:


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


在建立分类功能时,他们依赖多项式(如直线)来拟合数据集,这是一个真正的挑战。让我们想象一下,你想添加另一个数据点,但为了适应它,你需要改变你现有的模型(也可能是阈值本身)。因此,线性回归对于分类模型并不好。


错误率:


在减少错误率方面,线性回归比其他算法弱。


数据兼容性:


线性回归依赖于连续数据来建立回归功能。


数据质量:


每个缺失的值将删除一个可以优化回归的数据点。在简单线性回归中,异常值可能会显着破坏结果。


计算复杂性:


与决策树和聚类算法相比,线性回归通常在计算上不复杂。复杂的N个训练样例和X的顺序通常设有落在或者是O(X2),O(XN),或O-(C3)。


易于理解和透明:


它们很容易理解和透明的性质。它们可以用简单的数学符号表示给任何人,而且可以很容易被理解。


4.2决策树选择标准:


决策树是将对象分类的一种方法。他们是一种监督学习的形式。


聚类算法可以进一步分类为“急切学习者”,因为他们首先在训练数据集上建立分类模型,然后实际分类测试数据集。这种决策树的本质就是要学习并渴望对未见的观察结果进行分类,这就是为什么他们被称为“渴望学习者”的原因。


分类和回归能力:


决策树与另外两种类型的任务兼容——回归以及分类。


计算量:


由于决策树具有内存分类模型,因此它们不会带来高昂的计算成本,因为它们不需要频繁的数据库查找。


易于理解和透明:


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


数据质量:


决策树能够处理高度错误和缺失值的数据集。


增量学习:


随着决策树分批工作,他们一次对一组训练观察进行建模。因此,他们不适合增量学习。


错误率:


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


数据兼容性:


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


属性数量的影响:


如果存在复杂的、人为的无形因素,这些算法往往会产生错误的结果。例如,在客户细分等情况下,很难想象决策树会返回准确的细分。


4.3聚类算法选择标准:


聚类算法通常用于找出主题在多个不同变量上的相似程度。他们是无监督学习的一种形式。


然而,聚类算法不是“急切的学习者”,而是直接从训练实例中学习。他们只有在得到测试观察分类后才开始处理数据。


分类和回归功能:


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


数据处理能力:


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


数据集质量:


它们与连续和阶乘数据值一起工作良好。


易于理解和透明:


与决策树不同,聚类算法通常不会带来相同水平的理解和透明度。通常,他们需要为决策者提供大量的实施级解释。


计算费用:


聚类算法通常需要频繁的数据库查找。因此,它们通常可能在计算上是昂贵的。


增量学习:


聚类自然地支持增量学习,并且是线性回归和决策树的首选。


错误率:


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


属性数量的影响:


凭借其处理复杂任意边界的能力,与决策树不同,它们可以处理多个属性和复杂的交互。


我希望上述讲解可以帮助你开始使用这些算法!