1.2.3 机器学习的分类
根据强调内容的不同,机器学习有多种分类方法。
1.2.3.1 基于学习方式的分类
根据学习方式的不同,机器学习可以分为监督学习、无监督学习、半监督学习和强化学习。
(1)监督学习
监督学习是机器学习中最常见的一种方式,是从有标签的训练数据集中推断出模型的机器学习方法。监督学习中的数据分为训练集和测试集,训练集中的数据提前被做了标记,同时包含特征和标签。训练集用于训练并建立一个数学模型,再用已建立的模型来对测试集中的样本进行预测。
(2)无监督学习
与监督学习相比,无监督学习不需要对训练集中样本进行标记,学习模型是为了推断出数据的一些内在结构。无监督学习主要用于学习或提取数据背后的数据特征,或者从数据中抽取重要的结构信息。无监督学习也可以作为有监督学习的前期数据处理,从原始数据中提取标签信息。
(3)半监督学习
半监督学习是监督学习和无监督学习的结合。半监督学习的训练集中的数据一部分有标签,另一部分没有标签,并且无标签数据的数量常常远大于有标签数据的数量。在实际任务中,无标签的样本多、有标签的样本少是一个普遍现象,如何利用好无标签的样本来提升模型泛化能力,就是半监督学习研究的重点。隐藏在半监督学习下的基本规律是:数据的分布必然不是完全随机的,通过一些有标签的数据的局部特征,和更多的无标签数据的整体分布,就可以得到能够接受甚至是非常好的学习结果。
(4)强化学习
强化学习,又称增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习理论受到行为主义心理学启发,侧重在线学习并试图在探索—利用间保持平衡。不同于监督学习和无监督学习,强化学习不需要训练数据,而是通过接收环境对动作的奖励(反馈)获得学习信息并更新模型参数(陈学松、杨宜民,2010)。
1.2.3.2 基于学习策略的分类
根据学习策略的不同,机器学习可以分为符号学习、神经网络学习、统计机器学习。符号学习和神经网络学习属于模拟人类大脑的机器学习方法,统计机器学习则是直接基于数学模型进行学习的方法。
(1)符号学习
符号主义理论认为,符号是智能的基本单元,智能活动要依赖符号推理或者符号计算过程。符号学习是模拟人脑的宏观学习过程,以认知心理学原理为基础,以符号数据为输入,进行符号运算,基于图或状态空间中的推理进行搜索,学习的目标为概念或规则等。基于符号主义发展而来的机器学习方式被称为符号学习方式。
(2)神经网络学习
神经网络学习是联结主义学习的代表,以脑和神经科学原理为基础,模拟生物神经网络的学习过程,以人工神经网络为函数结构模型,将数值数据作为网络的输入,进行数值运算,通过多次迭代在向量空间中进行搜索,学习的目标为函数。人工神经网络是机器学习的一个庞大的分支,有几百种不同的算法。常用的人工神经网络算法包括:感知器神经网络、反向传播神经网络、Hopfield神经网络、自组织映射以及深度学习。
(3)统计机器学习
统计机器学习是基于对数据的初步认识以及学习目的的分析,即选择合适的数学模型,拟定超参数,并输入样本数据,依据一定的策略,运用合适的学习算法对模型进行训练,最后运用训练好的模型对数据进行分析预测(陈海虹等,2017)。
1.2.3.3 基于功能的分类
根据机器学习算法的功能和形式的相似性,我们可以把算法分为回归、实例、决策树、贝叶斯、基于核函数、聚类、关联规则、人工神经网络、降维等。
(1)回归算法
回归算法是通过对误差的衡量来探索变量之间关系的一类机器学习算法。回归算法通常是机器学习的第一个算法,因为它比较简单,通过它可以轻易地从统计学过渡到机器学习,而且回归算法是其他机器学习算法的基础。回归算法有两个重要的子类:线性回归和逻辑回归。
(2)基于实例的算法
基于实例的算法通常先选取一批样本数据,然后通过比较新来的数据与样本数据相似性,寻找最佳的匹配。该类算法一般用于对决策问题建立模型。基于实例的算法也经常被称为“赢家通吃”学习或者“基于记忆”的学习。常见的基于实例算法包括k最近邻(k-Nearest Neighbor,kNN)算法、学习矢量量化(Learning Vector Quantization,LVQ)算法和自组织映射(Self-Organizing Map,SOM)算法。
(3)决策树学习
决策树是一种树形结构,树中每个内部节点表示一个特征上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果。决策树学习算法根据数据的特征采用树状结构建立决策模型,常常用来解决分类问题。决策树算法一般包括特征选择、决策树的构建和决策树的修剪三个步骤。常见的决策树学习算法包括:分类和回归决策树(Classification And Regression Tree,CART)、ID3(Iterative Dichotomiser 3)、C4.5算法、随机森林(Random Forest)等。
(4)贝叶斯算法
贝叶斯算法是机器学习的一类核心算法,其基于贝叶斯定理,可以用来解决分类和回归问题。其中,朴素贝叶斯算法是常用的一种。朴素贝叶斯分类器不考虑数据特征之间的相关性,认为每一个特征都独立地贡献概率。朴素贝叶斯算法允许使用概率给出一组特征来进行类别的预测。与其他的分类算法相比,朴素贝叶斯算法需要很少的训练,只需要在预测之前找到特征的个体概率分布的参数,因此,即使对于高维数据,朴素贝叶斯分类器也可以表现良好。但是,数据的特征之间并不总是独立的,这通常被视为朴素贝叶斯算法的缺点。
(5)基于核函数的算法
基于核函数的算法把输入数据映射到一个高阶的向量空间,在这些高阶向量空间里解决分类或者回归问题。常见的基于核函数的算法包括:支持向量机(Support Vector Machine,SVM)、径向基函数(Radial Basis Function,RBF),以及线性判别分析(Linear Discriminate Analysis,LDA)等。其中,支持向量机是最有代表性的一种。
(6)聚类算法
聚类算法通常是对没有标签的数据进行学习,找到数据的内在性质和规律,按照中心点或者分层的方式对输入数据进行归并。常见的聚类算法包括K-Means算法和期望最大化算法(Expectation Maximization,EM)。
(7)关联规则学习
关联规则学习通过寻找最能够解释数据变量之间关系的规则,来发现大量多元数据集中有用的关联规则。常见算法包括Apriori算法和Eclat算法等。
(8)人工神经网络算法
人工神经网络算法模拟生物神经网络,是一类模式匹配算法,可以用于解决分类和回归问题。
(9)降维算法
像聚类算法一样,降维算法通过分析数据的内在结构和规律,试图利用较少的信息来归纳或者解释数据。降维算法可以用于高维数据的可视化或者用来简化数据。常见的降维算法包括:主成分分析(Principle Component Analysis,PCA)、偏最小二乘回归法(Partial Least Square Regression,PLS)、Sammon映射、多维尺度(Multi-Dimensional Scaling,MDS)等。