一键实现穿衣自由,揭秘淘宝AI试衣间硬核技术,AnalyticDB向量在线召回

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 云原生数据仓库AnalyticDB MySQL为淘宝AI试衣间提供高维向量低延时的在线向量召回检索服务。

随着淘宝的蓬勃发展,网购已经融入日常生活。网购让大家足不出户就能挑选众多品类商品,还能货比N家,但同时网购也会带来一些未知的问题。

相信大家都有线上购买服装的经历吧?在线上挑选的时候,只能根据价格、款式、尺码等信息,选出可能合适的衣服,但是衣服穿上后效果如何?应该怎么搭配更好看?我更适合淑女风还是废土风?毕竟淘宝商家的模特穿啥啥好看。

为了解决上述的痛点,淘宝服饰联合通义实验室XR实验室借助AIGC强大科技力推出了重磅级的产品AI试衣间。

在手机淘宝APP上搜索ifashion,上传自己的照片即可体验AI试衣~

在AI试衣间功能的背后,阿里云瑶池旗下的云原生数据仓库AnalyticDB MySQL提供了高维向量低延时的在线向量召回检索服务,下面将进行介绍。

1. 淘宝AI试衣间-技术揭秘

手淘搜ifashion即可进入线上AI试衣间,由淘宝服饰联合通义实验室XR实验室借助AIGC将人工智能和时尚穿搭相结合。AI试衣间将结合数亿用户的尺码数据和海量的服装图片实现推荐适合自己的穿搭搭配。为了满足要求,从海量的商品素材图片中快速找到需要的图片是一个很重要的基础服务。为了提升召回率,素材图片Embedding后使用多维的向量特征值存储,在线服务需要满足低延时高并发的要求。

云原生数据仓库AnalyticDB MySQL在此场景中提供了以图搜图服务,为试衣间提供满足特定要求的相似性素材图片的服务。AI试衣大模型训练每个模特需要多张不同的模特图,目前用户只供给了一张,我们是把商品详情图文中的图片数据,先通过算法识别把模特上身图抠出来,然后根据用户提供的那一张主图,从商品sku/详情图文库中对抠出的图片集中做相似度检索,按相似度阈值,生成不同的素材图,满足算法模型训练的图片数据供给数量,在满足图片相似度要求的情况下,可能也会有一些其他确定性的条件作为输入。下图简略介绍了处理过程。

AnalyticDB MySQL可以管理和检索图片素材,可以根据商品图片类别,属性或者相似图片做多模检索图片,在支持图片相似性检索的同时,同时支持和结构化数据的标量融合,包括多表的关联查询。例如,检索和输入图片相似,并且满足价格在200-300元之间和3个月内(新款)上架的商品照片。为了方便展示,假设向量的维度使用了8维长度。

1.1 数据模型

云原生数据仓库AnalyticDB MySQL,向量检索功能的使用很简单,使用array数据类型存储向量的特征值,array数据类型支持byte,smallint,int和float四种值类型,如果数据量很大,可以对需要进行向量召回的特征列定义一个向量的索引提升检索的速度。向量特征列和向量索引的管理和普通列和索引的DDL类似,支持在创建表的时候设定,也可以通过ALTER TABLE语句添加。

服饰类素材图片简化后的数据表定义如下。

CREATETABLE products (  product_id BIGINT COMMENT '商品ID',  gmt_create DATETIME COMMENT '创建时间',  gmt_modified DATETIME COMMENT '修改时间',  image_url VARCHAR COMMENT '商品图片地址',  price FLOAT COMMENT '商品价格',  document JSON COMMENT '知识文档,json结构',  status INT COMMENT '文档状态, 1审核通过,0未审核,-1审核不通过',  feature ARRAY <float>(8) COMMENT '商品图片向量结果',  PRIMARY KEY (product_id, gmt_create),  ANN INDEX idx_feature(`feature`)) DISTRIBUTE BY HASH(product_id) PARTITION BY VALUE(`date_format(gmt_create,'%Y%m')`) LIFECYCLE 36 INDEX_ALL ='Y';

1.2 准备数据

数据入库支持实时写入和批量导入,下面的示例使用了insert into插入了1条测试数据。

INSERTINTO products (product_id, gmt_create, price, image_url, feature)VALUES(6, NOW(),288.00,'https://xxx/img6.jpg','[0.83891445,0.50359607,0.9299093,0.19440076,0.5789051,0.12121256,0.6587046,0.86555034]');

