首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

浅谈有赞搜索QP架构设计

作者:数据中台 前言 在介绍QP前先简单介绍一下有赞搜索平台的整体设计,方便大家快速了解QP在搜索平台中的作用。下图简单展示了一个搜索请求开始到结束的全部流程。...文章主要分为5个章节: QP的作用 QP应用整体设计 QP应用分层设计 QP算法插件设计 总结与展望 一、QP的作用 在NLP中,QP被称作Query理解(QueryParser),简单来说就是从词法...二、QP应用整体设计 上图完整描述了QP请求流程和配置流程的执行情况。当搜索请求到达QP时,根据请求体中的场景标记获取QP配置。QP配置中包含搜索词位置标记,插件列表,dsl改写脚本等内容。...service层:根据场景获取QP改写配置,获取dsl里的搜索词,调用相应的插件返回qp结果。...五、总结与展望来展望 本文从QP整体设计,分层设计,插件设计较为完整的介绍了QP的架构设计。目前经过一年多的迭代,QP已经实现业务场景小时级接入,优化了零售,微商城,精选,爱逛,分销等场景搜索效果。

1.3K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    在浏览器中分析AV1码流

    分析器由两个组件组成:decoder.js,它是编解码器的Emscripten编译版本和基于HTML的UI前端。...要分析一个视频,我们只需要指定一个视频文件(采用* .ivf格式)和一个适当参数的decoder.js文件来解码它。 analyzer.html?...decoder=decoder.js&file=a.ivf&file=b.ivf 在上面的链接中,analyzer.html加载解码器,并用它解码2个码流a.ivf和b.ivf。...decoder=aDec.js&file=a.ivf&decoder=bDec.js&file=b.ivf 这种方法的优点在于你可以轻松共享链接到解码的视频,而且所有这些都在浏览器中运行,无需维护任何服务器基础架构...Emscripten解码器其实使用起来足够快了,但它可以优化的更快。在高位深度模式下编解码器使用64位计算,需要在asm.js中模拟因为它缺少64位整数计算方式。我所知道影响性能约10%~20%。

    65530

    量化参数(QP值)vs 恒定质量(CRF)

    目录 QP(Quantizer Parameter)量化参数 CRF(Constant Rate Factor)恒定质量 QP(Quantizer Parameter)量化参数 QP,Quantizer...实际上,量化参数(QP)反映了空间细节压缩情况,比如 QP 值小,更多细节就会保留;QP 值越大,就会丢失更多细节,视频画面的清晰度就会越低。...用专业术语来说,就是使用相同的量化参数 QP。这个量化参数 QP 定义了从一个像素宏块中丢掉多少信息,通常会导致整个视频序列的码率不稳定。 不过,这里所说的 CRF 比恒定量化参数要复杂一点儿。...CRF 会对每一帧压缩不同的大小,为了让主观的质量感受差不多,会用不同的 QP 值,这样就要求把视频运动向量指标也考虑进来。在恒定量化参数模式的编码中,如果 QP=18,那么每一帧都是 QP=18。...如果是 CRF 模式,设置 CRF=18 的时候,对于运动比较大的场景,会把 QP 值设得更高一些,对于运动比较比较不剧烈的帧,会降低 QP 值,这会导致比特率的分配随时间变化不同。

    4.5K10

    ChirpStack 笔记 2.7 JS解码函数的使用

    前言 LoRa 设备的数据格式非常碎片化,借助于 JavaScript 编解码函数,可将设备的原始数据转换为可读性更强的 JSON 格式。...这就是我们今天重点介绍的 JS解码函数。可将设备的原始数据转换为可读性更强的 JSON 格式。...1.1 编解码组件的 API 使用 除了 WEB 界面之外,启用编解码函数,只需要相应在创建 device-profiles 新增字段,以字符串形式将 JavaScript 代码传递进去就好了。...4 JS Encode 实践 假定要下发一个周期,{“period”: 300},经过 Encode 函数后取出2字节的周期数据下发给设备。...小结 这一节笔记学习了一个强大的功能 JS解码函数,可以灵活将设备的原始数据转化为 JSON 格式数据。同时学习了必要的 JS 语法,并做了上下行的demo示例,供朋友们参考。 END

    4K10

    原生JS实现base64解码与编码

    如果还不理解再举一些栗子 未编码的字符串:BD 对应的二进制数据: 010000 100100 0100 对残缺的二进制进行补足:010000 100100 010000 000000 编码后:QkQ= 关于解码...这里不做详细解释,因为知道编码规则后,反过来就可以实现解码了。...原生JS实现其编码与解码 如果对JS熟悉的同学,可能会想到window对象的atob()和btoa()方法。但是只有在较新的游览器中才能使用,面对老的游览器,我们只能靠原生的JS自己造轮子了。...这里依然存在两个问题: 如何将字符串解析成二进制数据 如何对中文字符进行编码 JS解析字符串为二进制数 首先在页面中所有的字符串都是基于unicode编码的,然后js的字符串中刚好有charCodeAt...但是在JS已经有现成的方法了。

    11.5K10

    H.264码流结构及QP值提取

    Set,序列参数集 NAL uint_type=7 包括了一个图像序列的所有信息(包含的是针对一连续编码视频序列的参数,如标识符seq_parameter_set_id、帧数及POC的约束、参考帧数目、解码图像尺寸和帧场编码模式选择标识等...的EsEye工具读取H264裸码流生成 2、片头 slice_header.slice_qp_delta:当前片所有宏块的量化参数初始值QPy     SliceQPy = 26 + pic_init_qp_minus26...+ slice_qp_delta,取值范围是0, 51 [片头] 3、宏块 mb.mb_qp_delta:宏块量化参数偏移值, 取值范围是-26, + 25,指示的偏移是前后两个宏块之间的偏移 片中第一个宏块的...QP = 26 + pic_init_qp_minus26 + slice_qp_delta 后续宏块的QP = (QPprev + mb_qp_delta + 52) % 52 [宏块] 4、一帧图像的统计...图像的最大最小qp值 [图像的最大最小qp值] Exp-Golomb指数哥伦布码 指数哥伦布码(Exponential-Golomb)属于熵编码,属于无损编码 H.264中使用的是0阶指数哥伦布编码,

    5.2K30

    技术解码 | CMAF技术解码及实践

    本期的技术解码 为大家带来CMAF技术的详细解析 在当今如火如荼的直播产业中,运行着各种各样的流媒体封装及传输协议,比如广电行业应用最多的HLS、风靡互联网直播平台的RTMP、HTTP-FLV以及海外...CMAF Chunk是在直播编码器中,在一个CMAF Segmetn没有完整产生的情况下可以被分成不同的块进行传输分发,用这种方法能够使每一个CMAF Fragment能够渐进式编码、传输以及播放器的解码...测试播放器:DASH.js 效果:整体效果看,CMAF比普通的MPEG-DASH流降低了15s左右的延迟。当然,测试效果和播放器的策略有一定相关性。...图14.CMAF中m4s分片结构图 图15.普通MPEG-DASH中m4s分片结构图 关于播放器兼容性: 目前我们测试验证主要基于几款开源的web播放器,比如DASH.js、THEOplayer。...Format for Segmented Media-ISO/IEC JTC1/SC29/WG11 N16186. 2.https://github.com/DASH-Industry-Forum/DASH.js

    3.8K40

    从方块效应&呼吸效应看编码量化参数对流控的作用

    如果采用定码率,这个时候为了高的压缩率则会看到量化值QP比较大,所以我只要确认设备端是不是设置了这种编码方式,其次解码看下花屏马赛克比较大的帧对应的宏块QP值是不是比较大即可,一般会超过40多。...解码写下来的裸流H.264对应静态画面的QP值和剧烈运动出现花屏部分的QP值 ? 我们发现画面静止不动时QP值基本就在30-35之间,然后出现方块效应时: ?...简单说就是视频编码的最小单元不是帧是宏块,每个宏块可能编码细节处理不一样,这样解码出来会发现视频中出问题总是一小块一小块的,一帧画面出现马赛克的地方有些区域很严重有些则能好点。...其中该压缩过程是有损的,一般地随着量化参数QP的扩大,图像的损失将变大。解码过程需要进行一次反量化-反变换IDCT 还原残差,后再根据参考宏块还原原始图像。...QP取最小值0 时,表示量化最精细;相反,QP取最大值51时,表示量化是最粗糙的。 C. QP和Qstep具有线性相关性,Qstep随着QP的增加而增加,每当QP值增加6,Qstep便增加一倍。

    2.5K20

    谁说阿尔法狗们只会下棋玩游戏?DeepMind用它们给油管视频做压缩

    大多数在线视频依赖于编解码器在视频的源头对其进行压缩或编码,然后通过互联网将其传输给观众,最后再解压或解码播放。这些编解码器为视频中的每一帧做出多个决定。...他们的首个研究对象是被 YouTube 和其他流媒体服务广泛使用的 VP9 编解码器(特别是开源版本 libvpx)。与其他编解码器一样,使用 VP9 的服务提供商需要考虑比特率。...在编码视频时,编解码器使用之前帧的信息来减少未来帧所需的比特数。 在 VP9 中,优化比特率最直接的方法是借助速率控制模块中的量化参数(QP)。这个参数决定了每一帧要应用的压缩级别。...给定一个目标比特率,视频帧的 QP 按顺序决定,以实现整体视频质量最优化。直观地说,我们应该为复杂场景分配较高的比特率(较低的 QP),为静态场景分配较低的比特率(较高的 QP)。...QP 选择算法解释了视频帧的 QP 值如何影响其他视频帧的比特率分配和整体视频质量。强化学习对于解决这类序列决策问题特别有帮助。

    60520
    领券