CN118154282A - 基于图神经网络的多模态个性化服装推荐方法 - Google Patents
基于图神经网络的多模态个性化服装推荐方法 Download PDFInfo
- Publication number
- CN118154282A CN118154282A CN202410581807.2A CN202410581807A CN118154282A CN 118154282 A CN118154282 A CN 118154282A CN 202410581807 A CN202410581807 A CN 202410581807A CN 118154282 A CN118154282 A CN 118154282A
- Authority
- CN
- China
- Prior art keywords
- user
- clothing
- garment
- vector
- feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 97
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 35
- 230000008569 process Effects 0.000 claims abstract description 10
- 239000013598 vector Substances 0.000 claims description 324
- 230000000007 visual effect Effects 0.000 claims description 69
- 238000010586 diagram Methods 0.000 claims description 65
- 239000011159 matrix material Substances 0.000 claims description 42
- 230000003993 interaction Effects 0.000 claims description 41
- 238000004220 aggregation Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 26
- 230000002776 aggregation Effects 0.000 claims description 25
- 238000012549 training Methods 0.000 claims description 18
- 230000004931 aggregating effect Effects 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 13
- 230000015572 biosynthetic process Effects 0.000 claims description 11
- 238000003786 synthesis reaction Methods 0.000 claims description 11
- 238000003062 neural network model Methods 0.000 claims description 9
- 230000009467 reduction Effects 0.000 claims description 9
- 238000013527 convolutional neural network Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000004927 fusion Effects 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000006116 polymerization reaction Methods 0.000 claims description 4
- 230000002902 bimodal effect Effects 0.000 claims description 3
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000005259 measurement Methods 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims description 3
- 238000005096 rolling process Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 claims description 3
- 238000005065 mining Methods 0.000 claims description 2
- 238000009966 trimming Methods 0.000 claims description 2
- 238000012360 testing method Methods 0.000 abstract description 7
- 230000008901 benefit Effects 0.000 abstract description 3
- 238000006243 chemical reaction Methods 0.000 abstract description 2
- 238000002474 experimental method Methods 0.000 description 8
- 238000004088 simulation Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012827 research and development Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 241001235534 Graphis <ascomycete fungus> Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000010921 in-depth analysis Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000004451 qualitative analysis Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000000192 social effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 235000019640 taste Nutrition 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于图神经网络的多模态个性化服装推荐方法,该方法通过分析用户和服装之间的交互数据,有效去除噪声并精确挖掘用户偏好。本发明提出了一种新的个性化服装推荐模型RGCN,该模型结合四种图神经网络处理不同关系,这些图神经网络模块帮助模型更好地理解和表示用户与服装之间的复杂关系,生成细致的节点表示,从而提升服装推荐的准确性和用户体验。本发明在公开数据集POG上的测试证明了该模型RGCN在服装推荐和兼容性建模上的优势,为电子商务中的个性化推荐提供了新视角,并有潜力显著提高服装电商的用户满意度和转化率。
Description
技术领域
本发明属于计算机科学中的推荐系统领域,具体涉及一种基于图神经网络的多模态个性化服装推荐方法,可用于服装电子商务平台为用户提供精准且个性化的购物推荐服务。
背景技术
近年来随着互联网技术和电子商务的蓬勃发展,个性化推荐系统成为商业竞争中不可或缺的工具,尤其是在服装零售行业中,它帮助企业精确预测消费者偏好,增强用户体验并提升销售业绩。近年来,图神经网络(GNN)技术和多模态推荐系统在这一领域中迅速崛起,它们通过深度学习复杂数据关系,为个性化推荐提供了新的视角和方法。
图神经网络技术,作为深度学习的一个重要分支,具备处理非欧几里得数据的独特能力,使其在社交网络分析、知识图谱、以及推荐系统中显示出巨大潜力。GNN模型通过在图结构中对节点进行信息聚合和更新,能够有效捕捉项与项之间的关系。在推荐系统中,这意味着能更精细地理解用户与商品之间复杂的互动模式,提升推荐的相关性和准确性。近年来,伴随着硬件计算能力的提升和算法的优化,GNN已经从理论研究走向了实际应用,尤其在推荐系统中,GNN被用于建模用户-商品交互网络,进而产生个性化推荐。
多模态推荐系统则进一步扩展了推荐系统的视野。传统的推荐系统通常只处理单一类型的数据,如用户的购买历史或商品的评级信息。然而,真实世界的数据是多模态的,包含图片、视频、文本和音频等。多模态推荐系统通过整合这些丰富的数据类型,不仅能够提供更全面的推荐,还能够增强推荐解释性,提高用户满意度。例如,在服装推荐领域,系统能够同时分析商品图片的视觉特征和用户评论的文本信息,以生成更加准确和个性化的推荐。
尽管有了这些技术的进展,现有的推荐系统仍面临挑战。其中,最具挑战性的问题包括如何处理和理解大量的异质性数据、如何对用户行为进行深入分析,以及如何及时响应时尚趋势的变化。服装推荐的复杂性在于服装商品多样性和个性化需求的广泛性。用户的服装选择不仅反映了个人品味,还受到季节变化、流行趋势和社会影响等多种因素的影响。此外,现有技术在处理新用户(即冷启动问题)或新商品推荐时也遇到了挑战。
发明内容
针对以上方法现存的问题以及受深度学习方法快速发展的启发,本发明设计并提出了一种基于图神经网络的多模态个性化服装推荐方法,以实现模型更精细地捕获并融合用户和服装之间的特征信息,从而为用户提供精准且个性化的购物推荐服务。
本发明采取的技术方案是:一种基于图神经网络的多模态个性化服装推荐方法,包括如下步骤:
步骤(1),对原始数据集进行预处理;
步骤(2),将每个用户、服装/>、时尚单品/>的/>通过一个嵌入层映射到一个向量中,并进行初始化;
步骤(3),使用卷积神经网络模型提取时尚单品的视觉信息,使用/>模型提取时尚单品/>的文本信息;
步骤(4),根据服装与时尚单品的关系、服装与服装之间的关系、用户与用户之间的关系、用户与服装之间的交互关系分别构建服装-时尚单品图、服装-服装图、用户-用户图、用户-服装交互图;
步骤(5),使用和/>对服装-服装图、用户-用户图、服装-时尚单品图进行学习,提取图数据中的用户和服装的模态特征嵌入向量以及对应的/>编码特征嵌入向量,其中模态特征嵌入向量包括视觉特征嵌入向量和文本特征嵌入向量;
步骤(6),利用图卷积神经网络模型提取用户-服装交互图中的用户和服装的模态特征嵌入向量以及对应的编码特征嵌入向量;
步骤(7),将上述四种图数据中的用户模态特征嵌入向量、服装模态特征嵌入向量以及编码特征嵌入向量分别进行融合,得到用户模态综合特征嵌入向量、服装模态综合特征嵌入向量以及/>编码综合特征嵌入向量,然后将用户模态综合特征嵌入向量和服装模态综合特征嵌入向量分别与/>编码综合特征嵌入向量进行拼接,最终得到含有所有信息的用户特征聚合向量/>和含有所有信息的服装特征聚合向量/>;
步骤(8),用内积来预测用户购买服装的可能性,得到服装推荐得分,公式如下所示:
服装推荐得分越大说明用户越喜欢该服装。
进一步的,步骤(1)中首先从原始数据集中获取数据并进行数据清洗和数据预处理操作,令用户集合为,/>为用户的总数量,服装训练集为,/>为服装的总数量;设所有服装所包含的时尚单品集合为/>,时尚单品的类别集为/>;给定一整套服装/>由/>项时尚单品/>组成,/>表示集合/>中元素的个数,那么,/>,其中每一项时尚单品都有图片/>和文字/>描述。
进一步的,步骤(2)中使用协同过滤模型,将每个用户、服装、时尚单品的/>投影到一个嵌入层中,即用户、服装、时尚单品都含/>嵌入向量和它自身的特征向量,分别用向量/>、/>、/>来表示服装、用户、时尚单品的/>嵌入向量,并采用/>的方法对这些/>嵌入向量进行初始化。
进一步的,步骤(3)中使用卷积神经网络模型提取时尚单品的视觉信息,公式如下所示:
是时尚单品/>的视觉特征向量,其中/>是视觉特征向量的维度,/>为输入的时尚单品的图片,/>是/>模型的参数,采用在/>上预训练的深度残差网络/>作为特征提取器;
接着,使用模型提取时尚单品/>的文本信息,公式如下所示:
是时尚单品/>的文本特征向量,其中/>是文本特征向量的维度,/>为输入的时尚单品的文本,/>是/>模型的参数。
进一步的,步骤(4)的具体实现方式如下;
(4a)构建服装-时尚单品图:服装与时尚单品存在包含与被包含的关系,根据数据集中服装与时尚单品/>之间的包含关系,构建邻接矩阵/>:
(4b)构建服装-服装图:通过计算服装之间的余弦相似度来构建图数据,并进一步挖掘服装与服装之间的潜在关系,相似矩阵由如下公式所示:
其中,和/>的取值均为/>,/>为服装的总数量,/>和/>分别表示需要计算相似度的两个服装/>和/>的模态特征嵌入向量,即每个模态对应的图不同,/>表示/>和/>之间的余弦相似度,/>,当/>时为图像输入,当/>时为文本输入;
其次,对于整套服装的模态特征嵌入向量、/>,都采用整套服装包含的时尚单品嵌入聚合的方式来表示,如果有/>,那么整套服装的模态特征嵌入向量/>如下所示:
最后,对于每个服装节点,保留相似度得分最高的条边,其中/>为超参数,并构建邻接矩阵:
其中表示/>个服装与服装节点之间余弦相似度得分高的集合;
(4c)构建用户-用户图:使用动态图进行构建,计算用户之间的余弦相似度:
其中和/>分别表示需要计算相似度的两个用户/>和/>的模态特征嵌入向量;/>表示/>和/>之间第/>次计算的余弦相似度,/>为次数;对于每个用户节点,保留相似度最高的/>条边,其中/>为超参数,并构建邻接矩阵:
其中表示/>个用户与用户节点之间余弦相似度得分高的集合;
(4d)构建用户-服装图:数据集中有用户与服装的交互数据,使用协同过滤模型的构建图方式,利用交互数据构建用户-服装交互图,令用户和服装存在交互时,,若用户和服装不存在交互,则/>,故邻接矩阵为:
。
进一步的,步骤(5)的具体方式如下:
(5a)使用对潜在浅层关系学习:用户-用户图和服装-服装图进行邻接矩阵归一化,如下所示:
其中是动态图/>的对角矩阵,/>是静态图/>的对角矩阵,归一化结果为/>和/>;在获得归一化矩阵后,使用/>对两个同质图进行图卷积操作,通过在嵌入过程中聚合节点之间的潜在关系,来学习服装与服装,用户与用户之间的潜在关系,那么就有:
其中,为目标节点,/>为目标节点的邻居节点,/>为邻接节点的特征向量;在用户-用户图中,/>,/>为用户对应的视觉信息,/>为用户对应的文本信息,为用户对应的唯一标识符;在服装-服装图中,/>,/>为服装对应的视觉信息,/>为服装对应的文本信息,/>为服装对应的唯一标识符;对于每套服装/>的模态特征嵌入向量/>,使用服装内每个时尚单品自身的模态特征向量相加来表示,即,/>,当/>时为图像输入,当/>时为文本输入;将最后的输出分别用以下符号表示:/>、/>、/>、/>、/>、/>;/>为用户-用户图中对应的用户视觉特征嵌入向量,/>为用户-用户图中对应的用户文本特征嵌入向量,为用户-用户图中对应的用户唯一标识符嵌入向量,/>为服装-服装图中对应的服装视觉特征嵌入向量,/>为服装-服装图中对应的服装文本特征嵌入向量,/>为服装-服装图中对应的服装唯一标识符嵌入向量;
(5b)使用对潜在深层关系学习:首先确定/>的权重矩阵,权重矩阵为:
和/>表示目标节点时尚单品/>和/>的类别,/>表示非目标节点时尚单品的其它类别,/>表示服装-时尚单品图中边的权重矩阵;/>表示目标时尚单品/>的类别在时尚单品类别集/>上出现的频率;
其次,对于服装-时尚单品图,服装、时尚单品的嵌入向量输入分别为/>、/>,对于时尚单品的模态特征向量输入为/>,/>,而服装节点相对应的模态特征向量的输入/>是通过/>初始化得到;
最后,使用模型进行聚合操作,视服装节点和时尚单品节点为同质节点,给定同质节点的特征向量为/>,公式如下所示:
其中表示图神经网络中第/>层的同质节点向量,/>,/>为特征向量的维度,,而/>是/>模型网络中的层数;/>为目标节点,/>为目标节点的邻居节点,/>为服装节点与时尚单品节点中边的权重矩阵,/>为服装-时尚单品图的邻接矩阵;其中/>,/>为服装对应的唯一标识符,/>为服装对应的视觉信息,为服装对应的文本信息,/>为时尚单品对应的唯一标识符,/>为时尚单品对应的视觉信息,/>为时尚单品对应的文本信息;/>是具有三个线性层的前馈神经网络/>,每个层都配备可学习参数/>和偏差/>,并使用/>作为激活函数;然后按进行降维,其中/>表示串联操作,/>为全连接层,/>输入包括服装和时尚单品的视觉特征向量,服装和时尚单品的文本特征向量,服装和时尚单品的/>编码特征向量,则/>为最终的输出,用符号表示为/>、/>、/>;其中/>为服装-时尚单品图中对应的服装视觉特征嵌入向量,/>为服装-时尚单品图中对应的服装文本特征嵌入向量,/>为服装-时尚单品图中对应的服装唯一标识符嵌入向量。
进一步的,步骤(6)中图卷积神经网络模型包括内容节点更新、噪声裁剪、编码更新,具体实现方式如下:
(6a)内容节点更新包括服装内容节点更新模块和用户内容节点更新模块;服装内容节点更新模块中输入服装模态的特征向量为,/>,当/>时为图像输入,当/>时为文本输入;并将其投影到度量空间中,提取出与用户偏好相关的信息特征,公式如下所示:
其中表示激活函数,/>为可训练权重,/>为偏差向量,通过服装内容节点更新模块得到的最终服装模态特征向量用/>表示;其中/>为用户-服装图中对应的服装视觉特征嵌入向量,/>为用户-服装图中对应的服装文本特征嵌入向量;
用户内容节点更新模块中为了更好地表征用户,需要利用用户-服装图中的邻居服装节点特征对随机初始化得到的用户节点特征进行调整,通过迭代的路由操作聚合邻居服装节点特征并对用户节点特征进行更新:
其中,表示层数,/>表示转置,当/>时,/>=/>,/>;/>为用户节点特征与服装节点特征之间的相似度,该值越大说明服装特征对用户特征建模的信息越大; />表示用户-服装图中用户节点/>的邻居节点集合,通过该用户内容节点更新模块最终输出用户模态特征向量/>;/>为用户-服装图中对应的用户视觉特征嵌入向量,/>为用户-服装图中对应的用户文本特征嵌入向量;
(6b)噪声裁剪包括:对于视觉和文本模态,根据获得的用户偏好和提取的服装特征,计算它们在两个方向上的相对距离:
其中和/>分别表示用户-服装图中用户节点/>和服装节点/>的邻居节点集合,/>和/>是一个在/>模态中反映/>和/>之间亲和力分数的值,/>,当/>时为视觉模态,当/>时为文本模态;为了整合多模态分数,为每个用户或服装定义一个基本向量,如下所示:
其中,表示视觉模态的基本向量,/>表示文本模态的基本向量,/>表示基向量,该基向量用来衡量该节点对不同模态的相对偏好,而该基向量内的每个元素用来表示该节点对相应模态中的重要性;结合基向量,通过融合多模态分数计算边的权重,公式如下所示:
使用最大值函数来确定边的权重,利用基向量/>和亲和力分数/>、/>,得到每条边的权值并赋权,对噪声边实现软修剪;其中/>表示用户节点的视觉模态的基本向量,其中/>表示用户节点的视觉模态的基本向量,/>表示服装节点的视觉模态的基本向量,/>表示服装节点的文本模态的基本向量;/>表示在视觉模态中反映服装节点到用户节点的亲和力分数,/>表示在视觉模态中反映用户节点到服装节点的亲和力分数,/>表示在文本模态中反映服装节点到用户节点的亲和力分数,/>表示在文本模态中反映用户节点到服装节点的亲和力分数;最终得到用户-服装图中服装节点到用户节点的有向边的权重/>、用户节点到服装节点的有向边的权重/>;
最终得到用户-服装图中服装节点到用户节点的有向边的权重、用户节点到服装节点的有向边的权重/>;
(6c)ID编码更新包括:在层中,消息传递和聚合的公式如下所示:
表示第/>层的用户/>的聚合结果,/>表示第/>层的服装/>的聚合结果,/>表示用户节点/>的邻接服装节点/>对应的第/>层的服装/>的聚合结果,/>表示服装节点/>的邻接用户节点/>对应的第/>层的用户/>的聚合结果;从/>跳邻居节点中收集到协同过滤信号后,采取拼接的方式再进行降维操作,公式如下所示:
为带偏置的全连接层函数,用于对输入的特征向量进行降维操作,最后的输出为/>、/>;/>为用户-服装图中对应的用户唯一标识符嵌入向量,/>为用户-服装图中对应的服装唯一标识符嵌入向量。
进一步的,步骤(7)的具体实现方式如下;
对于图数据中用户和服装的模态特征嵌入向量,同种模态,/>,当时为图像输入,当/>时为文本输入;将用户-用户图中用户对应的模态特征嵌入向量和用户-服装图中用户对应的模态特征嵌入向量聚合得到用户模态特征嵌入向量/>,即/>和/>;将用户-服装图中服装对应的模态特征嵌入向量、服装-服装图中服装对应的模态特征嵌入向量、服装-时尚单品图中服装对应的模态特征嵌入向量聚合得到服装模态特征嵌入向量/>,即/>和/>;
对于用户和服装的两种不同模态、/>,将用户对应的视觉特征嵌入向量/>与用户对应的文本特征嵌入向量/>、服装对应的视觉特征嵌入向量/>与服装对应的文本特征嵌入向量/>采取拼接的方式,分别得到用户和服装的模态综合特征嵌入向量/>、/>,公式如下所示:
对于图数据中用户和服装的编码特征嵌入向量,将用户-用户图中用户对应的编码特征嵌入向量和用户-服装图中用户对应的/>编码特征嵌入向量聚合得到用户的编码综合特征嵌入向量/>;将用户-服装图中服装对应的/>编码特征嵌入向量、服装-服装图中服装对应的/>编码特征嵌入向量、服装-时尚单品图中服装对应的/>编码特征嵌入向量聚合得到服装的/>编码综合特征嵌入向量/>;
最后,将用户的模态综合特征嵌入向量与用户的/>编码综合特征嵌入向量/>、服装的模态综合特征嵌入向量/>与服装的/>编码综合特征嵌入向量/>采取拼接的方式,分别得到含有所有信息的用户特征聚合向量/>和含有所有信息的服装特征聚合向量/>;
。
进一步的,还包括步骤(9),利用时尚单品的模态特征嵌入向量来计算匹配分数,用于估计多个时尚单品是否构成一套完美匹配的服装;
对服装的模态特征嵌入向量/>做融合,公式如下所示:
其中是一套服装的嵌入矩阵,/>,当/>时为图像输入,当时为文本输入,/>是服装内时尚单品的个数,/>为时尚单品的双模态拼接的特征向量维度,/>和/>是两个用于控制权重的超参数;
通过自注意力机制区分一整套服装中时尚单品的重要性,注意力图计算公式如下所示:
和/>是两个可训练的权重矩阵,经过/>和/>变换后,得到注意力图/>,;/>为/>函数来标准化服装的注意力分数,/>为/>函数来标准化服装的注意力分数,
然后再建立每套服装的得分图,得分图计算公式如下所示:
其中和/>是两个可训练的权重矩阵,经过/>和/>变换后,得到注意力图/>,,z是注意力图A和得分图B两个矩阵的行;基于得分图和注意力图,最终得到服装/>的加权兼容性得分/>,公式如下所示:
其中和/>分别是/>和/>的第/>行向量。
进一步的,还包括步骤(10),设置目标函数,用于约束服装推荐和服装兼容性匹配这两个任务,目标函数的计算公式如下:
是个性化服装推荐任务的损失值,/>是服装兼容性匹配任务的损失值;其中是服装推荐的训练集,每个三元组/>表示用户/>与服装/>的历史交互以及与服装/>的未观察到的交互;/>是兼容性匹配的训练集,其中每对/>表示观察到的服装/>和未观察到的服装/>;/>为/>函数,/>为参数集,/>为正则化权值。
与现有技术相比,本发明的有益效果是:
本方法的优势在于能有效减少数据噪声的影响,并提供更加精准和个性化的推荐。本发明针对个性化服装推荐方法中存在的一个主要问题,即交互数据集中的大量噪声或无用交互。这些噪声可能导致推荐系统的性能下降,使得用户体验受损。为了解决这个问题,本发明提出了一种新的个性化服装推荐模型RGCN,该模型通过融合潜在表示,该模型结合四种图神经网络处理不同关系,从二部图数据中挖掘四种潜在关系,这些图神经网络模块帮助模型更好地理解和表示用户与服装之间的复杂关系,来获取更丰富和准确的节点表示,从而提升服装推荐的准确性和用户体验。相比传统的个性化服装推荐方法,本发明在公开数据集POG上的测试证明了该模型RGCN在服装推荐和兼容性建模上的优势。
附图说明
图1为本发明的整体技术流程图。
图2为本发明的多维度交互融合模型架构图。
图3为本发明的分层特征学习与亲和力分析模型架构图。
图4为本发明的个性化服装推荐分析图。
具体实施方式
为了更好地理解本发明的技术方案,下面结合附图对本发明具体实施方式进一步说明。
如图1所示,本发明实施例提供的基于图神经网络的多模态个性化服装推荐方法,总体实现流程如下:
步骤1,为了服装兼容性建模,首先从原始数据集中获取数据并进行数据清洗和数据预处理操作。令用户集合为,/>为用户的总数量。令用户集合为,/>为用户的总数量。设所有服装所包含的时尚单品集合为/>,时尚单品的类别集为/>。给定一整套服装/>由/>项时尚单品/>组成,/>表示集合/>中元素的个数,那么,/>,其中每一项时尚单品都有图片/>和文字/>描述。
步骤2,如图2所示,基于CF(Collaborative Filtering)协同过滤模型的思路,将每个用户、服装、时尚单品的ID投影到一个嵌入层中,即用户、服装、时尚单品都含ID嵌入向量和它自身的特征向量,分别用向量、/>、/>来表示服装、用户、时尚单品的ID嵌入向量,并采用Xavier的方法对这些ID嵌入向量进行初始化。对于每一整套独特的服装/>都包含项时尚单品/>。
步骤3,为了更好的描述时尚单品的潜在特征,使用卷积神经网络(CNN)模型提取时尚单品的视觉信息,公式如下所示:
如图2所示,是时尚单品/>的视觉特征向量,/>是视觉特征向量的维度,/>为输入的时尚单品的图片,/>是CNN模型的参数。该方法采用在ImageNet上预训练的18层深度残差网络ResNet作为模型的特征提取器。
接着,使用BERT模型提取时尚单品的文本信息,公式如下所示:
如图2所示,是时尚单品/>的文本特征向量,其中/>是文本特征向量的维度,为输入的时尚单品的文本,/>是BERT模型的参数。/>代表输入模态,当/>时为图像输入,当/>时为文本输入。
步骤4,根据服装与时尚单品之间的关系、服装与服装之间的关系、用户与用户之间的关系、用户与服装之间的交互关系分别构建服装-时尚单品图数据、服装-服装图数据、用户-用户图数据、用户-服装图数据。
具体构建图数据的实现方式如下:
(4a)构建服装-时尚单品图:服装与时尚单品存在包含与被包含的关系,根据数据集中服装与时尚单品/>之间的包含关系,构建邻接矩阵:
(4b)构建服装-服装图:由于服装与服装之间可能存在潜在关系,通过计算服装之间的余弦相似度来构建图数据,并进一步挖掘服装与服装之间的潜在关系。相似矩阵由如下公式所示:
其中,和/>的取值均为/>,/>为服装的总数量,/>和/>分别表示需要计算相似度的两个服装/>和/>的模态特征嵌入向量,即每个模态对应的图不同,/>表示/>和/>之间的余弦相似度。
其次,对于整套服装的模态特征嵌入向量、/>,都采用整套服装包含的时尚单品嵌入聚合的方式来表示,如果有/>,那么整套服装的模态特征嵌入向量/>,可表示如下:
最后,对于每个服装节点,保留相似度得分最高的条边,其中/>为超参数,并构建邻接矩阵:
其中表示/>个服装与服装节点之间余弦相似度得分高的集合。
(4c)构建用户-用户图:目前的研究表明,个人历史直接反映了用户的偏好,这意味着相似的用户会对服装有相似的偏好。由于用户节点在模型编码初始化时只包含ID一种信息,而ID是通过Xavier的方法随机初始化,该方法使用动态图进行构建,计算用户之间的余弦相似度:
其中和/>分别表示需要计算相似度的两个用户/>和/>的模态特征嵌入向量。/>表示/>和/>之间第/>次计算的余弦相似度,/>为模型训练的次数,给定模型训练初始/>。对于每个用户节点,保留相似度最高的/>条边,其中/>为超参数,并构建邻接矩阵:
其中表示/>个用户与用户节点之间余弦相似度得分高的集合。
(4d)构建用户-服装图:数据集中有用户与服装的交互数据,协同过滤CF是现有的一种推荐系统模型。它主要依据用户的历史行为数据来预测用户可能喜欢的项目。使用CF(Collaborative Filtering)协同过滤模型的构建图方式,利用该交互数据构建用户-服装交互图。令用户和服装存在交互时,。若用户和服装不存在交互,则。故邻接矩阵为:
。
步骤5,使用LightGCN和FCSA-GNN对服装-服装图、用户-用户图、服装-时尚单品图进行学习,提取图数据中的用户和服装的模态特征嵌入向量以及对应的ID编码特征嵌入向量,其中模态特征嵌入向量包括视觉特征嵌入向量和文本特征嵌入向量,具体实施方式如下:
(5a)使用轻量图卷积网络模型LightGCN对潜在浅层关系学习。由于用户-用户图和服装-服装图是通过计算余弦相似度得到,即图中不存在高阶关系,因此只执行一层图卷积操作,也同时避免了图数据出现过平滑的情况。对用户-用户图和服装-服装图进行邻接矩阵归一化,如下所示:
其中是动态图/>的对角矩阵,/>是静态图/>的对角矩阵。归一化结果为和/>。在获得归一化矩阵后,使用LightGCN对两个同质图进行图卷积操作,通过在嵌入过程中聚合节点之间的潜在关系,来学习服装和服装,用户和用户之间的潜在关系,那么就有:
其中,为目标节点,/>为目标节点的邻居节点,/>为邻接节点的特征向量。在用户-用户图中,/>,/>为用户对应的视觉信息,/>为用户对应的文本信息,/>为用户对应的唯一标识符。在服装-服装图中,/>,/>为服装对应的视觉信息,/>为服装对应的文本信息,/>为服装对应的唯一标识符。对于每套服装/>的模态特征嵌入向量,使用该服装内每个时尚单品自身的模态特征向量相加来表示,即,/>。将最后的输出分别用以下符号表示:/>、、/>、/>、/>、/>。/>为用户-用户图中对应的用户视觉特征嵌入向量,/>为用户-用户图中对应的用户文本特征嵌入向量,/>为用户-用户图中对应的用户唯一标识符嵌入向量,/>为服装-服装图中对应的服装视觉特征嵌入向量,/>为服装-服装图中对应的服装文本特征嵌入向量,/>为服装-服装图中对应的服装唯一标识符嵌入向量。
(5b)使用全连接自调节图神经网络模型FCSA-GNN对潜在深层关系学习。由于服装-时尚单品二部图极为稀疏且较为复杂,存在高阶潜在关系,因此需要表达能力更丰富的图神经网络进行图卷积操作。采用FCSA-GNN模型,这样既可以挖掘高阶信息,也可以挖掘低阶信息,并倾向于考虑拓扑结构。
首先,确定FCSA-GNN的权重矩阵。基于分层时尚图网络(HFGN)的思路,时尚单品类别可以作为时尚单品聚合的先验知识。具体而言,每件时尚单品都只会分配到一个特定的类别,例如衬衫、牛仔裤。然后,对不同的类别与不同的共现频率相关联,以此方式来反映类别这种粗粒度级别上时尚单品的兼容性。比如,对于项链而言,与外套一起出现在一整套服装中的频率远远高于项链与凉鞋一起出现在一整套服装中的频率,而频率越高,就意味着该时尚单品在这套服装中的重要性更大。该权重矩阵如下所示:
和/>表示目标节点时尚单品/>和/>的类别,/>表示非目标节点时尚单品的其它类别,/>表示在该服装图中,该时尚单品与该服装图的边的权重。/>表示目标时尚单品/>的类别在时尚单品类别集/>上出现的频率。
其次,对于服装-时尚单品二部图,服装、时尚单品的ID嵌入向量输入分别为、,对于时尚单品的模态特征向量输入为/>,/>,而服装节点相对应的模态特征向量的输入/>是通过Xavier初始化得到。
最后,使用FCSA-GNN模型进行聚合操作,视服装节点和时尚单品节点为同质节点,给定同质节点的特征向量为h,那么有:
其中表示图神经网络中第t层的同质节点向量,/>,d为特征向量的维度,,而L是FCSA-GNN模型网络中的层数。/>为目标节点,/>为目标节点的邻居节点,/>为服装节点与时尚单品节点中边的权重矩阵。其中/>,/>为服装对应的唯一标识符,/>为服装对应的视觉信息,/>为服装对应的文本信息,/>为时尚单品对应的唯一标识符,/>为时尚单品对应的视觉信息,/>为时尚单品对应的文本信息。FFN是具有三个线性层的前馈神经网络(MLP),每个层都配备可学习参数W和偏差b,并使用/>作为激活函数。然后按/>进行降维,其中||表示串联操作,FC为全连接层,/>输入包括服装和时尚单品的视觉特征向量,服装和时尚单品的文本特征向量,服装和时尚单品的/>编码特征向量,则/>为最终的输出,用符号表示为/>、/>、/>。其中/>为服装-时尚单品图中对应的服装视觉特征嵌入向量,/>为服装-时尚单品图中对应的服装文本特征嵌入向量,/>为服装-时尚单品图中对应的服装唯一标识符嵌入向量。
步骤6,用户-服装图作为典型的交互二部图,不仅稀疏而且充斥着大量噪音。如图3所示,本发明构建一个图卷积神经网络模型(RGCN),对用户-服装交互图进行有效建模,提取图数据中的用户和服装的模态特征嵌入向量以及对应的ID编码特征嵌入向量,其中模态特征嵌入向量包括视觉特征嵌入向量和文本特征嵌入向量。RGCN由以下三个部分组成:内容节点更新、噪声裁剪、ID编码更新。由于假正例的服装内容与用户偏好差别大,为了优化构建的交互图的结构,首先通过图神经网络模型学习用户对服装模态信息的偏好,再根据假正例交互的置信度来修剪噪声边缘,以此更新ID编码嵌入向量。具体实现方式如下:
(6a)内容节点更新包括服装内容节点更新模块和用户内容节点更新模块。服装内容节点更新模块中输入服装模态的特征向量为,,并将其投影到度量空间中,提取出与用户偏好相关的信息特征,公式如下所示:
其中表示激活函数。/>为可训练权重,/>为偏差向量。通过该模块得到的最终服装模态特征向量用/>表示。其中/>为用户-服装图中对应的服装视觉特征嵌入向量,/>为用户-服装图中对应的服装文本特征嵌入向量。
用户内容节点更新模块中为了更好地表征用户,需要利用用户-服装图中的邻居服装节点特征对随机初始化得到的用户节点特征进行调整,通过迭代的路由操作聚合邻居服装节点特征对用户节点特征进行更新:
其中,表示层数,T表示转置,/>时,/>=/>,/>,/>为用户节点特征与服装节点特征之间的相似度,值越大说明服装特征对用户特征建模的信息越大,/>表示用户-服装图中用户节点/>的邻居节点集合。通过该模块最终输出用户模态特征向量/>。为用户-服装图中对应的用户视觉特征嵌入向量,/>为用户-服装图中对应的用户文本特征嵌入向量。
(6b)由于用户节点是随机初始化,故在训练过程中先更新用户节点,再进行噪声裁剪。在用户-服装图中,存在误点击等由用户主观造成的错误行为而产生的噪声,为了识别这些噪声并裁剪,需要对用户特征和服装特征之间的亲和度进行评分,以衡量交互中对应边为真交互的可能性。对于每种模态,根据获得的用户偏好和提取的服装特征,计算它们在两个方向上的相对距离:
其中和/>分别表示用户-服装图中用户节点/>和服装节点/>的邻接节点集合,/>和/>是一个在m模态中反映/>和/>之间亲和力分数的值。为了整合多模态分数,为每个用户或服装定义一个基本向量,如下所示:
其中,表示视觉模态的基本向量,/>表示文本模态的基本向量,/>表示基向量,该基向量用来衡量该节点对不同模态的相对偏好。而该基向量内的每个元素用来表示该节点对相应模态中的重要性。结合基向量,通过融合多模态分数计算边的权重,公式如下所示:
该方法使用最大值函数来确定边的权重,利用基向量/>和亲和力分数/>、,得到每条边的权值并赋权,对噪声边实现软修剪。其中/>表示用户节点的视觉模态的基本向量,/>表示用户节点的文本模态的基本向量,/>表示服装节点的视觉模态的基本向量,/>表示服装节点的文本模态的基本向量。/>表示在视觉模态中反映服装节点到用户节点的亲和力分数,/>表示在视觉模态中反映用户节点到服装节点的亲和力分数,/>表示在文本模态中反映服装节点到用户节点的亲和力分数,/>表示在文本模态中反映用户节点到服装节点的亲和力分数。最终得到用户-服装图中服装节点到用户节点的有向边的权重/>、用户节点到服装节点的有向边的权重/>。
(6c)本方法将图卷积操作视为消息传递和聚合。利用图卷积运算,对用户-服装交互图传递的协同信号进行建模。基于全连接自调节图神经网络(FCSA-GNN),本方法通过拼接图卷积层,可以捕获和聚合高阶连接信息和低阶信息,即用空间换效率。而对于隐式反馈,利用得到的边权值来控制传递的消息,这不仅可以有效建模,而且还可以破坏假正交互所带来的噪声信号的传播。在层中,消息传递和聚合为:
表示第/>层的用户ID的聚合结果,/>表示第/>层的服装ID的聚合结果,/>表示用户节点u的邻接服装节点j对应的第/>-1层的用户ID的聚合结果,/>表示服装节点o的邻接服装节点i对应的第/>-1层的服装ID的聚合结果。节点通过聚合来自其邻居的信息来更新自身的信号,从/>跳邻居节点中收集到协同过滤信号后,采取拼接的方式再进行降维操作,公式如下所示:
为带偏置的全连接层函数,用于对输入的特征向量进行降维操作。该模块最后的输出为/>、/>,/>为用户-服装图中对应的用户唯一标识符嵌入向量,/>为用户-服装图中对应的服装唯一标识符嵌入向量。
步骤7,将上述四种图数据中的用户模态特征嵌入向量、服装模态特征嵌入向量以及ID编码特征嵌入向量分别进行融合,得到用户模态综合特征嵌入向量、服装模态综合特征嵌入向量以及ID编码综合特征嵌入向量,然后将用户模态综合特征嵌入向量和服装模态综合特征嵌入向量分别与ID编码综合特征嵌入向量进行拼接,最终得到含有所有信息的用户特征聚合向量和含有所有信息的服装特征聚合向量/>。
对于图数据中用户和服装的模态特征嵌入向量,同种模态,将用户-用户图中用户对应的模态特征嵌入向量和用户-服装图中用户对应的模态特征嵌入向量聚合得到用户模态特征嵌入向量/>,即/>和/>。将用户-服装图中服装对应的模态特征嵌入向量、服装-服装图中服装对应的模态特征嵌入向量、服装-时尚单品图中服装对应的模态特征嵌入向量聚合得到服装模态特征嵌入向量/>,即/>和/>。采取聚合的方式如下所示:
对于用户和服装的两种不同模态,将用户对应的视觉特征嵌入向量/>与用户对应的文本特征嵌入向量/>、服装对应的视觉特征嵌入向量/>与服装对应的文本特征嵌入向量/>采取拼接的方式,分别得到用户和服装的模态综合特征嵌入向量/>、/>,公式如下所示:
对于图数据中用户和服装的ID编码特征嵌入向量,将用户-用户图中用户对应的ID编码特征嵌入向量和用户-服装图中用户对应的ID编码特征嵌入向量聚合得到用户的ID编码综合特征嵌入向量。将用户-服装图中服装对应的ID编码特征嵌入向量、服装-服装图中服装对应的ID编码特征嵌入向量、服装-时尚单品图中服装对应的ID编码特征嵌入向量聚合得到服装的ID编码综合特征嵌入向量/>。采取聚合的方式如下所示:
/>
最后,将用户的模态综合特征嵌入向量与用户的ID编码综合特征嵌入向量/>、服装的模态综合特征嵌入向量/>与服装的ID编码综合特征嵌入向量/>采取拼接的方式,分别得到含有所有信息的用户特征聚合向量/>和含有所有信息的服装特征聚合向量/>,公式如下所示:
步骤8,本发明使用内积来预测用户u购买服装o的可能性,公式如下所示:
服装推荐得分越大说明用户越喜欢该服装。
步骤9,为了估计多个时尚单品是否构成一套完美匹配的服装,需要利用单品的模态特征向量来计算匹配分数。与简单地将成对兼容性分数聚合在一起的工作不同,本发明认为时尚单品对于一整套服装应该具有不同的重要性。比如在某些服装中,长裙决定了它的整体风格,所以它比其它的时尚单品更重要。
将服装的不同模态特征嵌入向量对应不同的权重进行拼接,公式如下所示:
其中是一套服装的嵌入矩阵,/>,当/>时为图像输入,当时为文本输入,/>是服装内时尚单品的个数,/>为时尚单品的双模态拼接的特征向量维度,/>和/>是两个用于控制权重的超参数。
接着,需要通过自注意力机制区分一整套服装中时尚单品的重要性,注意力图计算如下所示:
其中和/>是两个可训练的权重矩阵。经过/>和/>变换后,得到注意力图/>,。/>为/>函数来标准化服装的注意力分数。/>为激活函数。
然后再建立每套服装的得分图,得分图计算公式如下所示:
其中和/>是两个可训练的权重矩阵,经过/>和/>变换后,得到得分图/>,,z是得分图A和注意力图B两个矩阵的行。
基于得分图和注意力图,最终得到服装的加权兼容性得分/>,公式如下所示:
其中和/>分别是/>和/>的第/>行。
步骤10,为了实现个性化服装推荐和服装兼容性建模这两个任务,模型训练过程中采用贝叶斯个性化排名(BPR)算法,目标函数是:
是个性化服装推荐任务的损失值,/>是服装兼容性匹配任务的损失值。其中是服装推荐的训练集,每个三元组/>表示用户/>与服装/>的历史交互以及与服装/>的未观察到的交互。/>是兼容性建模的训练集,其中每对/>表示观察到的服装/>(正样本)和未观察到的服装/>(随机生成的负样本)。/>为/>函数,/>为模型参数集,为避免过拟合,算法引入正则化权值/>。
接下来本发明通过具体的仿真实验对发明效果进行阐述:
本次仿真实验具体硬件设备为:计算机运行内存为32GB,处理器型号为i7-12700,显卡为RTX3080Ti,显存为12GB;
本次仿真实验具体软件环境为:Ubuntu20.04.5操作系统,Pytorch1.10.0,CUDA11.3,cuDNN8,Python3.7;
本次仿真实验采用的数据集:POG是目前符合要求的大规模数据集。该数据集收集了357万用户的点击行为,包括101万套服装和58.3万件带有上下文信息的单独物品。POG数据集提供了三个文件:第一种数据是用户数据,它记录了用户对服装和物品的点击;第二种数据是服装数据,它列出了由服装组成的物品;第三种数据是物品数据,它提供了物品的上下文细节,包括类别、文本描述和图像下载链接。本次仿真实验将利用用户在服装上的点击来构建数据集,并验证本发明提出的基于图神经网络的多模态个性化服装推荐模型RGCN。
本发明分别针对不同实验进行不同的预处理:
(1)对于个人推荐任务:为了保证数据集的质量,实验只保留交互至少20次的用户和交互至少10次的服装。时尚单品类别的数量是60。推荐数据集的统计信息如表1所示。为了评估推荐的性能,随机选择每个用户80%的点击历史来构建训练集,剩下的历史作为测试集,并将10%的训练集分割为验证集,以调整超参数。
表1 POG数据集介绍
(2)对于服装兼容性匹配任务:实验将对推荐数据集中的正例服装作为训练集进行兼容性匹配,另外选择6,924套(占训练数据集的10%)从未出现在训练集中的服装构建测试数据集。统计数据如表2所示。为了评估所提出模型在兼容性匹配方面的性能,本实验采用了一个广泛使用的任务Fill-in-the-Blank进行测试。
表2 服装兼容性匹配数据集介绍
/>
(3)对于Fill-in-the-Blank任务:FITB是一个从候选项中选择最兼容的项来填补一套服装中的空白任务。对于测试数据集中的每一套服装,随机屏蔽一个项目作为空白,然后从其它服装中随机选择3个项目与被屏蔽的项目组成候选集。将屏蔽项设置为基础真值,假设屏蔽项比其他候选项更兼容。
模型训练使用Xavier和Adam方法分别进行数据初始化和参数优化。另外,学习率在{0.0001,0.001,0.01,0.1,1}中选择,调整正则化权重则在{0.00001, 0.0001,0.001,0.01,0.1}中选择。本发明所提出的模型将所有ID嵌入向量的维度固定为64以确保公平比较。
仿真实验1,以Top-K来评估模型对于个性化服装推荐任务的性能,并采用以下四个广泛使用的指标,HR@K、Recall@K、Precision@K、NDCG@K,在实验中设为10。所有指标将会对所有用户的平均值作为最终分数。HR@K旨在测量是否有正例样本出现在前K位,是则值为1,否则值为0。Recall@K计算成功推荐给用户的正例样本的比例。Precision@K则衡量被推荐且与用户相关的时尚单品所占的比例。NDCG@K用于评估排名列表的质量,即考虑前K个位置的排名列表中正例样本与负例样本之间的分级相关性。本发明将采用上述评价指标对以下几个前沿模型进行对比实验。其中FPITF方法出自文献:Hu Y, Yi X, Davis LS.Collaborative fashion recommendation: A functional tensor factorizationapproach[C]// In Proceedings of the 23rd ACM international conference onMultimedia, 2015: 129-138;
FHN方法出自文献:Lu Z, Hu Y, Jiang Y, et al. Learning binary code forpersonalized fashion recommendation[C]// In Proceedings of the IEEE/CVFconference on computer vision and pattern recognition, 2019: 10562-10570;
MF方法出自文献:Koren Y, Bell R, Volinsky C. Matrix factorizationtechniques for recommender systems[C]// Computer, 2009, 42(8): 30-37;
VBPR方法出自文献:He R, McAuley J. VBPR: visual bayesian personalizedranking from implicit feedback[C]// In Proceedings of the AAAI conference onartificial intelligence, 2016, 30(1);
NGCF方法出自文献:Wang X, He X, Wang M, et al. Neural graphcollaborative filtering[C]// In Proceedings of the 42nd international ACMSIGIR conference on Research and development in Information Retrieval, 2019:165-174;
HFGN方法出自文献:Li X, Wang X, He X, et al. Hierarchical fashiongraph network for personalized outfit recommendation[C]// In Proceedings ofthe 43rd international ACM SIGIR conference on research and development ininformation retrieval, 2020: 159-168。
表3 个性化服装推荐实验结果表
个性化服装推荐的实验结果如表3所示。其中FPITF和FHN的实验结果最不理想,原因是这两个模型仅通过平均每个时尚单品的偏好得分来评估用户对一套服装的偏好。但是,服装和时尚单品具有不同的语义,仅考虑时尚单品层面的偏好是不够的。例如在用户和时尚单品交互的过程中,服装的ID嵌入也尤为重要,使用服装的ID嵌入来捕获这些信息,大大提高了个性化推荐任务的性能。与MF相比,VBPR取得了更好的效果,这表明额外将视觉信号纳入模型是有必要的。而NGCF比MF和VBPR的表现要好得多,这得益于交互图中的多个传播层,NGCF能够对用户、服装和时尚单品之间的交互图中的高阶连接进行有效建模。HFGN的性能高于NGCF,这得益于分层图卷积和消息传递机制,HFGN能够从下到上提取有用的信号,并对包括用户-服装交互和服装-时尚单品映射在内的复杂关系进行建模。本发明所提出的模型性能最佳。
仿真实验2,使用FITB任务来测试模型的服装兼容性建模性能,实验指标是ACC。本实验将采用以下几种方式作为基线:
表4 FITB实验结果表
实验结果如表4所示。其中Random方法是在4个候选对象中随机抽取的。与其它方法相比,孪生神经网络模型SiameseNet取得了较差的性能,这表明由于忽略服装的完整性,仅对时尚单品对的兼容性分数进行平均不足以学习高阶兼容性知识,这极大的限制了模型的表现效果。
其次,从表4中可以看到双向长短期记忆网络Bi-LSTM比SiameseNet性能更好。这是因为引入Bi-LSTM可以更好地学习有关兼容性的潜在知识,与直接平均时尚单品得分的SiameseNet相比,Bi-LSTM将整套服装作为一个序列,这会使模型学习到超出时尚单品级别比较的高阶关系。而FHN的性能比SiameseNet好得多,尽管它也只是对时尚单品对的兼容性得分进行平均。这归因于FHN引入的类别知识,说明类别信息在建模兼容性中的重要性。然而,它只考虑3个类别标签,忽略了更加细粒度类别的兼容性关系,因此效果不如节点式图神经网络NGNN和分层时尚图网络HFGN两种模型。
最后,NGNN和HFGN两种基于图的方法取得了较好的性能,表明图结构可以更好地建模时尚单品之间复杂的交互,进一步有效地推断兼容性信息。而本发明所提出的模型RGCN实现了最佳性能。与NGNN和HFGN两种基于图的方法相比,RGCN关注了更为相似的节点,并考虑到交互噪声,实验结果证明,这些方法的设计和改进是有效的。
仿真实验3,如图4所示,这是在Fill-in-the-Blank任务上几个测试示例的可视化展示,将本发明所提出的模型RGCN与强基线HFGN进行比较,定性分析的正确结果如红框所示。本实例验证了该模型在兼容性匹配任务上的合理性和有效性。
综上所述,数据集中不可避免存在大量噪声交互,为了解决这个问题,本发明提出了一种融合潜在表示的个性化服装推荐模型RGCN。首先建立时尚单品、服装、用户之间的四种关系,然后通过这四种关系分别建立图神经网络,最后融合以丰富节点的表征,再通过本发明提出的图神经网络模型RGCN有效的对二部图中的噪声交互进行过滤。从公开数据集POG上的实验结果来看,本发明提出的模型性能最为优异。然而,本发明也注意到引入其他模态的可能性,在引入新的模态和模态融合的道路上,相信在未来通过更多模态融合可以更加个性化地进行服装推荐。
应当理解的是,上述针对实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (10)
1.基于图神经网络的多模态个性化服装推荐方法,其特征在于,包括如下步骤:
步骤(1),对原始数据集进行预处理;
步骤(2),将每个用户、服装/>、时尚单品/>的/>通过一个嵌入层映射到一个向量中,并进行初始化;
步骤(3),使用卷积神经网络模型提取时尚单品的视觉信息,使用/>模型提取时尚单品/>的文本信息;
步骤(4),根据服装与时尚单品的关系、服装与服装之间的关系、用户与用户之间的关系、用户与服装之间的交互关系分别构建服装-时尚单品图、服装-服装图、用户-用户图、用户-服装交互图;
步骤(5),使用和/>对服装-服装图、用户-用户图、服装-时尚单品图进行学习,提取图数据中的用户和服装的模态特征嵌入向量以及对应的/>编码特征嵌入向量,其中模态特征嵌入向量包括视觉特征嵌入向量和文本特征嵌入向量;
步骤(6),利用图卷积神经网络模型提取用户-服装交互图中的用户和服装的模态特征嵌入向量以及对应的编码特征嵌入向量;
步骤(7),将上述四种图数据中的用户模态特征嵌入向量、服装模态特征嵌入向量以及编码特征嵌入向量分别进行融合,得到用户模态综合特征嵌入向量、服装模态综合特征嵌入向量以及/>编码综合特征嵌入向量,然后将用户模态综合特征嵌入向量和服装模态综合特征嵌入向量分别与/>编码综合特征嵌入向量进行拼接,最终得到含有所有信息的用户特征聚合向量/>和含有所有信息的服装特征聚合向量/>;
步骤(8),用内积来预测用户购买服装的可能性,得到服装推荐得分,公式如下所示:
;
服装推荐得分越大说明用户越喜欢该服装。
2.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(1)中首先从原始数据集中获取数据并进行数据清洗和数据预处理操作,令用户集合为,/>为用户的总数量,服装训练集为/>,/>为服装的总数量;设所有服装所包含的时尚单品集合为/>,时尚单品的类别集为/>;给定一整套服装/>由/>项时尚单品/>组成,/>表示集合/>中元素的个数,那么/>,/>,其中每一项时尚单品都有图片/>和文字/>描述。
3.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(2)中使用协同过滤模型,将每个用户、服装、时尚单品的/>投影到一个嵌入层中,即用户、服装、时尚单品都含/>嵌入向量和它自身的特征向量,分别用向量/>、/>、/>来表示服装、用户、时尚单品的/>嵌入向量,并采用/>的方法对这些/>嵌入向量进行初始化。
4.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(3)中使用卷积神经网络模型提取时尚单品的视觉信息,公式如下所示:
;
是时尚单品/>的视觉特征向量,其中/>是视觉特征向量的维度,/>为输入的时尚单品的图片,/>是/>模型的参数,采用在/>上预训练的深度残差网络/>作为特征提取器;
接着,使用模型提取时尚单品/>的文本信息,公式如下所示:
;
是时尚单品/>的文本特征向量,其中/>是文本特征向量的维度,/>为输入的时尚单品的文本,/>是/>模型的参数。
5.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(4)的具体实现方式如下;
(4a)构建服装-时尚单品图:服装与时尚单品存在包含与被包含的关系,根据数据集中服装与时尚单品/>之间的包含关系,构建邻接矩阵/>:
;
(4b)构建服装-服装图:通过计算服装之间的余弦相似度来构建图数据,并进一步挖掘服装与服装之间的潜在关系,相似矩阵由如下公式所示:
;
其中,和/>的取值均为/>,/>为服装的总数量,/>和/>分别表示需要计算相似度的两个服装/>和/>的模态特征嵌入向量,即每个模态对应的图不同,/>表示/>和/>之间的余弦相似度,/>,当/>I时为图像输入,当/>时为文本输入;
其次,对于整套服装的模态特征嵌入向量、/>,都采用整套服装包含的时尚单品嵌入聚合的方式来表示,如果有/>,那么整套服装的模态特征嵌入向量/>如下所示:
;
最后,对于每个服装节点,保留相似度得分最高的条边,其中/>为超参数,并构建邻接矩阵:
;
其中表示/>个服装与服装节点之间余弦相似度得分高的集合;
(4c)构建用户-用户图:使用动态图进行构建,计算用户之间的余弦相似度:
;
其中和/>分别表示需要计算相似度的两个用户/>和/>的模态特征嵌入向量;表示/>和/>之间第/>次计算的余弦相似度,/>为次数;对于每个用户节点,保留相似度最高的/>条边,其中/>为超参数,并构建邻接矩阵:
;
其中表示/>个用户与用户节点之间余弦相似度得分高的集合;
(4d)构建用户-服装图:数据集中有用户与服装的交互数据,使用协同过滤模型的构建图方式,利用交互数据构建用户-服装交互图,令用户和服装存在交互时,,若用户和服装不存在交互,则/>,故邻接矩阵为:
。
6.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(5)的具体方式如下:
(5a)使用对潜在浅层关系学习:用户-用户图和服装-服装图进行邻接矩阵归一化,如下所示:
;
其中是动态图/>的对角矩阵,/>是静态图/>的对角矩阵,归一化结果为/>和;在获得归一化矩阵后,使用/>对两个同质图进行图卷积操作,通过在嵌入过程中聚合节点之间的潜在关系,来学习服装与服装,用户与用户之间的潜在关系,那么就有:
;
其中,为目标节点,/>为目标节点的邻居节点,/>为邻接节点的特征向量;在用户-用户图中,/>,/>为用户对应的视觉信息,/>为用户对应的文本信息,/>为用户对应的唯一标识符;在服装-服装图中,/>,/>为服装对应的视觉信息,为服装对应的文本信息,/>为服装对应的唯一标识符;对于每套服装/>的模态特征嵌入向量/>,使用服装内每个时尚单品自身的模态特征向量相加来表示,即,/>,当/>I时为图像输入,当/>时为文本输入;将最后的输出分别用以下符号表示:/>、/>、/>、/>、/>、/>;/>为用户-用户图中对应的用户视觉特征嵌入向量,/>为用户-用户图中对应的用户文本特征嵌入向量,/>为用户-用户图中对应的用户唯一标识符嵌入向量,/>为服装-服装图中对应的服装视觉特征嵌入向量,/>为服装-服装图中对应的服装文本特征嵌入向量,/>为服装-服装图中对应的服装唯一标识符嵌入向量;
(5b)使用对潜在深层关系学习:首先确定/>的权重矩阵,权重矩阵为:
;
和/>表示目标节点时尚单品/>和/>的类别,/>表示非目标节点时尚单品的其它类别,/>表示服装-时尚单品图中边的权重矩阵;/>表示目标时尚单品/>的类别在时尚单品类别集/>上出现的频率;
其次,对于服装-时尚单品图,服装、时尚单品的嵌入向量输入分别为/>、/>,对于时尚单品的模态特征向量输入为/>,/>,而服装节点相对应的模态特征向量的输入是通过/>初始化得到;
最后,使用模型进行聚合操作,视服装节点和时尚单品节点为同质节点,给定同质节点的特征向量为/>,公式如下所示:
;
其中表示图神经网络中第/>层的同质节点向量,/>,/>为特征向量的维度,,而/>是/>模型网络中的层数;/>为目标节点,/>为目标节点的邻居节点,/>为服装节点与时尚单品节点中边的权重矩阵,/>为服装-时尚单品图的邻接矩阵;其中/>,/>为服装对应的唯一标识符,/>为服装对应的视觉信息,/>为服装对应的文本信息,/>为时尚单品对应的唯一标识符,/>为时尚单品对应的视觉信息,/>为时尚单品对应的文本信息;/>是具有三个线性层的前馈神经网络/>,每个层都配备可学习参数/>和偏差/>,并使用/>作为激活函数;然后按进行降维,其中/>表示串联操作,/>为全连接层,/>输入包括服装和时尚单品的视觉特征向量,服装和时尚单品的文本特征向量,服装和时尚单品的/>编码特征向量,则/>为最终的输出,用符号表示为/>、/>、/>;其中/>为服装-时尚单品图中对应的服装视觉特征嵌入向量,/>为服装-时尚单品图中对应的服装文本特征嵌入向量,/>为服装-时尚单品图中对应的服装唯一标识符嵌入向量。
7.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(6)中图卷积神经网络模型包括内容节点更新、噪声裁剪、编码更新,具体实现方式如下:
(6a)内容节点更新包括服装内容节点更新模块和用户内容节点更新模块;服装内容节点更新模块中输入服装模态的特征向量为,/>,当I时为图像输入,当/>时为文本输入;并将其投影到度量空间中,提取出与用户偏好相关的信息特征,公式如下所示:
;
其中表示激活函数,/>为可训练权重,/>为偏差向量,通过服装内容节点更新模块得到的最终服装模态特征向量用/>表示;其中/>为用户-服装图中对应的服装视觉特征嵌入向量,/>为用户-服装图中对应的服装文本特征嵌入向量;
用户内容节点更新模块中为了更好地表征用户,需要利用用户-服装图中的邻居服装节点特征对随机初始化得到的用户节点特征进行调整,通过迭代的路由操作聚合邻居服装节点特征并对用户节点特征进行更新:
;
其中,表示层数,/>表示转置,当/>时,/>=/>,/>;/>为用户节点特征与服装节点特征之间的相似度,该值越大说明服装特征对用户特征建模的信息越大;/>表示用户-服装图中用户节点/>的邻居节点集合,通过该用户内容节点更新模块最终输出用户模态特征向量/>;/>为用户-服装图中对应的用户视觉特征嵌入向量,/>为用户-服装图中对应的用户文本特征嵌入向量;
(6b)噪声裁剪包括:对于视觉和文本模态,根据获得的用户偏好和提取的服装特征,计算它们在两个方向上的相对距离:
;
其中,和/>分别表示用户-服装图中用户节点/>和服装节点/>的邻居节点集合,和/>是一个在/>模态中反映/>和/>之间亲和力分数的值,/>,当/>时为视觉模态,当/>时为文本模态;为了整合多模态分数,为每个用户或服装定义一个基本向量,如下所示:
;
其中,表示视觉模态的基本向量,/>表示文本模态的基本向量,/>表示基向量,该基向量用来衡量该节点对不同模态的相对偏好,而该基向量内的每个元素用来表示该节点对相应模态中的重要性;结合基向量,通过融合多模态分数计算边的权重,公式如下所示:
;
使用最大值函数来确定边的权重,利用基向量/>和亲和力分数/>、/>,得到每条边的权值并赋权,对噪声边实现软修剪;其中/>表示用户节点的视觉模态的基本向量,表示用户节点的文本模态的基本向量,/>表示服装节点的视觉模态的基本向量,/>表示服装节点的文本模态的基本向量;/>表示在视觉模态中反映服装节点到用户节点的亲和力分数,/>表示在视觉模态中反映用户节点到服装节点的亲和力分数,/>表示在文本模态中反映服装节点到用户节点的亲和力分数,/>表示在文本模态中反映用户节点到服装节点的亲和力分数;最终得到用户-服装图中服装节点到用户节点的有向边的权重、用户节点到服装节点的有向边的权重/>;
(6c)ID编码更新包括:在层中,消息传递和聚合的公式如下所示:
;
表示第/>层的用户/>的聚合结果,/>表示第/>层的服装/>的聚合结果,/>表示用户节点/>的邻接服装节点/>对应的第/>层的服装/>的聚合结果,/>表示服装节点/>的邻接用户节点/>对应的第/>层的用户/>的聚合结果;从/>跳邻居节点中收集到协同过滤信号后,采取拼接的方式再进行降维操作,公式如下所示:
;
为带偏置的全连接层函数,用于对输入的特征向量进行降维操作,最后的输出为、/>;/>为用户-服装图中对应的用户唯一标识符嵌入向量,/>为用户-服装图中对应的服装唯一标识符嵌入向量。
8.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:步骤(7)的具体实现方式如下;
对于图数据中用户和服装的模态特征嵌入向量,同种模态,/>,当/>I时为图像输入,当/>时为文本输入;将用户-用户图中用户对应的模态特征嵌入向量和用户-服装图中用户对应的模态特征嵌入向量聚合得到用户模态特征嵌入向量/>,即/>和;将用户-服装图中服装对应的模态特征嵌入向量、服装-服装图中服装对应的模态特征嵌入向量、服装-时尚单品图中服装对应的模态特征嵌入向量聚合得到服装模态特征嵌入向量/>,即/>和/>;
;
对于用户和服装的两种不同模态、/>,将用户对应的视觉特征嵌入向量/>与用户对应的文本特征嵌入向量/>、服装对应的视觉特征嵌入向量/>与服装对应的文本特征嵌入向量/>采取拼接的方式,分别得到用户和服装的模态综合特征嵌入向量/>、/>,公式如下所示:
;
对于图数据中用户和服装的编码特征嵌入向量,将用户-用户图中用户对应的/>编码特征嵌入向量和用户-服装图中用户对应的/>编码特征嵌入向量聚合得到用户的/>编码综合特征嵌入向量/>;将用户-服装图中服装对应的/>编码特征嵌入向量、服装-服装图中服装对应的/>编码特征嵌入向量、服装-时尚单品图中服装对应的/>编码特征嵌入向量聚合得到服装的/>编码综合特征嵌入向量/>;
;
最后,将用户的模态综合特征嵌入向量与用户的/>编码综合特征嵌入向量/>、服装的模态综合特征嵌入向量/>与服装的/>编码综合特征嵌入向量/>采取拼接的方式,分别得到含有所有信息的用户特征聚合向量/>和含有所有信息的服装特征聚合向量/>;
。
9.如权利要求1所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:还包括步骤(9),利用时尚单品的模态特征嵌入向量来计算匹配分数,用于估计多个时尚单品是否构成一套完美匹配的服装;
对服装的模态特征嵌入向量/>做融合,公式如下所示:
;
其中是一套服装的嵌入矩阵,/>,当/>时为图像输入,当/>时为文本输入,/>是服装内时尚单品的个数,/>为时尚单品的双模态拼接的特征向量维度,/>和/>是两个用于控制权重的超参数;
通过自注意力机制区分一整套服装中时尚单品的重要性,注意力图计算公式如下所示:
;
和/>是两个可训练的权重矩阵,经过/>和/>变换后,得到注意力图/>,/>;为/>函数来标准化服装的注意力分数,/>为激活函数/>;
然后再建立每套服装的得分图,得分图计算公式如下所示:
;
其中和/>是两个可训练的权重矩阵,经过/>和/>变换后,得到注意力图/>,/>,z是注意力图A和得分图B两个矩阵的行;基于得分图和注意力图,最终得到服装/>的加权兼容性得分/>,公式如下所示:
;
其中和/>分别是/>和/>的第/>行向量。
10.如权利要求9所述的基于图神经网络的多模态个性化服装推荐方法,其特征在于:还包括步骤(10),设置目标函数,用于约束服装推荐和服装兼容性匹配这两个任务,目标函数的计算公式如下:
;
是个性化服装推荐任务的损失值,/>是服装兼容性匹配任务的损失值;其中是服装推荐的训练集,每个三元组/>表示用户/>与服装/>的历史交互以及与服装/>的未观察到的交互;/>是兼容性匹配的训练集,其中每对/>表示观察到的服装/>和未观察到的服装/>;/>为/>函数,/>为参数集,/>为正则化权值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410581807.2A CN118154282A (zh) | 2024-05-11 | 2024-05-11 | 基于图神经网络的多模态个性化服装推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410581807.2A CN118154282A (zh) | 2024-05-11 | 2024-05-11 | 基于图神经网络的多模态个性化服装推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118154282A true CN118154282A (zh) | 2024-06-07 |
Family
ID=91301413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410581807.2A Pending CN118154282A (zh) | 2024-05-11 | 2024-05-11 | 基于图神经网络的多模态个性化服装推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118154282A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111881342A (zh) * | 2020-06-23 | 2020-11-03 | 北京工业大学 | 一种基于图孪生网络的推荐方法 |
WO2022066587A1 (en) * | 2020-09-22 | 2022-03-31 | Visa International Service Association | Graph learning-based system with updated vectors |
KR20220111592A (ko) * | 2021-02-02 | 2022-08-09 | 주식회사 패션에이드 | 인공지능에 의한 패션 코디네이션 스타일 추천 시스템 및 방법 |
CN116401723A (zh) * | 2023-01-17 | 2023-07-07 | 浙江大学 | 一种基于三角形网格的布料静态变形预测方法 |
EP4231199A1 (en) * | 2022-02-22 | 2023-08-23 | Siemens Aktiengesellschaft | Method and device for providing a recommender system |
TW202349325A (zh) * | 2022-06-02 | 2023-12-16 | 睿加科技股份有限公司 | 一種語意分析商標類別推薦系統及其方法 |
-
2024
- 2024-05-11 CN CN202410581807.2A patent/CN118154282A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111881342A (zh) * | 2020-06-23 | 2020-11-03 | 北京工业大学 | 一种基于图孪生网络的推荐方法 |
WO2022066587A1 (en) * | 2020-09-22 | 2022-03-31 | Visa International Service Association | Graph learning-based system with updated vectors |
KR20220111592A (ko) * | 2021-02-02 | 2022-08-09 | 주식회사 패션에이드 | 인공지능에 의한 패션 코디네이션 스타일 추천 시스템 및 방법 |
EP4231199A1 (en) * | 2022-02-22 | 2023-08-23 | Siemens Aktiengesellschaft | Method and device for providing a recommender system |
TW202349325A (zh) * | 2022-06-02 | 2023-12-16 | 睿加科技股份有限公司 | 一種語意分析商標類別推薦系統及其方法 |
CN116401723A (zh) * | 2023-01-17 | 2023-07-07 | 浙江大学 | 一种基于三角形网格的布料静态变形预测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wu et al. | Modeling the evolution of users’ preferences and social links in social networking services | |
Papadakis et al. | Collaborative filtering recommender systems taxonomy | |
US11809985B2 (en) | Algorithmic apparel recommendation | |
CN111523047A (zh) | 基于图神经网络的多关系协同过滤算法 | |
Fang et al. | Dynamic knowledge graph based fake-review detection | |
CN111062775A (zh) | 一种基于注意力机制的推荐系统召回方法 | |
CN113592609B (zh) | 一种利用时间因素的个性化服饰搭配推荐方法与系统 | |
CN107545471B (zh) | 一种基于高斯混合的大数据智能推荐方法 | |
CN113918833B (zh) | 通过社交网络关系的图卷积协同过滤实现的产品推荐方法 | |
CN109584006B (zh) | 一种基于深度匹配模型的跨平台商品匹配方法 | |
CN112115377A (zh) | 一种基于社交关系的图神经网络链路预测推荐方法 | |
CN112507246B (zh) | 一种融合全局和局部社会兴趣影响的社会推荐方法 | |
CN113918834B (zh) | 融合社交关系的图卷积协同过滤推荐方法 | |
CN113918832A (zh) | 基于社交关系的图卷积协同过滤推荐系统 | |
Li et al. | Retrieving real world clothing images via multi-weight deep convolutional neural networks | |
CN113379494A (zh) | 基于异质社交关系的商品推荐方法、装置和电子设备 | |
Chen et al. | Query-free clothing retrieval via implicit relevance feedback | |
Nazari et al. | Scalable and data-independent multi-agent recommender system using social networks analysis | |
CN117251586A (zh) | 多媒体资源推荐方法、装置及存储介质 | |
Chakraborty et al. | A COMPREHENSIVE REVIEW ON IMAGE BASED STYLE PREDICTION AND ONLINE FASHION RECOMMENDATION. | |
Wu et al. | Product adoption rate prediction in a competitive market | |
CN118154282A (zh) | 基于图神经网络的多模态个性化服装推荐方法 | |
Yang et al. | Collaborative meta-path modeling for explainable recommendation | |
Loukili et al. | Personalizing product recommendations using collaborative filtering in online retail: a machine learning approach | |
Xue et al. | An incremental group-specific framework based on community detection for cold start recommendation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |