技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】( 三 )


下面以restful API使用方式展示详细搭建步骤:

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Step1:创建人脸引擎

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Step2:创建人脸数据表
max_size:数据库中数据尺寸大小
retrieval_type有IVFPQ跟HNSW以及二进制三种选择 , IVFPQ存储的是压缩后的特征向量 , 这可以大大提升搜索效率 , 但是搜索精度也会有所下降 , nsubvector表示压缩后的维度设置 , 故IVFPQ适合数亿级别数据集 。 HNSW是存储原始特征向量 , 故适合千万级别数据 。 Ncentroids表示搜索时数据的聚类的类别数目 , 可根据特定场景灵活设置 。
如果数据有明显的字段可设置的话 , 建议设置 , 比如人脸识别的性别 , 商品的品类等 , 后期搜索可大大提升检索速度

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Step3:插入人脸数据

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

可以单条插入也可以批量插入
Step4:查询

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

查询时可以通过设置字段过滤的方式 , 极大提升搜索速度 , 比如人脸识别中性别字段与年龄字段 。 当查询face是男儿童时 , 可以通过设置性别与年龄范围大大缩小查询数据集的大小 , 极大地提升搜索速度与效率 。 也可通过size字段设置查询结果数量 。
3.2 vearch在拍照购场景搭建搜索引擎
训练并部署商品图片特征提取模型 , 也用上述resnet50 , 准备电商场景各品类商品图片库 , 采用python SDK方式搭建拍照购索索引擎 , 同样四步搭建 。
Step1:创建拍照购引擎

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Step2:创建商品数据表

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Step3:插入商品数据

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Step4:查询及结果展示

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

3.3 vearch的分布式使用
Vearch的分布式部署如下图 , 只需要修改集群配置文件 , 修改如果master的ip部分 , 并将配置文件复制到集群每台机器中 , 分别在master , ps , router机器上执行对应启动命令即可 。

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

3.4 vearch的plugin使用方式
Plugin方式是我们针对常用文本 , 图像场景内置了通用提取文本特征的bert模型跟提取图片特征向量的resnet , vgg模型等常规模型 , 很多精确度需求不高且需要快速获取结果的场景使用 , 此时引擎配置时model部分设置预置的模型即可 , 直接构建自己的向量数据库进行相似性搜索即可 。 如下图

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

Plugin使用

技术编程|京东高级算法工程师34页PPT详解基于分布式向量检索系统Vearch的大规模图像搜索【附PPT下载】
本文插图

总结


推荐阅读