Adlik在模型剪枝量化上的实践

【Unity3D框架】GameFramework框架完全教程《全网最全》-专栏文章目录 最近准备学习框架,了解到GameFramework框架是国产Unity3D框架,准备学习一下,但是奈何全网关于这个框架的教程实在太少。为了让自己学习方便一些,也为了让后来者乘凉。将框架以自己的理解整理目录,并且补全教程。觉得教程有帮助别忘了一键三连哦。 阅读详情

1. 模型剪枝量化背景

  最近几年DNN取得了惊人的进展,它被广泛用于图像、语音和其他行业领域。当前AI在准确性方面取得了很大的提高,有些已经超过人类的水平,但是这些是靠耗费大量计算资源和存储资源来实现的。而我们的端设备计算和存储能力相对较小,同时实时性要求又比较高,这就需要有方法来减少模型的大小和计算量。于是出现了大量解决资源瓶颈问题的方法,这些方法包括剪枝、量化压缩和层融合,以及一些针对DNN的专用加速硬件和针对特定硬件的优化。下面将根据论文对模型剪枝和量化进行简要介绍。

1.1 模型剪枝

  剪枝包括结构性剪枝和非结构性剪枝(稀疏化),一般分为三个步骤,先训练一个大的过参数化(over-parameterized)模型,然后对模型进行剪枝,最后重新训练剪枝后模型以达到预期的效果。

《To prune, or not to prune: exploring the efficacy of pruning for model compression》

  作者提供了一个添加mask层的方式来进行稀疏的方法。初始时mask值都是1,也就是所有的权值都不强制设置为0。当训练达到指定step 后,开始逐步从初始稀疏值()经过n个pruning step调整到目标稀疏值(),剪枝间隔为。作者定义了一个指数特征的目标稀疏值计算公式,如下:for 渐进式剪枝过程如下图所示:

  从图中可以看出调整的幅度越来越小,呈指数特征。有了每次调整的目标稀疏值,如何去决定要把哪些权重值对应的mask置成0呢?作者采用的是把所有权重分成256个区间,计算每个区间的分布,从而得到可以达到目标稀疏值的权重值阈值,小于这个阈值的mask层位置置成0。在整个训练完成后,把权重和mask点积,合并两个层,从而得到最后的稀疏权重矩阵。整个论文的代码已经合入了tensorflow contrib,并且提供了一个cifar10剪枝例子。代码地址:https://github.com/tensorflow/tensorflow/tree/v1.12.0/tensorflow/contrib/model_pruning

《Learning both Weights and Connections for Efficient Neural Network》

       整个训练过程包括三个步骤,其中剪枝和重新训练可以多次循坏执行,以尽可能到达所需精度和压缩比。第一步:通过正常的训练来学习连接。与传统的训练不同,我们不是在学习权重的最终值,而是在学习哪些连接是重要的;第二步:剪除低权重的连接,所有权值低于阈值的连接都从网络中移除,即将密集网络转换为稀疏网络;(通过mask矩阵来记录) 第三步:对网络进行重新训练,以学习剩余稀疏连接的最终权值。这一步至关重要,如果不进行再训练而使用修剪后的网络,准确率会受到很大影响。

按照正常方法训练初始模型。实验发现,采用L2做正则项较好。

Prune Connection

作者认为该模型中权重的大小表征了其重要程度,因此将初始模型中那些低于某个阈值(经验设定)的权重参数置成0;

Re-Train

重新训练,以期其他未被剪枝的权重能够补偿pruning带来的精度下降。在重新训练的过程中,由于此时的网络稀疏度逐渐下降,Dropout的参数需要随着剪枝次数的增加而减小。假设原始网络的连接数为,剪枝后网络的连接数为,原始网络的Dropout Rate为,作者定义retraining的Dropout Rate 为

《PRUNING FILTERS FOR EFFICIENT CONVNETS》

剪枝方法

       对于每一个kernel matrix按列绝对值求和 对求和结果排序 裁剪掉m个filters(对应内核矩阵的列),以及对应的输出(层中),它又是下一层的输入,所以也得去掉对应的输入filters(对应内核矩阵的行), 剩余的kernel weights保留。在跨越多层裁剪的过程中,可能出现kernel matrix裁剪交叉的情况,两种处理方法:

        Independent pruning 假设蓝色是确定要裁剪的,然后计算绿色的L1时,要考虑黄色的值,跟之前的裁剪无关。Greedy pruning 也就是计算绿色的L1时,不考虑已经被裁剪的黄色值

       这两种方法测试结果,Greedy pruning的准确率会更高。

