有些朋友对于机器学习可能还不是特别了解,所以我在这里专门用一篇文章来为大家普及一下机器学习的方法和目的。今天我们主要介绍监督学习、无监督学习和强化学习三种方法。
一、监督学习(supervised learning)监督学习的目的是使用带有标记(分类或目标值)的训练数据集来构建模型,然后我们就可以用我们的模型对新的数据进行预测。这里监督的含义就是训练集中每个样本均有一个已知的输出项(即前边提到的标记),整个模型的训练过程,是在输出项以及反馈函数(或者叫损失函数)的约束情况下完成的。
监督学习主要分为两种:分类和回归。
1.分类分类模型的目标是预测样本所属的分类,即其输出值为分类标签(class label)。比如对于一个过滤垃圾邮件的模型来说,它的作用就是根据每封邮件的信息判断其是一封正常邮件还是垃圾邮件,而“正常邮件”和“垃圾邮件”就是分类模型所输出的分类标签。
垃圾邮件过滤模型属于二分类,不过有很多种情况下,我们需要解决多类别分类问题,比如数字识别,从0到9,这就是十种分类。多分类问题同样属于机器学习中分类模型的研究范围。
下边这张图是一个KNN分类器的输出结果,它将三种不同品种的鸢尾花给区分了出来,尽管有一些样本分类错误,不过整体效果还是很不错的,毕竟这里仅用了两个特征。这是一个三分类模型的例子,在这里我们通过计算找到距离某个样本最近的“邻居”们,然后找到邻居们所属最多的分类,然后将这个分类预测给这个样本。这就是K最近邻分类模型的原理。更多的分类模型知识可以关注我的其他文章。
2.回归我们已经知道,分类模型的目的是预测分类标签,这是一种离散值,那么有什么方法可以预测连续值吗?有,这种方法就是我们所说的回归模型。
比如我们想根据学生学习的时间来预测其期末成绩,或者我们想要根据市场因素预测今年的营业额,这些都可以用回归模型来解决。我们常见的有线性回归模型,它是很多模型的基础,也存在许多变种,我们必须要掌握它的原理。但是也存在很多模型可以拟合非线性数据,比如多项式回归等。
比如下图,我们同时用线性回归模型和多项式回归模型(这里是二项式)来拟合数据。一般来说,我们找到的这条回归线,会使得每个样本与它之间的距离的平方和最小,这种方法我们称之为最小二乘法。
不过注意哦,逻辑回归中虽然有回归二字,但实际上是一个分类模型。
二、无监督学习(unsupervised learning)与监督学习相对应,无监督学习适用于那些没有标记(分类标签或连续值)或者总体分布趋势不明朗的数据集。在无监督学习中,我们不会用(或者根本没有)标记来约束模型的训练。通过无监督学习,我们可以在没有输出变量以及反馈函数指导的情况下获得关于数据集的知识。
无监督学习主要有聚类和降维两类。
聚类聚类是一种探索性的数据分析技术,它根据数据集本身的特征将数据集划分为多个小组(即簇,cluster),在不同的小组间,数据的差异较大,而在同一个小组内部,数据又比较相似。
比如说,有很多客户,我们想提供更有针对性的服务,但是我们不知道如何去对客户群分类。这时我们就可以采用聚类方法,划分出不同的分组,然后探索每个分组内用户的特点,并做出针对性的尝试。
下边这张图,就是几种不同的聚类方法实现的效果,它们将不同的样本按照某种规律划分到我们指定的组数中去。
降维数据降维是一种有效的数据预处理手段,我们常用他来处理高维数据或者稀疏数据,这样能帮助我们节约大量的计算资源,提升计算速度,同时避免过拟合等问题。
同时,降维对于高维数据的可视化也很有帮助。一维、二维、三维的数据,我们都很容易理解,但是在可视化四维、五维甚至更高维度的数据时,我们就会面临比较大的困难。
这时我们可以使用降维手段仅保留有限的少数特征,同时这几个特征蕴含了整个数据集中绝大多数的信息,这就是降维的一大优点。
比如下边两张图,就是把三维数据降至二维,同时保留了绝大多数的信息,不同分类间的界限依然很清晰。
三、强化学习(reinforcement learning)强化学习的目标则是构建一个系统(Agent),在与环境交互的过程中提高系统的性能(预测能力)。环境的当前状态信息中通常包含一个反馈(reward)信号,因此我们可以将强化学习视为与监督学习相关的一个领域。不过一般来说,这个反馈值并不一定是一个确定的分类标签或者预测值,也有可能是一个对于系统当前表现的评价(通常由我们的反馈函数决定)。通过与环境的交互,系统可以通过探索性的试错或者借助精巧的激励系统使得正向反馈最大化。
比如说象棋对弈的游戏,系统根据棋盘上当前的局势决定落子位置,游戏胜负时的判定则是激励信号。
下边这种图就是强化学习过程的图示,系统在于环境的不断交互中,根据反馈的信号(激励)不断进步。
以上就是常见的三类机器学习方法,当然,还有一些基于它们的方法比如集成方法,在此就不多说了。
希望大家能理清这些概念,这对于我们灵活运用机器学习方法非常重要。