您当前的位置:首页 > 电脑百科 > 程序开发 > 算法

音视频算法在淘宝中的应用

时间:2021-05-19 09:34:34  来源:LiveVideoStack  作者:王立波

近年来,内容业务在行业蓬勃发展。淘宝也在积极进行内容化转型,今天我们邀请到阿里巴巴淘系技术高级算法专家——王立波(庄恕),回顾淘宝从图文到短视频直播的发展历程,介绍音视频算法在其中的应用和未来的投入方向包括编解码、视频处理、音频通讯与互动。

 

文 / 王立波(庄恕)

整理 / LiveVideoStack

 

很高兴与大家进行交流与分享,首先介绍一下自己,我是来自淘系技术部的王立波,花名庄恕,今天分享的主题是音视频算法在淘宝中的应用。刚接到这个任务时,觉得题目特别大,可以讲的东西特别多,经过考虑我还是决定集中讲3个观点,可以为大家介绍得更详细。

音视频算法在淘宝中的应用

 

这三个观点分别是:视频压缩有效降低成本(这个观点在业界应该已经被大家所接受)、视频处理提升画质体验(随着阿里云的窄带高清的推广,也逐渐被大家接受)、音频技术是新的生产力(这是淘宝过去1-2年发力探索的方向,希望能够为行业带来新的思考)。

 

01 业务介绍

音视频算法在淘宝中的应用

 

首先我简短介绍一下淘宝的内容业务。随着通信技术的发展,互联网内容生态从2G时代的文字,过渡到3G时代的图片,再到4G时代的直播和短视频;对于淘宝来讲,同样也面临“内容化”的全面升级。

 

淘宝从PC走向移动,从图文走向直播短视频,从传统电商走向内容电商再到发现电商、兴趣电商。在过去的2020年,淘宝直播的GMV突破4000亿,去年双十一一天之内有超过7亿人次观看淘宝直播;2020年底随着点淘,逛逛的推出,短视频成为内容业务发展的新引擎;在这个飞速发展过程中面临巨大的成本压力。

 

02 视频压缩有效降低成本

 

2.1 从图片压缩说起

 

音视频算法在淘宝中的应用

 

第一个观点,视频压缩有效降低成本。

 

说起编解码,可能不得不先提图片压缩了,这是一张小小的商品详情图,在直播短视频兴起之前,图片是大家获取信息主要手段,随着用户增长,成本压力越来越大,过去几年中,淘宝图片日均播放量超过千亿次,如果通过降低质量来降低成本会牺牲大家的体验,所以我们希望依靠技术升级来提高压缩效率。

 

2.1.1 图片压缩标准的演进

 

音视频算法在淘宝中的应用

 

大家应该很熟悉图片压缩。图片压缩实际上是一个去除空间冗余的过程,从标准发展上来看,主要经历了JPEG,基于VP8内核的WebP,以及HEVC MSP三代。

 

这里我对各种格式做了一个简单总结,JPEG是目前使用最广泛的图片压缩标准,从1992年公布至今已经接近三十年,它非常简单高效。10年前左右,google基于VP8内核发布了WebP格式。WebP在块划分,预测,变化,量化,熵编码方面比JPEG更优,且增加了Deblock功能;HEVC则比WebP更进一步,通过多个工具的升级来提升压缩效率,另一方面,由于Tile划分及Wpp技术的引入,HEVC给Codec工程实现提供很多并行化的手段,这对现代多核CPU来说比较友好。

 

为了比较三种格式在不同场景数据集下的压缩效率,我们设计图中实验。得出的结论是WebP比JPEG大约提升29%的压缩性能,HEVC对比JPEG大约提升接近50%压缩效率。

 

2.1.2 淘宝自研APG格式

 

音视频算法在淘宝中的应用

 

APG是淘宝自研的图片格式,有三个特点。第一,有非常高的压缩效率,对比JPEG节省50%码率,非常接近HEVC;第二,高效率的移动端解码器,对比Webp减少20%解码时间;第三,支持Alpha通道和动图,动图被广泛使用的是GIF格式,而GIF没有考虑到帧与帧之间的相关性,压缩效率不高,而APG对比GIF节省10倍体积;

 

