ChatGPT的核心算法为何如此强大?

Wenjun Ni

Mar 17, 2023 / 1 min read

ChatGPT近期成为了全球话题中心。短短两个月,ChatGPT注册用户数已经破亿,成为史上用户破亿速度最快的软件之一。它不但可以回答问题,还能写诗,写代码,提供旅游攻略…而ChatGPT的核心结构正是Transformer模型。

Transformer是一种能够同时处理所有输入数据的深度学习模型,最初是为翻译和自动问答等自然语言处理应用开发的。计算机视觉应用领域过去主要采用卷积神经网络(CNN),现在Transformer模型则更为流行,但它不会取代CNN,而是与之配合来提高视觉处理应用的准确度。

比如,当自动驾驶汽车在行驶过程中遇到障碍物,它是如何判断马路中间的是人,而不是电线杆呢?自动驾驶汽车的物体检测和防撞系统必须正确识别前方路况并给车辆发出相应的指令。在现代汽车的计算机视觉处理应用中,深度学习模型就发挥着重要作用。

除了汽车会采用AI驱动的计算机视觉技术外,摄像头如今已经在很多系统中都普及开了,手机和安防系统等大量基于摄像头的设备都已经在使用神经网络来提高图像质量和准确性了。

为何Transformer是嵌入式计算机视觉的理想选择呢?Transformer又将如何改变深度学习架构的发展方向?哪些技术可以优化这些模型来获得更出色的结果?本文将带着这些问题与大家共同探讨。

更专注的注意力机制 更好的情景感知

10多年来,CNN一直是视觉处理的首选深度学习模型。随着技术的不断发展,CNN现已能够准确地完成图像分类、物体检测、语义分割(对图像中的每个像素进行分组或标记)和全景分割(识别物体位置以及对每个物体中的每个像素进行分组和标记)。

但Transformer除了需要将语言块替换为图像块外,不需要任何其他修改就可以在准确性方面超越CNN。

2017年,Google Research将Transformer定义为一种基于自注意力机制的新型神经网络架构,特别适合用于语言理解。到2020年,Google Research的科学家们发表了一篇关于Vision Transformer(ViT)的文章,ViT是一个基于原始Transformer架构的模型。据该文章表示,当有足够的数据进行训练时,ViT表现出了优异的性能,超过了先进的CNN,而所需的计算资源却只有CNN的四分之一。这些Transformer虽然需要庞大的数据集进行训练,但确实非常擅于处理图像分类和物体检测等视觉任务。

Transformer之所以能够在视觉应用中游刃有余,其专有的注意力机制是关键,该机制让模型能够对特定情境有更深入的理解。Transformer和CNN一样都可以检测到前方道路上的物体是行人,而不是电线杆或者一棵树,但不同的是,Transformer并不会同等处理所有像素,它更多关注的是数据中微小但重要的部分,比如那个行人,而不太会去过多关注代表道路其余部分的那些不重要像素。

在处理每帧数据时,CNN通常并不会考虑该帧之前和之后的数据。而相比CNN,Transformer更擅于学习较为复杂的模式,因此所需的计算也就更多,所以在速度方面Transformer没有CNN快,但它也在努力的奋起直追了。

GPU目前可以支持这二种模型,但如果在实际应用中需要以更小的尺寸和更低的功耗来实现更高的性能,那么NPU或神经处理单元等专用AI加速器将会是更好的选择。

为了提高推理效率,视觉处理应用可同时使用CNN和Transformer。要想实现全方位视觉感知,仅靠纯视觉模型可能无法轻松获得所需的信息,而多模态学习可以提供更详尽的视觉信息。此外,Transformer等基于注意力机制的神经网络非常适合像汽车应用这种集成了多个传感器的应用。

利用NPU IP优化Transformer和CNN的性能

Transformer包括以下几种运算:

  • 矩阵乘法
  • 逐元素加法
  • Softmax数学函数
  • L2归一化
  • 激活函数

目前大多数AI加速器都针对CNN进行了优化,但它们并非全都适合Transformer。Transformer需要庞大的计算能力来执行大量计算并支持其注意力机制。

新思科技的ARC® NPX6 NPU IP就是一款能够同时处理CNN和Transformer的AI加速器。ARC NPX6 NPU IP的计算单元包括一个用于矩阵乘法(对这两种深度学习模型都非常重要)的卷积加速器,以及一个用于处理Transformer运算和激活函数的张量加速器。该IP提供高达3,500 TOPS的性能和高达30 TOPS/瓦的出色能效。

设计团队还可以使用新思科技的MetaWare MX开发工具包来加速其应用软件开发。该工具包提供了一个综合的软件编程环境,其中包括神经网络软件开发工具包和对各种虚拟模型的支持。

ChatGPT安全吗?

在ChatGPT爆火的背后,我们也要知道,ChatGPT或者其他AI软件所产出的内容或做出的决策并不是无懈可击的。这些工具提供的结果往往会和现实有所偏差,而只有人类才能基于现实去对结果进行检查和验证。

而且是否会有人利用ChatGPT编写恶意代码来进行网络攻击呢?自从人类开始编写代码以来,开发人员一直都在无意或者有意地编写出可被利用的代码。幸运的是,有很多安全测试工具可以帮助开发者们进行安全防护。无论编码者是谁,都应该使用安全工具扫描源代码发现漏洞。

总结

Transformer拥有强大的计算能力,且一直在自然语言处理应用中被广泛采用。现在,因Transformer模型基于其注意力机制的神经网络拥有更出色的情感感知能力,智能手机、安防系统、自动驾驶汽车等实时视觉处理应用也开始采用此模型。以后,各种基于摄像头的产品会越来越先进,提供的图像质量也越来越高。在深度学习中加入Transformer后,嵌入式视觉摄像头系统势必能够提供更清晰的图像和更准确的物体检测。

Continue Reading