【云驻共创】深度学习导论及行业应用 2023CANN训练营第二季

举报
林欣 发表于 2024/01/14 22:21:36 2024/01/14
【摘要】 本文主要介绍了以下5点 1. 深度学习的背景 2. 基础模型:多层感知机、卷积神经网络、反馈神经网络、转换器 3. 典型应用:视觉、听觉、自然语言、医疗、自动驾驶、娱乐 4. 对抗攻击:隐身衣、隐身板 5. 脑启发的模型:同层反馈,自上而下的反馈

一、深度学习的起源

深度学习的发展历程可以追溯到1943年,当时心理学家麦卡洛克和数学逻辑学家皮茨发表论文《神经活动中内在思想的逻辑演算》,提出了MP模型,这标志着神经网络的开端。在随后的几十年中,深度学习经历了多次起伏。如下图所示

image.png

1958年,Rosenblatt发明了感知器(perceptron)算法,该方法被证明为能够收敛,理论与实践效果引起第一次神经网络的浪潮。然而,Minsky证明了单层感知器只能处理线性分类问题,这导致了第一次低潮。

1962年,感知器算法被证明为能够收敛,这再次引发了神经网络的热潮。然而,Minsky证明了单层感知器只能处理线性分类问题,这导致了第二次低潮。

1980年代,多层感知器解决了单层感知器的问题,但是对其网络参数的计算问题却成为了一个难点。直到1986年反向传播算法的提出解决了对少数层神经网络训练的问题,这个时候也就迎来了第二次高潮。

第三次发展浪潮始于2006年,以人工神经网络(Artificial Neural Network)的扩展和应用为基础,这次浪潮的出现标志着深度学习时代的来临。这一阶段的研究主要集中在如何提高深度神经网络的性能和泛化能力上。SVM作为一种经典的机器学习算法,在分类问题上表现出了良好的性能。

随着深度学习的不断发展,其应用领域也在不断扩大。深度学习已经成为了许多领域的重要工具,例如自然语言处理、计算机视觉、语音识别和医疗诊断等。尽管深度学习还面临着一些挑战和问题,但随着技术的不断进步和应用场景的不断拓展,相信深度学习将继续发挥重要作用并取得更多突破。

二、当代深度学习大事件

2.1 在围棋方面战胜人类

  • 欧洲围棋冠军樊麾在2015年10月与 AlphaGo 进行了一场对弈,这是电脑首次战胜围棋职业棋手。
  • AlphaGo 又在 2016 年与围棋世界冠军李世石的对弈中以 4:1 的总比分获胜
  • 2016年末2017年初,在中国棋类网站上,以Master为注册账号与中日韩你数十位围棋高手进行快棋对决,连续60局无一败绩

image.png

2.2 ChatGPT

ChatGPT是一种基于自然语言处理技术的聊天机器人程序,它由美国OpenAI公司研发,于2022年11月30日发布。ChatGPT通过在大量的文本数据上进行训练,可以自动生成语言文本、回答问题、翻译语言等等,具备强大的自然语言处理能力。

ChatGPT的厉害之处在于它能够像人类一样与用户进行交流。相较于传统AI助手,ChatGPT的回答要棒很多,尤其在一些主观的问题上,你去问它,有时候回答的比人还要好。

image.png

2.3 无人驾驶

  • 2005年斯坦福无人车在DARPA比赛中夺冠(在沙漠里自动形式了131英里)
    image.png

  • 现在部分自动驾驶汽车已开始商用
    image.png

三、基础模型

3.1 多层感知机(MLP)

image.png

多层感知机(MLP)是一种前馈人工神经网络,也被称为多层感知器。它是一个多层的结构,每一层都由多个神经元组成,前一层的输出作为下一层的输入。MLP可以用于分类、回归、预测等任务,并能够解决非线性问题,如图像识别、自然语言处理等。MLP结构简单、易于实现,因此在机器学习和人工智能领域被广泛应用。

MLP至少有三层人工神经元,包括输入层、隐藏层和输出层。输入层由简单的输入人工神经元构成,每个输入神经元至少连接一个隐藏层的人工神经元。隐藏层表示潜在的变量,其输入和输出都不会出现在训练集中。在MLP中,层与层之间是全连接的,即每一层的每一个神经元都与下一层的每一个神经元相连。

