机器学习的种类介绍

作者: admin 分类: 应用            发布时间: 07月02日 23:39

现有的机器学习种类繁多,我们一般可以进行如下的分类标准:

  • 是否在人类监督下学习(监督学习、非监督学习、半监督学习和强化学习)
  • 是否可以动态的增量学习(在线学习和批量学习)
  • 是简单的将新的数据点和已知的数据点进行匹配,还是像科学家那样对训练数据进行模型检测,然后建立一个预测模型(基于实例的学习和基于模型的学习)

这些标准之间并不排斥。

一、监督学习和非监督学习

根据训练期间接受的监督数量和监督类型,可以将机器学习分为以下四种类型:监督学习、非监督学习、半监督学习和强化学习。

1.1 监督学习

在监督学习中,提供给算法的包含所需解决方案的训练数据,成为标签或标记。

简单地说,就是监督学习是包含自变量和因变量(有Y),同时可以用于分类和回归。下来常见的算法都是监督学习算法。

  • K近邻算法
  • 线性回归
  • logistic回归
  • 支持向量机(SVM)
  • 决策树和随机森林
  • 神经网络

1.2 无监督学习

无监督学习的训练数据都是未经标记的,算法会在没有指导的情况下自动学习。

简单地说,就是训练数据只有自变量没有因变量(就是没有Y)。
无监督学习的常见算法如下:

  • 聚类算法
    • K均值算法(K-means)
    • 基于密度的聚类方法(DBSCAN)
    • 最大期望算法
  • 可视化和降维
    • 主成分分析
    • 核主成分分析
  • 关联规则学习
    • Apriori
    • Eclat

比如说,我们有大量的购物访客的数据,包括一个月内的到达次数、购买次数、平均客单价、购物时长、购物种类、数量等,我们可以通过聚类算法,自动的把这些人分成几个类别,分类后,我们可以人工的把这些分类标记,如企业客户、家庭主妇等,也可以分成更细的分类。

另一种任务是降维,降维的目的在于不丢失太多的信息的情况下简化数据。方法之一就是讲多个特征合并为一个特征,特变是特征之间存在很大的相关性的变量。如汽车的里程和使用年限是存在很大的相关性的,所以降维算法可以将它们合并为一个表示汽车磨损的特征。这个过程就叫做特征提取。
另一个典型的无监督学习的是异常检测,如可以从检测信用卡交易中发现异常,并且这些异常我们实现没有标记的,算法可以自动发现异常。

1.3 半监督学习

有些算法可以处理部分标记的训练数据,通常是大量未标记的数据和少量标记的数据,这种成为半监督学习。
如照片识别就是很好的例子。在线相册可以指定识别同一个人的照片(无监督学习),当你把这些同一个人增加一个标签的后,新的有同一个人的照片就自动帮你加上标签了。

大多数半监督学习算法都是无监督和监督算法的结合。例如深度信念网络(DBN)基于一种相互堆叠的无监督式组件。

1.4 强化学习

强化学习是一个非常与众不同的算法,它的学习系统能够观测环境,做出选择,执行操作并获得回报,或者是以负面回报的形式获得惩罚。它必须自行学习什么是最好的策略,从而随着时间推移获得最大的回报。

强化学习

例如,许多机器人通过强化学习算法来学习如何行走。AlphaGo项目也是一个强化学习的好例子。

二、批量学习和在线学习

2.1 批量学习

批量学习中,系统无法进行增量学习,即必须使用所有可用数据进行训练。这需要大量的时间和计算资源,所以通常情况下,都是离线完成的。离线学习就是先训练系统,然后将其投入生产环境,这时学习过程停止,它只是将其所学到的应用出来。
如果希望批量学习系统学习新数据,你需要在完整数据集的基础上重新训练一个新版本的系统,然后停用就系统,用新系统代替。

2.2在线学习


在线学习

在在线学习中,你可以循序渐进给系统提供训练数据,逐步积累学习成果。这种提供数据的方式可以是单独的,也可以采用小批量的小组数据进行训练,每一步学习都是快速并且便宜的,所以系统可以根据快速进入的数据进行学习的。


使用在线学习处理超大数据集

三、基于实例与基于模型的学习

另一种对机器学习系统进行分类的方法是看它们如何泛化。大多数机器学习任务是要做出预测,需要在未知的数据进行泛化。泛化的主要方法有两种:基于实例的学习和基于模型的学习。

3.1 基于实例的学习

系统先完全记住学习的示例,然后通过某种相似度度量方式将其泛化到新的示例。


基于实例的学习

3.2 基于模型的学习

从示例中构建示例的模型,通过模型进行预测。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注