除此之外,我们对整个系统的架构方面也进行了大量工作,比如高并发实时响应、CDN的下发策略、存储和计算分离,多内容灾等策略,最终实现了淘宝千亿级的实时图片处理系统,在大大节省业务成本的同时也保障了画质体验。

 

2.1.3 内容业务进化为视频为主

 

音视频算法在淘宝中的应用

 

随着内容业务的进化,视频和直播占据了主要流量。一方面信息表达从空间维度拓展到时间维度,另一方面,分辨率也提升到720P,1080P甚至4K,消费时长也成倍增长,(刚才陈老师有数据,每个人花费在视频的平均时间可能有好几十分钟)。我们也知道,每一代视频压缩标准相比上一代有50%的码率节省,从MPEG4到H.264/AVC到H.265/HEVC,再到去年发布的的H.266/VVC,很自然我们会想到通过升级编码标准来节省视频成本。

 

2.1.4 HEVC在视频业务落地挑战

 

音视频算法在淘宝中的应用

 

首先我们探讨一下HEVC在视频业务落地的挑战。HEVC标准在2013年公布已有8年时间,但直到最近几年才在业务上大规模落地,这里主要有以HM下几个原因:

 

首先是编码速度,H265的官方模型HM,在普通PC上编码720P视频时只能达到0.1fps,想象一下,压缩一段十分钟的视频需要花费一天甚至几天的时间。业界最好的开源编码器X265,在慢速档也只有6.8fps,距离30fps实时编码的需求有相当大的差距;

 

其次是编码质量,由于复杂度的原因,X265仅比X264节省18%的码率,远远达不到HEVC相比AVC理论上的上限值(HEVC标准在设计时以50%的码率节省为目标);

 

第三是码率控制,业界有许多场景的码率控制方法,比如ABR、CBR、CRF,但现在实时音视频的业务场景非常复杂,无法直接使用这样的码率控制方法;

第四是解码的兼容性和性能,也是大家普遍关心的问题。用户观看环境多种多样,有AndroidIOS、Web的H5观看,H265在H5上的支持不太好,限制了它的发展,硬解设备兼容性也不完善,所以在解码兼容性方面也面临着很大的挑战。

 

2.1.5 S265编码内核优化

音视频算法在淘宝中的应用

 

S265编码器是2017开始研发的,花费三年多时间使之达到较好的状态。我们主要在编码工具、快速算法、工程优化、码控方法、框架优化方面做了大量的优化工作从而提升压缩效率和编码速度。

音视频算法在淘宝中的应用

 

下面为大家详细介绍一下速度优化的相关技术。

 

1、Cu深度预测算法,HEVC的块划分从64划分到8*8,深度有4层,如何预测出CTU的划分深度是具有挑战性的事情。HM为了确保编码性能会对每一层都计算其RDcost,我们这里结合纹理复杂度、时空域相邻块及前处理运动信息,做到比较准确的Cu深度预测。进一步深度预测方面有许多研究,比如一些机器学习,深度学习的方法能够精准预测块的划分层级。

 

2、自适应的EarlySkip算法和RecursionSkip算法。这两个算法比较类似,EarlySkip的目的是在本层跳过其它模式的计算,而RecursionSkip目的是跳过当前层不再Split。X265也有类似的技术,我们比X265更进一步,做RS时会同时考虑skip和merge模式子块的satd,做ES时,会同时考虑最佳模式的cost大小避免残差过大,我们的结果做到在相同速度条件下对比X265相当程度的节省码率。

 

3、All Zero Block的检测。如果一个块经过量化后是全零块,就没有必要进行RDO及编码了,但怎样预测一个块是All Zero Block。我们发现一种方法可能适合于一种大小的块,在8*8中比较准确,但放在32*32中不可用,所以要根据块大小及内部纹理强度,更加精确地预测出是否是All Zero Block。

 

4、Fast Intra Prediction。这个技术有很多人研究,H.265总共有35种预测方式,如何快速找到预测角度,有许多相关论文。我们使用Bayes估计模型,在横向及纵向找到准确方向,再去做细分角度预测,提高角度预测的速度。

 