MLP的训练过程包括前向传播和误差反向传播两个阶段。在前向传播阶段,输入层的数值被逐层传递至输出层,每层神经元会对上一层的输入进行加权求和,并通过激活函数进行非线性变换。在误差反向传播阶段,误差从输出层传递至输入层,并按照权重进行分配,根据分配的误差来更新权重。这个过程反复迭代,直到损失函数的值达到最小。

多层感知机是一种人工神经网络,通过多层神经元的相互作用和信息的逐层传递,实现各种复杂的计算和分类任务。

3.2 卷积神经网络(CNN)

image.png

卷积神经网络(Convolutional Neural Network,CNN)是一种特殊的神经网络,主要用于处理具有类似网格结构的数据,例如图像、语音信号等。CNN通过采用局部连接和共享权重的策略,降低了权重的数量,减少了参数的冗余,并能够自动提取输入数据的局部特征。

CNN主要由输入层、卷积层、池化层、全连接层等部分组成。卷积层是CNN的核心部分,它们通过卷积运算对输入数据进行逐点乘积累加的操作,从而提取出输入数据中的特征。池化层则用于降低数据的维度,减少计算量和过拟合,同时保留关键信息。全连接层则用于将提取的特征组合起来,进行最终的分类或回归任务。

CNN的训练方法主要包括前向传播、反向传播和梯度下降等算法。在前向传播阶段,输入数据通过卷积层和池化层的处理,逐步提取出特征并生成输出。在反向传播阶段,根据输出与真实值之间的误差,通过梯度下降算法更新权重和偏置项,逐步减小误差并提高模型的准确率。

卷积神经网络在许多领域都取得了显著的成果,例如图像分类、目标检测、人脸识别、自然语言处理等。由于其优秀的特征提取能力和强大的泛化能力,CNN已经成为深度学习领域中应用最广泛的神经网络之一。

3.3 反馈神经网络(RNN)

image.png

反馈神经网络(Recurrent Neural Network,RNN)是一种特殊的神经网络,它具有反馈连接,能够将前一时刻的输出作为当前时刻的输入。这种结构使得RNN能够处理序列数据,并具有记忆性,能够捕捉序列中的长期依赖关系。

RNN主要由输入层、隐藏层和输出层组成。输入层负责接收外部输入的数据,隐藏层通过与前一时刻的输出进行连接,将历史信息传递给当前时刻,使得RNN能够利用历史信息来影响当前的输出。输出层则根据隐藏层的输出生成最终的输出结果。

RNN的训练方法主要包括前向传播、反向传播和递归神经网络等算法。在前向传播阶段,输入数据通过RNN的各层处理,逐步生成输出结果。在反向传播阶段,根据输出与真实值之间的误差,通过梯度下降算法更新权重和偏置项,逐步减小误差并提高模型的准确率。

由于RNN具有处理序列数据的能力,它在许多领域都有广泛的应用,例如语音识别、自然语言处理、时间序列预测等。然而,RNN也存在一些问题,例如梯度消失和长期依赖关系的学习困难等。为了解决这些问题,研究者们提出了许多改进的RNN模型,如长短时记忆网络(LSTM)、门控循环单元(GRU)等。

3.4 转换器(Transformer)

image.png

转换器(Transformer)是一种基于自注意力机制的神经网络模型,最初被提出用于解决机器翻译的序列到序列问题。由于其优秀的性能和广泛的应用场景,Transformer已经成为了深度学习领域中的一种重要模型。

与传统的循环神经网络(RNN)和卷积神经网络(CNN)不同,Transformer不依赖于序列数据的时间顺序,而是通过自注意力机制来捕捉输入序列中的长距离依赖关系。这种机制使得Transformer能够并行地处理输入数据,提高了训练速度和模型的表达能力。

Transformer主要由输入编码器和输出解码器组成,这些编码器和解码器之间由若干个自注意力层连接。这些层使用注意力机制来计算输入和输出之间的关系,从而允许Transformer模型并行地处理序列。在机器翻译任务中,输入编码器将源语言句子编码为固定长度的向量,输出解码器则将这些向量解码为目标语言的句子。

除了在自然语言处理领域的应用外,Transformer也被广泛应用于计算机视觉和语音处理等领域。例如,Vision Transformer(ViT)使用Transformer进行图像分类,DERT使用Transformer进行物体检测和分割。

总的来说,转换器(Transformer)是一种基于自注意力机制的神经网络模型,它通过捕捉输入数据中的长距离依赖关系,实现了高效的序列到序列处理。