残差网络的处理

       第一层随意裁剪(根据需求),因为它只会影响的输入,但是不会影响最后的输出。residual block里面的裁剪需要注意,因为裁剪需要和shortcut layer保持一致,才能累加。因为identical feature maps比added residual maps更重要,所以后者的裁剪结果应该由前者决定。为了确定要修剪哪些特征图,论文中使用与1 × 1 kernels shortcut与 convolutional layers采用相同的选择标准。residual block 中第二层修剪的 Filter index 与shortcut layer 所选择的 Filter index 相同。

Prune and Retrain 方法

1、裁剪所有层后再继续训练网络

2、裁剪一层,重新训练一下,一直循环到所有层裁剪完毕 测试结果,第二种方法效果更好。

《DMCP: Differentiable Markov Channel Pruning for Neural Networks》

         将模型剪枝看作模型结构搜索的工作大多都采用强化学习算法或者遗传算法,而这些算法需要在原模型中大量的采样子结构来评估精度,甚至需要花大量时间来训练子结构,因此很难泛化到更大更复杂的网络。

剪枝过程

          DMCP选择将剪枝的过程建模为一个马尔科夫模型。在一个卷积层中,定义为保留前个通道的情况下,保留第k个通道的概率。保留前k个通道的概率为, 则有

保留第k-1个通道后,保留前k-2个通道与保留第k个通道条件独立,且不保留第k-1个通道时,保留第k个通道的概率为0,则有下面的式子成立:

其中为马尔科夫模型中的转移概率。这样,通过在优化完毕后的马尔可夫模型上采样就可以得到相应的剪枝后的模型。

训练过程

DMCP训练程序可分为两个阶段,即权重更新阶段和网络结构参数的更新阶段。第一阶段和普通的训练相同,更新未剪枝的模型参数。第二则是将马尔科夫模型中的转移概率和原模型结合更新网络结构,学习得到满足FLOPs要求的模型。这两个阶段的损失函数计算方式不同,第一个阶段的损失函数为:

, 这里   是交叉熵函数。,第二个阶段的损失函数为:

λ

, 其中 其中是结构损失,λ是用于平衡两个损失的超参数。
《Learning Efficient Convolutional Networks through Network Slimming》

该论文提出了 Network Slimming 技术来学习更紧凑的 CNN。该方法是将L1正则化施加到BN层的缩放因子 上,L1正则化推动BN层的缩放因子 趋向于零,这使得我们能够鉴别出不重要的通道或者神经元( 越小,说明该通道越不重要),因为每一个缩放因子都和一个特定的CNN卷积通道(或者全连接层的一个神经元)相关联。

缩放因子和稀疏性惩罚: 

为每个通道引入一个缩放因子 ,乘以该通道的输出,然后联合训练网络权值和这些缩放因子,并对后者进行稀疏正则化。函数损失可定义为:

利用BN层的缩放因子 :

Network Slimming 过程的结果是一个紧凑的网络,可以多次应用整个训练过程学习一个更紧凑的模型。

1.2 模型量化

  一般模型内部的计算都采用了浮点数计算,浮点数的计算会消耗较大的计算资源,如果在不影响模型准确率的情况下,模型内部可以采用其他简单数值类型进行计算,计算速度会提高很多,消耗的资源会大大减小,尤其对于资源受限设备来说,这点尤其重要。由此引入量化技术。从量化的bit数来区分,常用的量化技术有8 bit量化(int8 uint8)、二值化、三值化量化等。因为8 bit量化比较通用,易于实现,是我们重点研究的对象。下文描述的都是8bit量化。  从量化的过程来区分,量化大致可分为2种:存储数据为uint8(int8)格式,计算过程用float格式的量化,这种量化仅仅减少了存储的空间,并没有降低对算力的要求;有存储和计算过程都采用uint8(int8)的全量化,对存储空间和算力的要求都会在量化后大大减少。前一种方式利用价值不高,用的不多。后一种又分为三种方式:Post Training Quantization、Quantization Aware Training和Calibration Quantization(小批量数据量化)。Post Training Quantization 是直接量化训练好的模型。因为不能知道所有变量的范围,需要用户指定。因为不能区分各个layer的变量范围,量化精度较低。Quantization Aware Training 量化方式是在训练图上添加模拟量化算子(simulated quantization operations)来实现的,量化过程耗时长。Calibration Quantization 仅仅通过统计小批量数据的最大值、最小值等信息来进行推理时量化,量化过程迅速,精度和Quantization Aware Training量化方式相当。