5、分像素的搜索。传统的分像素的搜索在整像素最佳点上下左右找4或8个点,相对来说计算量比较大,根据整像素结果通过误差平面估计模型推导出分像素点的位置,从而节省分像素的计算个数。

 

6、多参考帧的选择。为了提高压缩效率,现在的编码器会选择更多参考帧,比如在一个方向选择3到4个参考帧,我们会根据参考帧的质量,距离来做加权,选择适合的参考帧。在拿到一个比较好的结果后如何提前跳出其它参考帧的遍历?多参考帧是提升压缩质量的一个很好选择,但需要避免计算复杂升高。

 

7、Distortion的快速估计。在RDO过程中要对误差进行仔细估计,如果用传统下的SATD做的话,效率不高,但如果做完整的RDO计算非常耗时,所以我们有残差的预估模型,从量化后的系数中用模型推导出Distortion的结果避免再做反量化,反变化。还有像Bits估计,RDCost的另一个分量是Bits代价,用一次完整的熵编码会非常耗时,如果用一个分段线性模型能够估算出来Bits来,我们就可以快速做出RDO的计算。

 

其它的比如Deblock,SAO优化偏一些工程方面手段。

音视频算法在淘宝中的应用

 

除了快速算法之外,我还对压缩性能做了一些总结,速度不变的前提下,相比于X265,我们有>30%的性能增益。我们的编码器在以下几个方面有性能收益:

 

1、第一个码率控制。码率控制的目标是把码率分配到更有价值的地方。它分帧级别码控和块级别码控。在帧级别码控中,我们对I帧码控和P帧码控做了精确的预分析,在块级别码控中,我们设计了增强型的Cu-tree算法。

 

2、分层B帧以及参考结构的优化。分层B帧在实现方面不难,对压缩效率方面有大的帮助。前面介绍了GOP结构的优化,我们会对参考帧的选择会做权衡。

 

3、大家知道在静止场景下,分层越多压缩效率越高,但在运动场景就不那么有效,所以我们实现了自适应的GOP Size,并自研了Scenecut算法。能够适应不同运动强度、场景切换的需求包括淡入淡出的需求。

 

4.此外,在Bi-Search,GPB,LTR这几个工具,在开源软件X265是没有的,但对提高预测效率很有帮助;MCTF工具对编码噪声的去除非常有帮助,我们将这几个技术加入到S265之后获得了5%以上的BD-rate收益。

 

5、2-pass是在求解一个全局最优的Qscale,它在离线转码场景中被用到,允许对视频做更多分析,但在求解过程中,失真度量是MSE,我们对度量函数进行了重新推导,获得5%压缩性能;

 

6、Dynamic CRF和Pboffset,常规做法是是固定帧级P,B帧的Offset,我们会根据帧的复杂度来调节帧级QP值;

 

7、AQ和RDO的代价计算通常基于MSE,但如果是针对SSIM指标的话,可以推导SSIM的模型,RD也一样。

 

8、针对会议场景,我们还实现了IBC工具,对PPT投屏有帮助。并专门设计了对屏幕内容优化的搜索算法,传统的快速算法如菱形搜索、六边形搜索在SCC场景下效率很低,很难找到最优解,但如果用自研的算法搜索就有较好的效率提升。

音视频算法在淘宝中的应用

 

上述是S265技术的介绍,记得在2016年的时候,金山KS265第一次参加MSU比赛获得了非常好的成绩,后来国内有不少同行参赛也获得了不错的名次。阿里巴巴S265从2017年开始投入研究到2020年首次参加MSU比赛, 我们在比赛中获得了3项第一:1080P 30FPS PNSR指标第一、1080P 1FPS PNSR指标第一、1080P 30FPS主观质量第一。

 

2.2 场景自适应编码

 

音视频算法在淘宝中的应用

 

除了核心编码器之外,在编码器应用方面,我们还自研了一套场景自适应编码方法,分为三个步骤:

 

1、视频分析:利用机器学习方法做视频切分,并得到高层语义分类,比如动画,体育,秀场,商品介绍等;

 

