加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.cn/)- 云渲染、网络安全、数据安全、数据分析、人体识别!
当前位置: 首页 > 大数据 > 正文

实现的十亿级语义相似性搜索

发布时间:2021-05-22 21:24:16 所属栏目:大数据 来源:互联网
导读:我们可以看到句子transformer模型比其他模型有很大的优势。 但是如果你用代码和GLUE来看看排行榜,你会看到很多的模型超过90。为什么我们需要句子transformers? 在这些模型中,语义文本相似度被视为一个回归任务。这意味着,每当我们需要计算两个句子之间的
我们可以看到句子transformer模型比其他模型有很大的优势。
 
但是如果你用代码和GLUE来看看排行榜,你会看到很多的模型超过90。为什么我们需要句子transformers?
 
在这些模型中,语义文本相似度被视为一个回归任务。这意味着,每当我们需要计算两个句子之间的相似度得分时,我们需要将它们一起传递到模型中,然后模型输出它们之间的数值分数。虽然这对于基准测试很有效,但是对于实际的用例来说,它的伸缩性很差,原因如下。
 
1.当你需要搜索大约10k个文档时,你需要进行10k个独立的推理计算,不可能单独计算嵌入量而只计算余弦相似度。见作者的解释。
2.最大序列长度(模型一次可以接受的单词/标记的总数)在两个文档之间共享,这会导致的表示的含义由于分块而被稀释
 
FAISS
Faiss是一个基于C++的库,由FacebookAI构建,在Python中有完整的包装器,用于索引矢量化数据并对其进行有效的搜索。Faiss基于以下因素提供了不同的索引。
 
搜索时间
 
搜索质量
 
每个索引向量使用的内存
 
训练时间
 
无监训练需要外部数据
 
因此,选择合适的指数将是这些因素之间的权衡。
 
加载模型并对数据集执行推理
首先,让我们安装并加载所需的库

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读