爱游戏官网入口

在你买买买的背后AI图像算法都做些什么?

来源:爱游戏官网入口    发布时间:2024-04-28 21:39:47

  • 产品概述

  自 2013 年转型以来,蘑菇街电商平台历经了多次双 11 大促的洗礼。通常而言,大量的商家与商品参与双 11,用户规模相比平时也会剧增。今年双 11,蘑菇街还开辟了微信小程序作为新的支点,希望以此撬动新社交电商战略。平台为用户所带来价值的关键是保障商品丰富、价格合理、服务可靠。在此背景下,有很多挑战需要在复杂的业务场景中去应对,这中间还包括:怎么样提高商品管理的效率,以及如何改善使用者真实的体验。在众多的技术和产品方案中,图像算法作为一项重要能力,运用于电商场景中,支持上述业务问题的改善。

  给定一个图像作为 query 输入,基于内容的图像搜索过程是在指定的图像数据库中检索,找到和 query 相同或者内容相似的图像。蘑菇街的图像搜索应用场景大多分布在在商品搜索上,既有移动端的搜相似购物,也有后台运营选品的需求等。

  随着深度学习的兴起,利用 CNN 提取图像特征,已成为图像检索领域的共识。商品图片类别众多、背景复杂,如何从丰富的图像信息中提取关键特征依然是很有挑战的问题。图像特征模块主要包含三个重要部分:数据清洗、特征模型设计、模型压缩。

  利用 CNN 提取图像特征,关键在分类标签的定义。有文章(ICLR 2017: On the Limits of Learning Representations with Label-based Supervision)指出:模型提取特征能力的上限,不在数据集的大小,而在标签质量。因此,设计监督更强、质量高的标签,更加有助于特征的表示。我们的商品标签有两个来源,一个是商品在类目体系中从属的类别,另一个是商家对商品的描述。数据清洗过程主要解决商家打标的标签和图像实际内容不符合的问题。利用自动化图像标签模块,可对商品图片自动打标,辅之以人工矫正。通过这一种方式我们累积了数以千万计的样本图像数据,所涉及的标签 label 数目有几千种,从而构建了高质量的训练样本。

  特征模型部署在 GPU 服务器上,为控制管理系统的整体响应时间,需要缩短特征提取的时间,因此要对深度学习网络模型进行压缩。压缩算法采用的是(ICLR 2017: Pruning Filters for Efficient ConvNets)所提到的剪枝策略。具体的做法是:针对每个卷积核计算其绝对值和,然后排序,针对绝对值小的权值和通道进行剪枝。流程中包括两个主要步骤:首先按照特殊的比例 (比如 10%) 进行压缩,接着进行模型的 fine-tunning 训练;两者交替迭代进行,直至模型精度的下降超过预设的目标,流程结束。最终我们所获得的特征模型在 GPU 卡 K40 上,单次特征抽取的时间在 40ms 内。

  鉴于搜索数据库数据量级很大,对每个查询都要计算所有的距离是十分艰难的,同时存储数千万图片的高维残差网络特征向量需要耗费巨大的存储空间。未解决这样一些问题,采用了近似最近邻算法中的局部优化的乘积量化算法(Product Quantization,PQ),训练得到粗量化质心和细量化质心,粗量化的结果用来建立倒排索引,细量化的结果用来计算近似距离。通过这种方法,既能保证图像索引结果的存储需求合理,也能使检索质量和速度达到更好的水平。

  电商基础业务中,需要审核商家上传的商品图片。我们在实践中基于相似图像搜索技术,构建了同图识别系统。系统产出了全量图像数据的索引库,基于相似搜索引擎来查询商家图片是否为商品库中的相同图像。根据查询结果,结合业务规则,判断商品是否为同款。图 3 给出了同款商品识别的系统概要图。

  蘑菇街 APP 上提供了搜相似商品的功能。如图 4 所示,其过程是点击单个商品图像右下角的搜索图标,将与该图像相似的同类商品展现给用户。

  图 4. 搜相似的用户界面,左 (a) 商品展示原图,右 (b) 相似商品列表页面

  图像标签技术的任务是通过图像算法,自动识别图片内容,如场景、风格、主体名称、颜色、图案等。通常来讲,在电商中对商品图片做图像标签的处理流程如图 6 所示,其中所涉及到的技术模块简述如下。

  这个阶段利用图像分割技术,将商品主体从背景中分离出来。以服装图像为例,区域提取的目标是对图片进行精细化语义分割,排除背景与服装、服装与服装之间的相互干扰。针对服装模特图片,我们通过 Human Parsing 算法,把主要区域提取出来,例如:头肩、上衣、裤子、鞋、包包等。

  图像语义分割是图像理解的基础技术,在服饰信息分析、无人驾驶系统(具体为街景识别与理解)、无人机应用(着陆点判断)以及穿戴式设备应用中举足轻重。众所周知,图像是由像素组成,语义分割就是将像素按照图像中表达语义含义的不同进行分组和分割。如图 6 所示,紫域表示语义为“上衣”的图像像素区域,荧光蓝代表“下装”的语义区域,军绿色表示“包包”,橙色则表示“鞋子”区域。在图像语义分割任务中,输入为一张 H×W×3 的三通道彩色图像,输出则是对应的一个 H×W 矩阵,矩阵的每一个元素表明了原图中对应位置像素所表示的语义类别(Semantic label)。因此,图像语义分割也称为“图像语义标注”。

  在语义分割领域,全卷积网络 (Fully Convolutional Networks,FCN) 推广了原有的 CNN 结构,在不带有全连接层的情况下能进行密集预测。FCN 使得分割图谱可以生成任意大小的图像,且与图像块分类方法相比提高了处理速度。实际上几乎所有关于语义分割的最新研究都采用了 FCN 结构;不过该框架中的池化层在增大上层卷积核的感受野、聚合背景的同时,却丢弃了部分位置结构信息。

  丢失的位置结构信息主要由于重复池化和下采样造成,因此我们的网络中移除了最后的若干个最大池化层下采样操作,并对滤波器进行上采样,在非零的滤波器值之间加入空洞,进行空洞卷积。如图 7 所示,(a) 中的常规卷积只能获取到较小感受野上的稀疏特征;(b) 中方法采用空洞卷积后能够获得较大感受野对应的更丰富特征,对应到服装语义分割也就保留了人体和服装之间的位置结构信息,有助于服装分割效果的提升。

  根据电商业务特点,主要从三个不同的维度来定义标签体系,包括类目、元素、颜色。类目主要描述商品是什么,元素和颜色体现商品有咋样的性质。

  用色彩来装饰自身是人类的原始本能,色彩在服饰审美中有着举足轻重的地位,自古至今都是服装三大要素之一,因此服装颜色标签识别是重要部分。通过区域提取过程获得上衣、裤子等服装单品的区域后,对单品图像采用改进的 Mean-Shift 算法进行颜色聚类,得到服装单品的主要颜色占比。

  商家在发布新品时,需要填写商品的标题、上传图片,填写商品的属性值,以及详情页信息。当上新量很多的时候,特别是筹备双 11 期间,填写商品信息比较费时,加大了商家的工作量。而图像算法能够在商家上新的环节,通过一系列分析上传的图片,得到图中的关键信息,为商家提供便利。

  以服装类目举例,商家上传了商品图片后,我们通过图像标签技术模块,计算得到图中商品的一系列属性信息。例如图 8 所示,这一些信息包括:类目(毛呢外套)、袖长(长袖)、版型(收腰)、领型(西装领)、衣长(长款)、风格(韩系)、颜色(藕粉色)等。利用这一些信息,自动帮商家填写好对应的属性,节省了商家选择属性值的时间。当商家发现图像算法识别错误时,可以在自动填写的基础上,对已填写内容做手动修改。整一个流程能够大幅度减少商家上新填写信息所需时间,提升商家的业务效率。

  在实际的业务场景中,图像算法开发是基于应用来驱动的,为保障平台运营和使用者真实的体验提供价值。我们的工作,通过图像搜索技术能自动识别平台上的同款商品,提升后台商品管理的效率;也可以帮助用户发现更多相似商品,改善使用者真实的体验。同时,运用图像标签技术,为商家发布新品节省信息填写时间,提升了商家效率。

  我们在日常的开发过程中积累图像算法的基础模块,并在双 11 的业务开发中拓展其运用场景;未来将依据业务中的数据变化、场景变化,进行技术迭代开发,从而为一直在升级的业务需求提供保障。

...

分享到