2、另一个维度看利用信号分析手段检测出视频的底层特征,比如运动强度,纹理特征,噪声强度,亮度特征等,根据高低维度信息决定编码参数。

 

3、自适应决策引擎(ADE):根据语义特征和信号特征以及网络状况,决策出最佳编码参数组合。这个决策过程被建模为一个带约束优化模型;

 

2.3 S265解码提升覆盖率

 

音视频算法在淘宝中的应用

 

一直以来,H265的解码兼容性是大家关心的话题,假如生产端编码出265码流,但播放端不能支持265解码,需要在服务端转码成264格式,这不仅不能减少CDN带宽,反而会增加转码成本。在解码这一侧我们做了很多工作:

 

1、硬解码适配。对市面上基本所有机型(>1000款)都进行了适配;

 

2、自研高性能Native H265解码器,在小米5 720P的设备上做测试得到240帧左右的速度,通过很低的功耗实现实时解码。

 

3、H5的解码。H.265在H5中没有支持,我们基于WebAssembly技术来支持H5的播放。目前可以做到在i7电脑上1080P 30fps的实时解码,CPU消耗在30%以内;

 

2.4 淘宝编码器落地历程

 

音视频算法在淘宝中的应用

 

基于以上的编解码内核和应用方面的探索,我来介绍一下淘宝编码器的落地历程。2017年开始投入S265的研究,经过一年多时间,开始在直播业务的落地;2019年的Q1第一版上线后结果不算太好,大约节省30%码率;2020年Q1第二版上线后节省40%码率;今年的Q1第三版结合窄带高清技术实现了50%码率节省。短视频方面,我们尝试将S265应用到淘宝短视频转码,2019年Q3第一版上线,2020年上线第二版。

音视频算法在淘宝中的应用

 

基于在S265核心编码器上的积累,我们从2020年Q2开始了S266编解码器的研发工作,并率先在行业内公布了可商用的S266解码器。

 

解码器方面对比VTM实现单核3.5倍提速,多核16倍提速;在高端的手机iphone12、P40)实现4K 30FPS解码,低端手机720P双核实现30FPS解码。720P内存消耗<35m< span="">和Binary<1m< span="">,对大型App来说非常关键,包过大时安装下载会受阻。

 

我们内部正在做VVC编码器,目标是1FPS Slow档对比X265 Veryslow节省50%码率;30FPS Fast档对比X265 Medium节省40%码率。大家知道VVC比HEVC会更慢,一段1分钟的4k视频用HEVC的HM压缩需要几天,而如果用VVC的VTM则可能需要一个月,时间消耗会非常长。目前我们Slow档已经做到比VTM提升100倍速度但是压缩效率接近。

音视频算法在淘宝中的应用

 

总结一下,淘宝的S265智能编码方案目标是让视频更清晰,覆盖所有业务场景,包括图片压缩、会议SCC、直播、云转码甚至云游戏。

 

业务策略上包括场景分类自适应、智能码控、针对不同场景的延时需求,做延时的适配及优化(在非常低的延时下达到接近不限延时的压缩效率)、算力自适应(根据不同的设备自适应调节编码的速度档次)。

 

编解码内核包括码控及前处理、编码工具集、快速算法,编码框架等优化。

系统平台包括基于ARM平台的(armV7/arm64)及X86实现(SSE/AVX)、目前在考虑基于FPGA、ASIC的实现,还有质量评价系统和训练集群来辅助编码器研发。

 

03 视频处理提升画质体验

 

下面介绍视频处理提升画质体验的观点。

 

3.1 视频处理提升画质

 

音视频算法在淘宝中的应用

 

视频失真来源于很多方面:包括过曝失曝、缩放、失焦、频闪、色彩损失、压缩损失、噪声、抖动、帧率下采样。我们有自己的视频增强工具集做对应适配比如去块失真(DeBlk)、超分辨率(偏向端侧的和服务端不同版本的模型)、纹理细节增强、视频去抖(DEI)、色彩增强、暗光增强、时空域去噪。

 

3.2 淘宝短视频窄带高清转码

 

音视频算法在淘宝中的应用

 

