有没有那么一首歌,会让你想不起来叫什么?

有那么一首旋律,在你的脑海中萦绕,但你却想不起来它的名字和演唱者。看到一朵美丽的花,却不知道它叫什么,属于什么科目。类似的情形,每个人都遇到过。不过,现在这些都不成为问题了。打开一个手机应用,哼一下曲调,或者用相机拍一张照片,答案马上出现在你面前。变身行走的知识小百科,就这么简单!

英特尔与京东优化分布式特征向量检索系统,加速AI应用创新-大数网

图片来源:Pexels

听音识曲,以图搜图,所有这些,都有赖于人工智能的特征向量检索能力:AI 机器学习算法,可以从图像、音视频和文本中抽取大量的特征,再用于视频相似度检测、人脸识别等业务场景中,对于 AI 训练与应用有重要价值。

随着 AI 的开发和应用不断普及和深入,企业需要计算、存储海量特征向量数据,IT 基础设施因此面临沉重的性能压力。英特尔和京东一起,在基于英特尔®至强®可扩展处理器的服务器上,开发了服务于 AI 时代的分布式向量搜索系统Vearch,让京东的业务综合性能获得显著提升,从而显著加速重复图片去重、相似性商品图片搜索、人脸识别等 AI 应用的响应速度。

跨越性能挑战:软件算法优化+硬件并行计算

这几年来,京东一直在落地 AI 技术,帮助业务成长。因此,深度学习等 AI 应用在企业内部的规模越来越大,Vearch 应运而生。

英特尔与京东优化分布式特征向量检索系统,加速AI应用创新-大数网

Vearch向量检索系统架构

分布式基础向量检索系统 Vearch,由京东零售技术与数据中心基础架构团队在现有业务和应用场景中提炼得出,面向 AI 时代,希望可以帮助 AI 算法专家集中精力在算法上。Vearch 广泛应用于图像、音视频和自然语言处理等各个机器学习领域,完整地解决海量特征的存储与计算, 以统一的基础设施,适用于图像、视频、音频检索和去重,安防视频智能监控,文本相似度计算、推荐、搜索召回及排序等。例如,基于 Vearch 的实时在线相似性图片搜索,帮助电商平台为用户提供同款商品搜索服务,提升用户体验。

英特尔与京东优化分布式特征向量检索系统,加速AI应用创新-大数网

基于Vearch的在线相似性图片搜索流程

诸如 Vearch 这样的系统,特征向量的规模常常会达到 10/100 亿,甚至千亿量级,必须有充足的内存和存储才能满足,同时部署大量的容器加以支持。为了最大化利用资源,企业会将单个容器的资源控制在较小范围内。在这种单容器资源有限的情况下,如何有效地整合零碎化 CPU、 内存和磁盘资源,并且保证整体系统的高性能是一个较大的挑战。

针对 Vearch 的性能问题,京东技术团队与英特尔合作,在基于英特尔®至强®可扩展处理器的服务器上,借助下列多种方式在软件算法层面加以优化。

1原始向量压缩:原始向量的存储占用绝大多数系统资源,使用合适算法后,可压缩 50%,包括内存和磁盘占用资源节省一半,而且效果不变。2string 字段压缩:使用合适的字符串压缩算法,内存的字符串存储空间也减少 50%,同时解压缩开销也不高。3内存整理:定期整理和内存池技术可以重复利用已分配内存。4图+量化组合索引:全新的索引模型,将存储资源使用量减少到原来的四分之一甚至更多。

在硬件提升层面,英特尔®至强®可扩展处理器也功不可没。它不但有强大的通用计算能力,还集成了增强单指令多数据流(Single Instruction Multiple Data,简称SIMD)的英特尔® AVX-512 指令集等创新技术,兼顾并行计算能力,在诸如人工智能、高性能计算等强调 SIMD 的场景中长袖善舞。

为了验证性能优化的实际效果,京东与英特尔对于Vearch优化版IVFPQ和IVFFlat进行了测试。测试结果表明,使用 IVFPQ 算法的 Vearch 性能可以提升 33%-44%,使用 IVFFlat 算法,性能提升最高达到 5.9 倍。在人脸识别等实际应用中,不需大幅投资基础设施,优化后的 Vearch 可以提升特征向量检索的速度,降低存储资源消耗,节约总体拥有成本(TCO)。

英特尔与京东优化分布式特征向量检索系统,加速AI应用创新-大数网

Vearch优化版IVFPQ(AVX512)与Faiss原生IVFPQ的性能对比

英特尔与京东优化分布式特征向量检索系统,加速AI应用创新-大数网

Vearch优化版IVFFlat(AVX512)与Faiss原生IVFFlat的性能对比

AI 互联网创新,靠大家携手推动

Vearch 开源一年多来,华为、科大讯飞、爱奇艺、趣头条、OPPO、汽车之家和网易严选等数十家知名公司的团队或个人,已经在一些业务场景中尝试或使用。未来,京东还会在英特尔的支持下,提供更丰富的算法插件,如文本语义 embedding 算法插件,音频 embedding 算法插件等。

总而言之,借助英特尔架构在性能、扩展性、稳定性、可用性等方面的优势,英特尔愿意和众多合作伙伴一起,让 AI 和机器学习技术在互联网、零售和金融行业不断发挥创新推动力,改善广大用户的日常生活。