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

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

3天内不再提示

模型压缩技术,加速AI大模型在终端侧的应用

Carol Li 来源:电子发烧友网 作者:李弯弯 2023-04-24 01:26 次阅读

电子发烧友网报道(文/李弯弯)当前,全球众多科技企业都在积极研究AI大模型,然而因为参数规模太大,要想实现AI大模型在边/端侧部署,需要用到模型压缩技术。当前谷歌、微软、腾讯等厂商在该领域均有布局,加速AI技术智能终端的融合。

为什么需要模型压缩技术

模型压缩是一种缩小训练后的神经网络的技术,目的是保证模型预测效果的前提下,尽可能地降低模型的大小。模型压缩之后,所需要的计算资源变小,有利于在移动端部署。

有一个很形象的例子,深度学习变脸业务,假设在模型优化前,原始模型处理每个视频要30秒,那么一张GPU卡一分钟只能处理2个视频。假设APP的使用峰值是1000人同时使用,那么这家公司至少要有500张GPU卡才能满足需求。

如果模型压缩技术能让模型变小许多,使得每个视频处理只需要10秒,那么这个客户可能只需要150张卡就能满足业务需求。每年的成本可以从原来的3000万控制在1000万左右,省下的2000万,就是模型压缩技术的价值。

量化、网络剪枝和知识蒸馏

模型压缩的方法主要有量化、网络剪枝、知识蒸馏。量化的意思是,将浮点计算转成低比特定点计算,模型由大量的浮点型权重组成,如果能用float32替代原有的float64表示,模型就近乎减小一倍,量化也是最容易实现的一种压缩方式。

传统意义上的量化即为将连续信号转换为离散信号,在神经网络的量化中,即将浮点数float32→int8,int4,int2等,量化其本质就是低精度,常规精度一般使用FP32存储模型权重,低精度则表示FP16,或INT8等数值格式,不过目前低精度往往指的是INT8。

模型压缩,使得原本只能在云端运行大模型,也能够部署在终端设备上。比如,近年来很流行的基础模型 Stable Diffusion ,它是一个非常出色的从文本到图像的生成式 AI 模型,能够基于任何文本输入,在数十秒内创作出逼真图像。Stable Diffusion 的参数超过 10 亿,此前主要限于在云端运行。

高通 AI Research 利用高通 AI 软件栈(Qualcomm AI Stack)执行全栈 AI 优化,首次实现了在Android智能手机上部署 Stable Diffusion,其中就用到了模型压缩技术量化的方法。

据介绍,高通的全栈 AI 研究指跨应用、神经网络模型、算法、软件和硬件进行优化。针对 Stable Diffusion,他们从 Hugging Face 的 FP32 1-5 版本开源模型入手,通过量化、编译和硬件加速进行优化,使其能在搭载第二代骁龙 8 移动平台的手机上运行。

为了把模型从 FP32 压缩为 INT8,高通使用了其 AI 模型增效工具包 (AIMET) 的训练后量化。自适应舍入 (AdaRound) 等先进的高通 AIMET 量化技术能够在更低精度水平保持模型准确性,无需进行重新训练。

这些技术能够应用于构成 Stable Diffusion 的所有组件模型,即基于 Transformer 的文本编码器、VAE 解码器和 UNet。这对于让模型适合于在终端上运行至关重要。

网络剪枝,是指除神经网络中冗余的通道、神经元节点等。深度学习模型可以看作是一个复杂树状结构,如果能减去一些对结果没什么影响的旁枝,就可以实现模型的减小。

模型的构成是由许多浮点型的神经元相连接,每一层根据神经元的权重将信息向下传递。但是有一些神经元的权重非常小,这类神经元对整个模型加载的信息影响微乎其微。如果可以把这些权重较小的神经元删减掉,既减少了模型大小,也不会对模型的效果带来大的影响。

每一层把数值小的神经元去掉,但是剪枝粒度维持到多大也是有讲究的,比如可以把每层最小的5个减掉,也可能只剪3个,或者每层有每层不同的策略。剪多了,模型精度影响会比较大,剪少了没有效果。所以这里面需要大量的尝试和迭代。

知识蒸馏,是指将大模型作为教师模型,用其输出训练性能接近、结构更简的学生模型。一般而言,大模型往往是单个复杂网络或者是若干网络的集合,拥有良好的性能和泛化能力,而小模型因为网络规模较小,表达能力有限。

因此,可以利用大模型学习到的知识去指导小模型训练,使得小模型具有与大模型相当的性能,但是参数数量大幅降低,从而实现模型压缩。

小结

