首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://my.oschina.net/u/4598014/blog/4905585

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

离散与提炼——一些关于向量召回算法优化方法的思考

✏️ 作者介绍: 周语馨,高级云智能工程师 最近做的很多向量召回的相关工作,主要集中在优化Faiss里面常用的几个算法,包括 IVFFlat 和 IVFPQ,并且针对这两个算法都做出了专门的优化。 前一阵子灵光乍现,想到了一种与具体算法无关的(或者更严格地说,与具体算法相关性较小的)优化方法,可以优化诸如 Flat、IVFFlat 或者 HNSW 等算法。我称之为“方法”而不是“算法”,是因为它遵从原有算法的逻辑,只是在计算过程中大幅降低了内存带宽,从而提升性能。因此经过优化的算法在召回率等方面完全不变。我把这种方法称为“离散与提炼(Discretize and Refine)”,以类比于 Google 的“Map and Reduce”,强调其方法论的地位。 开门见山,先来说说“离散与提炼”最核心的思想: 离散:使用 int8 和 bfp16 来表达原始向量,计算距离过程中使用这些压缩后的向量,从而降低内存带宽; 提炼:使用压缩后的向量计算得到的距离存在误差,但是足以剔除距离太远的点,之后在很小的一个候选集中使用原始向量计算精确距离。 接下来开始让我帮你一步步理解。 1. 背景 向量...

#2020征文-开发板# 用鸿蒙开发AI应用(五)HDF 驱动补光灯

目录: 前言 硬件准备 HDF 驱动开发 总结 前言 上一篇,我们在鸿蒙上运行了第一个程序,这一篇我们来编写一个驱动开启摄像头的红外补光灯,顺便熟悉一下鸿蒙上的 HDF 驱动开发。 硬件准备 先查一下原理图(具体可参考第一篇的硬件资料),找到红外灯的 IO 口编号,GPIO5_1。 HDF 驱动开发 1. 简介 HDF(OpenHarmony Driver Foundation)驱动框架,为驱动开发者提供驱动框架能力,包括驱动加载、驱动服务管理和驱动消息机制。旨在构建统一的驱动架构平台,为驱动开发者提供更精准、更高效的开发环境,力求做到一次开发,多系统部署。 HDF框架以组件化的驱动模型作为核心设计思路,为开发者提供更精细化的驱动管理,让驱动开发和部署更加规范。HDF框架将一类设备驱动放在同一个host里面,驱动内部实现开发者也可以将驱动功能分层独立开发和部署,支持一个驱动多个node,HDF框架管理驱动模型如下图所示: 2. 驱动框架 2.1 驱动框架实现 在 huawei/hdf 目录下新建一个文件夹 led, 然后在其中新建一个源文件 led.c。 #include "...

相关文章

发表评论

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。