新知一下
海量新知
5 9 8 1 3 9 5

深度学习的热与冷~

嵌入式资讯精选 | 嵌入式工程师的良师益友 2021/11/26 12:28

本文作者: 何为民,何铮,周娜

1 编程智力向学习智力的进化

人工智能 AI(Artificial Intelligence) 近十年来随着微电子技术、计算机技术、检测技术和能源技术的发展,已获得了长足的进步。如图 1 所示,从传统物联网的物物互联进化到借助各种信息云、工业互联网的人群与万物的信息交流的时代,人工智能也从原始的程序控制,借助于云平台及互联网发展到大数据分析,进而进入机器学习及深度学习阶段。

在人工智能的程序控制及大数据分析时代,机器只能依照人的经验及大数据统计规律在程序编排下辅助人的工作。人们不满足已有的知识,希望机器能模仿人的思维,创新而逐步替代人的工作,而且比人做得更好,开始从编程智力向学习智力进化发展。人工智能就开始进入到机器学习时代。让机器棋手战胜人类棋手,让 L0 L2 的辅助驾驶转向 L3 L5 无人驾驶,就是其中最主要的代表。人工智能的进化图如图 1 所示。

新知达人, 深度学习的热与冷~

1 人工智能的进化

让机器摸拟人的思维,用机器大脑去学习、分析、预测、肯定或修改,控制机器以完成人们所能完成或不能完成的工作,可见人工智能的核心是机器学习。

当物联网成为工业互联网的末端、人群和万物连接时,人工智能从信息安全、能耗与反应速度来说,要求尽可能用嵌入式系统,采用边缘计算,用嵌入式微处理器来解决。机器学习成为嵌入式系统应用的一个新兴领域。

机器学习是研究如何使用计算机器模拟人类学习活动的一门学科,它是研究机器获取新知识和新技能并识别现有知识的学问。它通过经验自动改进计算机算法,用数据或以往的经验优化计算机程序的性能标准。如在不断的对弈中改善棋艺,在应用中不断地提高能力,一段时间之后,设计者本人也不知它的能力到了何种水平。

机器学习系统的基本结构分为环境、知识库和执行部分。环境向系统的学习部分提供信息,这些信息往往是不完全的,学习系统据此所进行的推理不完全是可靠的,总结出来的规则要通过执行效果加以检验。正确的规则能使系统的效能提高,应予保留;不正确的规则应予修改或从知识库中删除。执行部分是整个学习系统的核心,因为执行部分的动作就是学习部分力求改进的动作。每一个学习系统都要求具有某些知识理解环境提供的信息,分析比较,做出假设,检验并修改这些假设,因此,更确切地说,学习系统是对现有知识的扩展和改进。

2 有关深度学习

机器学习经历了近 70 年的发展,已进入了稳步成长的成熟期。机器学习已有了很多模型、策略、标准算法等。其中模拟神经网络学习是较成功的一种学习方法,称为“深度学习”。

(1) 神经网络架构

人的大脑是由神经元组成的神经网络。按照神经网络构建算法模型和计算架构。按照算法模型从已经有的信息通过计算、判断、推理而后得到一个认知,这个过程称为“学习”。幼儿简单的逻辑推理为浅度学习,而成人的不断训练的学习就称为深度学习。由于人脑工作的复杂性,模拟人脑的各神经网络也有多种结构、算法虽不同,但它们都有以下共性:深度学习就是对一个概念的了解、消化和解释。“了解”就是“输入信息”,如图 2 所示,采集的各种原始信息 X1 X2 X3 、…、 Xn 。“消化”就是“处理信息”,将输入经过交互处理信息。“解释”就是“输出信息”或形成下一层的输入信息,再综合信息得到输出。

当解释不满足要求时,就必须将上一层输出当作输入,并增加输入量,再次消化处理信息,这样就形成了深度学习的层。人脑神经网络的一个神经元会动态随机地同其他的神经元建立联系

多层神经网络具有优秀的特征学习能力,能够学习到数据更本质的特征,可通过逐层预训练的方式解决深度神经网络难以获得全局最优解的问题。对复杂的问题需多层消化处理,就像新棋手,只能看一步、两步成“常败将军”,慢慢能看三步、四步,甚至能看七步、八步,这时的输出就能成“常胜将军”,像“酒店客房内有人 / 无人”的一个最简单的议题。在浅度学习的初级人工智能中,几种传感器输入的量 ( 门开关、移动红外等 ) 只有几层的神经网络计算,尽管结果都貌似成功,但实用价值不大。深度学习过程如图 2 所示。

新知达人, 深度学习的热与冷~

2 深度学习过程

这种仅三、五个输入,一、两层的神经网络学习,我们只能称之为浅度学习,而达到几十个以上,六、七层以上的神经网络学习才能称为真正的深度学习。曾经战胜过人类的“棋手 AlphaGo ”的策略网络是 13 层,每一层的神经元数量为 192 个。

(2) 深度学习的三项指标

深度学习就是用多层次的分析和计算手段得到结果的一种方法。这种方法有三项指标:

①每一层神经元的数量,或第一层的输入数量。深度学习第一层的输入数量反映信息的采集量 Xn ,每一层的神经元数量越多也就是深度学习考虑的因素越多,不再是抽象、标准化的几种,而是尽可能自然化地收集全。当然神经元越多,学习计算的工作量会呈几何级数增加。

②学习网络的层数和每层添加的输入量。人类的认识不是一蹴而就,而是层层深入。深度学习也是这样,题目越复杂,需要输入的信息就越多,不能一次求解,需要分“层”,每层视外界的各种可能反应、运算思索再增加新的输入量进入下一层。这就像下棋,想的步数 ( ) 越多,棋手的段数越高。

