0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

华为麒麟970的NPU(神经网络处理器)到底是什么鬼

5RJg_mcuworld 2018-02-12 11:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

所谓的HiAI移动计算架构,主要有四部分组成,CPUGPU、ISP/DSP和NPU。作为全球第一枚集成专用NPU的移动芯片,华为重点介绍NPU神经网络单元,声称在HiAI架构下AI性能密度大幅优于CPU和GPU,能够用更少的能耗更快的完成更多任务,大幅提升芯片的运算效率。

AI芯片能够以人类的思考方式来理解人类诉求,具备高处理速度,高密度和高能效比,而麒麟970只是个开始,并超越竞争对手。

CPU部分,麒麟970与上一代麒麟960一样为八核心设计,由4个主频为2.4GHz的Cortex-A73大内核与4个主频1.8GHz的Cortex-A53内核组成,性能上无变化,毕竟同样架构频率,传闻所说的2.8GHz主频吊打骁龙835并没能实现,但跑分上追平骁龙835应该没问题,并且得益于10纳米工艺的进步能效提升20%。

更具体来说,在16位浮点数(即FP16)时,麒麟970内置的NPU运算能力达到1.92 TFLOPs,在AI人工智能深度学习下,所有硬件能够协调芯片内部的各个组件及手机硬件,如ISP、DSP,保持处理某些特定任务时,提升速度并低功耗运作。例如有了NPU的加成,在图像识别任务上,对比Cortex-A73 CPU 性能提升25倍,能效提升50倍之多,拍摄1000张照片仅仅消耗4000mAh电池手机0.19%的电量,图像识别速度可达到约2000张/分钟。

相比之下,三星S8使用CPU处理每分钟仅95张,苹果iPhone 7 Plus同时使用CPU和GPU,每分钟也仅能识别487张,华为完胜。

简而言之,麒麟970有了NPU单元之后,至少在拍照和图像处理上,比之前单纯依赖CPU和GPU要快得多。而对于竞争对手,麒麟970最直接的就是保持高效率,并且更加的省电。未来AI独立单元内置于芯片一定是趋势,苹果也在做,只是华为抢先开了个头.

华为麒麟970的NPU(神经网络处理器)到底是什么鬼

日前,美国知名科技媒体Android Authority主笔Gary Sims对麒麟970进行了深度解读,讲述了麒麟970的人工智能NPU的工作原理,对芯片设计的深远影响,以及为用户使用场景带来的跨越式体验。

“神经网络(Neural Networks)”和“机器学习(Machine Learning)”是近两年移动处理器领域最流行的两个词。华为麒麟970的NPU(神经网络处理器)、Google Pixel 2内置的IPU(图像处理器),以及苹果A11 Bionic,都是实现上述功能特性的专用硬件解决方案。

既然华为、Google和苹果都在都在探索神经引擎处理器,你可能以为机器学习需要特定的硬件。其实不然,神经网络可以在任何形式的处理器上运行,从微处理器到CPU、GPU甚至是DSP。

所以,问题的根本不在于处理器是否能利用神经神经网络和机器学习,而在于它到底有多快,能提升多少效率。

如果时间倒退回30年前,当年的桌面处理器是没有的FPU(浮点运算单元)芯片的,在486之后,Intel把FPU集成到了CPU内部,浮点运算性能大幅提升。而在很多实例计算中,全都是浮点数运算。这样以来,有FPU和没有FPU,运算效率天差之别。

而如今,移动处理器中的NPU也是类似的情况。你可能觉得我们并不需要NPU,就能使用神经网络,但实时情况是,华为正在用事实案例证明,当遇到实时处理运算的情况,NPU是必须的。

简单来说,“神经网络”可以理解为“机器学习”中“教”一台机器区别分辨不同“事物”的一系列技术中的一种。上述“事物”可以是一张照片、一个单词甚至是一种动物的声音,诸如此类。

“神经网络”由很多“神经元”组成,这些“神经元”可以接收输入信号,然后通过网络再向外传播信号,这取决于输入的强度和自身阈值。

