1.4 方法——人工智能领域的研究方法

人工智能技术的发展大体需要经过两个阶段,即感知智能与认知智能。感知智能是人工智能技术发展的初级阶段,这个阶段的人工智能技术主要是对数据进行接收与识别;认知智能是人工智能技术发展的中高级阶段,这个阶段的人工智能技术主要是对数据进行评价、判断、归纳。由于生物医学的发展与计算科学的脱节,当前人们对人工智能的研究处于初级阶段,只能达到感知智能与初级认知的水平。人工智能领域的发展路径如图1-13所示。人们对人工智能的研究从初级感知到抽象认知过程,可以概括为人们对人脑智能本质理解的深入。

图1-13 人工智能领域的发展路径

2011年诺贝尔经济学奖获得者Thomas J. Sargent在世界科技创新论坛上表示,人工智能技术其实就是统计学知识,只不过用了华丽的辞藻来修饰,其本质就是统计学公式。此言一出,激起千层浪,给当前火热的人工智能技术泼了一盆冷水。统计学是一个古老的学科,是通过搜集、整理、分析统计资料认识客观现象数量规律性的方法论。人工智能技术以统计学知识为基础,是对统计计算的归纳和扩展。人工智能领域内涵非常丰富,不但涉及数学与计算机科学的内容,还涉及社会学、心理学、哲学等学科的内容。

常见的人工智能技术的研究方法分为两类:统计学习算法与深度学习算法。近几年还出现了许多统计学习与深度学习融合的算法,这些算法的协同利用使人工智能技术能更加准确、高效地解决场景问题。

无论何种算法,其作用都是实现两类功能:分类和预测。例如,图片的目标检测是一个分类问题,语音识别也是一个分类问题,未来股票收益率是一个预测加分类问题的组合。所以在遇到实际问题时,要看到问题的本质,这样才能选择最佳的人工智能技术来解决问题。

1. 统计学习算法

统计学习算法是以概率论与数理统计为理论基础,对数据进行分析和预测的机器学习算法。传统的机器学习算法一般指的就是统计学习算法。统计学习算法与统计学理论有着千丝万缕的联系,想了解统计学习算法的原理,首先需要深刻理解数理统计的相关原理。当前人们对人工智能技术的研究大部分是通过机器学习算法进行的。

统计学习算法的对象是数据,主要学习过程为提取数据特征、建立数学模型、通过算法对数据进行分类和预测。统计学习算法包括模型、策略和算法三个部分,称为统计学习算法的三要素。

模型是指运用数理逻辑方法和数学语言构建的用于描述数据的规律的科学或工程模型;策略是指通过数据学习或优化模型的准则设计出的用于评价优化模型函数的多种策略;算法是指模型学习与优化过程中具体的计算方法。举一个简单的例子,有一批数据需要进行建模处理,我们将该问题转化为构造一个线性函数来拟合这些数据。其中,模型是一个线性函数,它是利用数学语言构建的科学模型;策略是使该线性函数所表示的直线到每个数据点的距离之和最小,这样能够保证该直线完美的“穿过”这些数据点;算法是最小二乘法,众所周知最小二乘法可以用于计算这种线性函数的拟合问题。

确定模型首先要对问题有清晰的认知,当然这可能需要大量的专业知识。只有对问题有足够的认知,才能确定问题属于哪些模型的使用场景。确定模型更重要的目的是确定模型的假设空间,即所要学习样本的概率分布空间。在模型的假设空间确定之后还要制定策略、选择算法,其中制定策略是指考虑按照何种准则来选择最优模型,选择算法是指选择具体的实施方法,即根据样本数据情况确定利用何种算法进行计算。统计学习算法三要素间的关系如图1-14所示。

图1-14 统计学习算法三要素间的关系

统计学习算法有很多,不同的算法模型用于解决不同类型的分类和预测问题。常用的统计学习算法包括线性回归算法、决策树算法、支持向量机算法、EM算法、概率图模型、贝叶斯算法等。统计学习算法最大的特点是具有良好的理论解释性,每个公式能得到严谨的数学证明。

2. 深度学习算法

深度学习算法源于对人工神经网络(Artificial Neural Network)的研究,是指模拟人类神经系统的运作方式,将目标数据输入神经网络进行特征提取,从而进行数据分类和预测的算法。