顺带介绍一下,ChatGPT就是一种基于 Transformer 的自然语言处理技术,它使用大规模的语料库和预训练技术进行训练,以提高模型的语言理解和生成能力。具体来说,ChatGPT使用了一种基于Transformer架构的模型,其中包括编码器和解码器两部分。编码器将输入文本转换为高维向量空间中的表示形式,解码器则将这些向量转换为新的词汇序列。在训练过程中,ChatGPT通过不断地学习和调整模型参数,实现了对自然语言文本的理解、生成和对话等任务。

与传统的循环神经网络(RNN)和卷积神经网络(CNN)相比,Transformer不需要考虑输入序列的顺序,因此可以并行处理输入序列,提高了训练速度和模型的表达能力。同时,ChatGPT还采用了大量的文本数据进行训练,并将其转化为高维向量空间中的表示形式,从而实现对语言文本的表征和预测。

ChatGPT基于Transformer的自然语言处理技术,通过大规模的语料库和预训练技术进行训练,实现了高效的自然语言处理任务。

3.5 小结

现代的深度学习模型通常是由多种基础模型组合而成的。这些基础模型提供了强大的特征表示和学习能力,可以用于解决各种复杂的任务。

例如,生成式对话系统通常会结合多层感知机(MLP)和转换器(Transformer)进行构建。MLP可以用于提取输入对话的语义特征,而Transformer则可以用于生成高质量的回复。通过将这两种模型结合使用,可以构建出高性能的生成式对话系统。

再比如,计算机视觉领域中的目标检测和图像分类任务,通常会结合卷积神经网络(CNN)和反馈神经网络(RNN)进行实现。CNN可以用于提取图像中的特征,而RNN则可以用于处理序列数据,如文本描述或时间序列数据等。通过将这两种模型结合使用,可以实现高性能的目标检测和图像分类任务。

此外,现代深度学习模型还经常使用集成学习、迁移学习等技术,以进一步提高模型的性能和泛化能力。这些技术可以通过将多个基础模型组合在一起,形成一个更加复杂的模型结构,以适应不同任务和场景的需求。

四、典型应用

2006年深度学习在学术界受到了广泛关注,但在企业界的应用相对较少。随着技术的不断发展和进步,深度学习逐渐被应用于企业界,并取得了显著的成功和商业价值。

从2012年开始,深度学习在企业界的应用开始加速发展。许多大型科技公司开始将深度学习应用于语音识别、图像分类、自然语言处理等领域,并取得了突破性的进展。这些成功的应用案例进一步推动了深度学习在企业界的发展,越来越多的企业开始投入资源进行深度学习的研究和应用。

深度学习的用途非常广泛,如下图

image.png

4.1 物体分类

4.1.1 一般物体分类

image.png

CIFAR和ILSVRC2012等数据集是计算机视觉领域中常用的数据集,用于训练各种图像分类和识别模型。这些数据集具有各自的特点和挑战,被广泛应用于深度学习和计算机视觉算法的研究和开发。

CIFAR数据集由Alex Krizhevsky、Vinod Nair和Geoffrey Hinton等人收集而来,分为CIFAR-10和CIFAR-100两个版本。CIFAR-10包含10个类别的60000张32x32彩色图像,其中50000张用于训练,10000张用于测试。CIFAR-100包含100个类别的60000张32x32彩色图像,将图片分得更细,对神经网络图像识别是更大的挑战了。这些类别中的图像示例包括飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船、卡车等。

ILSVRC2012是ImageNet数据集的一部分,拥有1000个类别,涵盖了各种不同的物体和场景。该数据集包含超过120万张训练图像和5万张测试图像,每张图像标记有相应的类别标签。由于该数据集规模庞大,需要使用更复杂的模型和算法来进行训练和分类。

4.1.2 特定物体分类

上面介绍的两个数据集,在学术界用的比较多。而真正在业界广泛遇到的任务,还是特定物体的分类。比如人脸验证,狗脸,或者鸟类,或者各种车,如下图

image.png

人脸验证

它的定义是给你两张图片,让你去判断是否是同一个人。深度学习模型和准确率如下图

image.png

猪脸识别

既然人脸可以识别,那自然动物脸也能识别!

下图是2017年京东举办的“猪脸识别”比赛,在中美两地同时举行,冠军奖30万

image.png

牛脸识别

这个是新华网的一则新闻。11月26日,在广西天等县驮堪乡,保险公司工作人员为牛进行面部识别,准备办理保险。

image.png

