人工智能(AI)应用从入门到精通
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

一、机器学习

机器学习(Machine Learning)是一门涉及统计学、系统辨识、逼近理论、神经网络、优化理论、计算机科学、脑科学等诸多领域的交叉学科,研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,是人工智能技术的核心。基于数据的机器学习是现代智能技术中的重要方法之一,研究从观测数据(样本)出发寻找规律,利用这些规律对未来数据或无法观测的数据进行预测。根据学习模式、学习方法以及算法的不同,机器学习存在不同的分类方法。

1.按学习模式分类

根据学习模式将机器学习分为图2-1所示的三类。

图2-1 根据学习模式将机器学习分类

(1)监督学习。监督学习是利用已标记的有限训练数据集,通过某种学习策略/方法建立一个模型,实现对新数据、实例的标记(分类)或映射,最典型的监督学习算法包括回归和分类。监督学习要求训练样本的分类标签已知,分类标签精确度越高,样本越具有代表性,学习模型的准确度越高。监督学习在如图2-2所示等领域获得了广泛应用。

图2-2 监督学习的应用领域

(2)无监督学习。无监督学习是利用无标记的有限数据描述隐藏在未标记数据中的结构或规律,最典型的非监督学习算法包括单类密度估计、单类数据降维、聚类等。无监督学习不需要训练样本和人工标注数据,便于压缩数据存储、减少计算量、提升算法速度,还可以避免正、负样本偏移引起的分类错误问题。主要用于如图2-3所示等领域,例如组织大型计算机集群、社交网络分析、市场分割、天文数据分析等。

图2-3 无监督学习的应用领域

(3)强化学习。强化学习是智能系统从环境到行为映射的学习,以使强化信号函数值最大。由于外部环境提供的信息很少,强化学习系统必须靠自身的经历进行学习。强化学习的目标是学习从环境状态到行为的映射,使得智能体选择的行为能够获得环境最大的奖赏,使得外部环境对学习系统在某种意义下的评价为最佳。强化学习在如图2-4所示等领域获得成功应用。

图2-4 强化学习的应用领域

2.按学习方法分类

根据学习方法可以将机器学习分为图2-5所示的两类。

图2-5 根据学习方法将机器学习分类

(1)传统机器学习。传统机器学习从一些观测(训练)样本出发,试图发现不能通过原理分析获得的规律,实现对未来数据行为或趋势的准确预测。相关算法包括逻辑回归、隐马尔科夫方法、支持向量机方法、K近邻方法、三层人工神经网络方法、Adaboost算法、贝叶斯方法以及决策树方法等。传统机器学习平衡了学习结果的有效性与学习模型的可解释性,为解决有限样本的学习问题提供了一种框架,主要用于有限样本情况下的模式分类、回归分析、概率密度估计等。传统机器学习方法共同的重要理论基础之一是统计学,在如图2-6所示的许多计算机领域获得了广泛应用。

图2-6 传统机器学习的应用领域

(2)深度学习。深度学习是建立深层结构模型的学习方法,典型的深度学习算法包括深度置信网络、卷积神经网络、受限玻尔兹曼机和循环神经网络等。深度学习又称为深度神经网络(指层数超过3层的神经网络)。深度学习作为机器学习研究中的一个新兴领域,由Hinton等人于2006年提出。深度学习源于多层神经网络,其实质是给出了一种将特征表示和学习合二为一的方式。深度学习的特点是放弃了可解释性,单纯追求学习的有效性。经过多年的摸索尝试和研究,已经产生了诸多深度神经网络的模型,其中卷积神经网络、循环神经网络是两类典型的模型。卷积神经网络常被应用于空间性分布数据;循环神经网络在神经网络中引入了记忆和反馈,常被应用于时间性分布数据。深度学习框架是进行深度学习的基础底层框架,一般包含主流的神经网络算法模型,提供稳定的深度学习API,支持训练模型在服务器和GPU、TPU间的分布式学习,部分框架还具备在包括移动设备、云平台在内的多种平台上运行的移植能力,从而为深度学习算法带来前所未有的运行速度和实用性。目前主流的开源算法框架有Tensor Flow、Caffe/Caffe 2、CNTK、MXNet、Paddle-paddle、Torch/Py Torch、Theano等。

3.按算法分类

根据算法可将机器学习分为图2-7所示的三类。

图2-7 根据算法将机器学习分类

(1)迁移学习。迁移学习是指当在某些领域无法取得足够多的数据进行模型训练时,利用另一领域数据获得的关系进行的学习。迁移学习可以把已训练好的模型参数迁移到新的模型指导新模型训练,可以更有效地学习底层规则、减少数据量。目前的迁移学习技术主要在变量有限的小规模应用中使用,如基于传感器网络的定位、文字分类和图像分类等。未来迁移学习将被广泛应用于解决更有挑战性的问题,如视频分类、社交网络分析、逻辑推理等。

(2)主动学习。主动学习是指通过一定的算法查询最有用的未标记样本,并交由专家进行标记,然后用查询到的样本训练分类模型来提高模型的精度。主动学习能够选择性地获取知识,通过较少的训练样本获得高性能的模型,最常用的策略是通过不确定性准则和差异性准则选取有效的样本。

(3)演化学习。演化学习对优化问题性质要求极少,只需能够评估解的好坏即可,适用于求解复杂的优化问题,也能直接用于多目标优化。演化算法包括粒子群优化算法、多目标演化算法等。目前针对演化学习的研究主要集中在演化数据聚类、对演化数据更有效的分类,以及提供某种自适应机制以确定演化机制的影响等。