③学习训练的累计时间。在深度学习中,难度最大的是非标准的随机量的影响。这些随机量是时间函数,就像人的成长,挫折会随机出现,只有经历了某种挫折,才能学得应对这种挫折的方法。

在自动驾驶中, L1 L2 是对标准 ( 交通、路况、障碍、危险等 ) 的学习,而到 L4 L5 则需增加很多非标事件、不可预知事件 ( 肇事车撞你、极端天气下交通路牌的缺失、空降物体等 ) 的学习,这种不可预见事件的随机发生,就像人的成熟,只有等待学习时间的积累,才能有大量的训练数据。

3 深度学习的冷思考

随着深度学习的输入和层数增多,计算的工作量呈指数性增长,当前的算力已承受不了,所以当前的深度学习解决得较好的只是一些专门的问题,顶尖技术的 AlphaGo 战胜了所有棋手,但不能识別两个女生谁更漂亮。

(1) 深度学习的技术成熟度

2020 7 月, Gartner 公司发布的全球《 2020 人工智能技术成熟度曲线》 ( 如图 3 所示 ) 表明,自从 2006 Hinton 等提出快速计算受限玻耳兹曼机 (RBM) 网络权值及偏差的 CD K 算法以后, RBM 就成了增加神经网络深度的有力工具,导致后面使用广泛的 DBN( Hinton 等开发并已被微软等公司用于语音识别中 ) 等深度网络的出现。与此同时,稀疏编码等由于能自动从数据中提取特征也被应用于深度学习中。让深度学习正处于扩张膨胀期,各种神经网络涌现用于深度计算,如深度学习中不仅有卷积神经网络 (Convolutional Neural Network CNN) 、深度玻尔兹曼机 (Deep Boltzmann Machines DBM) 等,又出现了 dropout Batch Normalization 以及 ResNet 等优秀的结构,并在无人自动驾驶等领域试用。在嵌入式系统的机器学习应用中,开始线下图像识别、自然语音处理、路口红绿灯控制、发热、口罩检测等场景尝试应用。这些应用都尚在研究、模拟、测试阶段,在应用中碰到大量实际问题,尤其是嵌入式系统的机器学习。对于技术研究人员来说,越是大家在热议、炒作深度计算时,越是要冷静。如图 3 所示,当前,深度学习正处于膨胀期的末端,正向冷静期的谷底进发。

新知达人, 深度学习的热与冷~

3 深度学习的成熟度曲线

(2) 热度下降进入冷静期源于三大制约因素

①深度学习的基础是算力。当前深度计算都依赖超级计算机、云计算及集成计算。 1997 6 月, IBM 人机大战的深蓝计算机在世界超级电脑中排名第 259 位,计算能力为每秒 113.8 亿次浮点运算。汽车生产商、自动驾驶公司特斯拉正式推出自研的超级计算机 Dojo! 这套超算平台将要用于特斯拉自动驾驶神经网络的训练。这台计算机群采用了 5 760 个算力为 321 TFLOPS 的英伟达 A100 显卡,组成了 720 个节点,总算力突破了 1.8 EFLOPS 10 PB 的存储空间 ( 读写速度为 1.6 TBps) 。根据计算能力,这台超级计算机世界排名为第 5 名。目前世界排名第一的超算是日本的“富岳”,使用的是定制的 ARM A64FXCPU ,具有 158 976 个连接点、 4.85 PB 总运行内存、 163 PB/s 内存带宽、 15.9 PB NVMeL1 存储。

目前,嵌入式处理器的算力距真正能完成深度学习的算力还差了很远。现在应运而出的单芯多核 ARM 处理器 (Chip multi processor) 正在急剧发展。单芯多核 ARM 处理器内含 CPU GPU DPU 等多核并行处理器,内部采用高速多核互联传输,采用嵌入式多核操作系统,在一些 AI 神经网络计算中得到应用,而在图像处理、语音识别应用中则采用了专用芯片,前进的道路仍很艰辛。

②深度学习需要时间积累 ( 学习的过程 ) 。深度学习要学习应对的不再是标准输入和已知状况,而是非标准输入及不可预见的突发状态,这是不以人意志为转移的时间随机函数,这个深度就需要时间的积累。所以马斯克曾宣称在 2018 年推出自动驾驶系统,而后推迟到 2019 年,但直至今日仍未公开上线。华为 ADS 智能驾驶产品线总裁兼首席架构师苏箐则直言这个行业在未来 5~10 年是危险期, L5 自动驾驶也许这辈子都看不到。

③深度学习的伦理和社会责任。人工智能既然让机器模拟人类并融入人类社会,它就具有了社会属性 ( 伦理和社会责任 ) ,不再是追求纯机器的“最佳算法”,而必须将人类的伦理和社会责任作为深度学习的输入条件而融入到它的深度学习决策论中。像几百年来传统的道德博弈题,前面是母亲,左面是妻子,右面是孩子,无人驾驶出事故的汽车应当如何决策,向哪边撞 ? 而且伦理和社会责任不是一成不变的,在不同的时间、不同的地区、不同的人群会有不同的认定。

深度学习的人工智能不可避免地会误伤人类、融入战争,如何判断敌、我、友和“好人”、“坏人” ? 机器情绪如何影响深度学习的决策 ? 深度学习是否要设置安全阀这种疑问都是摆在我们面前的课题。

更多“深度学习”相关内容

更多“深度学习”相关内容

新知精选

更多新知精选