1.5 不同学习类型
Arthur Samuel说:“数据科学使得计算机能够在没有明确编程的情况下具备学习能力。”所以任何通过读取训练样例以便在没有明确编程的情况下对未见过的数据进行决策的软件都可以视为学习。数据科学或学习有3种不同的形式。
图1.12所示为常见的数据科学/机器学习类型。
图1.12 数据科学/机器学习的不同类型
1.5.1 监督学习
大部分数据科学家都使用监督学习。监督学习是指这样的一种情况:具有一些称为输入变量(X)的解释性特征;同时带有与训练样本相关联的标签,这些标签称为输出变量(Y),监督式学习算法的目标是学习从输入变量(X)到输出变量(Y)的映射函数。
因此,监督学习算法将尝试近似地学习从输入变量(X)到输出变量(Y)的映射,以便后续可以使用它来预测未知样本的Y值。
图1.13所示为监督数据科学系统的典型工作流程。
图1.13 一个典型的监督学习工作流程。上面的部分显示了训练过程,从把原始数据输入特征提取模块当中开始,用户将在这里选取有意义的解释性特征来代表数据。然后,将提取/选择的解释特征与训练集相结合,并将它反馈到学习算法以便从中学习。最后做一些模型评估来调整参数,并获得学习算法以从数据样本中获得最好的结果
这种学习称为监督学习,因为每个训练样本都有标签/输出。在这种情况下,我们称学习过程受一个监督者监督。算法在训练样本上做决策,然后监督者根据数据的正确标签进行纠正。当监督学习算法达到一个可接受的准确率水平后,学习过程就会终止。
监督学习有两种形式——分类任务和回归任务。
- 分类任务:标签或者输出变量是类别的情况,比如月鱼和金枪鱼,垃圾邮件和非垃圾邮件。
- 回归任务:输出变量是实数的情况,比如房价或者身高。
1.5.2 无监督学习
无监督学习被视为信息研究人员使用的第二种最常见的学习方式。在这种类型的学习中,数据只给出了解释性特征或输入变量(X),而没有任何相应的标签或输出变量。
无监督学习算法的目标是收集信息中隐藏的结构和样例。由于没有与训练样本相关的标记,因此这种学习称为无监督学习。无监督学习是一个没有修正的学习过程,它将尝试自行找到基本结构。
无监督学习可以进一步划分为两种形式——聚类任务和关联规则学习任务。
- 聚类任务:发现训练样本中相似的簇并把它们划分到一组,比如,按照话题划分文档。
- 关联规则学习任务:发掘一些能够描述训练样本之间关系的规则,比如,观看电影X的人群倾向于观看电影Y。
图1.14所示为一个简单的无监督学习示例,在这个例子中用户有一堆分散的文档,尝试把相似的文档划分在一块。
图1.14 无监督学习利用相似性度量(如欧氏距离)来将相似的文档进行分组并给出对应的决策边界
1.5.3 半监督学习
半监督学习是介于监督学习和无监督学习之间的一种学习类型,用户可以使用输入变量(X)进行训练,但只有其中的一部分转入变量通过输出变量(Y)进行标记/标记。
这类学习的一个很好的例子是Flickr,Flickr中有很多由网站用户上传的图片,但只有其中的一小部分图片贴了标签(例如日落、海洋和狗等),其余的都没有标签。
为了解决这类学习任务,开发人员可以从下面两种方法选择一种或者同时使用二者。
- 监督学习:训练学习算法对未标记的数据做出预测,然后将整个训练样本输入模型中,从中学习并在未知的数据上进行预测。
- 无监督学习:使用无监督学习算法来学习解释性特征或输入变量的基础结构,就好像没有任何标记的训练样本一样。
1.5.4 强化学习
机器学习的最后一种学习类型是强化学习,在强化学习中只有奖励信号,而没有监督者。
强化学习算法会尝试做出一个决策,然后获得一个奖励信号,这个信号用于指出这个决策是否正确。此外,这种监督反馈或奖励信号可能不会立即出现,而是会有一定的延迟。例如,该算法现在会做出决定,但过了一段时间后,奖励信号才指出了决策是好还是坏。