首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏大语言模型

    检索算法小结

    在RAG中当然少不了检索检索算法在信息检索、搜索引擎和推荐系统等领域中扮演着至关重要的角色。它们的核心任务是根据用户查询从大量数据中找出最相关的信息。本文就对检索算法进行以下小结。 常见的检索算法确实可以理解为相似度计算的过程。在信息检索系统中,检索算法的主要目标是根据查询从大量文档中找到最相关的文档。这通常涉及计算查询和文档之间的相似度,并根据相似度对文档进行排序。 常见检索算法和相似度计算方法布尔模型:简单且直观,布尔检索基于布尔逻辑,通过简单的布尔运算符(AND, OR, NOT)来判断文档是否匹配查询。它不使用相似度计算。 这些模型可以捕捉到词语和文档的语义关系,从而提高检索效果。 IVF_PQ基于 IVF_FLAT 的一种向量数据有损压缩算法( PQ乘积量化),首先,PQ 先将 D 维空间切分成 M 份:类似于将 128 维空间切分成 M 个 D/M 维的子空间,每个子向量进行

    86621编辑于 2024-07-01
  • 来自专栏前后两端不设限

    检索算法---顺序查找

    顺序查找 function seqSearch(arr, data) { for (var i = 0; i < arr.length; ++i) { if (arr[i] == data) { return i; } } return -1; } 查找最大值或最小值 function findMin(arr) { var min = arr[0]; for (var i = 0; i < arr.length

    43830编辑于 2022-12-24
  • 来自专栏IT云清

    5.Elasticsearch检索文档

    我们会发现,我们存储的文档,在_source中,其他的类似_index,_type等都是元数据,元数据在后面会做详细解释。

    60420发布于 2019-01-22
  • 来自专栏NLP小白的学习历程

    VLAD算法简介 图像检索

    VLAD是vector of locally aggregated descriptors的简称,是由Jegou et al.在2010年提出,其核心思想是aggregated(积聚),主要应用于图像检索领域 1.2 相关方法优缺点 在深度学习时代之前,图像检索领域以及分类主要使用的常规算法有BoW、Fisher Vector及VLAD等。 1.4 VLAD算法发展演变 在VLAD算法的基础上Arandjelovic et al.在 All about VLAD 一文中提出了一种改进方法。 2 VLAD算法流程 (1) 读取图片文件路径及特征提取 (2) 使用聚类方法训练码本 (3) 将每张图片的特征与最近的聚类中心进行累加 *(4) 对累加后的VLAD进行PCA降维并对其归一化 *(5) 得到VLAD后,使用ADC方法继续降低储存空间和提高搜索速度 其中步骤4、5可选,在步骤3得到残差累加向量后进行L2归一化即可用欧氏距离等计算两张图片的相似性从而实现图片检索 一个简单的实现(基于sift

    3.5K30发布于 2020-11-13
  • 来自专栏前后两端不设限

    检索算法---二分查找

    function binarySearch(items, value) { var startIndex = 0, stopIndex = items.length - 1, middle = Math.floor((stopIndex + startIndex) / 2); while (items[middle] != value && startIndex < stopIndex) { //adjust search area(调整查找范围)

    30340编辑于 2022-12-24
  • 来自专栏进击的程序猿

    经典检索算法:BM25原理

    image.png 本文cmd地址:经典检索算法:BM25原理 bm25 是什么? bm25 是一种用来评价搜索词和文档之间相关性的算法,它是一种基于概率检索模型提出的算法,再用简单的话来描述下bm25算法:我们有一个query和一批文档Ds,现在要计算query和每篇文档D之间的相关性分数 bm25算法。 总结下本文的内容:BM25是检索领域里最基本的一个技术,BM25 由三个核心的概念组成,包括词在文档中相关度、词在查询关键字中的相关度以及词的权重。 参考 BM25 算法浅析 搜索之 BM25 和 BM25F 模型 经典搜索核心算法:BM25 及其变种 信息检索导论

    10.3K20发布于 2018-09-07
  • 来自专栏算法+

    shazam音乐检索算法 附完整c代码

    而音乐检索算法就是为了提供比较人性化的方式帮忙 搜索音乐。 而shazam 这家公司就是第一个吃螃蟹的"人"。 上面提供的链接里都提到了shazam 算法的思路,需要细节了解的可以移步上面的链接。 shazam 算法分为以下步骤: 1.进行fft变换 2.切分5个频段,取频段中比较有代表性的信息,一般为该频段中强度最大值。 整个算法非常简单, 最核心的点是 切分5个频段, 用上了时序信息去算哈希。 对于有时序的数据,肯定要用上时序性维度,不然是有失偏颇的。 之余图片,就要用空间性维度,之余视频,时间和空间都要有。 有另一个音频检索算法就是做了控制变量达到更加强大的鲁棒性。 当然,我本人业余时间在研究自己构思的一个音频检索算法,还在开展中, 算法复杂度当然会更高,但是效果和后续检索准确度会大有提升。 上面提到的shazam和dejavu,本人以纯c 原汁原味实现之。

    2.3K20发布于 2018-08-07
  • 来自专栏企鹅号快讯

    深度离散哈希算法,可用于图像检索

    「3」大量的实验结果表明,我们的方法在图像检索问题上,取得了比现最好方法更好的结果,从而验证了我们方法的有效性。 NUS-WIDE 数据集的 MAP 是根据返回的前 5,000 位邻近值计算的。DPSH * 表示重新运行 DPSH 作者提供的代码。 表 2:第二组实验设置下不同方法的 MAP。 NUS-WIDE 数据集的 MAP 是根据返回的前 5,000 位邻近值计算的。 Deep supervised discrete hashing 论文地址:https://arxiv.org/abs/1705.10999 摘要:随着网络上图像和视频数据的快速发展,近几年图像及视频检索也被广泛的研究 得益于深度学习的发展,深度哈希方法在图像检索方面也取得了一定的成果。然而,之前的深度哈希方法还是存在一些限制「例如,没有充分利用语义信息」。

    2.6K60发布于 2018-02-28
  • 来自专栏修也的进阶日记

    算法手记5

    12000编辑于 2025-03-17
  • 来自专栏我的小碗汤

    5 款强大的 Kubernetes Events 收集与检索工具

    以下是我将要解释的内容的概述: 事件机制 Kubernetes API 中的事件结构 需要关注的事件类型 检索事件的可用解决方案 在本文的最后,会链接到 YouTube 和 Github 上的相关教程, 这样你就可以直接学习如何收集和检索 Kubernetes 事件。 Rebooted HostPort 冲突 检索 Kubernetes 事件的解决方案 有多种解决方案可用于检索 Kubernetes 事件。让我们看看现成可用的项目。 详细信息请看 kspan[5] GitHub Kubernetes 事件教程 现在我们已经大致了解了 Kubernetes 事件是什么以及如何利用它们,您可以在 YouTube 和 GitHub 上找到更详细教程 salesforce/sloop [4] kubernetes-event-exporter: https://github.com/opsgenie/kubernetes-event-exporter [5]

    2K21编辑于 2023-03-19
  • 来自专栏大数据杂货铺

    全文检索、向量检索和混合检索的比较分析

    全文检索 全文搜索是指将部分或全部文本查询与数据库中存储的文档进行匹配。与传统的数据库查询相比,全文搜索即使在部分匹配的情况下也能提供结果。 Elasticsearch 用户越来越多地使用不同类型信息的搜索检索 — BM25 用于文本,向量搜索用于密集向量。 混合搜索技术通常会提供更好的结果:对多个 BIER 数据集进行基准测试显示,结合 BM25 和基于 ELSER 的排名时,相关性有所提高,现在用户甚至可以更轻松地组合所有这些检索方法。

    6.3K10编辑于 2024-04-24
  • 来自专栏啦啦啦啦前端

    信息检索格式 布尔检索

    信息检索格式 布尔检索式 名称 符号 表达式 功能 逻辑与 * 或and AB 同时含 有提问词A和B的文献,为命中文献 逻辑或 + 或or A+B 凡是含有提问词A或B的文献,为命中文献 逻辑非 这个算法在微软Bing搜索里面可行,但是在百度里面搜索依然包括篮球二字,这里未解。 还有个注意点,符号的前面要加空格隔开后面紧跟着要搜索的内容。

    1.6K40编辑于 2023-02-11
  • 来自专栏Reinvent Data Science

    5 分钟实现「视频检索」:基于内容理解,无需任何标签

    随着各类视频平台的兴起和火爆,网络上视频的数量呈现井喷式增长,「视频检索」成为人们高效查找视频的一项新需求。 传统的视频检索通常要求视频带有额外的文字标签,通过匹配查询语句的关键词与视频标签实现检索。 「视频检索」服务 demo 在这篇文章中,我们将会使用 Milvus[5] 和 Towhee[6] 搭建一个基于内容理解的「视频检索」服务! 比如,共有 5 个目标结果,Recall@top10 为 40% 则表示前十个结果中找到了 2(5*40%)个目标结果。 ](func=lambda res: [x.id for i, x in enumerate(res "'top10_raw_res', 'top5'") if i < 5]) .runas_op ](name='recall_at_5' "'ground_truth', 'top5'") \ .evaluate['ground_truth', 'top10'](name='recall_at

    6.2K20编辑于 2023-01-10
  • 来自专栏算法与编程之美

    网页|高级检索与专业检索

    1、高级检索 高级检索也称命令检索,是相对于基本检索而言,高级检索可以让你使用多于基本检索的标准来精炼检索,使检索信息更加详细,搜索出的结果可用性也更大。 ? 图1.1 百度高级检索示例图 ? 图1.2 知网高级检索示例图 使用高级检索可以直接根据示例图所示,搞清楚查找资料的关系后,然后根据高级检索的相关内容直接输入逻辑关系搜索从而精确搜索信息。 图1.3 知网高级检索示例图2 2、专业检索 专业检索就是运用检索表达式实现的检索方式。这种检索方式可以让通过运用检索字段精确检索需要的内容。 ? 图2.1 知网专业检索示例图 百度专业检索直接在搜索框输入检索式即可。 图2.4 示例2检索结果 结语 运用高级检索和专业检索可以让搜索更加详细。

    4.3K20发布于 2020-07-16
  • 来自专栏java初学

    MD5算法

    简介   MD5消息摘要算法(MD5 Message-Digest Algorithm),是一种被广泛使用的加密算法。 该算法讲任意的输入处理之后,输出一个128位的数据指纹,理论上这个信息指纹是独一无二的,因此我们可以通过验证文件传输前后的MD5值是否一致来验证文件信息是否被篡改。 生成MD5的过程 MD5是以512位分组来处理输入的信息,每一个分组被划分为16个32位子分组,经过一系列处理之后,算法的输出变成了4个32位分组,将这4个分组组合,即得到一个128位的散列值,即MD5

    1.1K40发布于 2018-06-21
  • 来自专栏AI研思录

    颠覆传统检索:RAPTOR检索树提升检索准确率20%!

    然而,现有的检索增强方只能检索几个简短的、连续的文本块,这对于需要整合文本多个部分的知识的问题是不够的,限制了它们表示和利用大规模语义结构的能力。 聚类算法 聚类算法采用的是高斯混合模型(Gaussian Mixture Models, GMMs),同时由于单个文本可能包含与多个主题相关的信息,所以这篇文章采用了软聚类,即节点可以同时属于多个聚类, 查询机制 树遍历查询 树遍历查询可以控制查询的深度和每层查询的节点数,并在树的深度下降时关注更精准的细节,该算法的步骤如下: 从树的根层开始。 压缩树查询 压缩树查询同时考虑树中的所有节点,将所有节点带到同一级别进行比较,该算法的步骤如下: 首先,将整个 RAPTOR 树折叠成一个图层。 实验表明,使用递归总结的检索方法在多个任务上相较于传统的检索增强语言模型提供了显著的改进。在涉及复杂、多步骤推理的问题解答任务中,展示了最优的结果。

    75610编辑于 2025-02-20
  • 来自专栏mukekeheart的iOS之旅

    md5算法

    md5算法 不可逆的:原文--》密文、用系统的API可以实现; 123456 ---密文 1987 ----密文;  算法步骤: 1、用每个byte去和11111111做与运算并且得到的是int类型的值 throws NoSuchAlgorithmException { 2 3 MessageDigest digest = MessageDigest.getInstance("md5" ); 4 5 String password = "123456"; 9 byte [] result = digest.digest(password.getBytes 37 System.out.println(buffer); 38 39 }   会抛出没有事先准备的算法异常NoSuchAlgorithmException; 4、网站验证算法是否正确 (www.cmd5.com)、加密再加密再演示 5、密码加盐,即byte相与的数不上标准的oxff,我们进行修改为oxfff或其他的 6、银行密码保存是进行了15~30次重复加密,破解非常复杂,不用担心安全性

    1.5K60发布于 2018-02-28
  • 来自专栏java初学

    MD5算法

    简介   MD5消息摘要算法(MD5 Message-Digest Algorithm),是一种被广泛使用的加密算法。 该算法讲任意的输入处理之后,输出一个128位的数据指纹,理论上这个信息指纹是独一无二的,因此我们可以通过验证文件传输前后的MD5值是否一致来验证文件信息是否被篡改。 生成MD5的过程 MD5是以512位分组来处理输入的信息,每一个分组被划分为16个32位子分组,经过一系列处理之后,算法的输出变成了4个32位分组,将这4个分组组合,即得到一个128位的散列值,即MD5

    1.3K60发布于 2018-05-14
  • 来自专栏CSDN搜“看,未来”

    【C++】算法集锦(5):BFS算法

    文章目录 BFS算法框架 框架代码 简单题:二叉树的最小高度 拔高题:解开密码锁的最少次数 一波优化:双向BFS BFS算法框架 BFS算法和DFS算法属于图论算法的范畴,DFS在前面回溯中,可以去看一下 BFS算法用于寻找两点之间的最短路径。 碧如说:寻找树的最小高度(迭代法)、走迷宫、导航等问题。 这些问题看起来都会比较抽象,去做也是很抽象。 与其说算法框架难写,倒不如说是把实际问题转化为算法问题来的要难。 还记得我在图论算法那篇里面有讲过:学习图论算法,最难的是要有用图论算法的意识。等下看了例题就知道了。 int BFS(Node start,Node target){ /* 这是一个BFS算法的代码框架 return:返回从start到target的最短步数 start:起始点 target 好,关键的一步来了,怎么将这个暴力算法往图论算法的方向去引呢。 再看一下上面这个暴力算法,不难看出来,这就是一个节点下面拖八个子节点的八叉树,又是求最短距离,BFS。

    99530发布于 2021-09-18
  • 来自专栏自然语言处理

    检索增强生成 (RAG) 的 5 大 提示词,非常实用!

    本文就给大家分享 5 种实用的 RAG 提示词模板,帮你提升生成质量,减少无关信息,让 RAG 回答更精准! 为什么提示词对 RAG 这么重要? 你跟 RAG 交流的方式,直接决定了它的回答质量。 接下来,我们就看看 5 种超实用的提示词模板,帮你让 RAG 生成的答案又稳又准! 想要高质量内容,就别怕“多走一步” 提示词 #5:用“对比查询”让 RAG 更聪明! 想让 RAG 更精准地回答问题?试试“对比查询”法! 5. 如果问题涉及数字、日期或具体数据,务必在回答中准确包含这些信息。 6. 对于表格中的数据或需要综合多个段落的问题,请确保回答全面且准确。 7. 5. 控制回答长度,理想情况下不超过参考上下文长度的1.5倍,最多不超过2.5倍。 6. 对于表格查询或需要多段落/多文档综合的问题,给予特别关注并提供更全面的回答。 7.

    2.1K11编辑于 2025-03-15
领券