本系列文章将介绍机器学习领域入门的相关基本概念,通过本文的阅读,你将能够:
本节,我们将讨论机器学习算法和模型的定义和相关概念;通过若干实例来说明机器学习算法的几种类型。
正如“机器学习(Machine Learning)”这个词语的字面意思那样,人们往往希望有一天我们能拥有能像我们人类一样思考和学习的机器,甚至更好。然而现有的技术下,机器并不能超越其预设的计算机程序去学习。
与诸如控制红绿灯的非机器学习算法程序不同的是,机器学习算法能够根据新的输入调整自己的行为(调参)。这种对于新变量的适应过程(adaptation),看似没有被人为干预,因此偶尔会让人觉得机器是在学习。但是,在机器学习模型的背后,这种行为的适应,就像由人类编写的机器指令一样死板。
A learning program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with E.
-Tom M.Mitchell
[Mitchell, 1997] 给出了一个较为形式化的定义:假设用P来评估计算机程序在某任务类T上的性能,若一个程序通过利用经验E在T中任务上获得了性能改善,则我们就说关于T和P,该程序对E进行了学习。
A machine learning algorithm is the process that uncovers the underlying relationship within the data.
机器学习是揭示数据间潜在关系的过程;机器学习算法的输出结果即是机器学习模型,可类比为某一函数F。当给定一系列数据X(input),可以得到与之对应的F(X)(output)。但需注意与固定函数不同的是,机器学习模型的确立是机器基于已有数据(训练集)得到的,因此训练集发生改变,输出也相应发生改变,即机器学习的模型发生了改变。
如我们希望在图像识别的应用情景中训练一个机器学习模型来识别输入的数千张图片(有猫或没有猫)以区别出照片中是否有猫。该模型中输入是数字照片,输出是与之对应的布尔值(根据约定指示是否有猫)。
The task of machine learning, is to learn the function, from the vast mapping space.
该任务中,根据Mitchell的定义:
值得注意的是,在大多数情况下,我们最后得到的,是对训练数据集潜在关系的近似。在2012年深度学习被广泛应用之前,最好的机器学习模型在ImageNet视觉识别挑战中只能达到75%左右的准确率。
对于任何机器学习模型的确立,我们都是从一个由一组样本组成的数据集开始。每个示例都可以表示为一组属性。属性张成的空间称为“属性空间”、“样本空间”或者“输入空间”。
例如,这里有一个经典的数据集Iris,它首次被发表在“分类问题中多重测量的使用 (The use of multiple measurements in taxonomic problems)”的论文中,[Ronald. A. Fisher, 1936]。该数据集是由对150个Iris花样本的测量值组成。每个样本通过对Iris花瓣和萼片的长度和宽度的测量来辨别Iris花的种类,即setosa、versicolor和virginica。以下是Iris数据集的一些示例:
在监督学习任务中,我们拥有用以训练的数据集和已知正确的输出结果(即Ground Truth),通过对用以训练的数据集分析其与输出的潜在的关系。由于提供了可以作为基准的学习结果,故称为监督学习。
在Iris数据集中,花的类别属性可以作为目标属性。具有目标属性的数据通常称为“标记” (labeled) 数据。基于上述定义,对于一个使用标记数据预测鸢尾花类别的任务,可以看出这是一个监督学习任务。
监督学习任务往往可以分为 回归任务(Regression)和分类任务(Classification) 两类。
与监督学习相反,我们在非监督学习任务中没有被标记的数据(Ground Truth)。在非监督学习任务中,我们通过对数据集中变量潜在关系的分析和聚类,得到非监督机器学习模型。
在数据量大同时又缺少标记样本的情况下,可以同时应用监督学习和非监督学习。我们可以称之为半监督学习(semi-supervised learning)。
许多情况下,通过手工操作收集大量标记的数据是非常耗时和昂贵的。斯坦福大学的一个研究小组花了两年半的时间策划了著名的ImageNet,它包含了数百万张图片和数千种人工标注的类别。通常情况下,实验人员往往只有大量的数据,但很少有准确的“标签”。
By combining both the supervised and unsupervised learning in a data set with few labels, one could exploit the data set to a better extend and obtain a better result than just applying each of them individually.
例如,我们希望预测图像的标签,但是只有10%的图像被标记。若仅利用有监督学习方法,利用标记数据对模型进行训练,然后对未标记的数据进行预测;从只有少数的数据集中得到的结果显然很难具有普适性。更好的策略是先运用聚类分析将图像分为若干组别(无监督学习方法),然后在每个单独的组内应用有监督学习算法。第一阶段的无监督学习方法可以帮助我们缩小学习范围,从而能够提高第二阶段监督学习的准确性。
通过今天的学习我们了解到了机器学习的模型及其分类(监督学习、非监督学习和半监督学习),在接下来的学习中我们将继续深入了解非监督学习(Clustering 和 Association)、监督学习(Classification Model 和 Regression Model)。