淘宝短视频的整个转码迁移到窄带高清技术上,从视频生产链条分为内容编辑、上传(上传要求上传成功率高、速度快,我们有多PASS上传,切分上传、转码、审核(有低质、失真视频需要筛选)、播放(根据播放设备能力做后处理及渲染)。

 

向大家介绍一下转码服务,它的核心技术是窄带高清和S265,分别有两个视觉处理模型。首先是窄带高清的处理模型包括质量分类,细小纹理去除、脱焦区域弱化(节省码率)、易感知纹理增强(增强视觉体验)、人脸保护(避免过度增强引起体感不好)、马赛克修复、去隔行扫描。S265视觉压缩模型有三个点,人眼感知与失真拐点(BD-rate曲线刚开始较陡,向后较缓,要找到高性价比的点,感觉不出更多的失真又可以达到合适码率)、码率与分辨率甜蜜拐点(不同码率在不同内容上适合于不同分辨率压缩。如果一个非常低的码率300K强行压缩1080P出来都是块主观体验很差,如果压缩540P、360P可以获得更高的视觉体验)、场景分类编码(不同分类场景适合不同编码参数、码率的选择)。

 

3.3 电竞场景中的美颜

 

音视频算法在淘宝中的应用

 

在内容生产中美颜作为一项基础功能,已经被人们广泛接受,但是常规美颜在电商场景中存在一些问题,比如过度美化,商品变色,背景模糊,资源消耗大等等;在PixelAI美颜中,我们使用了Face3D重建来保障形变的自然,使用AI肤色模型来保证美颜不会伤害到背景和商品。

 

3.4 HDR10端到端系统

 

音视频算法在淘宝中的应用

 

随着采集和显示设备的发展,HDR+10Bit逐渐有一些应用,我们觉得HDR10有三项核心技术:第一是动态范围。在低照度、曝光过度场景下帮助我们看清内容;第二是色域空间。支持BT2020提升色彩还原;第三是10bit位深。HDR对我们的商品还原会非常有帮助,因为电商直播和短视频中最核心的是还原商品而不是美化商品。

 

但HDR是一个端到端的系统,需要考虑到各种设备的兼容,所以我们做了一些适配来提升用户体验,比如普通相机拍出的内容就用普通通道传输解码,而一些高端设备支持HDR10,可以把内容做10Bit压缩,传输,在对端根据播放设备能力,做HDR To SDR、10Bit To 8Bit的转换来保证质量,对于好的手机就可以得到最好的HDR体验,一般手机也能得到基础的HDR体验。图中可以看到HDR技术使照片颜色更接近实物颜色。

 

04 音频技术提升体验和生产力

 

第三个观点是视频技术提升体验和生产力。音频在过去几年都伴随视频出现,而在去年Clubhouse的发布,大家觉得音频可以独立玩,这对音频技术来说是一个很好的启发。除此以外,音频的技术还可以辅助我们做内容的生产、审核及各种音频处理,个人认为音频会是后续很重要的生产力。

 

4.1 业务:用户数和时长

 

音视频算法在淘宝中的应用

 

对内容业务来说,最核心的是用户数和时长。对于技术来说,如何提升消费体验,提升主播生产效率,做好平台治理工作是核心工作。在这几个方面音频都可以起到非常重要的作用。

 

在主播角度,音频技术可以来做口播自动剪辑、来客提醒(不用一直守在电脑旁边)、开播辅助、字幕和配乐生成。在用户角度,音频的互动可以支持连麦、游戏、猜价格、语音评论。在平台角度,音频可以监管黄暴政、盗播、盗链、检测空镜。

音视频算法在淘宝中的应用

 

分享几个典型案例。第一,音频技术提高音质体验。这是一个简单的音频传输系统,采集、预处理、AEC/ANS/AGC、编码、网络传输(FEC/NACK技术)、对端(Jitter Buffer/NETEQ)、解码、重采样。要实现高音质体验,我们在每个环节都需要做非常细致的工作:采集中做高保真,双声道处理(Alidenoise、回声抑制、智能美声),编码中做自适应码率(HE-AAC),传输过程要保障传输质量QOS(FEC/NACK),接收中还需要原音频数据(PLC/NETEQ),播放中应用各种音效技术(3D音效、空间音效、重低音)来提升收听体验。

 

直播内容中,对音频的适配也非常重要。(陈老师提到一个例子:如果是音乐直播间,用普通模板做音质会很差,所以需要几套针对不同类型直播间的声音模板。)在这样的系统上,我们支持淘宝直播,语音聊天室等业务。

 

4.2 AliDenoise——让声音更清晰

 

音视频算法在淘宝中的应用

 

淘宝自研的AliDenoise技术是一个智能降噪技术,可以使声音更清晰。传统的降噪是根据时域傅里叶变换+维拉增益来做,痛点是对非平稳噪声抑制差,在低信噪比失效,而AliDenoise根据端到端的语音降噪,用数据驱动方式,基于先验信噪比方法做模型训练。还有Cache Buffer的流式处理以及1D卷积+模型小型化的工作,核心优势是降噪能力强、语音保真度高(我们做了一些竞品对比,AliDenoise的主客观指标都超过竞品)、极轻量小模型(1.6M的模型可以在普通手机实现降噪,且CPU消耗只有6%)、延时可控(可根据设备能力做延时调节)。

 

有三段音频,第一段是街边的场景,是原声;第二段是RTC处理后的效果(汽车走过的声音比较明显);第三段是AliDenoise处理后的效果,可以听出它对非平稳噪声的抑制很好,且人声保留度高。

街边场景-原声

RTC处理后的效果

AliDenoise处理后的效果

音频效果试听可访问:

 

音视频算法在淘宝中的应用

 

第二个例子是端上互动。直播答题是前几年非常火的互动玩法,2020年双十一点淘推出了猜价格活动,答题交互从触屏到语音,需要低延时、高并发、低误识率。如果用服务端ASR做,会需要上千台服务器来支持同时在线10万人。基于这样的痛点,我们采用了自研离线ASR技术,在端上做语音识别。可以做到模型大小13M,内存大小50M,字错误率1.3%,识别延迟<50ms的水平。

音视频算法在淘宝中的应用

 

第三个案例,语音技术可以辅助短视频的直播编辑生产。在“亲拍”APP中可以做到辅助“逛逛”的内容生产。内容生产中有非常多需求,包括删除无用片段、自动添加字幕,旁白、音乐标签,自动配乐、音频变速,变声,降噪。借助后台一整套技术和曲库(虾米1000万曲库、ASR以及信号处理算法),我们提供一键导入、一键编辑这样的音频功能比如停顿删除、感知配乐、自动字幕、自动变声。通过音频技术大大提高编辑效率,原先30min的编辑通过可以降到3min,质量也会比较有保证。

 

4.3 直播短视频音频解决方案——TaoAudio

 

音视频算法在淘宝中的应用

 

我们给淘宝业务提供了一套直播短视频音频解决方案——TaoAudio。在业务上支持淘宝直播、点淘、逛逛、亲拍、语音聊天室等需求。在应用方案上有直播看点、直播互动、直播安全、短视频编辑。在算法技术中有三个核心技术是音频处理、音频安全、语音交互。基础设施包括端上推力引擎、云上资源、端侧设备等。

 

总之音频的核心是良好的音质、很强的互动体验及平台安全,在未来可能还有丰富的音乐体验。

 

05 淘宝音视频算法的发展

 

最后和大家分享淘宝音视频算法的发展。

音视频算法在淘宝中的应用

 

1、下一代APG2要做到比前一代有更高的压缩效率;

 

2、S266的落地,将S266真实的应用到业务场景中;

 

3、AR+3D+多视角直播的探索。传统的直播已经固化很多年了,我们希望通过更多技术提高交互和沉浸式体验;

 

4、下一代窄带高清技术。以更高的质量和更低的成本呈现;

 

5、端侧ASR技术。前面提到的“猜价格”应用到ASR,还需要进一步提高准确率并降低成本;

 

6、场景自适应语音增强。传统的语音增强没有考虑到语音环境也没有做更多的自适应(比如在一个嘈杂的环境或是安静的环境分别要用怎样的模型),加入场景检测机制可以适配收音场景和听音的环境;

 

7、智能的音乐配乐服务;

 

8、大规模无参考评价系统。

 

以上是本次分享的内容,谢谢大家!



Tags:音视频算法   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
近年来,内容业务在行业蓬勃发展。淘宝也在积极进行内容化转型,今天我们邀请到阿里巴巴淘系技术高级算法专家&mdash;&mdash;王立波(庄恕),回顾淘宝从图文到短视频直播的发展历程,介...【详细内容】
2021-05-19  Tags: 音视频算法  点击:(173)  评论:(0)  加入收藏
▌简易百科推荐
前言Kafka 中有很多延时操作,比如对于耗时的网络请求(比如 Produce 是等待 ISR 副本复制成功)会被封装成 DelayOperation 进行延迟处理操作,防止阻塞 Kafka请求处理线程。Kafka...【详细内容】
2021-12-27  Java技术那些事    Tags:时间轮   点击:(1)  评论:(0)  加入收藏
博雯 发自 凹非寺量子位 报道 | 公众号 QbitAI在炼丹过程中,为了减少训练所需资源,MLer有时会将大型复杂的大模型“蒸馏”为较小的模型,同时还要保证与压缩前相当的结果。这就...【详细内容】
2021-12-24  量子位    Tags:蒸馏法   点击:(9)  评论:(0)  加入收藏
分稀疏重建和稠密重建两类:稀疏重建:使用RGB相机SLAMOrb-slam,Orb-slam2,orb-slam3:工程地址在: http://webdiis.unizar.es/~raulmur/orbslam/ DSO(Direct Sparse Odometry)因为...【详细内容】
2021-12-23  老师明明可以靠颜值    Tags:算法   点击:(7)  评论:(0)  加入收藏
1. 基本概念希尔排序又叫递减增量排序算法,它是在直接插入排序算法的基础上进行改进而来的,综合来说它的效率肯定是要高于直接插入排序算法的;希尔排序是一种不稳定的排序算法...【详细内容】
2021-12-22  青石野草    Tags:希尔排序   点击:(6)  评论:(0)  加入收藏
ROP是一种技巧,我们对execve函数进行拼凑来进行system /bin/sh。栈迁移的特征是溢出0x10个字符,在本次getshell中,还碰到了如何利用printf函数来进行canary的泄露。ROP+栈迁移...【详细内容】
2021-12-15  星云博创    Tags:栈迁移   点击:(19)  评论:(0)  加入收藏
一、什么是冒泡排序1.1、文字描述冒泡排序是一种简单的排序算法。它重复地走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地...【详细内容】
2021-12-15    晓掌柜丶韶华  Tags:排序算法   点击:(16)  评论:(0)  加入收藏
在了解golang的map之前,我们需要了解哈希这个概念。哈希表,又称散列表(Hash table),是根据键(key)而直接访问在内存储存位置的数据结构。也就是说,它通过计算出一个键值的函数,将...【详细内容】
2021-12-07  一棵梧桐木    Tags:哈希表   点击:(13)  评论:(0)  加入收藏
前面文章在谈论分布式唯一ID生成的时候,有提到雪花算法,这一次,我们详细点讲解,只讲它。SnowFlake算法据国家大气研究中心的查尔斯&middot;奈特称,一般的雪花大约由10^19个水分子...【详细内容】
2021-11-17  小心程序猿QAQ    Tags:雪花算法   点击:(24)  评论:(0)  加入收藏
导读:在大数据时代,对复杂数据结构中的各数据项进行有效的排序和查找的能力非常重要,因为很多现代算法都需要用到它。在为数据恰当选择排序和查找策略时,需要根据数据的规模和类型进行判断。尽管不同策略最终得到的结果完...【详细内容】
2021-11-04  华章科技    Tags:排序算法   点击:(37)  评论:(0)  加入收藏
这是我在网上找的资源的一个总结,会先给出一个我看了觉得还行的关于算法的讲解,再配上实现的代码: Original author: Bill_Hoo Original Address: http://blog.sina.com.cn/s/bl...【详细内容】
2021-11-04  有AI野心的电工和码农    Tags: KMP算法   点击:(36)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条