当下,AI大模型发展如火如荼,然而因为参数规模太大,不仅仅是训练,大模型的部署推理,也需要倚赖丰富的计算资源。如果想要大模型能够在边/终端侧实现部署,这其中就需要用到模型压缩技术,如高通使用量化的方法,让Stable Diffusion能够在手机上运行。




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

    关注

    87

    文章

    26410

    浏览量

    264018
收藏 人收藏

    评论

    相关推荐

    AI快讯:华为助力金融行业加速拥抱AI 马斯克xAI 展示首个多模态模型

    数据基础设施峰会上华为正式发布四大AI创新解决方案,包括中心AI、边缘AIAI数据保护、AI数据湖四大解决方案,助力金融行业
    发表于 04-15 12:32 87次阅读

    真实用户体验,终端模型能为信息无障碍做些什么

    终端模型
    脑极体
    发布于 :2024年03月20日 17:04:44

    防止AI模型被黑客病毒入侵控制(原创)聆思大模型AI开发套件评测4

    ,应用场景和安全需求会有所不同。我会帮助客户构建安全的 AI模型。上面的只是一些基本的安全措施,实际中我可以利用eFPGA芯片对上述的功能进行加速,下面我编写一个
    发表于 03-19 11:18

    cubemx ai导入onnx模型压缩失败了怎么解决?

    cubemx ai导入onnx模型压缩失败。请问我怎么解决
    发表于 03-19 07:58

    使用cube-AI分析模型时报错的原因有哪些?

    使用cube-AI分析模型时报错,该模型是pytorch的cnn转化成onnx ``` Neural Network Tools for STM32AI v1.7.0 (STM.
    发表于 03-14 07:09

    AI模型可以取代大学教育吗?

    AI模型
    电子发烧友网官方
    发布于 :2024年01月02日 16:27:52

    AI模型怎么解决芯片过剩?

    AI模型
    电子发烧友网官方
    发布于 :2024年01月02日 15:42:05

    AI模型可以设计电路吗?

    AI模型
    电子发烧友网官方
    发布于 :2024年01月02日 15:09:29

    骁龙平台靠大模型出圈了

    通用、专业的 AI模型层出不穷,喷涌之势已经不可阻挡。随着量化、网络剪枝和知识蒸馏等模型压缩技术进步,手机等
    的头像 发表于 11-16 16:51 231次阅读
    骁龙平台靠大<b class='flag-5'>模型</b>出圈了

    【KV260视觉入门套件试用体验】Vitis AI 构建开发环境,并使用inspector检查模型

    FFT运算(Vivado) 四、硬件加速之—使用PL加速矩阵乘法运算(Vitis HLS) 五、Vitis AI 构建开发环境,并使用inspector检查模型 六、Vitis
    发表于 10-14 15:34

    模型压缩首篇综述来啦

    模型压缩涉及将大型资源密集型模型转化为适合在受限移动设备上存储的紧凑版本。此外,它还可以优化模型以实现更快的执行速度和最小的延迟,或在这些目标之间取得平衡。
    的头像 发表于 09-26 17:12 609次阅读
    大<b class='flag-5'>模型</b><b class='flag-5'>压缩</b>首篇综述来啦

    MediaTek 联合百度发起飞桨和文心大模型硬件生态共创计划,以 AI模型赋能终端设备

    ,将实现大模型终端和云端的协同工作,为用户带来突破性的生成式 AI 应用体验。 作为推动 AI 进一步发展的先进技术,与单纯在云端部署生成
    的头像 发表于 08-16 17:40 353次阅读
    MediaTek 联合百度发起飞桨和文心大<b class='flag-5'>模型</b>硬件生态共创计划,以 <b class='flag-5'>AI</b> 大<b class='flag-5'>模型</b>赋能<b class='flag-5'>终端</b>设备

    AI模型和小模型是什么?AI模型和小模型的区别

      随着人工智能的不断发展和应用,机器学习模型的大小越来越成为一个重要的问题。在机器学习中,我们通常将模型分为两类:大模型和小模型。本文将介绍AI
    发表于 08-08 16:55 5451次阅读

    训练好的ai模型导入cubemx不成功怎么解决?

    训练好的ai模型导入cubemx不成功咋办,试了好几个模型压缩了也不行,ram占用过大,有无解决方案?
    发表于 08-04 09:16

    边缘AI模型压缩技术

    模型压缩是在计算能力和内存较低的边缘设备上部署SOTA(最先进的)深度学习模型的过程,而不会影响模型在准确性、精度、召回率等方面的性能。模型
    的头像 发表于 05-05 09:54 590次阅读
    边缘<b class='flag-5'>AI</b>的<b class='flag-5'>模型</b><b class='flag-5'>压缩</b><b class='flag-5'>技术</b>