论文阅读:MHA、MQA、GQA的差异与共性

MHA、MQA、GQA差异 MHA:Multi-Head Attention,QKV 三部分有相同数量的头,且一一对应。每次做 Attention,head_i 的 QKV 做好自己的运算就可以,输出时各个头加起来就行。 MQA:Multi-Query Attention,让 Q 仍然保持原来的头数,但 K 和 V 只有一个头,相当于所有的 Q 头共享一组 K 和 V 头,所以叫做 Multi-Query 了。 实现改变了会不会影响效果呢?确实会影响,但相对它

搜索系统:视频搜索离线指标与在线指标

背景 搜索是一个以相关性为基础,辅助消费、权威、质量、时鲜等多目标的复杂系统。 各位看官在搜索引擎输入一个Query=“如何在mate 40上连接wifi”,我们优先考虑的是排序的doc是否与Query相关,根据相关的程度,可以有不一样的定义: doc内容 相关性得分 解释 doc内容就是在介绍华为mate 40怎么连接wifi 3 用户输入Quer

C++漫谈:继承、dynamic_cast、纯虚函数、protected,一场多态之旅

背景 做算法策略过程中,常常会存在这样一种情形:由于业务压力或者岗位性质的缘故,做算法、策略的同学(也包括我自己),对于一些工程上的实现,往往只追求尽快实现、拿到收益,而忽略了实现过程中,代码的复用性、可读性。 举个例子,某模型AB版本不断迭代,当模型特征输入、推理、业务发生小的差异时,为了追求尽快实现拿到收益,会出现很多的冗余代码,代码量急剧膨胀,可行性也变得比较差,推高维护成本。比如在实际中遇到的一个例子: class NNPredict { bool Re

C++漫谈:为C++实现的功能提供Python API接口-Pybind11

兴趣与业余时间开发的CVTK项目,除了继续完善和添加算法到CVTK外,还计划提供Python API,便于Python调用。在为CVTK添加Python API支持的过程中,调研了下C++/Python绑定库的情况。目前支持C++/Python绑定库,比较主流的有四大流行库,分别是: Pybind11 Boost.Python SWIG Cython 关于Pybind11、Boost.Python、Cython、SWIG(Faiss的Python接口,

C++漫谈:从std::move到移动构造函数

半年之前,写到的一个代码(示例): vector<string> vc; vc.push_back(string_value); 因为在搜素场景,耗时毫秒必争。cr的时候,review的同学建议改成: vector<float> vc; vc.push_back(move(string_value)); 这样修改后的好处: C++ 标准库使用比如vector::push_back等这类函数时,会对参数的对象进行复制,连数据也会复制.

读书笔记:如何了解一个新行业—读《碳中和:从绿到金》

周末读《碳中和:从绿到金(2021年第5期)》时候,发现这是一本好书,让大白菜了解了代码之外的另一个世界—碳中和行业发展基本情况、以及该行业龙头企业在做的事情和布局。在读的过程中,有比尔·盖茨写的一篇「气候经济的五大关键问题」文章,里面比尔·盖茨讲的他怎么研究气候变化这一全球性课题的思考方法,讲得特别有启发性,当你试着去了解一个不熟悉行业的时候。 用比尔·盖茨自己的话说,这套思维框架对他大有助益:先试着掌握了整体情况,因为这可以让我获得相关的背景知识,便于我理解新的信息。另

量化索引:Scalar Quantization标量量化

本篇是对之前写过的几篇涉及到向量索引博文的系统整理和补充,分别为: 向量索引 Asymmetry Problem in Computer Vision 再叙ANN Search 十亿规模的深度描述子如何有效索引 基于内容的图像检索技术 背景 在工作中遇到这样一个场景:通过多模态学习到的64维video embedding,在搜索精排的时候,需要实时取到前K(K>=300)个结果对应的video embeddin

视频检索:Videntifier与NV Tree

在视频多帧排序里,大白菜有提到过Videntifier这家做图像、视频检索的公司,在这篇博文里,详细介绍下这家公司以及该公司的主要检索技术。 Videntifier概况 Videntifier科技公司是一家冰岛的软件公司(员工大概17个),成立于2007年9月,该公司起源于雷克雅未克大学的数据库实验室,Herwig Lejsek从2007年到2019年任CEO(卸任后任董事会成员),在博士期间就从事这方面的研究。Videntifier主要构建于两项专利技术——视觉指纹技术

机器视觉:All about Sequence Matching

十年饮冰,难凉热血。 6月22日,在内部分享关于序列匹配一些总结与感想,并以SuperGlue为例,介绍了序列匹配典型方法。对序列匹配感兴趣的同学,可以在这里下载到对应的slides:all-about-sequence-matching-and-alignment-2020622.pdf。