深度学习算法是机器学习算法中的一个新的研究方向,主要依靠神经网络模型进行算法构建。模型的学习过程有监督学习与无监督学习之分。监督学习是指利用一组已标注数据对模型进行训练,使其达到所要求的性能的过程;非监督学习是指利用一组未标注数据对模型进行训练,寻找数据隐藏结构的过程。根据不同的学习框架和目的设计出的深度学习网络具有很大的差异,如CNN与DBN(深度信念网络)就是两种不同的网络形态,前者基于监督学习,后者基于非监督学习。深度学习算法当前最大的问题是理论解释性差,神经网络属于黑盒模型,我们难以用数学去证明神经网络的整个知识体系。如果能完全将神经网络变为可解释的知识体系,那么人工智能技术将会前进一大步。

深度学习算法主要用于解决分类问题,无论是对图像处理还是对文字处理都起到了分类器的作用。但是由于深度学习算法主要依靠神经网络模型进行算法构建,在使用方面也存在如下几种缺点。

(1)需要利用大量已标注数据对模型进行训练,否则难以得到理想的结果。

(2)模型参数复杂、运算量大、对算力要求高。

(3)模型缺乏理论解释性,存在安全隐患或不可控因素。

(4)模型缺乏通用性。

基于以上几种缺点,深度学习算法的完善还需要经历较长的发展阶段。当前已经出现了一些新型的深度学习算法,正在提高算法的理论解释性,降低模型对数据的依赖程度。新型的深度学习算法将在后续内容中介绍。表1-2对比了统计学习算法与深度学习算法的定义及算法特点。

表1-2 统计学习算法与深度学习算法

总之,统计学习算法可以理解为在高维空间中寻找超平面,对对象进行分类;深度学习算法可以理解为寻找从输入空间到特征空间的非线性映射,使特征空间线性可分,从而达到分类的效果。未来人工智能技术的发展需要将两种算法结合并赋予其新的模式,同时也有赖于生物神经科学的发展。目前,统计学习算法和深度学习算法大多以降维为目的,这不一定与人脑真实的数据处理过程相符,未来人工智能技术的处理方法还需要人们深入探索。

3. 前沿人工智能技术研究方法

虽然当前人工智能技术发展迅速,但人工智能的认知过程与人类智能的认知过程差距很大。人类具有举一反三的能力,能够将一个事务的逻辑运用于不同事务。例如,我们在小时候第一次看到某个动物时被大人告知那是一只鸟,此后我们能够顺利将鹦鹉、杜鹃、大雁等动物归为鸟这一个物种。但计算机不具备这种能力,它需要对上万张鸟的图片进行模型训练,才能够识别出特定的几种鸟类。由此可见,未来的人工智能技术还有巨大的改进空间。

从医学的角度也能够说明当前人工智能与人类智能的区别。以当前医学研究得较为成熟的“视觉”领域为例,在人的视觉系统中,图像从视网膜输入后,晶状体会以不同维度的感知单元和不同维度的处理单元对图像进行处理,而不是单一地利用神经元堆叠或多层神经网络进行图像处理。由于原理上的差异,人的视觉系统对图像的处理过程与当前计算机对图像的处理过程形成了鲜明的对比。

人的视觉系统处理图像时,并非只对图像进行降维处理,还会对图像进行升维处理,即将图像升维后分组,再交给不同的处理单元进行处理。计算机利用单一模型(神经网络)来处理图像,而人的视觉系统将多个模型分成不同的通路对图像进行处理,多通路处理方法的本质是数据升维。数据升维可以理解成对原始图像数据进行特征提取,针对不同的数据特征利用不同的模型进行处理。举一个简单的例子,当人们看到狗的图片时,人的视觉系统会将狗的图片分解成不同的特征,包括图片的长宽高、RGB、灰度、狗各部位的相对位置关系等,这就是对图像数据的升维处理。这些数据特征在人的视觉系统中分别被交给不同的处理单元进行处理,在得到处理结果之后,将结果重新组合在一起作为狗这张图片的认知元素。图像数据在人的视觉系统中经历了升维、特征处理、降维的过程,而并非仅经历了一个简单的模型输入、输出的过程。人的视觉系统处理图像的过程需要感知(类似神经网络技术)单元和认知(类似贝叶斯技术)单元协同工作,是整合感知、识别、学习、预测等功能的一体化过程。计算机视觉与人类视觉图像处理过程的差异性如图1-15所示。