2. Adlik做了什么

2.1 模型剪枝

  模型优化器采用了filter剪枝的方法。所谓filter剪枝,是指在裁剪卷积层kernel时,剪去了整个filter,这样,对应的卷积层输出的feature map也就被相应的剪去了。如下图所示,原本有4个filter的卷积核,当剪去了一个filter后,该卷积层的输出,就从原来的4个feature map变成了3个。

filter剪枝示意图

        如果在这个卷积层后面,还有一个卷积层,这层输出的feature map就是下一层的输入,即下一层输入的channel数也会相应的减少,对应的,下一层filter的channel数也要相应的变少。如下图所示,当卷积层的filter从4个裁剪成3个后,下一层卷积层的输入channel从4变成3,卷积核的filter也从4个channel对应的收缩为3个。

filter剪枝示意图:卷积层剪枝及剪枝后对后续卷积层的影响

范数剪枝是对训练好的模型逐层进行剪枝,减去那些最没有用的filter,使得在提升计算效率的同时,正确率下降的最少。每一层中,相对不重要的filter是通过计算权重的绝对值之和,即其L1范数来决定的。剪枝完成后进行微调,微调过程没有引入额外的正则项。对第i个卷积层剪除m个filter的过程如下:

  1. input channels为,对每一个filter,计算kernel权重的绝对值再求和

  2. 对filter按照进行排序

  3. 减去m个最小的对应的filter和他们对应的feature map。减去的feature map对应的下一个卷积层的kernel

  4. 生成了第i层和第i+1层的新的kernel矩阵,模型余下层的kernel权重拷贝到新模型中

  上述方法可以方便的对像VGGNet或AlexNet这样简单的CNN模型进行剪枝,但是不能直接用于像ResNet这样有shortcut的复杂网络。ResNet-50的bottleneck如图 4所示,是1个有着3层卷积的结构。对ResNet-50这类有shortcut的复杂网络剪枝时,考虑到剪枝后shortcut的feature map的个数要与bottleneck中最后一层卷积的feature map个数一致,故不能对每一层进行随意剪枝。在模型优化器中,采取了只对bottleneck的中间层进行剪枝的方式,这样不会影响到最后一层与shortcut进行相加。

ResNet-50的bottleneck结构

2.2 模型量化

        Adlik重点关注8bit量化,因为更易于在具体硬件上实现加速。经过测试发现,运行小批量数据集就能能得到精度损失很小的量化模型,可以得到相当高的量化精度。如下表所示,只采用100个图片数据,1分钟的时间,就可以量化完成ResNet-50模型,且精度几乎没有损失。

ModelbaselineCalibration Quantization
ResNet-5076.174%75.914%
LeNet-598.78%99.56%

3. 未来展望

        Adlik模型优化后续将致力于对剪枝算法的优化,希望用户能用更少的配置来实现对模型的剪枝。陆续增加对于蒸馏和自动化剪枝方法的支持。

参考资料

[1] https://github.com/Adlik 

[2] Michael Zhu and Suyog Gupta. To prune, or not to prune: exploring the efficacy of pruning for model compression. arXiv preprint arXiv:1710.01878, 2017. 

[3] Pool Jeff Tran John Han, Song and William J Dally. Learning both weights and connections for efficient neural networks. In Advances in Neural Information Processing Systems, 2015. 

[4] Shaopeng Guo, Yujie Wang, Quanquan Li, Junjie Yan. DMCP: Differentiable Markov Channel Pruning for Neural Networks.  arXiv:2005.03354v2. 

[5] Liu Z, Li J, Shen Z, et al. Learning efficient convolutional networks through network slimming[C]//Proceedings of the IEEE International Conference on Computer Vision. 2017: 2736-2744.

