中文

基于GPU的十亿级相似性搜索

计算机视觉与模式识别 2018-06-07 v1 数据库 数据结构与算法 信息检索

摘要

相似性搜索在处理图像或视频等复杂数据的专用数据库系统中有着广泛应用,这些数据通常由高维特征表示,并需要特定的索引结构。本文致力于解决如何更好地利用GPU完成这一任务的问题。尽管GPU擅长数据并行任务,但先前的方法受限于并行度较低的算法(如k-min选择)或对内存层次结构利用不佳。我们提出了一种k选择设计方案,其运行效率可达理论峰值性能的55%,从而实现了比先前GPU最优方法快8.5倍的最近邻实现。我们将其应用于不同的相似性搜索场景,提出了基于乘积量化的暴力搜索、近似搜索和压缩域搜索的优化设计。在所有这些设置中,我们的性能均大幅超越现有最优方法。我们的实现能够在35分钟内在Yfcc100M数据集的9500万张图像上构建高精度k-NN图,并在4块Maxwell Titan X GPU上用不到12小时连接10亿个向量。为了便于比较和可复现性,我们已将方法开源。

关键词

引用

@article{arxiv.1702.08734,
  title  = {Billion-scale similarity search with GPUs},
  author = {Jeff Johnson and Matthijs Douze and Hervé Jégou},
  journal= {arXiv preprint arXiv:1702.08734},
  year   = {2018}
}