当前位置: 首页 > news >正文

关于对向量检索研究的一些学习资料整理

官方学习资料

        主要是的学习资料是, 官方文档 和官方博客。相关文章还是挺多 挺不错的 他们更新也比较及时。有最新的东西 都会更新出来。
es scdn官方博客

这里简单列一些,还有一些其他的,大家自己感兴趣去看。

什么是向量数据库

Elasticsearch:向量数据库的真相-CSDN博客

什么是向量嵌入

什么是大语言模型(LLM)

什么是语义搜索

向量搜索的优势

什么是机器学习

关于多模态


        这个是多模态检索。目前es只能做文本类转向量的模型导入。不支持图片转向量的模型导入。(clip是双塔模型,一个负责文本转向量,一个负责图片转向量。我测过了,图片转向量模型不支持导入)如果用es做多模态。还是要在外边部署模型。 整体体验不好。而且模型导入es,是收费的白金版。 最佳实践(不付费玩法)应该是完全在外边做转向量。 考虑付费,可以用es

学术界前沿的研究对比


        这个是学术稍微前沿一点的研究。里边包含的论文,感兴趣可以看看。里边探讨对比了关于BM25和向量检索的效果。还包含稀疏向量相关的知识。

关于稀疏向量

        稠密向量有一个致命问题。 检索速度,以及做嵌入的速度。太慢,现在最先进的方向是稀疏向量

这里边有对比 语义检索 和 BM25的效果对比。(最佳实践是两者结合,做内容召回。两者可以互补)根据官方提供的稀疏向量的模型测试结果如下图所示,据说20个场景有19个都优遇BM25.

这是稀疏向量模型的转换效果,应该不会多花费空间。它的维度相对低。 

这里有我的一篇文章,国内生产实践经验帖。ES-ELSER 如何在内网中离线导入ES官方的稀疏向量模型(国内网络环境下操作方法)-CSDN博客

如何做向量嵌入

        模型转向量,简单来讲,是利用机器学习模型把一块文本(数据),映射到网络空间内,同样问题(query)也是用同一个模型,映射到网络空间内。然后计算cosin值,也就是夹角越小,就越相近。

        我在生产实践中,是选择使用es来的机器学习模块倒入hugging face上的NLP模型,来做文本嵌入。

        这里有一篇我自己写的国内环境下。如何在es中导入NLP模型。elasticsearch 内网下如何以离线的方式上传任意的huggingFace上的NLP模型(国内避坑指南)-CSDN博客

        这里还有一个例子,是在es中使用 E5 嵌入模型进行多语言向量搜索

向量检索简单举个例子

        data 是一篇文章的内容。这个内容最终可能是切分成N个片段。 然后通过模型把每个片段都转成向量,然后再把向量存到向量库。

例如,第一个段落 片段转完是 [1.0000009,0.11111111,0.899998]

然后问题,也转成向量可能是 [1.0044449,0.55551111,0.449998]

然后通过计算这两个数组,的cosin值,然后再比较 其它片段和问题的cosin值(当然还可以用其它计算方式),然后做个排序,然后把topN小的返回。这就是KNN最邻近搜索。

关于相关性或者说相似性

        相似不相似,其实更多是依赖模型效果好不好。向量库都只是起计算作用。关于向量库的选择,只需要看该向量数据库的稳定性,数据承载能力(也就是能存多少数据,是否满足业务需求。)已经向量数据库实现的向量检索算法都有哪些(实际上目前学术界也就那么多)。还有就是该库的检索性能如何,稳定性如何,能够满足业务需求。但是不要想着在向量数据库上去提升搜索相关性的事情,因为相关性和库没有太大关系。如何要研究提升召回效果。应该去考虑选择什么样的机器学习模型效果更好,还要考虑模型的语言能力,是否支持多语种。例如你在英文模型下做中文数据的embedding,效果肯定会很差。此外不同的业务应该选择自己的模型,加上微调。而不是一个大一统的模型。另外一个提升相关性的方向是探索数据切割的规则,针对不同类型的数据做不同的切分。

        实际上利用向量检索的相关性效果,还确实是比BM25好的。但是它不是绝对的,在关键词精准匹配场景下,BM25算法更好一些。

如何选择模型

语义检索系统如何选择合适的embedding模型-CSDN博客

使用模型做文本陷入,如何做数据切分,不丢失语义

        目前这一块探索还比较少。根据看过的一些案例,基本上推荐在500个token,300-400个字。再多了就会丢失语义。这里还需要摸索和测试一下。

ES支持混合检索吗? 向量检索+倒排索引 

es ANN搜索

这样可以先筛选数据。然后剩下的在做 knn搜索。这个逻辑会先走倒排搜索。

提供一个向量检索的案例

腾讯es云,最近写的最佳实践
 

关于请求改写经验


美团的查询改写

相关文章:

关于对向量检索研究的一些学习资料整理

官方学习资料 主要是的学习资料是, 官方文档 和官方博客。相关文章还是挺多 挺不错的 他们更新也比较及时。有最新的东西 都会更新出来。es scdn官方博客 这里简单列一些,还有一些其他的,大家自己感兴趣去看。 什么是向量数据库 Elasticse…...

软件开发流程分析

软件开发流程分析 相关概念1 原型设计2 产品设计3 交互设计4 代码实现详细步骤 相关概念 前端:自研API,调用第三放API 后端:自研API,第三方API 数据库:Mysql,数据采集,数据迁移 服务器&#xf…...

017 OpenCV 向量机SVM

目录 一、环境 二、SVM原理 三、完整代码 一、环境 本文使用环境为: Windows10Python 3.9.17opencv-python 4.8.0.74 二、SVM原理 OpenCV中的向量机(SVM)是一种监督学习算法,用于分类和回归分析。它通过找到一个最优的超平…...