1.3 数据检索(向量召回)

AnalyticDB MySQL支持融合查询,需要同时满足下面的条件。

条件1:指定图片相似度前5,并且按照相似度排序,KNN+ Top-K。

条件2:价格在200.00和300.00之间。

条件3:素材的创建时间在最近3天以内。

上述条件2和3是结构化数据标量数值计算,条件1是非机构化相似性计算。业务场景期望3个条件可以在1个引擎同时完成,达到提升效率和降低维护成本的作用。这种场景通过AnalyticDB能够很方便支持,使用也很简单。

SELECT product_id, l2_distance(feature,'[0.83891440,0.50359607,0.9299093,0.19440070,0.5789051,0.12121256,0.6587046,0.86555034]')as dis, image_url, price, document
FROM products
WHERE l2_distance(feature,'[0.83891445,0.50359607,0.9299093,0.19440076,0.5789051,0.12121256,0.6587046,0.86555034]')<10-- 设定相似性阈值,排除一些差异性太大的结果AND gmt_create > DATE_SUB(NOW(), INTERVAL 90 DAY)-- 最近90天AND price between200.00and300.00-- 价格在200-300之间ORDERBY l2_distance(feature,'[0.83891445,0.50359607,0.9299093,0.19440076,0.5789051,0.12121256,0.6587046,0.86555034]')LIMIT5;-- 最相近的top5

AnalyticDB MySQL除了提供实时OLAP多维分析和检索外,还提供向量召回功能,支持淘宝APP的AI试衣间场景,解决了引擎冗余的问题,把结构化数据和非结构化数据检索能力整合,适用于多模混合负载检索场景,降低了向量的使用和运维成本。

2. 经验和总结

在电商行业,以图搜图让用户所见即所搜,拍张照片可以找到相似的商品;在游戏行业,通过识别玩家的情感状态,更好的理解玩家的感受和态度,进行针对性的优化和改进,增加游戏玩家的趣味性;在智能客服行业,通过结合企业领域知识和大模型语义理解能力构建智能客服。这些智能化应用落地的背后,离不开向量数据库的加持。向量数据库使用场景多且丰富,常常应用在以文搜图、以图搜图、听音识歌等等,技术已经得到了广泛的应用,比如:

  1. 人脸识别服务,支持高维人脸识别。
  2. 以图搜图服务,即通过图片检索图片的应用服务。
  3. 视频检索服务,即通过视频中的某些帧图片进行视频图片检索,来实现视频检索。
  4. 声纹检索服务,即通过音频匹配音频的应用服务。
  5. 推荐系统服务,即通过用户特征匹配实现推荐匹配的功能。
  6. 基于语义的文本检索和推荐,通过文本检索近似文本。
  7. 问答机器人,通过与大模型结合搭建高效的问答机器人服务。

为了实现特征向量的快速检索,一般都会构建向量索引来实现。通常说的向量索引都属于ANNS(Approximate Nearest Neighbors Search,近似最近邻搜索),它不同于数字的等值或者字符串的term匹配,也不同于like或者全文检索的近似匹配,而是在最大程度上通过非结构化数据的相似度进行检索。

ANNS向量索引可以根据实现方式的不同区分为不同类型的索引,主要分为图索引和量化索引,其中图索引主要是HNSW和RNSW,量化索引主要是PQ、FLAT、SQ8和SQ8H等。为了能使ANNS向量索引能够更加方便地应用到实际的生产环境中,目前业界主要有两种实践方式。一种是单独将ANNS向量索引服务化,以提供向量索引创建和检索的能力,从而使其成为人工智能服务体系中的一部分;另一种就是在传统结构化数据库的基础之上,去融合ANNS向量索引的能力,从而使其能直接使用简单的SQL就能完成复杂的结构化数据检索,也能同时具备结构化与非结构化融合查询的能力。

云原生数据仓库AnalyticDB MySQL是一款阿里云数据库团队自研的云原生数据仓库产品,支持向量和结构化数据的融合检索,在各种条件组合的查询的场景中,达到超过99%的召回率。它的数仓和湖仓提供了非结构化数据的存储和通用数据库检索服务。通过深度学习网络完成推理,可以将非结构化数据转化成向量,提供基于向量的相似性检索。