第 1 篇:对象池模式 (Object Pool) —— 裸机下的动态内存革命 摘要:嵌入式开发中频繁malloc/free会导致内存碎片和性能问题。对象池模式通过预分配固定大小内存块和位图管理,实现O(1)时间复杂度的内存分配/释放。相比malloc,对象池具有无碎片、确定性执行时间、更低内存开销等优势,尤其适合实时系统。文章详细解析了基于位图的对象池实现原理,包括核心数据结构、高性能索引算法和关键API设计,并对比了空间/时间开销,最后讨论了零拷贝队列、调试水印等进阶用法。该模式能显著提升嵌入式系统的内存使用效率和稳定性。 阅读详情

相关推荐

避坑指南:RFSoC数据转换器多片同步配置的7个致命错误

本文深入剖析了在配置RFSoC多片同步功能时,工程师最常遇到的七个致命错误。从Tile 0的强制启用、时钟域与SYSREF时序,到跨代器件兼容性、电源序列以及动态重配置的陷阱,文章结合实战经验,提供了从原理到调试的完整RF数据转换器配置指南,旨在帮助开发者高效构建相位一致的大规模射频采样系统。

weixin_28452161的博客 533

[剪枝]To prune, or not to prune: exploring the efficacy of pruning for model compression

To prune, or not to prune: exploring the efficacy of pruning for model compression 1 Introduction given a bound on the model’s memory footprint, how can we arrive at the most accurate model? 作者对比了两种等价的模型: (1) large-sparse (2) small-dense 2 Related work

onion_rain的博客 659

UE4游戏逆向实战:从HOOK明文包到自定义发包的完整流程(附加密算法解析)

本文详细解析了UE4游戏网络通信的逆向工程完整流程。从定位线程发包点、HOOK拦截明文封包,到逆向分析加密解密算法,最终实现自定义组包与加密发送。文章结合实战案例,为游戏安全研究和技术人员提供了一套清晰、可操作的方法论。

weixin_29009081的博客 1236

《To prune, or not to prune: exploring the efficacy ofpruning for model compre》剪枝还是不剪枝:探索剪枝对模型压缩的有效性

《To prune, or not to prune: exploring the efficacy ofpruning for model compre》剪枝还是不剪枝:探索剪枝对模型压缩的有效性

Together_CZ的博客 1019

基于STM32L4XX、HAL库的MAX13487EESA RS485总线收发器驱动程序设计

MAX13487EESA是一款3.3V供电的RS-485/RS-422收发器,由Maxim Integrated生产。PA4 (控制引脚) ---> /RE, DE (连接在一起)具有±15kV ESD保护的驱动器输出和接收器输入。半双工RS-485/RS-422通信。工业温度范围:-40°C至+85°C。工作电压范围:3.0V至3.6V。数据速率高达250kbps。

zhusl6688的博客 685

基于STM32设计的智能水产养殖系统(华为云IOT)(152)

当前设计的智能水产养殖系统主控芯片采用STM32F103RCT6,可以实现对水位、水温、水混浊度和PH值等参数的监测和控制,并且支持定时投喂功能。通过连接华为云物联网平台,将传感器数据上传到服务器,并通过Qt设计的Android手机APP来获取设备上传的数据,从而实现对养殖环境的远程监测和控制。

8828

​Adlik 云原生介绍

Pivotal作为云原生(Cloud Native)应用架构中先驱者和探路者,于2015年提出了云原生应用。

csdndevpress0035的博客 357

slew dreate,slew threshold与transition计算

​只看rise情况下,from pin取slew threshold10%-90%的区间,slew derate为1,计算得到transition为1.002e-10,to pin的slew threshold 为30%-70%,slew derate 0.5,从波形列表上取相近的值3.75e-10和8.75e-10,计算得到transition为(8.75e-10-3.75e-10)/0.5=1e-9,考虑精度和取值区间问题,基本符合工具计算的值,如下:​。如下示例,在.lib库中有定义以下内容。

m0_61544122的博客 793

To prune,or not to prune: exploring the efficacy of pruning for model compression

To prune,or not to prune: exploring the efficacy of pruning for model compression (ICLR 2018)论文摘要相关工作剪枝方法渐进稀疏方法

He_yuan_hong的博客 1317

【安全启动】HSM安全启动系统学习指南

HSM安全启动系统学习指南摘要 本指南为工程师提供关于HSM安全启动的系统性学习路径,以英飞凌AURIX TC377芯片为核心案例,涵盖基础理论、芯片实现、开发实践和行业应用四个阶段。安全启动作为设备信任链的起点,在汽车电子和工业控制领域尤为重要。指南详细解析了TC377的HSM架构、UCB/PROCON配置、密钥管理等关键技术,并提供了从开发到认证的全流程指导。特别关注汽车行业合规要求(如ISO/SAE 21434、UN R155),帮助开发者构建安全可靠的启动系统,规避常见工程陷阱。通过四阶段渐进学习,

