来源:原始 Jupyter Notebook。内容已转换为网页阅读格式;下载原文件。
机器学习分类
机器学习根据处理数据的种类,可以分为:监督学习、无监督学习、半监督学习、强化学习等。
监督学习(Supervised Learning)通常对有标签的训练样本特征进行学习,找到特征与标签之间的关系(函数),从而当训练结束,输入无标签的数据时,可以利用已经找出的关系分析出数据标签。如果学习的输出值是连续的,叫做回归(regression),如果是离散的,叫做分类(classification)。常用的监督学习方法有:神经网络、决策树、贝叶斯分类器、支持向量机等。
无监督学习(Unsupervised Learning)指的是学习的数据没有标签,它通过学习算法找到数据内部的规律和性质,从而对数据进行分组,也就是所谓的『物以类聚,人以群分』,常见的任务有 聚类(clustering)、异常检测(anomaly detection) 和 降维(dimension reduction)。如果数据样本介于无标记及部分标记之间,这种机器学习被称为半监督学习(Semi-Supervised Learning)。
强化学习(Reinforcement Learning)是智能系统从环境到行为映射的学习,以使奖励函数值最大,奖励函数是对产生动作的好坏作一种评价,而不是告诉机器如何去产生正确的动作。
下面三个例子说明了监督学习、无监督学习和强化学习之间的区别,假设我们手上有一堆的选择题(训练样本),如何训练计算机来学习呢?
监督学习是提供选择题的同时也提供它们的标准答案,计算机努力调整自己的模型参数,希望自己推测的答案与标准答案越一致越好,使计算机学会怎么做这类题。然后再让计算机去帮我们做没有提供答案的选择题(测试样本)。
无监督学习是只提供选择题,但是不提供标准答案,计算机尝试分析这些题目之间的关系,对题目进行分类,计算机也不知道这几堆题的答案分别是什么,但计算机认为每一个类别内的题的答案应该是相同的。
强化学习和无监督学习一样,提供选择题但是不提供标准答案,计算机尝试去做这些题,我们作为老师批改计算机做的对不对,对的越多,奖励越多,计算机努力调整自己的模型参数,希望自己推测的答案能够得到更多的奖励。不严谨的讲,可以理解为先无监督后有监督学习。
另外,考虑到大部分数据或任务是存在相关性的,如果能把已经训练好的模型参数分享给新的模型来帮助新模型训练数据集,从而加快并优化模型的学习,不用像之前那样从零开始,这种学习方式称为迁移学习(Transfer Learning)。
推荐系统(Recommendation System)
学习理论(Learning Theory)