用设计师能理解的语言
来解释AIGC中的技术名词
“AIGC 属于跨学科的产物,涉及领域众多,包括高等数学、统计学、计算机图形图像学、机器学习等各个领域。AIGC 设计软件的界面上往往会涉及到许多这些领域的技术术语。要想搞清楚它们背后的知识体系需要展开的知识树体量十分庞大繁杂。术业有专攻,我们无法全面俱到地在每一个领域都做到精通,但又需要了解到一定的程度,以便更好地使用 AIGC 的相关软件。所以,我们将尽量以设计行业从业者能理解的语言来解释那些经常遇到无法绕开的技术术语。
机器学习、深度学习与神经网络
机器学习
机器学习(ML,Machine Learning)是人工智能领域和计算机科学领域的一个重要分支。机器学习是一门多领域交叉学科,涉及统计学、数据分析、概率论、计算机科学等多门学科,它的目标是通过研究利用数据和算法来模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断地改善自身的性能。简单点说,机器学习的目的是让机器如何像人的大脑那样去学习,它是使计算机具有智能的基础。
“计算机科学之父”、 “人工智能之父”艾伦·麦席森·图灵(Alan Mathison Turing )在 1950 所写的一篇可以称得上是“人工智能开山之作”的文章《计算机器与智能》中提出了图灵测试。在这个测试中他提出了一个概念性的问题“机器能思考吗?” 从而引申出了机器学习的概念。见图2。
图1:艾伦·麦席森·图灵 Alan Mathison Turing
图2:1950年10月,图灵发表在《MIND》期刊上的《Computing machinery and intelligence》
“机器学习之父”、计算机游戏的先驱阿瑟·萨缪尔 Arthur Samuel 则被认为创造了“机器学习”这一术语,他一直致力于利用西洋跳棋博弈进行机器学习的研究。1952年萨缪尔在 IBM 701 计算机上开发出了自主学习型的跳棋程序。之后的1956年2月24日,萨缪尔的下棋程序和人类的西洋跳棋冠军进行公开对抗,比赛通过电视进行了实况转播,人类棋手最终输给了电脑。自此“机器学习”这一概念得到了初步的确立与普及。虽然这在今天的人工智能水平来看简直是小儿科的事情,但在人工智能领域这件事被认为具有里程碑式的意义。
图3:阿瑟·萨缪尔 Arthur Samuel
这便是机器学习最早的案例。萨缪尔说:“我们做了很多努力,并最终都验证了这样一个事实,计算机可以被编程来学会怎样玩跳棋游戏,并比编写程序的人玩得更好”。这带来的意义是,机器学习可以产生超越人类智力的能力。可想而知,这样的超越也可以发生在人类社会的其他领域!
深度学习
深度学习(DL,Deep Learning)是机器学习领域中一个新的研究方向。它是基于人工神经网络 Artificial neural networks (ANNs)来模拟人类智能、解释数据、分类数据、发现潜在规律等的能力。利用神经网络来进行运算是深度学习的核心也是它脱胎于机器学习的核心。同样是学习,深度学习则可以学习到事物背后的抽象规律,从而可以处理更形而上的问题,比如NLP自然语言处理、CV计算机图像领域、自动驾驶、医学影像分析等领域。
从概念上来看,即使深度学习是机器学习的子集,但两者却有着明显的区别。其中最核心的区别是,神经网络可以在没有人类干预的情况下自主学习和改进。它直接从通常以亿为单位的数量级的数据中学习特性,使其更适合大型数据集和复杂的、形而上的逻辑学习。然而,在传统的机器学习中,特性和规则是人类手动输入给计算机的,它只能适合偏低级别的数据量学习。见图4。
图4:机器学习与深度学习在不同的处理数据量级中的表现
传统的机器学习算法,追求的是利用机器模仿人类的思考逻辑,所以在低数据量和低维度的情况下占据了优势,可以说还尚未脱离人类智力逻辑思考的极限。可以形象地理解为,在计算机处于智力发育早期尚有它的“父母”人类帮助的情况下,它对世界的理解很多是需要“父母”的知识灌输。这一阶段是可以应对一些家门口街坊邻居的简单的问题。而深度学习就类似具有哲学大师潜质的天才少年,他并不能在家门口面对家长里短的问题时施展出类拔萃的潜质。而随着数据处理规模和维度的增加,深度学习的自学能力便得到充分地发挥,在更广阔的天地里得到了长足的施展。但这样的比喻也预示着,深度学习需要艰苦的大量的预训练的。这也导致了传统的机器学习可以在低端机器上运行,而深度学习算法则在很大程度上依赖于 GPU,因为深度学习算法本质上是做大量的矩阵乘法运算,而使用 GPU 可以有效地优化这些运算过程。
另一个最大的区别是,可解释性。深度学习最优秀的地方就是它的表现往往超出了人类的期盼,但人类却只清楚它的大体组成结构和学习过程,而不知道它如此优秀的具体一条一条的演算过程是什么,下面两段内容可以很好地解释这个“可解释性”的问题。
深度学习的核心是人工神经网络,虽然我们知道每一个人工神经元与人脑中的神经元可以一一对应,甚至可以用公式和数值去描述来解释运算逻辑。但我们仍然无法知道大脑中几百上千亿个神经元组成的超级复杂的数以万亿级的神经网络中具体的电信号是怎样一条一条传播的,从而导致大脑能看懂眼前的物体是一只猫或是一只狗。但我们却知道一个儿童之所以能分辨一只猫和一只狗是因为曾经被父母训练过。
过往在机器学习阶段,人类总是试图用计算机的每一个运算细节都去对应人类大脑中的每一个神经元链接的运算细节,形成公式和数据的具体表达。而如此机械地去试图解析万亿数量级的事情,本身就不现实。在这一问题上,在机器学习走入死胡同之后,以训练学习为核心的深度学习迎来了解决问题的曙光。
深度学习的人工神经网络需要靠训练来完成。人工神经网络中有若干的中间隐藏层,在隐藏层中,技术人员无法知道其中的具体逻辑,但却可以通过调整神经网络的结构和神经元节点的权重来完善训练。训练过后,达到满意的结果,就意味着这个神经网络的模型诞生了。于是,当日后使用这个模型时,便可以通过文字、语音或图像的输入达到自己想要的输出结果了。这也意味着我们把深度学习的神经网络当做一个有生命的整体来看待,就像一个美术学员,既然我们也无法了解这个学员大脑中的神经网络是怎么具体运算的,我们通常的做法就是通过成体系的培训以及给他赏析大量的艺术作品,然后再检查这个学员的阶段性学习成果,来确定他是否学习到位,这便是训练的过程。人们放弃了对深度学习的中间环节所产生逻辑的可解释性,获得了深度学习带来的震撼结果。这种放弃可解释性的智慧,是人类从机器学习到深度学习的一个巨大进步。
深度学习的人工神经网络需要靠训练来完成。人工神经网络中有若干的中间隐藏层,在隐藏层中,技术人员无法知道其中的具体逻辑,但却可以通过调整神经网络的结构和神经元节点的权重来完善训练。训练过后,达到满意的结果,就意味着这个神经网络的模型诞生了。于是,当日后使用这个模型时,便可以通过文字、语音或图像的输入达到自己想要的输出结果了。这也意味着我们把深度学习的神经网络当做一个有生命的整体来看待,就像一个美术学员,既然我们也无法了解这个学员大脑中的神经网络是怎么具体运算的,我们通常的做法就是通过成体系的培训以及给他赏析大量的艺术作品,然后再检查这个学员的阶段性学习成果,来确定他是否学习到位,这便是训练的过程。人们放弃了对深度学习的中间环节所产生逻辑的可解释性,获得了深度学习带来的震撼结果。 这种放弃可解释性的智慧,是人类从机器学习到深度学习的一个巨大进步。
这便是深度学习的“不可解释性”,这种“不可解释性”也导致了深度学习在形而上的概念理解领域具有高度的总结概括能力,并且具有了艺术创作的能力,于是很适合在AIGC领域的应用。
在图灵的《计算机器与智能》一文中,他完全搁置了机器通过怎样的运作原理来达到智能的问题,而对于机器的智能表现提出了重要的关注度。对此,图灵解释说,因为类似人类这样的智慧生物其智慧产生的内在运作逻辑仍然处于未知状态,所以我们衡量智力的唯一手段应是其外部的行为表现。图灵测试则是对这一理念的完美诠释(见图5)。该测试并不要求机器与人类的所有思考过程都保持一致、所有行为都保持一致,而是要求机器的某项外在表现类似人类即可。
图灵测试关注的重点是表现,而不是过程。像 GPT-3 这样的语言对话生成模型之所以被认定为人工智能,是因为它生成的文本与人类生成的文本相似,而不是因为它们运算的方式与人类思考的方式相似。这也就是深度学习和机器学习的不同诉求。前者重点诉求结果,后者重点是诉求过程。诉求过程让人类陷入亿万条互相牵制的代码之中,而诉求结果则让人类迅速来到了把机器送到人工智能阶段的历史转折点上。(当然,不可解释性,也是人类内心深处对人工智能尤其是深度学习后的人工智能产生恐惧的原因之一。)
图5:图灵测试示意图
1956年,计算机科学家约翰·麦卡锡(John McCarthy)提出的“人工智能”概念“(AI,Artificial Intelligence)在美国的达特茅斯大学举办的研讨会上被讨论然后得以确立,并且他还提出了将“人工智能”定义为“能够执行具有人类智能特征的任务的机器”。自那时起,图灵和麦卡锡对人工智能的评估就成为了业界的基准,将 “智能”的重点确立在了它的表现上,而非这个术语背后意味着的逻辑计算细节。
过往,计算机基于精确代码运行了几十年,计算机生成的内容给人以一种刻板僵化,缺乏灵动,无自主创意、毫无灵魂可言的冷酷的机器印象。代码程序可以协调组织大量的数据并执行复杂的运算,但却不能识别简单物体的图像,哪怕是一只猫一只狗。当你给它输入不准确的模糊的信息时,它更无从应对了。彼时,肉身的有情感的人类,一方面在开发着计算机,另一方面却站在了不切实际的一面,即要求计算机提供灵感与情绪。直到近几年,计算领域尤其是深度学习领域的高速进展缔造了令人惊讶的颠覆性的效果。这些人工智能已经在某些领域与人类不相上下,甚至超过了人类。人们才发现,人工智能是可以在某一天演化出情感与灵魂出来的,而这一天应该不会太远了。
图6:在电影《银翼杀手2049》中人类的男主爱上了人工智能生成的女主
神经网络
神经网络,或称为人工神经网络,Artificial neural networks (ANNs),或称为模拟神经网络,Simulated neural networks (SNNs),它是一种模仿人类大脑中神经网络结构和功能的计算模型。人工神经网络由大量的人工“神经元”组成,每个神经元都是对大脑中的神经元细胞的模仿。见图7。
图7:人工神经网络中的“神经元”模拟人类大脑中的神经元
人工“神经元”可以按不同的连接方式构建不同的神经网络,目前已有40多种类型。人工神经网络由若干层组成,包含一个输入层,一个或多个隐藏层,和一个输出层。每层之中由若干神经元节点组成。每个节点链接到下一个层中的另一个或多个节点,并具有相关的信号传递权重和阈值。如果任何单个节点产生高于指定的阈值的数值,则激活该节点,将数据发送到网络的下一层的节点,否则,将不会发送。拥有三个层的神经网络算是一个最基本的神经网络了,它包括一个输入层一个输出层,和两者之间夹住的一个隐藏层。深度学习中的“深度”两个字就是指神经网络中的隐藏层的层数, 隐藏层的层数越多,则代表“深度”越深。见图8。
图8:人工神经网络的组成结构
所谓训练,就是通过大量样本数据来训练神经网络,并随着迭代次数的增加,以改善各个节点权重和阈值,最终帮助提高它们的准确性。一旦对学习算法进行微调成功,它们就会成为强大的人工智能工具,因为它们能够非常快速地对复杂的大量的数据诸如语音、图像进行分类和识别和处理。
这里有一份神经网络的图谱,它列出了29种主要的神经网络结构图(图9 出自荷兰的一家研究机构阿西莫夫研究所的研究员 Fjodor van Veen 之手)。我们在之后的文章中将给与详细地讲解。
图9:29种神经网络的拓扑图
让我们用一幅图像输入给神经网络,来解释一下神经网络的大致运作过程。图10 中是一个 28*28 像素的图片,其中手写体的数字为白色像素,周边有一些过渡的灰色像素,笔画没有书写到的部分是纯黑色像素。整幅图片可以通过识别像素的颜色数值,确切地说是灰度数值,来形成 28*28 的数字矩阵,总共 784 个点位,每个点位一个颜色数值。
图10:图像用数字来表达并输入给神经网络
然后把这些点位数值输入给人工神经网络。下面这个不太规范的手写数字“9”又有点像“4”,那么它是如何被神经网络识别的呢?首先把每一行 28 个点位以及对应的颜色数值横向串联成为一个 784 维的数据集。然后再输入给神经网络的最左侧的第一层(输入层)。很明显,这个输入层应该有 784 个输入点位,从上至下逐一地输入这 784 个点位数值。
图11:一个28*28像素的手写数字图像变换成784维的数据集输入给神经网络
这个输入层的任务就是把初始的数据进行识别,每个点位对应一个神经元,其像素的颜色值通过神经元的一个公式计算得到的结果超过了阈值就为1,没有超过就为0 (这里先假设一个最简单的公式,像素色值超过0.4,函数的计算结果就为1,否则就为0。在实际的执行中,这个公式往往要复杂很多、颗粒度也细致很多) ,然后经过连接两个神经元的边(这个边称为“连接”,“连接”有不同的权重,被称为“权值”)再传递给下一层。见图12。