方法论视野下的计算思维
2017-01-06李廉
李廉
摘要:通过计算模型与物理模型和数学模型的比较,从方法论角度解释了计算思维有别于实证思维和逻辑思维的不同之处。着重分析了学习模型的一些理论和方法特点,针对大数据的应用,探讨学习模型在适用范围、性能效率以及属性特点等方法论方面的性质。对于学习模型产生结论的PAC形式做了重点讨论,这是计算思维所蕴含的丰富矿藏,也是当今创新的重要思想来源和技术动力,需要在教学中予以充分的关注和启发。
关键词:计算模型;学习模型;PAC方式;归纳推理;关联关系;大数据
随着信息技术的快速发展,大数据、云计算、互联网这些名词已经越来越频繁地进入我们的日常生活,并对整个社会结构和运行秩序产生了深刻的影响。这种情况也毫不例外地影响着计算机科学和工程的教学改革,其中对于这些科学与技术发展背后带来的思维模式的特点显得尤为突出和重要,培养计算思维能力是当前计算机基础课程改革的目标。但是对于计算思维的内涵究竟是什么,它与我们熟悉的实证思维和逻辑思维之间有什么不同,它的内容和形式有什么特点,仍然是一个需要继续探讨的问题。这些探讨将进一步理清计算思维的内涵以及应用范围。本文通过计算模型与物理模型和数学模型的比较,解释了计算思维有别于实证思维和逻辑思维的不同之处,从方法论角度论证了计算思维是并列于实证思维和逻辑思维的第三种科学思维模式。
一、物理模型与数学模型
分析问题和解决问题的第一步是对问题的抽象,抽象的过程是略去与问题无关的部分,而关注于问题的本质。抽象最常见的结果是模型,一个适当的模型反映了问题的因果关系或者数量关系。从而可以采用已有的理论或者技术来分析模型,解决其中的问题。这种建模的方法是所有科学研究中的通用的原则,根据模型的不同,一般分为物理模型和数学模型,物理模型通过模拟物理运动来揭示因果关系,数学模型通过数学方程来揭示逻辑关系。在现实的处理问题的方法中,由于计算机的出现,人们似乎更加偏爱采用数学模型。
物理建模是抽取对象的本质属性,在实验室建立简化的系统,研究物体在这个简化世界中的行为,以确定因果关系。伽利略著名的斜坡实验是自由落体的物理模型,通过斜坡稀释了时间,使得观察和比较成为可能。
数学建模是通过抽取本质属性,建立属性之间的逻辑关系(数学关系),通常以方程的形式加以描述。借助方程解的形式来解释自然现象或者社会现象。
无论是物理模型还是数学模型,都需要把问题理想化和简单化。面对自然现象和社会问题,各种因素的影响纵横交错,其中的关系也是错综复杂,因此在抽象的过程中,一般需要预设结论,提出其中的因果关系假设,并为此设计一个模型系统,其中只有预设的因素而排除了其他因素,在这个简化的物理模型中,观察因素之间的相互作用。在数学模型中,则通过简化的数量形式,建立相应的数学方程,借助解的形式与性质来获取问题的解决。理论上说,任何建模的方法都不可能涵盖所有的客观因素,只能根据假设,提炼部分因素进行抽象,其中还不乏对于一些关系的理想化处理。
一般而言,物理模型和数学模型都属于“确定性”模型,即通过模型得到的结论是完全确定的,因果关系是确定的,逻辑关系也是确定的,其结论具有非此即彼的性质。即使对于统计模型(数学模型的一种),虽然结论具有某些不确定性,但是这种不确定性是建立在确定数学公理上的,它是一种由确定性导出的不确定性,本质上仍然属于逻辑关系。
所有这些模型以及其背后的依据和逻辑,已经发展成为系统的方法,有建模的步骤和程式,模型的建构,以及如何从模型得到结论的准则等。我们从小学到大学已经被无数次训练,对于这些方法也是烂熟于胸,熟悉的似乎已经是天经地义,无可怀疑。但是大数据的出现,对这一切都提出了严峻的挑战,为我们展示了一种崭新的认知世界的新方法和新观点。在物理模型和数学模型之外,出现了新的模型形式和建模方法,这就是计算模型。
二、计算模型
由于信息技术的发展,人类获取数据的能力较之过去有了飞速的进步。现在每天都要产生数以E比特量的数据,大量的数据带给我们的不仅仅是量的增加,更重要的是带来了一种新的认知观。这就是从观察数据中获取知识的新的途径。
实际上,从人类认知的历史来看,最早了解自然规律的手段就是观察和归纳,人类最早就是从数据中获取知识的。只是到了17世纪之后,由伽利略等逐步开创了现代实证主义研究的手段,观察研究就让位于实验。除了少数无法进行实验的学科(例如宇宙学),在绝大多数自然学科中,实验成为形成结论的标准手段,任何结论必须在实验室里面被验证,仅仅在自然界被观察到是不够的。在现代科学体系中,通过观察获取知识的方法被边缘化,究其原因,还是因为过去的观察手段比较落后,难以获得大量数据,而建立在小数据基础上的分析,其结论往往是不准确的,得到的结论也缺乏说服力。既然过去是受限于数据的不足,使得人们研究自然问题的方法主要依赖于实证主义的实验方法,那么现在随着信息技术的发展,获取数据的能力有了极大提高,进入了大数据时代,我们是否可以重新回到先辈那里,采用观察的方法来研究问题,获取知识。特别是在人文科学和社会科学等无法采用实验方法研究的领域,通过观察设备(传感器)作用于各种自然现象,社会活动和人类行为,产生了大量的数据,分析和处理这些数据,并且进行归纳和提炼。人们研究科学又可以重新回到了观察这个最原始和最基本的手段,但是这一次的回归是螺旋式上升,从古代依靠人的感官来观察现象,到现在依靠传感器来观察现象,数据的密度、广度、准确性和一致性已经不能同日而语了,因此观察这种研究手段在大数据时代焕发了新的生命力,成为新时代的新的科学研究方法。
《大数据时代》的作者舍恩伯格写道:“大数据标志着‘信息社会终于名副其实。我们所收集的所有数字信息现在都可以用新的方式加以利用。我们可以尝试新的事物并开启新的价值形式。但是,这需要一种新的思维方式,并将挑战我们的社会机构,甚至挑战我们的认同感。”这个新的认同感是什么?由于大数据进入我们的社会只有短短的历史,现在还不能做出最终的结论。舍恩伯格继续写道:“大数据时代对我们的生活,以及与世界的交流方式都提出了挑战。最惊人的是,社会需要放弃它对于因果关系的渴求,而只需关注关联关系,也就是说,仅需要知道是什么,而不需要知道为什么。这就推翻了自古以来的惯例,而我们做决定和理解现实的最基本方式也将受到挑战。”如果舍恩伯格所言为实,那么这种新的认知观和对于世界的新的解释就是建立在关联关系,而不是传统物理学所强调的因果关系,或者数学所强调的逻辑关系。实际上,近期一些借助大数据得到的重大甚至具有里程碑意义的成果都说明,上述的预言正在成为一种新的世界观和方法论,当采用大数据的分析方法和处理手段来解决问题,或者当采用关联关系来解释世界时,我们得到了一系列对于世界的新认知,极大地提高了我们认识能力,也丰富了我们的知识体系。这些成果包括AlghaGo、语音识别、图像判断、自动驾驶等领域。
现在我们回到方法论的问题上来。既然大数据提供了一种新的不同于物理学和数学的观点,自然也就带来了研究问题的不同于物理学和数学的方法。这种方法是关注于现象之间的关联关系而不是因果关系或者逻辑关系,因此必然要有与之相应的新的理论、技术和工具。也就是说,我们不仅关心大数据给我们带来的关联关系的新视角,更加关心如何来获取这种关联关系,即计算模型和如何构建计算模型的问题。
从计算机科学的角度,大致上可以分为三类模型,分别是指称模型,算法模型和学习模型。第一类指称模型包括各种文法系统、重写系统以及演算系统,主要是建立各种符号变换之间的层次关系、顺序关系、或者替代关系,是计算或者系统形式化的抽象模型。第二类是算法模型,包括各种算法,其中既有确定算法,也有非确定算法,还包括近似算法、随机算法以及演化算法等。算法构成了计算机科学的主要组成部分,通过建立算法模型是计算机解决问题的常用途径。第三类就是最近比较活跃的学习模型。实际上,指称模型建立了符号之间的变换,严格说这些变换纯粹是一种形式转换,它只是被指称所约定,并不关心这些符号之间是否有因果关系和逻辑关系,因此是一种关联关系的建立。算法模型中有一类是经过严格数学证明的,这类算法其输入和输出之间是有着逻辑关系的;但是也有一类算法,它的过程中有一些策略是依据实际情况变化的,是一种“就事论事”的方法,其结果的正确性不能逻辑上予以证明,这类算法的输入和输出之间是一种关联而不是逻辑。指称模型和算法模型已经有了很多研究,不在本文的讨论范围,本文主要讨论近年来随着大数据一起受到重视的学习模型。
一个学习模型是一个结构(装置),连同一个算法,通过对于大量数据的训练或者分析输出相应的结论。常见的学习模型有支持向量机(SVM,Suppog Vector Machine)、人工神经网络(ANN,Artificial Neural Network)、聚类分析(CA,Cluster Analysis)、邻近分类(kNN,k-NearestNeighbor)等。不同的模型有着不同的获取结论的理论和方法。机器学习是利用学习模型获取结论的过程。机器学习需要有一个预设的任务T,以及衡量指标P,通过选取合适的模型和数据E,以P的要求完成任务T。这里数据E即包括观察的数据,也包括诸如规则和经验这样的先验知识。以二分类问题为例,二分类问题定义了一个目标函数h:X→{0,1},其中X是所有实例的集合,h是一个客观存在分类函数。数据被表示为特征的向量,所有的特征称为数据的特征空间。现假设我们有X的一部分数据,称为样例集合S。由于我们只有部分样例,而没有关于h的确切信息,因此事先并不知道h的准确定义。学习问题就是选取合适的模型和算法,使得从这些样例集合S得到一个函数g,g称为期望函数。学习目标就是获取与h尽可能一致的期望函数g。一方面,显然样例个数越多,越可能接近这个函数;另一方面,如果没有所有的实例信息,仅凭不完整的部分信息,理论上是不可能确切地得到h。对于不同的任务,需要选择不同的学习模型,这样才能达到快速高效完成任务的目标。
机器学习是当前计算机领域发展十分迅速的内容,原来通过传统数学或者物理的方法难以解决的问题,借助机器学习的方法获得了突破性的进展。
三、归纳学习与PAC原则
学习模型的目标是从大量的数据中获取结论,或者更具体的是获取期望函数。因此从总体上讲,学习模型是一种归纳学习的方式,尽管有些技术采用了分析学习,但是绝大多数的应用是以归纳学习为主。这是学习模型的本质特征,仅从这一点就可以看出学习模型与物理模型和数学模型的不同。
从观察数据中获取结论,这种研究方式在古代就已有之。早期的人类主要是通过观察自然现象归纳总结出相应的认识,形成知识内容和科学体系。但是由于观察手段的简陋,数据量不足,只能从小数据中得到结论,这需要极大的智慧和运气,而且说服力不足,科学知识难以普及和应用。因此在历史的发展中,逐步被现代科学方法所边缘化。随着技术的进步,现在我们具备了大量获取数据的能力,无论是处理数据的能力还是分析数据的手段都有了过去无法想象的提升,从而通过归纳学习的方法再次进入人们的视野,通过这种焕然一新的古老方法开辟一条新的获取知识的途径。但是在现代科学的背景下,使用学习模型进行归纳学习需要回答以下的问题:
(1)从一个学习模型出发,有多大把握学习到期望函数?
(2)学到的期望函数与目标函数之间的误差是多少?
(3)学习复杂度是多少?
(4)至少需要多少数据才能达到学习目标?
(5)学习稳定性如何,即如果换一组数据是否还能学到相同性能的期望函数?
只有回答了这些问题,学习模型作为一种方法论才具备科学的基础,获取的结论才具有说服力。因此我们现在重提归纳学习,并不是回到过去那种需要凭借天才的猜测和联想的研究方法,而是在现代科学体系架构下的,经过严格证明和规范标准的新方法。这种方法与实验方法和推理方法都具有可重复性,可应用性和可检验性。
由于学习模型和机器学习的发展历史不长,现在还无法深入回答上面的5个问题,但是学习理论已经对这些问题做了很有意义的探索,至少对于其中的一部分有了较为清晰的答案。
学习模型的本质是归纳学习,通过部分数据获取结论,因此和所有归纳推理一样,理论上得到的结论只能是相对正确。为了准确刻画这种相对正确性,学习模型引入了一个很重要的原则,即可能近似正确(PAC,ProbablyApproximate Correct)。它的定义是16]:
设L是一个学习模型,如果对于任意给定的0<δ,ε<1,L能够以1—δ的概率获取期望函数g,g与目标函数h的误差不超过ε。则称L以PAC方式获取函数h。
PAC方式有两个不确定性,一个是获取结论的不确定,一个是结论本身的不确定。这与我们熟悉的物理学通过实验获取结论,或者数学通过推理获取结论有本质的区别。事实上,所有通过部分数据获取结论的归纳方法都具有PAC性质。PAC方式是一种新的认知世界的模式,它的不精确性可能不是缺点,反而是一个优点。对此舍恩伯格有精辟的论述:“当我们掌握了大量新型数据时,精确性就不那么重要了,我们同样可以掌握事情的发展趋势。大数据不仅让我们不再期待精确性,也让我们无法实现精确性。然而,除了一开始会与我们的直觉相矛盾之外,接受数据的不精确和不完美,我们反而能够更好地进行预测,也能够更好地理解这个世界。”从这段论述看出,无论采用确定的方式获取结论还是以PAC方式获取结论,都只是一个习惯问题,也许在大数据时代,我们需要逐步适应使用PAC方式来思考问题和解决问题,这也构成了计算思维的重要内容。PAC方式拓宽了人类获取知识的途径,丰富了我们的科学体系和文化内涵,并且与传统的确定方式共同组成了人类认知和理解世界的方法。
在上面关于PAC的定义中,δ和ε可以任意逼近0,当两者都等于0时,就是确定性的算法和结论。作为物理发现,要求δ和ε都非常小。对于一般地应用而言,不需要如此苛刻的条件。一些行业规定了产品要求或者企业管理的标准,基本上达到3σ就可以,也就是合格率(正确率)达到99.73%。就一般问题来说,达到2σ也能满足要求,即置信度为95%。因此可以根据实际问题来设置δ和ε,使其符合应用需要即可,这个性质刻画了学习模型的学习性能。
四、学习模型与大数据
学习模型分为许多类,每一类都有严格的结构定义和相应的算法描述。从方法论的角度,对于给定的任务,选择合适的学习模型和恰当的算法,使之能够完成学习任务。虽然这些模型和算法大多都有严格的证明和描述,但是学习模型的一个神奇之处就是当启动学习过程后,可能完全不知道最后学出来结果是什么。我们只能从模型输出结果来判断是否达到要求,但是无法获知其中的因果关系和逻辑关系。即使能够得到模型最终的参数,也无法得知这些参数究竟表示何种意义。就许多学习模型而言,相对于我们就是一个黑箱。一个典型的例子是AlphaGo,尽管其结构和算法都是人们事先给定的,但是在通过大量的训练之后,已经无法对它的行为进行预测。这种不确定性正是学习模型的特殊之处,也是区别于物理模型和数学模型的分野。
学习模型是通过大量的数据进行归纳来产生结论的,因此数据对于学习模型来说是根本性的。作为方法论的描述,对于数据采集、储存、清洗和处理都有很多理论和技术,也开发了一些工具。同时对于如何选择学习模型也有了一些准则和经验,这些都构成了学习模型方法论方面的内容,根据这些方法,人们可以根据任务要求,通过学习模型的建模和运行,达到解决问题的目标。比如说,下面这个定理就描述了对于具体的任务,需要多少数据就可以产生期望的结论:
定理(Blumer et al,1989):设X是实例的集合,S是样例的集合,h是目标函数,如果:
(1)S与X具有相同的分布;
(2)h是一个二分类函数;
(3)h在算法A的假设空间中;
那么,对于任意给定的δ和ε,当数据量N满足
由于篇幅限制,这里不讨论该定理的推导和一些符号的含义。另外前面提到的学习复杂度问题,学习稳定性问题,以及学习可靠性问题都是学习方法的理论基础,我们也不再讨论。只是说明,在一定条件下,对于通过学习模型得到期望的函数已经有了一些较为深刻的结果。比如该定理就明确指出为了完成学习任务所需要的数据量。这个量依赖于给定的精度要求δ和ε,并且与学习模型的假设空间的VC维数有关。尽管这些结果仍是初步的,但是足可以说明在大数据时代,人们对于学习模型和归纳学习的理解已经远远超越了古代,大数据学习是在现代科学的起点上发展这一古老的理论和技术。
学习模型表现出一些良好的性质,它是通过大数据来获取对于规律的认知;通过数据交互的方式,逐步加细认知精度;以及学习结果可以任意逼近需要的精度。相比于物理模型和数学模型,学习模型不需要精确分析或者实验室工作,建模成本较低或者可以分解成本。同时学习模型可以充分利用已有的案例和经验进行归纳,这在资源利用和解题思路上是合理的。最后,学习模型通过计算机运行,因此模型的可维护性好,修改模型也较为容易。
五、教学启示和结论
计算模型,特别是学习模型,为我们提供了新的认识世界和理解世界的方法。舍恩伯格认为,在大数据时代,这些新的分析工具和思路为我们提供了一系列新的视野和有用的预测,我们看到了很多以前不曾注意到的联系,还掌握了以前无法理解的复杂技术和社会动态。但最重要的是,通过探求“是什么”而不是“为什么”,关联关系帮助我们更好地了解了这个世界。关联关系很有用,不仅仅是因为它能为我们提供新的视角,而且提供的视角都很清晰。而我们一旦把因果关系考虑进来,这些视角就有可能被蒙蔽掉。关联关系是学习模型的精髓,正像因果关系之如物理模型,逻辑关系之如数学模型。因此从教学的角度也为我们提出了新的问题:
(1)正确把握计算思维的内涵和核心概念。上面的讨论可以看出,仅仅从方法论的角度,计算思维的内容已经具有了广泛的新颖性和特色性。而且对于我们认识社会和自然的观点与方法也带来深刻的启蒙。
(2)建立基于大数据的分析方法和认知手段。大数据给当今社会带来的影响仅是开始,今后会越来越深刻,而且将融入社会的方方面面,因此通过学习模型来处理问题,并且通晓它的基本原理和技术是十分必要的。
(3)克服对于物理模型和数学模型的依赖性,培养计算模型的意识和能力。加强学生在这方面的训练实有必要,特别是养成借助学习模型解决问题的能力。
(4)处理好应用能力与思维意识的关系,建立和养成PAC方式解决问题的习惯。革新思维意识,提升应用能力。通过对于计算模型的理解与学习,掌握好机器学习这一有效技术,从新的视角分析和解决复杂问题,培养真正的创新竞争力。
最后,我们提出三点作为本文的结论:
(1)计算思维不仅仅是对于已有方法和技术的诠释,更是蕴含新方法和新技术的丰富矿藏。通过学习模型来分析和解决问题就是一个广阔的崭新领域,由于机器学习本质上是通过观察来获取结论,获取的结论具有某些不确定性,这正是学习模型与物理模型和数学模型的不同之处,也是学习模型的引人入胜之处。正如舍恩伯格所说,这种不确定性不是表示学习模型不如物理模型和数学模型,而是说明大数据提供了一种新的认知世界的模式。
(2)学习模型并不排斥传统的物理学和数学的研究模式,相反,学习模型建立的关联关系可以为因果关系和逻辑关系的研究提供佐证和启示。巴拉巴西(Albert-Laszlo Barabfisi)在《爆发:大数据时代预见未来的新思维》一书中,对此有深刻的阐述:“关联关系分析本身意义重大,同时它也为研究因果关系奠定了基础。通过找出可能相关的事物,我们可以在此基础上进行进一步的因果关系分析,如果存在因果关系的话,我们再进一步找出原因。这种便捷的机制通过严格的实验降低了因果分析的成本。我们也可以从相互联系中找到一些重要的变量,这些变量可以用到验证因果关系的实验。”
(3)因此在教学上,要通过案例引导学生关注大数据给我们带来的影响,这种影响不仅表现在一些日常行为分析、商品推销、服务推送方面,更重要的是表现在对于世界认识的方法和手段。这些内容极大地开拓了理解世界和考虑问题的思维空间,可以解决以前无法解决的问题,达到以前无法想象的新的技术高度。就像汽车自动驾驶、语音识别技术、AlphaGo给我们带来的震撼一样。
[责任编辑:余大品]