近年来,中国人寿在广西天等县通过“牛脸识别”技术为农户养殖的牛上保险,消除群众养牛的后顾之忧,助力发展壮大养牛产业。该技术通过牛的面部信息采集快速创建3D特征数据库,建立牛的身份识别管理系统,确保承保保标的真实性、唯一性、大大简化承保验标和理赔审核流程。

4.2 物体检测

4.2.1 一般物体检测

物体检测比上面提到的这个物体识别要复杂一点,因为它不仅要识别出图上有猫、有狗、有鸭子,它还要判断出它们到底在哪,并用一个矩形标识出它们的位置:物体(左上角x坐标,左上角y坐标,宽度,高度)

image.png

4.2.2 特定物体检测

  • 做自动驾驶算法需要检测前面是否有人,识别车道线、指示线、指示标、交通信号灯等等
  • 现在很多深度学习在医疗领域应用的特别广泛,比如用来识别病人的某个部位有没有肿瘤
  • 现在的手机都可以拍照,需要在拍照时,自动识别人脸,然后去做美颜,去去除红眼等

image.png

检测肺癌

在2016年的比赛中,美国Enlitic公司开发的基于深度学习的肺癌检测系统在技术上取得了重大突破。该系统利用深度卷积神经网络等技术对CT扫描图像进行自动分析和检测,能够快速准确地识别出肺部结节等肺癌相关病变。相比传统的方法,该系统的检测精度更高,大大提高了肺癌诊断的准确性和效率。

image.png

语音识别

将声波直接转化成文字

image.png

利用神经网络预测股票投资回报率

现在已经有很多公司在做这个了,通过机器预测股票今天买明天有百分多少概率赚钱,如果赚钱几率大就进行投资,这个现在叫量化交易

image.png

利用新闻分析投资市场情绪

现在有很多财经或者股票相关的论坛,你如果能有一定的爬虫功底,可以采集这些数据,通过深度学习的办法进行分析,就可以获得当前市场上投资者的情绪。

image.png

蛋白质结构预测

这个是谷歌推出的,AlphaFold 的第二代,用来做蛋白质结构预测的

image.png

天气预报

华为盘古大模型,通过对天气预报的历史数据进行学习,在中长期气象预报精度上首次超过传统数值方法,速度提升10000倍以上

image.png

图像风格转换

通过提供一张风格图片,AI就能把原图和这张风格图片相结合,生成你想要的图片

image.png

图像生成

通过文字描述,自动生成图片(即使这种图片在自然界不存在,深度学习的模型也能给你创造出来)

image.png

旋律生成

你只要给定前面一部分旋律,AI就能自动补全后半部分。demo地址为:https://demo.lazycomposer.com/compose/pianoSoloExpert/

image.png

歌声合成

初音未来在2007年8月31日发布,声音库来自日本动漫声优藤田咲。

image.png

代言和授权的产品就有红米Note4X,网易游戏新作《初音速》及盛大手游《神无月》

image.png

古诗生成

这是清华大学开发的一个古诗生成器,可以生成五言绝句、七言绝句、藏头诗等等。经过多轮迭代,现在不仅可以生成唐诗,还能生成宋词。试用地址为:http://jiuge.thunlp.org/

image.png

五、对抗攻击

5.1 深度学习的鲁棒性差

鲁棒性是控制科学中的一个名词,是英文robust(强健的,精力充沛的,粗鲁的)的音译,也被称为强健性或者抗干扰性。它是指在异常和危险情况下系统生存的能力,或者说系统在面对各种异常情况时仍能维持其正常功能的能力。

举个例子,使用ResNet训练完的深度学习算法,识别某张图片是袋鼠或者树懒的准确率已经达到99%以上了。这时候,我们在原图上增加一个0.008的随机噪声,该变这张图,虽然在人看来两张图片相差无几,但是AI却非常自信的判断错了(AI将袋鼠识别为飞机,把树懒图判断成防弹背心,并且置信率居然都接近100%)

image.png

对图片进行改变称为 “对抗攻击”(刻意地对输入进行扰动使得深度学习输出错误预测结果)

5.2 针对深度学习的可见光“隐身衣”

通过上面这个案例,我们发现,对图片加上一个随机噪声就能让深入学习算法检测出错,因此我们精心设计如下几套衣服,来测试是否能对深度学习检测算法“隐身”

YOLOv 是You Only Look Once version 的缩写,是一种目标检测算法。

image.png

在测试视频中可以看到,人穿上了我们精心设计的衣服后,就无法被人体检测器识别出来了

image.png

5.3 针对深度学习的红外“隐身衣”