AnalyticDB MySQL在集成向量检索引擎的同时也做了很多优化,算法的核心思想是把HNSW(Hierarchical Small World Graph)算法和多版本PQ(Product Quantization, 乘积量化)编码算法做一个融合,实现了不同场景下支持向量索引的实时增删查改,使向量检索引擎和数据库本身融为一体,可以非常方便的使用。目前AnalyticDB使用的向量检索引擎技术已经发表在了VLDB上,该文主要讲述了HNSW算法和PQ算法在AnalyticDB中的实现以及相应的优化策略。

3. 未来展望

  • 向量服务的Embedding服务可以支持插件式,提供Serverless/Function的向量Embedding服务,支持根据不同的业务场景选择不同的Embedding模型。
  • 在相似度的召回率上提供可配置的选项,支持在QPS和召回率之间做一个更自主的灵活配置。例如除了支持人脸,声纹等需要高正确率的检索,也需要支持图片等素材更需要弹性的检索。
相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
1月前
|
云安全 机器学习/深度学习 人工智能
阿里云安全Black Hat技术开源大揭秘,AI安全检测的工程化实践
阿里云安全 LLMDYara框架开源核心思路,赋能云安全产品!
|
30天前
|
数据采集 人工智能 分布式计算
ODPS在AI时代的发展战略与技术演进分析报告
ODPS(现MaxCompute)历经十五年发展,从分布式计算平台演进为AI时代的数据基础设施,以超大规模处理、多模态融合与Data+AI协同为核心竞争力,支撑大模型训练与实时分析等前沿场景,助力企业实现数据驱动与智能化转型。
148 4
|
1月前
|
人工智能 自然语言处理 机器人
智能体平台哪家值得选?盘点国内外12家AI Agent平台技术特色
智能体平台正引领人机协作新潮流,将“智能”交给机器,让“平台”服务于人。2024年被Gartner定义为“AgenticAI元年”,预示未来企业交互将由智能体主导。面对百余平台,可从三条赛道入手:通用大模型、RPA升级派与垂直场景定制。不同需求对应不同方案,选对平台,才能让AI真正助力工作。
|
1月前
|
机器学习/深度学习 人工智能 搜索推荐
思维树提示技术:让AI像人类一样思考的魔法
想象一下,如果AI能像你思考问题一样有条理,从一个想法延伸到多个分支,会发生什么?思维树提示技术就是这样一种让AI更聪明的方法,通过结构化思维引导,让AI等大模型给出更深入、更全面的回答。本文将用最轻松的方式,带你掌握这个让AI智商飞升的秘技。
|
28天前
|
设计模式 人工智能 API
​​混合检索技术:如何提升AI智能体50%的响应效率?​
本文深入解析检索增强智能体技术,探讨其三大集成模式(工具模式、预检索模式与混合模式),结合实战代码讲解RAG组件链构建、上下文压缩、混合检索等关键技术,并提供多步检索工作流与知识库自更新机制设计,助力高效智能体系统开发。
150 0
|
1月前
|
人工智能 文字识别 安全
【WAIC 2025】AI安全的攻防前线:合合信息AI鉴伪检测技术
本文记录了作者在WAIC 2025上对合合信息AI图像鉴伪技术的深度探访,涵盖人脸视频篡改检测、AIGC图像识别、文档篡改检测三大核心技术,探讨AI时代内容安全的挑战与产业落地实践,展现图像伪造检测从技术到生态的系统化演进。
123 0
|
2月前
|
机器学习/深度学习 人工智能 开发者
如何让AI从简单的记忆型模型进化为具备深度推理能力的‘学霸’?—— 解析提升AI推理能力的四大核心技术
本文由AI专家三桥君探讨AI推理能力的四大核心技术:推理时间扩展、纯强化学习、标注数据+强化学习、知识蒸馏。通过对比记忆型与推理型AI的差异,分析显式与隐式推理的特点,揭示AI从"记忆答案"到"深度思考"的进化路径。三桥君指出,这些技术使AI在数学证明、编程等复杂任务中表现显著提升,但也面临算力成本与输出速度的平衡挑战。三桥君认为AI推理能力的发展将为科研、教育等领域带来革新,推动AI成为人类的"思考伙伴"。
138 0

热门文章

最新文章

相关产品

  • 云原生数据仓库AnalyticDB MySQL版