Qt练习题

1.使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否…...

文本转图像 学习笔记

VQGAN (Vector Quantized Generative Adversarial Network) 是一种基于 GAN 的生成模型,可以将图像或文本转换为高质量的图像。 VQ (Vector Quantization)是一种数据压缩技术,是指将连续数据表示为离散化的向量。输入的图像或文本…...

开源CDN软件GoEdge —— 筑梦之路

官方网站:GoEdge CDN - 制作自己的CDN - GoEdge CDN | 自建CDN GoEdge是一款管理分布式CDN边缘节点的开源工具软件,目的是让用户轻松地、低成本地创建CDN/WAF等应用。 特性 免费 - 开源、免费、自由、开放 简单 - 架构简单清晰,安装简单&a…...

基于SpringBoot+Vue会员制医疗预约服务管理信息系统(Java毕业设计)

点击咨询源码 大家好,我是DeBug,很高兴你能来阅读!作为一名热爱编程的程序员,我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里,我将会结合实际项目经验,分享编程技巧、最佳实践以及解决问题的…...

【Linux | 编程实践】防火墙 (网络无法访问)解决方案 Vim常用快捷键命令

🤵‍♂️ 个人主页: AI_magician 📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。 👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!&…...

仅 CSS 阅读进度条

为了构建一个阅读进度条,即显示用户向下滚动时阅读文章的进度,很难不考虑 JavaScript。但是,事实证明,您也可以使用纯 CSS 构建阅读进度条。 从本质上讲,一个名为 animation-timeline 的新实验性 CSS 属性可以让你指定…...

深度剖析中国居民消费价格指数CPI数据可视化案例-Python可视化技术实现(附完整源码)【数据可视化项目案例-16】

🎉🎊🎉 你的技术旅程将在这里启航! 🚀🚀 本专栏包括所有的可视化技术学习,感兴趣可以到本专栏页面,查阅可视化宝典可快速了解本专栏。订阅专栏用户可以在每篇文章底部下载对应案例源码以供大家深入的学习研究。 🎓 每一个案例都会提供完整代码和详细的讲解,不论…...

SpringBoot——嵌入式 Servlet容器

一、如何定制和修改Servlet容器的相关配置 前言: SpringBoot在Web环境下,默认使用的是Tomact作为嵌入式的Servlet容器; 【1】修改和server相关的配置(ServerProperties实现了EmbeddedServletContainerCustomizer)例如…...

王炸升级!PartyRock 10分钟构建 AI 应用

前言 一年一度的亚马逊云科技的 re:Invent 可谓是全球云计算、科技圈的狂欢,每次都能带来一些最前沿的方向标,这次也不例外。在看完一些 keynote 和介绍之后,我也去亲自体验了一些最近发布的内容。其中让我感受最深刻的无疑是 PartyRock 了。…...

文件管理和操作工具Path Finder mac功能介绍

Path Finder mac是一款Mac平台上的文件管理和操作工具,提供了比Finder更丰富的功能和更直观的用户界面。它可以帮助用户更高效地浏览、复制、移动、删除和管理文件,以及进行各种高级操作。 Path Finder mac软件功能 - 文件浏览:可以快速浏览文…...

转换 pytorch 格式模型为 caffe格式模型 pth2caffemodel

基于 GitHub xxradon/PytorchToCaffe 源码,修改 example\resnet_pytorch_2_caffe.py 如下 import os import sys sys.path.insert(0, .)import torch from torch.autograd import Variable from torchvision.models import resnet import pytorch_to_caffe"&q…...

【S32DS RTD实战】-1.3-S32K3工程生成S19,BIN,Hex文件,以及Post-build steps的妙用

目录 1 方法一:逐个生成Motorola S-record(s19,srec…),Intel HEX,Bin文件 1.1 生成Motorola S-record(s19,srec…)文件 1.2 生成Intel HEX文件 1.3 生成Bin文件 2 …...

Java工程找不到javax.xml.bind.annotation包

文章目录 问题解决方法参考 问题 最近Java工程找不到javax.xml.bind.annotation包,进行了解决。 解决方法 参考 stackoverflow: package javax.xml.bind.annotation does not exist error javax.xml.bind这个库从Java 11版本就被移除了,缺失了这个包…...

【C语言】网络字节序和主机字节序

网络字节序和主机字节序是计算机中字节的两种排序方式,它们主要用于解决不同计算机之间数据通信的问题。 一、网络字节序 也被称为大端字节序,是一种标准的字节序。在网络通信中,如果两台主机的字节序不同,可能会导致数据解释的二…...

极简模式,助力宏观数据监控

随着UWA GOT Online采样的参数越来越多样化,为了提升开发者的使用体验,我们最新推出了三种预设数据采集方案:极简模式、CPU模式、内存模式。该更新旨在降低多数据采集对数据准确性的干扰,同时也为大家提供更精准且有针对性的数据指…...

智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.花授粉算法4.实验参数设定5.算法结果6.参考文…...

IT圈的“鄙视链”大揭秘:从Java到Go,编程语言之战!

目录 ​编辑 Java程序员: 自信满满的领头羊 C语言程序员: 严肃的技术守护者 汇编语言程序员: 古老的传承者 Go语言程序员: 新晋的潜力股 结语: 编程语言,相互鄙视中求共存 我的其他博客 在IT圈…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄

文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》

在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中&#xff0…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

12.找到字符串中所有字母异位词

🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

给网站添加live2d看板娘

给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程

STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...

微服务通信安全:深入解析mTLS的原理与实践

🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言:微服务时代的通信安全挑战 随着云原生和微服务架构的普及,服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...