举个简单的例子,神经网络正在监测一组灯其中一个的开关,但在网络中,这些灯的状态只能0或者1来表达,但不同的灯可能会出现一样的开关状态。

那么问题来了,神经网络怎么知道是该输出0还是该输出1呢?没有规则或者程序能告诉神经网络,输出我们想得到的逻辑答案。

唯一的方面就是对神经网络进行训练。大量的“样本”和预期结果一起被注入到神经网络中,各种各样的阈值反复微调,不断产生接近预期的结果。这个阶段可以称为“训练阶段”。

这听起来很简单,但实际上相当复杂,尤其是遇到语言、图像这种复杂样本的时候。一旦训练达成,神经网络会自动学会输出预期结果,即便输入的“样本”之前从来没有见过。

神经网络训练成功后,本质上就成了一种静态神经网络模型,它就能应用在数以百万计的设备上用于推理,在CPU、GPU甚至是DSP上运行。这个阶段可以称为“推理阶段”。

Gary Sims指出,“推理阶段”的难度要低于“训练阶段”,而这正是NPU发挥专长的地方。

所以,华为麒麟970最大的不同是,专门设置了NPU硬件芯片,它在处理静态神经网络模型方面有得天独厚的优势,不仅更快,还更有效率。事实上,NPU甚至能以17-33fps实时处理智能手机摄像头拍摄的“直播”视频。

从架构来看,麒麟970像是一台“发电站”,内置8颗CPU和12颗GPU,另有移动网络连接以及多媒体处理模块,晶体管规模达到了史无前例的55亿颗。据华为透露,NPU大约内含1.5亿晶体管,不到整个芯片的3%。

这对于一款移动处理器来说尤为重要。首先,NPU的加入不会明显增大处理器的尺寸、成本,这就意味着,NPU不仅能放入旗舰手机,一些中端手机也能适用。在未来5年,NPU将对Soc设计产生深远影响。

其次是功耗和效率。NPU并非“电老虎”会牺牲手机的续航,相反它能高效的帮CPU承担大量推理运算的任务,反而能节省不少功耗。

在最后的总结中,Gary Sims表示,如果华为能吸引更多第三方App开发者使用NPU,其前景不可限量。想象一下,当App在使用图像、声音、语音识别的时候,全部都能本地处理,不再需要网络连接或者云服务,App的使用体验将大大提升和加强。

试想,一名游客直接通过相机App就能认出当地地标,App能智能识别你的食物并给出相应的卡路里熟知、提醒食物过敏......

你认为,NPU会像当年FPU之于CPU一样,成为移动Soc芯片的标准吗?不妨在评论中发表自己的看法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4829

    浏览量

    106884
  • 机器学习
    +关注

    关注

    66

    文章

    8541

    浏览量

    136274
  • 麒麟970
    +关注

    关注

    10

    文章

    264

    浏览量

    64066

原文标题:外媒:终于看懂Kirin 970的NPU

