李 圆,于 淼
(青岛大学 纺织服装学院,山东 青岛 266071)
近年来,电子商务成为人们购物的主要渠道,特别是服装领域,已经成为线上购物的最大品类,并且销售规模逐年增长[1]。伴随着服装网购市场规模的不断扩大,产生了海量的服装商品数据信息。用户在海量、不断增长的服装资源中快速选择出自己心仪的服装变得不那么容易。使用推荐系统能够从海量数据中筛选出用户可能会购买的商品,过滤冗余数据,减少由于数据过载给消费者造成的不便。推荐系统能够有效提供服装推荐,并对消费者的选择做出快速反应,提高用户体验感,对电子商务销售的发展重要贡献。
从本质上说,推荐系统通过分析用户的信息来评估用户对产品的喜好,并将预测结果中喜好度较高的产品反馈给用户。推荐系统产生于1990年代,根据获取的用户信息,基于计算信息的能力,找到用户需求的商品[2]。经过几十年的发展,基于文本信息的推荐技术已经得到了很大的研究和发展,在商业上的应用也取得了成功。然而,随着图像信息技术的发展,图像相比于文本能够对服装进行更好的描述,基于图像的推荐受到越来越多的关注[3]。在10世纪10年代中期,机器学习领域的深度神经网络(又称深度学习)的兴起,彻底改变了语音识别、计算机视觉和自然语言处理等多个领域。深度学习(DL)被广泛应用到图像识别的各个领域,在服装推荐方面也取得了巨大成功。因此,在过去的几年里出现了许多开发深度学习方法的推荐系统的工作[4-5]。
本文以当前国内外对服装推荐的研究现状为基础,归纳了包括服装图像的目标识别与分割、服装特征提取、服装推荐算法的服装推荐过程,着重介绍了5种深度学习的服装推荐算法模型,分析各个模型的特点,阐述了服装推荐个性化的发展趋势,为服装推荐的发展提供助力。
服装推荐系统构架来源于机器学习的思想,从网络上获取图像数据,对图像中的服装进行识别与分割以消除背景的影响,提取图像中服装的特征(如颜色、款式、风格)实现服装描述,进而对服装进行分类,依据不同的算法进行推荐。服装推荐涉及到的关键技术包括服装图像的目标识别与分割、服装特征提取、服装推荐算法3部分,服装推荐过程如图1所示。
图1 服装推荐过程
由于有些服装图像具有复杂的背景,因此需要对图像进行处理,在背景中识别出服装,进行分割,消除背景干扰信息,保留有用信息,避免对后续服装推荐产生影响。
基于传统的图像分割方法包括基于阈值的分割方法、基于边缘的分割方法、基于聚类的分割方法、基于区域的分割方法、基于图类的分割方法以及基于特定理论的图像分割方法等[6]。传统图像分割方法大多利用图像的表层信息,分割图像准确率和计算效率较低,在进行服装图像分割时往往包含背景等无关信息。
基于深度学习的图像分割方法利用图像的语义信息,能够应复杂的场景图像进行分割。基于深度学习的图像分割方法更加精确高效,分割效果较为细致。深度学习充分利用图像的语义信息进行分割,在准确性和效率方面远远超过传统图像分割方法。深度学习技术的关键优势[7]是能够以端到端的方式学习图像的特征表示,对图像进行像素级别的分类。
Mask R-CNN[8]模型是常见的基于深度学习的图像分割方法,在服装检测中应用较多。Mask R-CNN是Faster R-CNN的扩展,添加一个并行的分割掩码来预测每个感兴趣区域,能够有效地检测图像中的对象,同时为每个实例生成高质量的分割掩码,因此Mask R-CNN模型更加灵活,可以用来完成标分类、目标检测、实例分割、人体姿态识别等任务。用于实例分割的Mask R-CNN框架如图2所示。Paulauskaite等[9]利用优化的UNet模型进行服装分割和形状轮廓提取,UNet收集有关照片中服装位置的信息,通过这些数据,该算法可以轻松识别服装上的关键点,在经典UNet结构中增加了额外的编码和解码层,消除了图像中可见的无关伪影,并解决了不同环境条件的问题。Wang[10]将基于区域的全卷积网络(R-FCN)引入服装图像识别,并提出改进的HSR-FCN模型,该模型能够对输入的服装图像和特征图进行空间变换和对齐,对多角度服装和变形服装加强特征学习,并且在更短的训练时间下得到了更高的准确率,平均准确率比原始网络模型R-FCN的提高了约3%,达到96.69%。
图2 Mask R-CNN的基本框架
服装特征通常分为低层传统特征和高级语义特征[11]。服装特征提取类型和方法如表1所示。低层传统特征包括服装的形状、颜色、纹理等。形状特征的提取可以通过提取服装轮廓的边缘信息来识别的基于边缘的形状法或是分析图像中服装灰度的分布信息的基于区域的形状方法。颜色的特征提取方法有颜色直方图、颜色相关图、颜色矩及颜色一致性矢量等。颜色直方图已被广泛应用于目标识别与特征提取[12]。颜色直方图[13]将颜色划分区域,计算每个区域的比例,优点是操作、存储和比较速度快,但对旋转和缩放不敏感。局部二值模式(LBP)[14]可以用于对服装图像纹理的特征提取。图像首先被分割成若干块,以保留一定的几何信息,每个图像被划分为5 × 4个子区域,然后对于每个子区域,提取像素点LBP特征并将其连接以用于直方图表示,利用子区域直方图表示整张服装图像纹理特征。
表1 服装特征提取
高级语义特征在服装相关领域中指服装属性及风格。深度学习技术通过学习特征以及对图像卓越的辨别能力,在语义分割和特征检测领域上取得了可喜的成果。深度神经网络能够学习数据中的复杂模式,这意味着其可以从传统方法难以学习的图像中提取特征。深度学习具有高度可扩展性,支持在大型数据集上训练非常大的深度神经网络,因此能够以比传统方法更高的抽象级别从图像中提取特征。深度学习目前面临着诸多挑战[15],其有效性严重依赖于大型数据集,计算复杂度非常高,通常被认为是可解释性差的黑盒模型。随着深度学习在图像领域的发展,基于深度学习的图像特征提取在服装特征提取上得到了较多应用。Zhang等[16]提出了一种混合多标签卷积神经网络用于捕捉服装属性,将卷积神经网络推进到多标签策略中,并通过探索标签相关性考虑服装项目的不均匀分布,用其来识别53个细粒度的服装项目。Li等[17]利用目标检测技术和深度残差网络(ResNet)提取服装的综合特征,使识别过程集中在服装本身上,消除了背景和其他干扰因素的影响,很大程度上提高服装风格识别的准确性,但是当服装图像被严重遮挡时,识别率将降低。Chen等[18]设计了双关注的ConvNeXt网络,通过合理挖掘服装细粒度的属性,利用服装类型转移训练服装风格,达到有效地预测服装的类型和款式。该模型和方法不仅有效提高识别的速度和准确率,在处理能力上具有灵活的多样性。
推荐算法是推荐系统中最核心的部分,在类型和性能评估中起着决定性作用[19]。受深度学习在计算机视觉和语言理解方面取得巨大成功的影响,推荐研究已转向基于神经网络的新推荐算法模型。在开发服装推荐系统时,最常用的基于深度学习的服装推荐算法模型是卷积神经网络(CNN)、循环神经网络(RNN)、多层感知器(MLP)、生成对抗网络(GAN)和贝叶斯网络。
1.3.1 卷积神经网络(CNN)
卷积神经网络[20]主要由卷积层、池化层和全连接层3种类型的层组成。卷积神经网络具有联合特征和分类器学习的能力,在大规模数据集上具有较好的分类精度。CNN以其强大的特征提取和图像分类能力在推荐系统中非常流行。使用预先训练的卷积神经网络进行特征提取并为用户生成产品(特别是衣服)的推荐。Tuinhof等[21]使用CNN作为服装图像特征提取器,提取客户上传的服装图像类型特征,使用排名算法提供与图片类似的商品推荐,但是特征提取和特征排名推荐是2个独立的阶段,而不是完整的系统。Yu等[22]使用由1个深度CNN结构和1个高级合成网络组成的脑启发深度网络提取整体特征来表示服装产品的审美元素,利用了1种张量因子分解模型,将审美特征纳入模型中,以捕捉消费者在特定时间的审美偏好,实验表明,该模型能够揭示消费者的审美偏好,并推荐符合其审美的服装。
1.3.2 循环神经网络(RNN)
循环神经网络[23]体系结构的典型特征是循环连接,这使RNN能够根据过去的状态和当前输入数据更新当前状态。卷积神经网络的一个缺点是其在建模长跨度关系方面较弱。相比于卷积神经网络,循环神经网络能够更好的处理数据中的时间信息。然而RNN在处理输入相差较大的数据时无法连接相关信息。为了解决这个问题,Hochreiter等[24]提出了长短期记忆(LSTM),基于RNN的很多结果都是由LSTM实现的,LSTM能够学习上下文信息,在推荐系统中利用该功能可获取全局特征或进行偏好预测。Li等[25]基于用户的评论和评分数据,使用LSTM掌握上下文信息,结合注意机制,捕获全局方面表征,结合CNN捕获的局部方面特征,2个并行通道学习用户方面特征和项目方面特征,来提供更准确的用户评分预测。Wu等[26]构建了一个深度循环神经网络,利用深度RNN追踪用户的浏览历史,提取用户购买模式,在模型中,用户会话表示为一系列网页,表示从第1页到购买项目的路径,模型提取用户常见的购买模式,并尝试为未来用户缩短路径,因此用户可以快速到达所需产品的页面,该模型可为电子商务网站进行实时推荐。
1.3.3 多层感知器(MLP)
多层感知器[27]是一种人工神经网络结构,由输入层、输出层和隐藏层3种类型的层组成。MLP能够逼近任何连续函数,而不仅仅是线性函数,并且可以解决不可线性分离的问题。MLP是CNN的经典类型,CNN训练收敛更快,误差更小,准确率更好,但是训练时间会更长。MLP的训练通常通过使用涉及2个阶段的反向传播 (BP) 算法来完成,实现简单,计算效率高。MLP模型已被应用到很多推荐模型,包括服装方面的推荐。Lu等[28]提出一种基于图的算法,利用改进的核函数学习所有用户的偏好和兴趣,采用MLP方法将用户和物品的向量映射到神经网络中,通过神经元的操作来学习用户和物品之间更多的潜在信息,该方法不仅可以通过将用户信息映射到网络来发现用户之间的一些潜在特征,而且将带有评级信息的向量改进为MLP方法,预测项目的评级,因而可以获得更高的精度和推荐效果。
1.3.4 生成对抗网络(GAN)
生成对抗网络[29]是一种生成性神经网络模型,旨在生成看起来像真实数据的图像。GAN包括一个生成器和一个判别器,两者都在对抗性学习理念下进行训练。生成器的输入是低维噪声矢量。它将噪声转换为数据向量,从而形成潜在的数据样本。鉴别器将该数据向量作为输入,并根据该数据向量来自原始数据分布的可能性为其分配分数。GAN解决了许多在推荐系统中发现的问题,GAN通过生成代表高基数目录中整个产品分布的样本缓解推荐的新颖性和稀缺性问题,通过学会用最少的识别信息为用户段生成联合分布使得冷启动问题得到了缓解。Bock等[30]在2个成对的GAN模型基础上提出了耦合GAN推荐器,进而提出了一个条件耦合生成对抗网络,可以学习从在线用户行为的联合分布中生成样本,这些样本可用于为特定用户群提供产品推荐。
1.3.5 贝叶斯网络
贝叶斯网络[31]是概率有向无环图模型,使用节点来表示变量,使用弧来表示链接节点之间的直接依赖关系,并使用条件概率来量化依赖关系。静态贝叶斯网络广泛用于可靠性评估。Guigourès等[32]引入了一种分层贝叶斯方法,联合建模1个或多个尺寸的物品的购买及其可能的退货事件,为电子商务提供合适的尺寸推荐,在数百万客户的真实(匿名)数据上实验,并与具有简化假设的基线方法进行了详细讨论和比较,结果表明贝叶斯方法优于基线方法。He等[33]提出贝叶斯对偶神经网络框架,一个是从评分矩阵中为用户和商品学习一个公共的低维空间,另一个是将用户和商品的属性投影到另一个共享的潜在空间中,结合了来自用户和商品的辅助信息进行推荐,并且将不确定性引入所有权重,以进行校准的概率预测。
1.3.6 其 他
研究人员将多种算法和技术结合在一起,以实现更好的系统优化,并避免基本推荐系统的不同限制和挑战。与单一算法相比,算法的组合将为用户提供更合适、更有效的建议。Chen等[34]将GAN和RNN相结合,提出了的TagRec模型,集成的GAN和RNN可以提取评级和社会信息特征,以处理推荐系统中的稀疏性问题,模型利用用户信任信息进行 top-N 推荐,进一步提高推荐性能,在2个真实数据集上的实验证明了所提出的TagRec的有效性。Xin等[35]针对个性化可视化推荐的问题提出了一个学习框架,并与深度神经网络架构结合,将用户生成的可视化作为输入,从用户的可视化和数据偏好中学习,为特定的用户意图和偏好提供更高质量的可视化推荐。Yang[36]提出结合深度学习的决策树算法服装设计风格推荐,即利用基于深度学习(DL)理论的多标签分类算法构建服装风格识别模型,并基于决策树算法构建服装推荐模型,使用基于决策树算法的服装推荐系统后,受试者的平均满意度为86.25%,说明该系统可以给用户更好的服装推荐体验。Su等[37]提出混合循环卷积神经网络(RCNN)方法计算情感表达强度,采用多类SVM方法进行动态表达识别,并使用循环卷积神经网络(RCNN)的方法评估表达(快乐、愤怒等)强度,结合表情强度和表达时长来计算用户的多兴趣值,采用多兴趣价值融合的方法进行个性化服装推荐。
基于深度学习的服装推荐算法模型优缺点总结如表2所示。
表2 基于深度学习的服装推荐算法模型
随着线上购物和推荐系统的发展,消费者对服装的个性化需求增加,个性化服装推荐也受到了越来越多的关注。个性化服装推荐能够根据消费者的信息、需求等推荐给消费者感兴趣的服装。因此,个性化服装推荐引起了国内外服装专家的关注。进行高质量的个性化服装推荐需要满足2个条件:①用户偏好预测,即整个服装要整体符合用户喜好;②服装项目之间的兼容性,即同一套服装中的单品在视觉上应该相互兼容。
Li等[38]提出了一种层次化的时装图神经网络,构建了一个基于用户服装交互和服装项目映射的层次结构,将兼容性信息视为图中传递的消息,并将其编码到节点表示中,将兼容性匹配和个性化推荐结合考虑,使得推荐的结果不仅具有良好的兼容性,而且满足用户的个人喜好。Abugabah等[39]提出了一种基于用户偏好动态变化和视觉兼容性关系的时尚学习模型,对基于场景的用户偏好进行建模,以从历史用户交互中推断项目-项目关系,将用户偏好与用户评论信息和图像区域级特征联合,以做出更准确的推荐,实验结果表明所提方法能够更准确地理解用户的偏好,但是在实际互联网中,用户提供的查询词往往很短,会导致歧义而误解用户的意图。Paul等[40]结合视觉、时间和顺序信息来进行个性化推荐,利用时间层次嵌入(T-Sherlock)方法将视觉特征结合到时间模型中来预测用户对不同类别产品的偏好,但是对于新用户,难以提供较高质量的推荐。Divitiis等[41]提出了一种基于记忆增强神经网络的方法,通过服装属性的共现来解决个性化推荐时的服装项目兼容性。但是模型训练仅基于颜色和形状,对于服装面料及风格兼容还有不足。Mo等[42]将服装兼容性与个人物理属性联系起来,以进行完整的兼容性学习,用于推荐最适合个人的服装,然而由于时尚单品的属性分布和服装的物理标签分布不平衡,所提方法性能不尽如人意。
在人们的日常生活中,如何很好地搭配衣服总是一个麻烦的问题,决定穿什么、如何搭配自己的衣服并不容易。合理搭配服装已经成为广大消费者的内在需求。研究人员将搭配造型知识、服装相关性等搭配规则融入推荐系统中,为用户提供合理的搭配服装。服装搭配推荐系统的应用,可以有效满足客户在穿衣搭配方面的需求,从而节省大量的时间和精力。Wang等[43]利用卷积神经网络提取视觉信息,从视觉语义嵌入预测时尚兼容性,基于单品的服装时尚相容性成功地从款式、质地和细节配饰上匹配服装。Cui[44]从人工智能技术与服装时尚相结合的角度出发,提出改进型SDD_RN网络,提取多特征融合开发出更符合个性化需求的服装搭配推荐。Liu等[45]利用服装商品之间的相关性,使用神经图滤波框架服装单品进行建模,建立了基于图结构的服装搭配系统。
在电子商务平台上购买时尚服装与在线下零售店购买有很大不同,因为电子商务平台可以购买的服装产品范围更广。因此一个有效地支持用户搜索其想要的产品并进行推荐的系统在网络购物中起着重要作用。服装检索推荐不仅能够便捷用户检索,还能够根据用户提供的查询信息捕捉用户的意图,根据个人历史数据,如以前的销售、服装购买记录、眼动记录和项目点击率,通过特征相似性和相关性分析对用户提供精准的推荐。Sevegnani等[46]提出模型WhisperLite,使用对比学习从自然语言文本中捕捉用户意图,CLIP 嵌入的强度与用于个性化的附加神经网络层相结合,并使用基于二元交叉熵和对比损失的复合损失函数进行训练,显著改进了离线推荐检索指标。Jiang等[47]提出了一种基于卷积网络的深度交叉三元组嵌入算法,用于双向服装检索。
随着消费者对个性化时尚推荐系统的需求不断增加,在服装设计阶段根据客户需求进行个性化设计变得至关重要。Ling等[48]通过整合冲突规则处理机制及其在个性化时尚推荐系统中的应用,提出了一种新的服装设计知识库。Wang等[49]提出了一种基于2个数学模型的服装设计推荐系统,该系统允许从消费者在合身性和美观方面的个性化需求来预测和控制服装款式和结构参数。Sharma等[50]提出了一个数据驱动的交互式设计系统架构,以帮助设计师根据服装购买者的喜好,结合设计师的技术知识,创造出最相关的定制服装。
当前时期,服装行业呈现加速发展态势,服装品牌和品类大幅增加,服装数据较多。服装产品推荐能使用户在短时间内找到最满意的服装。Becattini等[51]利用Shigenobu Kobayashi的彩色图像量表将情感模式和情绪与颜色三元组联系起来,从在线可用的数据信息中提取服装外观和相应的社交活动,提出了一种兼顾基于风格的过滤和基于事件的过滤的时尚推荐方法。周捷等[52]利用灰色关联层次分析法建立服装号型选择模型,向消费者提供准确的服装号型。Zhang等[53]通过整合设计师和购物者的专业知识并考虑消费者对产品的看法而开发出一种通过模糊技术和AHP的面向消费者的推荐系统,该系统可以像虚拟销售顾问一样用于服装在线购物系统。
服装推荐系统能够帮助消费者快速找到与其选择匹配的服装,成为电商平台发展的重要手段。服装推荐系统进入快速发展阶段,已经取得了较多研究成果。
本文通过对服装推荐过程、推荐算法模型、应用领域进行总结分析,发现服装推荐算法的研究主要集中在捕捉服装特征和用户需求上,对挖掘潜在消费群体,预测消费者兴趣变化还有不足。服装推荐的应用也多围绕在销售环节的消费者身上,未能充分发挥推荐系统对服装开发设计环节的指导作用。单一推荐模型能取得不错的效果,但是仍存在一定的缺陷,混合模型推荐的研究将受到更多关注。在推荐系统开发中应当对灵活使用算法和模型,不局限于某一类,巧妙融合,提高效率和性能。
在未来,在服装推荐中应注重个性化与人工智能相结合,基于用户的需求与偏好,符合消费者的个人特性与心理变化,满足消费者的实际需求。基于图像进行的推荐得到了越来越多的重视,然而对图像进行视觉解释的同时,往往忽略必要的文字解释而缺乏精确性,因此服装推荐需要重视图像与文本的结合,在视觉信息和文本信息联合的方向迈进。