图1-15 计算机视觉与人类视觉图像处理过程的差异性

此外,人类智能还包括诸多其他丰富的内涵,如从感官引领的初级感知到神经引领的高级感知。高级感知是一个复杂的过程,由多种神经细胞参与协调,它将输出一个世界图景而不是一张图片。人类的大脑感知到的图像不仅是一群像素点,还是包含人、物体、环境等各种元素的三维模型。在感知层之上,大脑还有一个认知层,认知分为初级认知、高级认知两个部分。初级认知使人形成体验与情感,在初级认知出现不协调或矛盾时,将由高级认知来对事物进行处理;高级认知使人具有决策能力与逻辑能力,能通过概念的推导形成语言和思维。由此可见,人类大脑工作原理的研究是未来人工智能技术发展的重要指引。

人工智能技术下一步的发展需要将统计学习与深度学习相结合,进一步对人类智能的处理方式进行模拟,主要包括以下三个方面。

(1)降低模型对训练数据的依赖。

(2)更全面地提取对象特征。

(3)按照人类智能机理重构算法流程。

当前已经出现了一些较新的、更贴近人类学习方式的算法。在降低模型对训练数据的依赖方面已经出现一些新兴技术,如弱监督学习、迁移学习等。在更全面地提取对象特征方面也出现了一些新方法,如利用胶囊网络模型可以准确识别不同角度、不同方位的目标信息等。按照人类智能机理重构算法流程是一项巨大的工程,不仅有赖于计算技术的发展,还有赖于生物工程的发展。强化学习过程被认为最符合人类对事物的认知过程,近几年发展起来的深度强化学习算法,结合了神经网络与强化学习算法的优势,正在被用于构造与人类思维接近的类脑模型。类似的技术还有图神经网络、元学习等。

在云计算方面,5G及边缘计算的发展稳固了算力基础,也为未来人工智能的发展奠定了基础。人工智能的发展趋势如图1-19所示。

图1-16 人工智能的发展趋势

在未来的发展中,以下一些算法值得重点关注,包括迁移学习算法、胶囊网络模型、深度强化学习算法、多粒度级联森林算法等。

1)迁移学习算法

迁移学习算法是利用已有知识对相关领域的问题进行求解的机器学习算法。迁移学习算法放宽了数据的独立与分布两个前提假设,利用相似数据形成模型,对新问题进行分析。当前,迁移学习算法可以用来解决有少量样本或无样本的学习问题。

2)胶囊网络模型

由于CNN模型只能提取图像特征而忽略了对象空间、方向、大小的匹配,所以人们提出了胶囊网络模型,该模型可以提取不同角度、不同明暗的物体的图像特征,甚至可以分辨出不同特征之间的矢量关系,如嘴在鼻子下面等。该模型可以大幅度地提高图像识别准确性。

3)深度强化学习算法

普通的强化学习算法输入的多是维度较低的数据类型,并且强化学习算法的动作空间和样本空间都很小,大多在离散数据的环境下进行。在实际情况中,任务通常有着很大的样本空间和连续的动作空间。连续图像或声音等类型的数据具有较高的维度,使用普通的强化学习算法很难对其进行处理。深度强化学习算法可以利用深度学习算法应对高维的数据输入,是将深度学习算法与强化学习算法相结合的算法。

4)多粒度级联森林算法

多粒度级联森林算法(Multi-Grained Cascade Forest)是周志华教授提出的决策树集成算法。首先生成一个深度树集成算法,利用级联结构让gcForest模型对其进行学习。gcForest模型把学习过程分成两个部分,即多粒度扫描(Multi-Grained Scanning)和阶梯森林(Cascade Forest),通过多粒度扫描主要生成数据特征,通过阶梯森林经过多层级联得出预测结果。

整体来看,人工智能技术的发展之路是从弱人工智能到强人工智能。未来,我们还需要在人工智能技术的基础上进一步整合多种技术(如神经科学、认知科学等),来引领未来人工智能的发展。