weixin_46481662的博客 515

【数据分享】12.5米分辨率DEM地形数据(分省)

该数据来源于NASA地球科学数据网站(https://nasadaacs.eos.nasa.gov/),是ALOS卫星获取的高精度地形数据。该数据由于精度高,包括全省范围的数据和省内每个城市范围的数据!

JData_Engineer的博客 2171

【To prune, or not to prune: exploring the efficacy of pruning for model compression】论文笔记

[ICLR'18]论文链接:https://arxiv.org/abs/1710.01878 Tensorflow修剪库参考:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/model_pruning这篇文章的重点在于比较一个大疏模型和一个小密模型之间的模型精度和尺寸权衡上,试图仔细研究模型修剪作为模型压缩手段的有效性。文章还提出了一种简单的逐步修剪方法:需要最少的调整并且可以无缝地融入训练过程中。同样展示了其

我是一只比菜鸟还菜的菜鸟! 4152

【Halcon-2D测量】add_metrology_object_rectangle2_measure 函数功能(用于向2D计量模型中添加旋转矩形(rectangle2类型)计量对象)

HALCON算子add_metrology_object_rectangle2_measure解析摘要 该算子是HALCON 2D计量模块的核心算子,用于添加旋转矩形计量对象并配置测量参数。主要功能包括:定义旋转矩形几何轮廓(中心坐标、主轴角度、长短半长);生成垂直于矩形边界的测量区域;设置边缘提取预处理参数(高斯平滑、振幅阈值)。关键注意事项:MeasureLength1必须小于矩形长短半长;角度参数Phi需使用弧度单位;多线程需同步模型句柄。该算子适用于方形螺母、PCB板边框等矩形零件的精密测量,需与a

weixin_45590420的博客 1223

Adlik开发者教程:如何为自定义模型添加推理支持

Adlik是一个强大的深度学习推理加速工具包,它能够帮助开发者将训练好的模型高效地部署到各种环境中。本文将详细介绍如何为自定义模型添加推理支持,让你的模型在Adlik框架下发挥最佳性能。 ## Adlik推理框架概述 Adlik的核心是其灵活的推理引擎,它支持多种深度学习框架和硬件平台。Adlik的推理引擎架构如图所示: [![Adlik推理引擎架构](https://raw.gitcode

gitblog_00849的博客 417

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

大麦抢票自动化实战:从环境自检到自动下单的全流程拆解

大麦自动抢票系统(ticket-purchase)是一个基于 Python + Selenium + Appium 的开源抢票工具,把"选城市、选场次、选票价、选观演人、提交订单"这一串手速敏感的操作交给脚本完成,覆盖 Web 端(Selenium 驱动 Chrome)和移动端(Appium 驱动 Android 大麦 APP)两条路线。适合想在开售瞬间比手动点击更快一步的用户,本文按"跑起来 →

gitblog_00513的博客 944

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Adlik vs 传统推理框架:为什么它是AI部署的终极选择?

在人工智能应用快速发展的今天,深度学习模型的部署效率直接影响着AI产品的用户体验和商业价值。Adlik作为一款专注于加速深度学习推理的完整工具包,正在改变传统AI部署的游戏规则。本文将深入探讨Adlik与传统推理框架的关键差异,揭示为什么Adlik成为AI部署的最佳选择。🚀 ## 📊 Adlik与传统推理框架的核心差异 ### 端到端优化架构 传统推理框架往往只关注模型执行的某个环节,而

gitblog_00025的博客 495

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Adlik性能优化实战:提升深度学习推理速度的10个技巧

Adlik是一款强大的深度学习推理加速工具包,能够显著提升模型部署效率。本文将分享10个实用技巧,帮助你充分发挥Adlik的性能优势,实现更快的推理速度和更低的延迟。 ## 1. 选择合适的推理引擎 Adlik提供了多种推理引擎支持,包括TensorFlow、OpenVINO和TensorRT等。不同引擎在不同硬件平台上表现各异,选择最适合你硬件环境的引擎是性能优化的第一步。 [![Adli

gitblog_00509的博客 319

Adlik最新特性解析:v0.5.0版本带来了哪些革命性改进?

Adlik作为一款深度学习推理加速工具包,一直致力于为开发者提供高效、灵活的模型部署解决方案。v0.5.0版本的发布,更是在性能优化、多框架支持和部署灵活性等方面带来了诸多突破性改进,让深度学习模型的推理部署变得前所未有的简单高效。 ## 全新架构设计:三大部署环境无缝支持 🚀 Adlik v0.5.0采用了全新的架构设计,能够完美支持云、边缘和设备端三大部署环境,满足不同场景下的推理需求。

gitblog_00928的博客 428

介绍adlik代码项目

其价值在于整合了分散的优化技术(量化、剪枝、多引擎支持),为开发者提供“一站式”解决方案。它旨在为工业界和开发者提供高效、灵活的深度学习推理工具链,支持从模型优化到部署的全流程。- 运行时优化:针对不同硬件(CPU/GPU/TPU)自动选择最优后端(如 TensorRT、OpenVINO)。- 集成多种推理引擎(TensorRT、TFLite、ONNX Runtime),动态选择最优后端。- 统一接口:通过适配层支持 TensorFlow、PyTorch、ONNX 等框架的模型部署。

mrzyun0811的博客 373

Adlik发布v0.1.0(Antelope羚羊)版本,赋能深度学习模型产业化

6月15日,深度学习推理加速工具链项目Adlik发布了v0.1.0版本,代号Antelope 羚羊。这是中兴通讯将该项目在Linux基金会旗下AI基金会(LF AI)开源以来发布的第一个正...

LF_AI的博客 582

Adlik架构深度剖析:理解深度学习推理加速的核心原理

Adlik是一款强大的深度学习推理加速工具包,旨在显著提升模型部署效率与性能。无论是云端大规模部署还是边缘设备实时推理,Adlik都能通过其优化的架构设计,帮助开发者轻松实现深度学习模型的高效落地。 ## 一、Adlik整体架构概览 Adlik的架构设计围绕"高效推理"核心目标展开,采用模块化设计理念,实现了从模型优化到多环境部署的全流程支持。其整体架构可分为模型优化与编译、推理引擎两大核心部

gitblog_00897的博客 983

Adlik深度学习推理加速工具包:从入门到精通的完整指南

Adlik是一款强大的深度学习推理加速工具包,旨在帮助开发者优化和部署机器学习模型,实现高效推理。无论是在云端、边缘设备还是终端设备上,Adlik都能提供卓越的性能和灵活性,让AI应用部署变得简单高效。 ## 🚀 Adlik核心功能解析 Adlik作为深度学习推理加速工具包,主要包含两大核心组件:模型编译器(Model Compiler)和推理引擎(Inference Engine)。这两个

gitblog_00687的博客 1002

Adlik喊你来体验Cheetah版本啦

今天Adlik的新版本Cheetah如约而至。相较于上个版本,我们做了很多优化,在MLPerf的测试中有不错的表现。看看下面的新特性,哪个是你感兴趣的呢?快来下载体验,期待你的反馈哦。模型...

LF_AI的博客 239

Adlik Cheetah版本云原生镜像上线,快来下载使用~

Adlik Cheetah版本云原生镜像上线啦。首先,我们先复习下Cheetah版本的主要特性,包括:模型编译器:扩展支持多种新的深度学习框架,包括PaddlePaddle, Caffe,...

LF_AI的博客 380

Adlik在深度学习异构计算上的实践

Adlik首先在架构上支持多类异构硬件和计算引擎,也在FPGA异构计算上完成了一些技术实践,后续将继续进行特定硬件上的计算优化技术的研究,来加速推动AI模型的工程应用。...

csdndevpress0035的博客 359

Adlik深度学习模型编译器介绍

★将深度学习模型部署到生产环境实现应用是深度学习算法落地的重要一步。部署阶段的场景和目标设备多种多样,目前针对不同设备有不同的推理框架,如Tensorflow Serving、Tensor...

LF_AI的博客 1058
上一篇: 倒计时3天,快来参加Adlik模型推理优化挑战赛!
下一篇: Adlik和Paddle达成合作意向,共同推进深度学习技术在通信领域落地
Linux基金会AI&Data基金会
博客等级 码龄6年 100粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linux基金会AI&Data基金会

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值