既然上面提到了能对深度学习的可见光“隐身”,那按道理我们也能对深度学习的红外相机“隐身”

红外相机在呈相时,只有黑白没有彩色的

因此我们就设计了这么两套看起来有点像二维码的衣服,来欺骗红外相机。我们设计了如下4套衣服

气凝胶的导热系数极低,红外相机是通过热量检测来判断的。因此我们就能在黑色的地方贴上气凝胶,这样热量就出不来了

image.png

通过实验得出以下结论

  • 不穿和随机帖气凝胶,都能被深度学习检测出来
  • 用气凝胶做了一件衣服,把人全盖住了,还是能被深度学习检测出来
  • 只有我们精心设计的那件(即下图的A)才能躲过检测

image.png

5.4 针对深度学习的红外隐身板

如果你觉得上面这件衣服太丑了,还可以在胸口放一块板子,这个板子上面放了一些小灯泡(位置是被精心设计出来的,随机放的没用)

image.png

中间的人拿的是我们这个板子,可以看到就没被深度学习算法给检测出来

image.png

六、脑启发的模型

6.1 深度学习面临的挑战

  • 效果差:有时分割的好,有时分割的差
  • 效率低:训练一个gpt3,需要花费1200万美元
  • 可解释性差:只有输入和输出,不知道里面发生了啥
  • 鲁棒性低:原图加个随机微小的噪声就会导致识别出错

image.png

6.2 脑启发的模型是一个重要方向

既然深度学习还有这么多问题,那么如何克服这些问题呢?我们的想法是:进一步借鉴脑科学的知识,提高人工神经网络的效果和效率

深度学习的发展与脑启发的发展是密切相关的,如下图

  1. 神经元 ——> MP单元、感知机
  2. 简单/复杂细胞 ——> BP算法/卷积神经网络、大数据+大算力
  3. 皮层脑电、双光子、功能性核磁 ——>(这部分还没被应用到深度学习)

image.png

6.3 脑中存在大量的反馈神经

科学家发现,大脑中存在大量反馈连接。那么如何去建模这些连接?它们又能带来什么优点呢?

image.png

在2015年之前,人们做视觉都觉得不会用到这些反馈连接,因为当时觉得反馈连接主要是用来做动态任务会比较好的。

6.3.1 有层内反馈的卷积神经网络

但是研究发现,大脑的视觉皮层中确实存在着大量的反馈神经。脑既然这么设计,肯定都是有用的。后面就根据这个,设计了一个有层内反馈的卷积神经网络

image.png

6.3.2 自上而下反馈的卷积神经网络

神经元之间具有一些不同区域的自上而下的反馈

image.png

经过实验发现,这种神经网络,在图像分割方面做的非常的好,放大可以看到细节上,比原先的 Mask R-CNN 要做的更加细致

image.png

6.3.3 同时有两种反馈的卷积神经网络

我们构造了一个既有层内反馈,又有自上而下反馈,并且随着时间推移一步步展开的模型

  • Bottom-up:自下而上
  • Top-down:自上而下
  • Lateral:随着时间异步展开

image.png

这种算法在声音分离上做的非常的好

  • 声音分离:分离不同人的声音
  • 音乐分离:分离人声和背景音乐

image.png

6.3.4 皮层-丘脑-皮层模型

这是我们发现在高级的哺乳类动物中,丘脑在多模态融合方面发挥着一个很重要的作用。信息会从皮层到丘脑,然后丘脑在处理后再发回皮层。

下面这个是啮齿类动物,皮层-丘脑-皮层,信息通路的示意图

image.png

通过模仿 皮层-丘脑-皮层连接,实现了 皮层-丘脑-皮层模型

image.png

这是一个视觉辅助的语音分离效果展示,这里不仅识别了人的声音,还用上了人的面部信息。效果如下(你可以听到女的讲话的时候,男的声音基本就没有了)

image.png

七、总结

本文主要介绍了以下5点

  1. 深度学习的背景
  2. 基础模型:多层感知机、卷积神经网络、反馈神经网络、转换器
  3. 典型应用:视觉、听觉、自然语言、医疗、自动驾驶、娱乐
  4. 对抗攻击:隐身衣、隐身板
  5. 脑启发的模型:同层反馈,自上而下的反馈

为方便大家学习和理解,我将他们制作成一个“思维导图”

image.png

本文参与华为云社区【内容共创】活动第25期
任务3:深度学习导论及行业应用 2023CANN训练营第二季

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。