文章出处:【微信号:mcuworld,微信公众号:嵌入式资讯精选】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NMSIS神经网络库使用介绍

    NMSIS NN 软件库是一组高效的神经网络内核,旨在最大限度地提高 Nuclei N 处理器内核上的神经网络的性能并最​​大限度地减少其内存占用。 该库分为多个功能,每个功能涵盖特定类别
    发表于 10-29 06:08

    在Ubuntu20.04系统中训练神经网络模型的一些经验

    本帖欲分享在Ubuntu20.04系统中训练神经网络模型的一些经验。我们采用jupyter notebook作为开发IDE,以TensorFlow2为训练框架,目标是训练一个手写数字识别的神经网络
    发表于 10-22 07:03

    CICC2033神经网络部署相关操作

    在完成神经网络量化后,需要将神经网络部署到硬件加速上。首先需要将所有权重数据以及输入数据导入到存储内。 在仿真环境下,可将其存于一个文件,并在 Verilog 代码中通过 read
    发表于 10-20 08:00

    液态神经网络(LNN):时间连续性与动态适应性的神经网络

    神经元,但却能产生复杂的行为。受此启发,与传统的神经网络相比,LNN旨在通过模拟大脑中神经元之间的动态连接来处理信息,这种网络能够顺序
    的头像 发表于 09-28 10:03 726次阅读
    液态<b class='flag-5'>神经网络</b>(LNN):时间连续性与动态适应性的<b class='flag-5'>神经网络</b>

    神经网络的并行计算与加速技术

    问题。因此,并行计算与加速技术在神经网络研究和应用中变得至关重要,它们能够显著提升神经网络的性能和效率,满足实际应用中对快速响应和大规模数据处理的需求。神经网络并行
    的头像 发表于 09-17 13:31 905次阅读
    <b class='flag-5'>神经网络</b>的并行计算与加速技术

    【「芯片通识课:一本书读懂芯片技术」阅读体验】从deepseek看今天芯片发展

    的: 神经网络处理器NPU)是一种模仿人脑神经网络的电路系统,是实现人工智能中神经网络计算的专用处理器
    发表于 04-02 17:25

    BP神经网络与卷积神经网络的比较

    多层。 每一层都由若干个神经元构成,神经元之间通过权重连接。信号在神经网络中是前向传播的,而误差是反向传播的。 卷积神经网络(CNN) : CNN主要由卷积层、池化层和全连接层组成。
    的头像 发表于 02-12 15:53 1377次阅读

    BP神经网络的优缺点分析

    BP神经网络(Back Propagation Neural Network)作为一种常用的机器学习模型,具有显著的优点,同时也存在一些不容忽视的缺点。以下是对BP神经网络优缺点的分析: 优点
    的头像 发表于 02-12 15:36 1630次阅读

    什么是BP神经网络的反向传播算法

    BP神经网络的反向传播算法(Backpropagation Algorithm)是一种用于训练神经网络的有效方法。以下是关于BP神经网络的反向传播算法的介绍: 一、基本概念 反向传播算法是BP
    的头像 发表于 02-12 15:18 1321次阅读

    BP神经网络与深度学习的关系

    ),是一种多层前馈神经网络,它通过反向传播算法进行训练。BP神经网络由输入层、一个或多个隐藏层和输出层组成,通过逐层递减的方式调整网络权重,目的是最小化网络的输出误差。 二、深度学习的
    的头像 发表于 02-12 15:15 1383次阅读

    BP神经网络的基本原理

    输入层、隐藏层和输出层组成。其中,输入层负责接收外部输入数据,这些数据随后被传递到隐藏层。隐藏层是BP神经网络的核心部分,它可以通过一层或多层神经元对输入数据进行加权求和,并通过非线性激活函数(如ReLU、sigmoid或tanh)进行
    的头像 发表于 02-12 15:13 1559次阅读

    BP神经网络在图像识别中的应用

    BP神经网络在图像识别中发挥着重要作用,其多层结构使得网络能够学习到复杂的特征表达,适用于处理非线性问题。以下是对BP神经网络在图像识别中应用的分析: 一、BP
    的头像 发表于 02-12 15:12 1209次阅读

    NPU是如何发展起来的?性能受哪些因素影响?

    (电子发烧友网综合报道) NPU是一种专门用于加速神经网络计算的硬件处理器。随着人工智能和深度学习技术的快速发展,传统的CPU和GPU在处理复杂的
    的头像 发表于 02-05 07:50 3548次阅读

    深度学习入门:简单神经网络的构建与实现

    深度学习中,神经网络是核心模型。今天我们用 Python 和 NumPy 构建一个简单的神经网络神经网络由多个神经元组成,神经元之间通过
    的头像 发表于 01-23 13:52 860次阅读

    人工神经网络的原理和多种神经网络架构方法

    在上一篇文章中,我们介绍了传统机器学习的基础知识和多种算法。在本文中,我们会介绍人工神经网络的原理和多种神经网络架构方法,供各位老师选择。 01 人工神经网络   人工神经网络模型之所
    的头像 发表于 01-09 10:24 2294次阅读
    人工<b class='flag-5'>神经网络</b>的原理和多种<b class='flag-5'>神经网络</b>架构方法