首页 > 编程语言 >机器学习算法-有监督学习的定义与模型

机器学习算法-有监督学习的定义与模型

时间:2023-01-24 21:23:20浏览次数:32  
标签:定义 回归 监督 学习 算法 模型 预测

有监督学习的定义与模型

 

机器学习的算法可以分为以下三类:

  有监督学习(Supervised Learning):有预测目标Y,通过X预测Y
  无监督学习(Unsupervised Learning):没有Y,只通过X进行分析并识别模式
  强化学习(Reinforcement Learning):通过环境与奖励循环迭代优化出最合适的动作

 

机器学习的分类

机器学习中包含很多算法,这些算法所需要的数据以及解决的问题都不尽相同。一般来说,根据算法解决的问题类型,可以将机器学习算法分为以下三类:

  有监督学习(Supervised Learning)
  无监督学习(Unsupervised Learning)
  强化学习(Reinforcement Learning)
  在有些文献中,还会引入半监督学习的概念,也就是介于有监督学习与无监督学习中。在本篇中,我们只基于传统的分类进行讲解。

  从名字就能发现,有监督学习与无监督学习是个相对的概念,这里的监督,可以抽象的理解为模型的预测目标Y是否存在。在有监督学习中,预测目标是需要进行定义的,即Y是需要被加工出来的;而在无监督学习中,没有预测目标Y,算法只是探索挖掘数据之间的关系与模式,将数据进行聚类或重组。

  强化学习相比前两种算法要特殊一些,它应用了最大化奖励的概念。强化学习适合环境不断变化的场景,这种算法根据环境的不同,不断更新并寻找最合适的行动方案,以最大化预先定义好的奖励。

 

下图简单为这三种机器学习类型提供了概览:


 

  本篇主要介绍有监督学习:

  有监督学习(Supervised Learning)

  有监督学习知道预测的主体,它通过寻找并定义特征(一堆自变量,X)与标签(预测目标,因变量,Y)之间的关系,以实现通过X预测Y的目的。

  这里举一个简单的例子,假设,我们现在有如下的数据,分别是:房子平米数、房子所属小区、楼层高度、是否有电梯。现在,我们希望通过这些数据来预测房子的售价。那么,这就是一个典型的有监督学习案例。

  在这个例子中,我们首先,需要获取上面这些数据中房子的实际售价,它就是我们上面说的标签,即预测目标,即因变量,即Y。而那些可能影响房子实际售价的因素,如房子平米数、房子所属小区、楼层高度、是否有电梯等,我们统称为特征,即自变量,即X。

  有了这些数据后,有监督学习的算法模型会去探索特征(房子平米数、房子所属小区、楼层高度、是否有电梯)与标签(实际售价)之间的关系,并用数学公式定义这种关系。这样以后又来了一栋房子的新数据,只要提供它对应的房子平米数、房子所属小区、楼层高度、是否有电梯数据,我们就能自动算出来房子的售价。

  这也就是有监督学习的目的,它探索X与Y之间的关系,并找到数学方程式去尽量准确的定义这种关系。这样做完后,在未来,输入X后,就能通过之前定义的数据方程式自动算出Y。

  这里需要注意的是,有监督算法得到的预测结果都是基于统计概率的,比如上面的例子,模型输入的结果只会是房价大概率上可能是多少。模型算法只能利用现有的数据给出概率最大的可能性,但既然是概率值,就肯定不会百分之百保证这个结果。

  此外,有监督学习模型的准确性极大极大极大的受限于特征的选择与特征的质量情况。有句俗话说“巧妇难为无米之炊”,不管是再好的预测模型,如果输入的是错误的数据或者质量不好的垃圾数据,那么得到的预测结果仍然会是垃圾。就好比,让我们用城市里有多少只猫、多少只狗去预测房价,那么预测的结果极有可能是完全无法使用的。

  所以有监督学习在实际的项目应用中,会与建模人的业务理解里与行业经验极大相关,不懂数据不懂业务的人所出来的有监督模型,可能还没有熟悉业务的人做一个简单的规则模型。这个话题说的有点儿远了,我们重新说回有监督模型。

 

  有监督模型算法分为两类,依据预测主体Y的数据形式不同,有监督学习算法可以被分为:

    回归问题(Regression):Y是连续型的数据,如价格、寿命、销量等
    分类问题(Classification):Y是分类型的数据,如是否、有病\没病、客户级别等


  回归问题

  如果被预测目标Y是连续型的数据,比如价格、销售额、汽车里程、耗电量等,我们会把这类问题叫做回归问题。

  我们前面举的预测房价的例子,就是一个典型的有监督学习回归问题。因为房价是一个连续型的数据。

  回归问题看着简单,但是实际上回归问题还包含其他许多模型。我们最常见、谁都懂、已经不再有逼格的Y=a+bX 其实是回归问题中最基础的一元线性回归,其他的回归模型,如广义线性回归、岭回归、LASSO等等回归模型大多也是以一元线性回归为原型发展出来的。

 

  分类问题

  如果被预测目标Y是分类型的数据,比如是否、有病/没病、客户级别等,我们会把这类问题叫做分类问题。其实分类问题与回归问题在方法上并没有太多差异,分类问题的结果仍然是连续的数值,只是我们可以人为的将某些数值划分为一个类别,将另一些数值划分为另一个类别而已。分类问题就是将回归问题的结果归集成不同的类别而已。

  典型的而且众所周知的分类算法包括逻辑回归、决策树、支持向量机等等。但是需要特别说一下的是,有很多分类算法也可以被用在回归问题中,如决策树可以转化为回归树,进而预测连续型的数据。现在我们之所以把它放在分类问题中讲解,是因为这个算法被更加广泛的应用在分类问题中,而不是说它们只能用于解决分类问题。

标签:定义,回归,监督,学习,算法,模型,预测
From: https://www.cnblogs.com/kongsq/p/article_Machine-Learning.html

相关文章