CN116108282B - 一种信息推荐模型的训练方法、信息推荐方法及设备 - Google Patents
一种信息推荐模型的训练方法、信息推荐方法及设备 Download PDFInfo
- Publication number
- CN116108282B CN116108282B CN202310385070.2A CN202310385070A CN116108282B CN 116108282 B CN116108282 B CN 116108282B CN 202310385070 A CN202310385070 A CN 202310385070A CN 116108282 B CN116108282 B CN 116108282B
- Authority
- CN
- China
- Prior art keywords
- data
- user
- behavior
- information
- fusion
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种信息推荐模型的训练方法、信息推荐方法及设备,应用于人工智能技术领域,能够提高推荐结果的准确率,使得用户体验较好。其中信息推荐方法包括:首先,获取用户的用户数据和多组备选对象的对象数据,基于用户数据确定用户的时序行为特征信息,时序行为特征信息由用户在预设时间段内的行为数据对应的多个行为特征信息融合得到;然后,基于对象数据确定备选对象的多模态融合特征信息,多模态融合特征信息包括基于多模态数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征;最后,基于时序行为特征信息和多模态融合特征信息之间的相似度,从多个备选对象中为用户确定推荐对象。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种信息推荐模型的训练方法、信息推荐方法及设备。
背景技术
推荐系统能在没有明确用户意图的情况下,帮助用户发现有价值的信息。在应用需求的推动下,推荐系统成了学术界和工业界热门的研究方向。
对于结构化数据、文本数据、视觉数据等不同模态数据在不同程度上具有不同层次的知识表达性,需要研究不同模态信息的特征表示和学习方法,实现多模态数据的协同表示。进入深度学习时代后,多模态特征融合的技术更加重要,例如,当用户行为数据稀疏时,如果不采用多模态特征融合的技术,在应用程序(Application,APP)为大量新用户和低频用户推荐的都是相类似的信息。
目前多模态融合采用的策略是分别对多模态的数据孤立建模,在模型提取每个模态的数据特征之后,对数据特征进行拼合。由于这种方式忽略了不同模态数据的内在关联,模型无法精准学习用户的兴趣偏好,导致推荐对象不准确,影响用户体验。
发明内容
本申请提供一种信息推荐模型的训练方法、信息推荐方法及设备,能够提高推荐结果的准确率,使得用户体验较好。
第一方面,本申请实施例提供一种信息推荐方法,可应用于电子设备、服务器或实现电子设备功能、服务器功能的组件(比如芯片系统)。以应用于服务器为例,该方法中,服务器获取用户的用户数据和多组备选对象的对象数据,其中,用户数据包括用户在预设时间段内的行为数据,每组对象数据包括同一个备选对象的多模态数据。然后,服务器基于用户数据确定用户的时序行为特征信息,时序行为特征信息由用户在预设时间段内的行为数据对应的多个行为特征信息融合得到;以及服务器基于对象数据确定多组备选对象的多模态融合特征信息,多模态融合特征信息包括基于多模态数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征。之后服务器基于时序行为特征信息和多模态融合特征信息之间的相似度,从多个备选对象中为用户确定推荐对象。
基于本申请提供的方法,服务器融合了用户在预设时间段内的行为数据对应的行为特征信息,得到时序行为特征信息。与常规技术中直接拼接行为数据后输入网络中进行识别不同的是,本申请提供的方法考虑到用户前后行为的相关性会使得产生的相邻两个行为数据之间也具有相关性。而相邻两个行为数据的相关性是无法通过拼接行为数据输入网络模型中识别得到的。所以常规技术中并没有利用用户前后行为的相关性,导致提取出来的用户特征的信息表达能力不强。通过融合行为特征信息则可以得到更合理的结果。并且服务器根据模态数据两两之间的相似性融合了对象的多个模态数据的模态特征,得到基于多个模态的强化特征,多模态融合特征信息包括强化特征,所以多模态融合特征信息也包含了多个模态数据的模态特征。如此,用户的时序行为特征信息具有更丰富的用户信息表达能力,备选对象的多模态融合特征信息具有更丰富的物料信息表达能力,那么基于时序行为特征信息和多模态融合特征信息之间的相似度,所推荐得到的推荐对象能够是用户感兴趣的商品,推荐效果较好。
在第一方面的一种可能的设计方式中,在行为数据基于时间关系排序的情况下,第j+1个行为数据对应的行为特征信息是第j+1个行为数据对应的初始行为特征信息与第j个行为数据对应的行为特征信息的融合结果。
该设计方式在利用用户前后行为相关性的基础上,还考虑到以时间关系对用户的行为数据进行排序的话,用户的上一个行为数据对下一个行为数据产生影响大,用户的第一个行为数据对应对用户的最后一个行为数据产生影响小,所以将用户的上一个行为数据对应的行为特征信息融合至下一个行为数据对应的行为特征信息中。通过不断迭代,最后一个行为数据对应的行为特征信息不仅包含了全部的行为数据对应的行为特征信息,而且全部的行为数据之间是按照时间关系排序后两两融合的,所以融合结果更合理。
在第一方面的一种可能的设计方式中,上述服务器基于用户数据确定用户的时序行为特征信息,包括:服务器获取相邻两个行为数据之间的第一相关性系数,然后服务器基于第一相关性系数将相邻两个行为数据中的前一个行为数据对应的行为特征信息融合到后一个初始行为数据对应的行为特征信息中,得到后一个行为数据对应的行为特征信息。
该设计方式是基于相邻两个行为数据之间的相关性系数,对两个行为数据对应的行为特征信息进行融合的,可以理解的是,相关性系数大,则说明前一个行为数据影响后一个行为数据的可能性大,相关性系数小,则说明前一个行为数据影响后一个行为数据的可能性小。因而根据相关性系数来融合两个行为数据对应的行为特征信息的话,融合结果更合理,也就更具有丰富的信息表达能力。
在第一方面的一种可能的设计方式中,第一相关性系数由相邻两个行为数据对应的特征分量之间的相似度确定。具体的,上述服务器获取相邻两个行为数据之间的第一相关性系数,然后服务器基于第一相关性系数将相邻两个行为数据中的前一个行为数据对应的行为特征信息融合到后一个初始行为数据对应的行为特征信息中,得到后一个行为数据对应的行为特征信息,包括:首先,服务器对行为数据进行第一特征提取,得到行为数据对应的第一特征向量。然后服务器会根据第一特征向量与预设的第一权重矩阵、第二权重矩阵、第三权重矩阵的乘积,得到每个行为数据对应的第一查询分量、第一键值分量、第一内容分量。服务器再将每个行为数据对应的第一查询分量、第一键值分量、第一内容分量进行第二特征提取,得到第二查询分量、第二键值分量和第二内容分量。之后,服务器将第二内容分量与第一内容分量进行融合,得到行为数据对应的强化内容分量,以及服务器根据相邻两个行为数据中的前一个行为数据对应的第二键值分量和后一个行为数据对应的第二查询分量的相似度,确定第一参考权重。然后服务器基于第一参考权重将前一个行为数据对应的强化内容分量融合到后一个行为数据对应的第一内容分量中,以迭代得到后一个行为数据对应的第一内容分量。服务器再将后一个行为数据对应的第二内容分量作为后一个行为数据对应的行为特征信息。
该设计方式采用模型获取相邻两个行为数据对应的行为特征信息的特征分量,根据特征分量的相似度确定相关性系数,使得到的结果更准确。
作为一种示例,可以采用全连接层提取行为数据,得到行为数据对应的第一特征向量。在得到每个行为数据对应的第一查询分量、第一键值分量、第一内容分量之后,再通过注意力门模块(attention gate)处理每个行为数据对应的第一查询分量、第一键值分量、第一内容分量,并使用残差结构强化每个行为数据对应的第一查询分量、第一键值分量、第一内容分量,最终得到了行为数据对应的强化内容分量、第二查询分量、第二键值分量。其中,强化内容分量是第一内容分量经过了注意力门模块提取特征后输出得到的,所以更具有行为数据的信息表达能力。以强化内容分量作为待融合特征与下一个行为数据对应的特征进行融合,可以得到更准确的融合结果。
在第一方面的一种可能的设计方式中,预设的第一权重矩阵、第二权重矩阵、第三权重矩阵是由对偶损失函数训练信息推荐模型得到的;对偶损失函数用于训练信息推荐模型,使得用户数据对应的增强向量与多模态融合特征信息之间的差值小于或等于第一阈值,以及使得对象数据对应的增强向量与时序行为特征信息之间的差值小于或等于第二阈值。
在模型构建时(或称训练前)用户数据对应的增强向量和对象数据对应的增强向量可以根据先验知识确定,随着模型不断训练,增强向量不断迭代,直到得到较为合理的增强向量:用户数据对应的增强向量可以表示物料信息,对象数据对应的增强向量可以表示用户信息,则说明用户数据与对象数据完成了信息交互,所以这时采用模型更新后的第一权重矩阵、第二权重矩阵、第三权重矩阵来计算行为特征之间的相关性系数,结果更为准确。
在第一方面的一种可能的设计方式中,针对第j个训练样本,对偶损失函数的表达式包括:
;
;
其中,u表示用户;i表示对象;y表示训练样本的偏好标签,偏好标签的大小用于指示用户对对象的偏好度的大小,对象包括备选对象;Au表示用户数据对应的增强向量,Ri表示时序行为特征信息;Ai表示对象数据对应的增强向量,Ru表示多模态融合特征信息。
该表达式是在偏好标签越大,用户对对象的偏好度也越大的情况下成立的,例如,标注样本时以1表示训练样本为正样本,以0表示训练样本为负样本。可以看到,该公式在y无限趋近于0或者理想情况下为0时,可以得到:
lossu=(Au-Ri)2 以及lossi=(Ai-Ru)2。等式的左边越接近0,那么等式的右边的Au与Ri越接近,Ai与Ru越接近,接近则说明用户和备选对象的信息完成了交互。所以以对偶损失函数训练模型,可以得到用户和备选对象的信息交互后训练得到的模型参数:第一权重矩阵、第二权重矩阵、第三权重矩阵。
在第一方面的一种可能的设计方式中,上述服务器基于对象数据确定多组备选对象的多模态融合特征信息,包括:服务器获取多模态数据中的第一模态数据待融合至第二模态数据的第二相关性系数,并基于第二相关性系数将第一模态数据融合到第二模态数据中,得到第二模态数据对应的强化特征;多模态融合特征信息包括强化特征。
该设计方式是基于针对同一个备选对象的不同模态数据之间的相关性系数,对多个模态的数据进行融合的,可以理解的是,相关性系数大,则说明两个模态之间存在关联的可能性大,那么两个模态的数据中的第一模态数据融合到第二模态数据中的参考比例大;反之亦反。因而根据相关性系数来融合同一个备选对象的不同模态数据的话,融合结果更合理,也就更具有丰富的信息表达能力。
在第一方面的一种可能的设计方式中,上述服务器获取多模态数据中的第一模态数据待融合至第二模态数据的第二相关性系数,并基于第二相关性系数将第一模态数据融合到第二模态数据中,得到第二模态数据对应的强化特征,包括:首先,服务器对对象数据进行第三特征提取,得到对象数据对应的第二特征向量。然后服务器根据第二特征向量与预设的第四权重矩阵、第五权重矩阵、第六权重矩阵的乘积,得到每个对象数据对应的查询分量、键值分量、内容分量;并从每个对象数据对应的查询分量、键值分量、内容分量中获取备选对象的第一模态数据对应的查询分量和备选对象的第二模态数据对应的键值分量。服务器根据每个备选对象的第一模态数据对应的查询分量和备选对象的第二模态数据对应的键值分量的相似度,确定第二参考权重;以及基于第二参考权重将备选对象的第二模态数据对应的内容分量融合到备选对象的第一模态数据对应的内容分量中,得到融合分量;服务器再将融合分量和备选对象的第一模态数据对应的内容分量进行融合处理,得到强化特征。
该设计方式采用模型获取同一备选对象的每两个模态的对象数据对应的第二特征向量的特征分量,根据特征分量的相似度确定相关性系数,使得到的结果更准确。
在第一方面的一种可能的设计方式中,上述服务器根据每个备选对象的第一模态数据对应的查询分量和备选对象的第二模态数据对应的键值分量的相似度,确定第二参考权重,包括:
;
其中,F表示第二参考权重;Qi表示第一模态数据对应的查询分量;Kj表示第二模态数据对应的键值分量;dk表示第四权重矩阵或第五权重矩阵或第六权重矩阵的行数。
该表达式将A模态的对象数据对应的查询分量Q与B模态的对象数据对应的键值分量K进行乘积(或称点积dot),其乘积反映B模态的对象数据对A模态的对象数据的匹配度,为防止乘积值过大,将乘积值除以dk的平方根,然后将结果经过归一化层(softmax),得到B模态的对象数据的特征匹配分数(也就是第二参考权重)。其中,dk是指查询分量Q矩阵、查询分量K矩阵的列数。
第二参考权重的目的在于,以B模态的对象数据的特征匹配分数与B模态的对象数据的内容分量V相乘,得到融合分量,将融合分量与A模态的对象数据相拼接,得到B模态分量融合到A模态分量进行交互的融合结果(也就是强化特征)。同样的,A模态分量融合到B模态分量进行交互的融合结果也是一个强化特征。针对同一备选对象有两个模态的对象数据的情况,可以得到两个强化特征;对于同一备选对象有三个模态的对象数据的情况,可以得到六个强化特征;对于同一备选对象有n个模态的对象数据的情况,可以得到n*(n-1)个强化特征。这些强化特征可以通过融合或者拼接的方式处理得到多模态融合特征信息。
在第一方面的一种可能的设计方式中,在多模态数据包括结构化数据、文本数据和视图数据的情况下,多模态融合特征信息包括:结构化数据对应的强化特征,文本数据对应的强化特征以及视图数据对应的强化特征。结构化数据、文本数据、视觉数据等不同模态数据在不同程度上具有不同层次的知识表达性,融合后的信息表达能力更丰富。
第二方面,本申请实施例提供一种信息推荐模型的训练方法,可应用于电子设备、服务器或实现电子设备功能、服务器功能的组件(比如芯片系统),以应用于服务器为例,该方法中,服务器获取m组用户原始数据和n组样本对象原始数据,其中,每组用户原始数据包括一个样本用户的用户行为原始数据,每组样本对象原始数据包括一个样本对象的多模态原始数据。然后服务器基于m组用户原始数据和n组样本对象原始数据获取m个样本用户对n个样本对象的偏好信息,并根据偏好信息标注得到m个样本用户对n个样本对象的偏好标签。之后,服务器将m组用户原始数据、n组样本对象原始数据作为信息推荐模型的输入,将m*n个偏好标签输入信息推荐模型的输出,训练信息推荐模型。
其中,信息推荐模型中的用户时序特征融合子网络用于融合用户原始数据中用户在预设时间段内的多个行为特征,得到样本用户对应的时序行为特征信息。
信息推荐模型中的特征融合子网络用于根据样本对象原始数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征,确定样本对象对应的多模态融合特征信息。
样本用户对应的时序行为特征信息与样本对象对应的多模态融合特征信息之间的相似度用于表征偏好信息。
在第二方面的一种可能的设计方式中,该方法还包括:服务器基于对偶损失函数调整信息推荐模型的模型参数,使得样本对象对应的增强向量与多模态融合特征信息之间的差值小于或等于第一阈值,以及使得样本对象对应的增强向量与时序行为特征信息之间的差值小于或等于第二阈值。
第三方面,本申请实施例提供一种电子设备,包括:处理器,用于存储该处理器可执行指令的存储器,处理器被配置为执行所述指令时,使得电子设备实现如第一方面及其任一种可能的设计方式提供的方法、或实现如第二方面及其可能的设计方式提供的方法。
第四方面,本申请实施例提供一种信息推荐系统,包括:服务器和电子设备,服务器用于在接收到电子设备发送的推荐请求之后,实现如第一方面及其任一种可能的设计方式提供的方法、或实现如第二方面及其可能的设计方式提供的方法。
第五方面,本申请实施例提供一种服务器,包括:通信模块、处理模块,其中,处理模块进一步包括数据获取模块和信息推荐模块。通信模块用于接收电子设备发送的推荐请求,处理模块用于实现如第一方面及其任一种可能的设计方式提供的方法、或实现如第二方面及其可能的设计方式提供的方法。
第六方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的设计方式所述的方法、或执行如第二方面及其可能的设计方式提供的方法;当所述计算机指令在服务器上运行时,使得服务器执行如第一方面及其任一种可能的设计方式所述的方法、或执行如第二方面及其可能的设计方式提供的方法。
第七方面,本申请提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面及其任一种可能的设计方式所述的方法、或执行如第二方面及其可能的设计方式提供的方法。
第八方面,本申请提供一种芯片系统,该芯片系统包括一个或多个接口电路和一个或多个处理器。接口电路和处理器通过线路互联。该芯片系统应用于包括通信模块和存储器的电子设备;接口电路用于从存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令。当处理器执行计算机指令时,电子设备或者服务器执行如第一方面及其任一种可能的设计方式所述的方法、或执行如第二方面及其可能的设计方式提供的方法。
可以理解地,上述提供的第二方面及其可能的设计方式提供的方法,第三方面的电子设备,第四方面的信息推荐系统,第五方面的服务器,第六方面的计算机可读存储介质,第七方面的计算机程序产品,以及第八方面的芯片系统所能达到的有益效果,可参考第一方面及其任一种可能的实施方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的第一界面的示意图;
图2为本申请实施例提供的一种信息推荐系统的示意图;
图3为本申请实施例提供的一种电子设备的硬件结构的示意图;
图4为本申请实施例提供的一种推荐系统的软件结构框图;
图5为本申请实施例提供的一种信息推荐模型的架构示意图;
图6为本申请实施例提供的一种标注示意图;
图7为本申请实施例提供的一种获取特征分量的示意图;
图8为本申请实施例提供的一种模型应用方法的示意图;
图9为本申请实施例提供的一种信息推荐方法的流程图;
图10为本申请实施例提供的一种芯片系统的结构图;
图11为本申请实施例提供的不同模型用户覆盖率的柱状图;
图12为本申请实施例提供的不同模型的物品点击率的柱状图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样仅用于描述目的,并不对数量和执行次序进行限定,也不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。并且“第一”、“第二”等字样也并不限定一定不同。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”的含义是两个或两个以上。
在本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
如今,各种可视内容数据与日俱增,用户获取信息的方式逐渐多元化。个性化推荐技术通过研究不同用户的兴趣,主动为用户推荐其可能感兴趣的信息,降低了用户获取信息的门槛。本申请实施例提供的方法可应用于包括内容持续更新流推荐、视频持续更新流推荐和电商领域商品推荐等信息推荐场景。参考图1,其为本申请实施例提供的第一界面的示意图,以电子设备为手机为例,在第一界面101中可显示手机向用户推荐的信息,如可以推荐内容信息102、视频信息103以及商品信息104。其中,上述信息可采用持续更新流的推荐方法,即将用户感兴趣的图片、文章、帖子等内容信息102,或者将视频信息103、商品信息104持续性地推荐给用户,用户可通过第一操作105切换或浏览推荐对象。其中,第一操作105可以是点击、向上滑动加载或上下滑动预览。
上述个性化推荐实质是将用户和待推荐的备选对象相关联,计算用户对备选对象的偏好信息,根据偏好信息为用户推荐其可能感兴趣的推荐对象。但由于在对特征进行提取时,相关技术只考虑了提取特征之后进行拼合,忽略了不同数据之间的内在关联,所以提取的特征的语义表达能力弱,导致推荐对象不准确,影响用户体验。
基于此,本申请实施例提出了一种信息推荐方法,首先,获取用户的用户数据和多组备选对象的对象数据,其中,用户数据包括用户在预设时间段内的行为数据,每组对象数据包括同一个备选对象的多模态数据。然后,基于用户数据确定用户的时序行为特征信息,时序行为特征信息由用户在预设时间段内的行为数据对应的多个行为特征信息融合得到;以及基于对象数据确定多组备选对象的多模态融合特征信息,多模态融合特征信息包括基于多模态数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征。之后,基于时序行为特征信息和多模态融合特征信息之间的相似度,从多个备选对象中为用户确定推荐对象。该方法融合了用户在预设时间段内的行为数据对应的行为特征信息,得到时序行为特征信息,根据模态数据两两之间的相似性融合了对象的多个模态数据的模态特征,得到基于多个模态的强化特征,使得用户的时序行为特征信息具有更丰富的用户信息表达能力,备选对象的多模态融合特征信息具有更丰富的物料信息表达能力,那么基于时序行为特征信息和多模态融合特征信息之间的相似度,所推荐得到的推荐对象能够是用户感兴趣的商品,推荐效果较好。
本申请实施例提供的方法,应用于个性化推荐场景,为了实现个性化推荐化目的,参考图2,本申请实施例提供一种信息推荐系统,包括第一设备(如图2所示的手机210)和第二设备(如图2所示的服务器220),其中,第二设备部署有已训练好的信息推荐模型。第一设备向第二设备发送推荐请求,第二设备将用户感兴趣的推荐对象发送给第一设备,第一设备展示推荐对象。
示例性的,第一设备可以是便携式计算机(如手机)、平板电脑、笔记本电脑、个人计算机(personal computer,PC)、可穿戴电子设备(如智能手表)、增强现实(augmentedreality,AR)\虚拟现实(virtual reality,VR)设备、车载电脑等设备。第二设备可以是云端、服务器,或者另一部手机、平板电脑等具有较强的运算能力的电子设备。本申请实施例对第一设备和第二设备的具体形态不作特殊限制。下文中,主要以第一设备为图2所示的手机210,第二设备为图2所示的服务器220为例来说明,其中,服务器220可以是具有信息推荐需求的APP和/或具有信息推荐需求的网站的服务器。
示例性的,图3示出了本申请实施例提供的一种电子设备的硬件结构示意图。以电子设备是手机为例,手机可以包括处理器310,外部存储器接口320,内部存储器321,通用串行总线(universal serial bus,USB)接口330,充电管理模块340,电源管理模块341,电池342,天线1,天线2,移动通信模块350,无线通信模块360,音频模块370,扬声器370A,受话器370B,麦克风370C,耳机接口370D,传感器模块380,按键390,马达391,指示器392,摄像头393,显示屏394,以及用户标识模块(subscriber identification module,SIM)卡接口395等。
处理器310可以包括一个或多个处理单元,例如:处理器310可以包括应用处理器(application processor,AP) ,调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(Neural-network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以是集成在同一个处理器中。
控制器可以是指挥手机的各个部件按照指令协调工作的决策者,是手机的神经中枢和指挥中心。控制器根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器310中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器310中的存储器为高速缓冲存储器。该存储器可以保存处理器310刚用过或循环使用的指令或数据。如果处理器310需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器310的等待时间,因而提高了系统的效率。
电子设备的无线通信功能可以通过天线1,天线2,移动通信模块350,无线通信模块360,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可以用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块350可以提供应用在电子设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块350可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块350可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块350还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块350的至少部分功能模块可以被设置于处理器310中。在一些实施例中,移动通信模块350的至少部分功能模块可以与处理器310的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器370A,受话器370B等)输出声音信号,或通过显示屏394显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器310,与移动通信模块350或其他功能模块设置在同一个器件中。
无线通信模块360可以提供应用在电子设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块360可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块360经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器310。无线通信模块360还可以从处理器310接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备的天线1和移动通信模块350耦合,天线2和无线通信模块360耦合,使得电子设备可以通过无线通信技术与网络以及其他设备通信。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code divisionmultiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC ,FM,和/或IR技术等。GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidou navigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
在本申请的实施例中,移动通信模块350或无线通信模块360可以用于接收服务器输出的推荐对象,并于显示屏394上显示。
电子设备通过GPU,显示屏394,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏394和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器310可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。显示屏394用于显示图像,视频等。
本申请实施例中,显示屏394可显示上文提到的第一界面,第一界面可显示手机向用户推荐的信息,如可以推荐内容信息、视频信息以及商品信息。
在一些实施例中,显示屏394可以与触摸传感器组合成触摸屏,触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。并且电子设备可以通过显示屏394提供与触摸操作相关的视觉输出。
在显示屏是触摸屏的情况下,显示屏向用户推荐的信息可采用持续更新流的推荐方法,例如将用户感兴趣的图片、文章、帖子等内容信息,或者将视频信息、商品信息持续性地推荐给用户,用户可通过第一操作切换或浏览推荐对象。其中,第一操作可以是点击、向上滑动加载或上下滑动预览。
电子设备可以通过ISP,摄像头393,视频编解码器,GPU,显示屏394以及AP处理器等实现拍摄功能。
外部存储器接口320可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口320与处理器310通信,实现数据存储功能。例如将音乐,视频等媒体文件保存在外部存储卡中。
内部存储器321可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器310通过运行存储在内部存储器321的指令,从而执行电子设备的各种功能APP以及数据处理。内部存储器321可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如信息推荐功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器321可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备可以通过音频模块370,扬声器370A,受话器370B,麦克风370C,耳机接口370D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
按键390包括开机键,音量键等。马达391可以产生振动提示。指示器392可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口395用于连接SIM卡。
在本申请实施例中,第一设备可通过移动通信模块350或无线通信模块360将推荐请求发送给第二设备,该推荐请求用于请求第二设备根据用户的偏好进行信息推荐。第二设备部署有已训练好的信息推荐模型;响应于推荐请求,第二设备根据信息推荐模型输出用户对多个备选对象的偏好度,基于偏好度从多个备选对象中获取至少一个推荐对象,将推荐对象返回给第一设备。第一设备可通过移动通信模块350或无线通信模块360接收到推荐对象,并在显示屏394上显示。
在一些实施例中,信息推荐模型可部署在第一设备中。响应于用户针对信息推荐的触发操作,处理器310可以将多模态下的用户数据和备选对象数据输入信息推荐模型中,输出用户对每个备选对象的偏好度,处理器310根据偏好度确定推荐对象,并在显示屏394上显示。
电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。
参照图4,其为本申请实施例提供的一种推荐系统的软件结构框图。以推荐系统中电子设备的软件系统为分层架构的AndroidTM系统为例,分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将AndroidTM系统分为五层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(AndroidTMruntime)和系统库,内核层,以及网络传输层。
应用程序包可以包括相机,日历,地图,视频,音乐,短信息,图库,通话,设置,导航,桌面助手等APP。
本申请实施例中,检测到用户针对APP的操作,APP对应的服务器将推荐对象返回给APP,并通过APP推荐给用户。以视频APP为例,第一设备检测到用户打开视频APP的操作,视频APP在第一设备上启动。视频APP将推荐请求发送给视频APP对应的服务器,视频APP对应的服务器将推荐视频返回给视频APP,这样用户便可在不主动搜索视频的情况下在视频APP上查看到推荐视频。
应用程序框架层为应用程序层的APP提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器,活动管理器等。
窗口管理器用于通过窗口管理服务(window manager service,WM)。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被APP访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可以用于构建APP。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为APP提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使APP可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的APP的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
活动管理器可以提供活动管理服务(activity manager service,AMS),AMS可以用于系统组件(例如活动、服务、内容提供者、广播接收器)的启动、切换、调度以及应用进程的管理和调度工作。
AndroidTMruntime包括核心库和虚拟机。AndroidTMruntime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL),媒体库(Media Libraries)等。
表面管理器用于对显示子系统进行管理,并且为多个APP提供了2D和3D图层的融合。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
二维图形引擎是二维绘图的绘图引擎。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
内核层是硬件和软件之间的层。内核层至少包含摄像头驱动,音频驱动,传感器驱动等。
网络传输层可以包括通信模块,第一设备的通信模块和第二设备的通信模块之间可以建立传输通道。示例性的,第一设备的通信模块和第二设备的通信模块可以基于Wi-Fi通道进行通信;或者,第一设备的通信模块和第二设备的通信模块可以基于2G/3G/4G/5G等无线通信的方式进行通信等,本申请实施例对此不作限定。
此外,图4中还示出了第二设备可能具有的软件模块。示例性的,如图4所示,该第二设备至少可以包括通信模块、数据获取模块、信息推荐模块。通信模块用于和第一设备进行通信,具体可参考上文描述。数据获取模块可以获取用户数据以及备选对象数据作为样本数据,其中用户数据包括用户属性数据、用户行为数据;备选对象数据包括备选对象的结构化数据、文本数据、视觉数据。数据获取模块将本数据发送给信息推荐模块,信息推荐模块部署有信息推荐模型,通过样本数据训练信息推荐模型。训练完成后,信息推荐模块便具备信息推荐能力。当数据获取模块接收了第一设备上报的用户数据后,数据获取模块将用户数据发送给已训练好的信息推荐模型,信息推荐模型输出推荐结果,如推荐结果为用户偏好度最高的视频片段。信息推荐模块将推荐结果通过通信模块发送给第一设备。
下面示例性说明电子设备软件以及硬件的工作流程。
第一设备(如手机)通过显示屏394显示视频APP的应用图标。第一设备中应用程序框架层中的输入系统通过触控(touch panel,TP)芯片驱动来监听第一设备的触摸屏,将触摸屏输入的触控操作所产生的触摸参数转换成可使用事件。当用户点击视频APP的应用图标,输入系统将点击事件传递至应用程序框架层上层的视频APP,视频APP启动,显示视频预览界面。用户在视频预览界面上点击播放某个视频,窗口管理器可以根据第一设备的显示屏的大小,确定显示屏上的视频播放窗口的大小,例如通过全屏或半屏的方式为用户播放该视频。同时,第一设备接收了第二设备(如服务器)发送的该视频的数据,内容提供器可以获取该视频的数据,例如图像数据、音频数据等,并根据该图像数据、音频数据等绘制视频画面,并视频画面显示在窗口管理器确定的播放窗口中。此外,内容提供器还可以获取该用户账号包括的用户属性数据以及浏览历史数据、浏览爱好等用户行为数据,第一设备将这些数据发送给第二设备后,第二设备将该数据输入已训练好的信息推荐模型中,输出该用户与视频库中的多个备选视频的偏好度,第二设备基于偏好度为用户推荐多个备选视频中的个性化视频,从而吸引用户点击和浏览推荐视频。
上述方案中的信息推荐方法不仅可用于视频推荐,还可用于商品推荐、内容(如图片、文章、帖子)推荐等其他业务场景。在一种实现中,可以通过训练一个通用的信息推荐模型,将用户与待推荐的备选对象输入该信息推荐模型中,便可输出用户与多个备选对象的偏好度。与业务场景相对应的,备选对象可以是视频、内容、商品等。
下面结合附图,进一步对本申请实施例做详细说明。
本申请实施例提供的信息推荐方法,主要包括如下两个过程,分别是模型训练以及模型应用。
下面分别对两个过程进行说明。
一、模型训练。
如图5所示,服务器可以收集原始数据,原始数据包括m组用户原始数据和n组备选对象原始数据(或称样本对象原始数据)。m组用户原始数据均包括用户属性原始数据(struct profile data)、用户行为原始数据(struct behavior data);n组备选对象原始数据均包括结构化原始数据(struct data)、文本原始数据(text data)和视觉原始数据(vitual data)这三种模态的原始数据。其中,结构化原始数据是指表格、矩阵、序列等整齐格式化的样本数据,如图5所示的结构化原始数据struct data。文本原始数据是指文字描述等文本形式的样本数据,如图5所示的文本原始数据text data。视觉原始数据是指音频、视频、图片等视觉形式呈现的样本数据,如图5所示的视觉原始数据vitual data。
需要说明的是,本实施例是以m组用户原始数据均包括用户属性数据、用户行为数据;n组备选对象样本均包括结构化原始数据、文本原始数据和视觉原始数据这三种模态的数据为例进行说明的。实际应用时,每组用户样本可以包括用户属性原始数据、用户行为原始数据的至少一种。每组备选对象样本可以包括备选对象的多模态数据,多模态数据包括但不限于两种模态数据、三种模态数据、四种模态数据等,将m组用户样本和n组备选对象样本作为模型的第一输入样本。
服务器在收集原始数据之后,获取m个用户对n个备选对象的偏好信息,其中,偏好信息包括用户对备选对象的点击信息、购买信息、浏览信息、评论信息等。基于偏好信息标注得到每个用户对每个备选对象的偏好标签,偏好标签用于指示偏好度。其中,偏好度包括两种及以上。示例性的,偏好度包括感兴趣和不感兴趣两种,那么,则对应两种偏好标签,如0和1,0指示不感兴趣,1指示感兴趣。又示例性的,偏好度包括感兴趣、较感兴趣、不感兴趣三种,那么则对应三种偏好标签,如0指示不感兴趣,1指示较感兴趣,2指示感兴趣。示例性的,参考图6,其为本申请实施例提供的一种样本标注示意图;如图6所示,若服务器获取到用户A对视频b的偏好信息中的浏览信息,确定用户A浏览过手机b,则为用户A和手机b标注偏好标签“1”,表示用户对手机b感兴趣。若服务器未获取到用户A的对手机c的任何偏好信息,则认为用户A对手机c不感兴趣,为用户A和手机c标注偏好标签“0”,表示用户对手机c不感兴趣。
需要说明的是,为了和下文中的表达式相对应,本实施例中偏好标签大小和偏好度大小成正比,即偏好标签越大,表示偏好度越大;实际运用中,也可根据需求调整表达式或者调整偏好标签与偏好度的关系,使得下文表达式仍成立。
对所有原始数据标注完成后,得到m*n个偏好标签,将原始数据作为模型的输入样本,将偏好标签作为模型的输出样本,对模型进行训练。
作为一种示例,模型包括对象特征融合子网络、用户时序特征融合子网络以及交互子网络,这三个子网络分别对备选对象的多模态特征进行融合,对用户的时序特征进行融合,以及对用户与备选对象之间的信息进行交互。下面依次对这三个模块进行介绍。
1、特征融合子网络。
继续参考图5,在多模态特征输入至特征融合子网络之前,先通过嵌入层(embedding layers,简称emb layers)将结构化原始数据(对应图5的series_search字段、is_consignment字段)、文本原始数据和视觉原始数据转化为相同维度的编码表示,得到如图5所示的由特征融合子网络cross attention之前的嵌入层emb layers输出的结构化样本、文本样本和视觉样本。具体的,与备选对象相关的结构化原始数据、文本原始数据和视觉原始数据大多为离散数据,嵌入层emb layers用于将每个模态的离散数据以编码矩阵表示,并且统一编码矩阵的维度,使得到的结构化样本、文本样本和视觉样本具有相似或相同的特征空间。
然后将结构化样本、文本样本和视觉样本作为第一输入样本,输入对象特征融合子网络中。对象特征融合子网络包括三个自注意力模块(self-attention),其中,模块一对结构化样本和文本样本进行融合,得到融合结果1,对结构化样本和视觉样本进行融合,得到融合结果2;模块二对文本样本和结构化样本进行融合,得到融合结果3,对文本样本和视觉样本进行融合,得到融合结果4;模块三对视觉样本和结构化样本进行融合,得到融合结果5,对视觉样本和文本样本进行融合,得到融合结果6。
下面以模块一对结构化样本和文本样本进行融合,得到融合结果1为例,对自注意力模块融合各模态特征的过程进行说明。
首先,对象特征融合子网络可以计算输入其中的第一输入样本中的任意两个模态的第一输入样本之间的相关性系数,如模块一计算结构化样本和文本样本的相关性系数。相关性系数高,则文本样本融合到结构化样本的参考比例大;相关性系数低,则文本样本融合到结构化样本的参考比例小。在模型构建时(或称训练前)相关性系数可根据先验知识而确定,随着模型不断训练,相关性系数不断迭代,直到得到较为合理的相关性系数,模型训练结束。
在一些实施例中,相关性系数可以根据两个模态的第一输入样本的第一特征得到,如模块一获取结构化样本的第一特征和文本样本的第一特征,根据第一特征的相似性,确定相关性系数。
在另一些实施例中,相关性系数可以根据两个特征的特征分量确定。
参考图7,自注意力模块通过全连接层提取结构化样本的特征向量,以矩阵X表示,并构建三个权重矩阵WQ(相当于前文所说的第四权重矩阵)、WK(相当于前文所说的第五权重矩阵)、WV(相当于前文所说的第六权重矩阵)分别查询结构化样本和其他样本的关系以及特征向量的表达。通过将结构化样本的特征向量分别与三个权重矩阵相乘,得到查询分量Q、键值分量K和内容分量V。对于文本样本也同样提取其查询分量Q、键值分量K和内容分量V。其中,查询分量Q是指样本待查询其他样本,键值分量K是指样本等待被其他样本查询,内容分量V是指样本的特征信息。
然后自注意力模块通过结构化样本的查询分量Q与文本样本的键值分量K进行相似度计算得到文本样本的融合权重。常用的相似度计算方式可以是点积相似度,余弦相似度等。示例性的,将结构化样本的查询分量Q与文本样本的键值分量K进行乘积(或称点积dot),其乘积反映文本样本对结构化样本的匹配度,为防止乘积值过大,将乘积值除以dk的平方根,然后将结果经过归一化层(softmax),得到文本样本的特征匹配分数。其中,dk是指查询分量Q矩阵、查询分量K矩阵的列数。然后以文本样本的特征匹配分数与文本样本的内容分量V相乘,得到融合分量,将融合分量与结构化文本相拼接,得到两个模态分量相交互的融合结果1,对应于图5所示的st-att。
采用上述方式还可以得到融合结果2~融合结果6,对应于图5所示的sv-att、ts-att、tv-att、vs-att、vt-att。然后自注意力模块拼接融合结果1“st-att”和融合结果2“sv-att”,得到结构化融合特征“cross-att”;拼接融合结果3“ts-att”和融合结果4“tv-att”,得到文本融合特征“cross-att”;拼接融合结果5“vs-att”和融合结果6“vt-att”,得到视图融合特征“cross-att”。
作为一种示例,自注意力模块通过三个前馈网络(feed forward)分别对结构化融合特征“cross-att”、文本融合特征“cross-att”和视图融合特征“cross-att”进一步处理,得到具有更丰富的特征信息的结构化强化特征(s-emb)、文本强化特征(t-emb)和视图强化特征(v-emb)。前馈网络(feed forward)由全连接层和激活函数组成,通过激活函数增加了自注意力模块的非线性学习能力,通过全连接层增加了自注意力模块的线性学习能力。所以输出的结构化强化特征(s-emb)、文本强化特征(t-emb)和视图强化特征(v-emb)相比于输入前的结构化融合特征“cross-att”、文本融合特征“cross-att”和视图融合特征“cross-att”来说,信息表达能力更强。然后对结构化强化特征(s-emb)、文本强化特征(t-emb)和视图强化特征(v-emb)进行求和与归一化(ADD&norm)处理,得到融合特征(itemembedding)。该融合特征(item embedding)融合了互相交互得到的结构化融合特征“cross-att”、文本融合特征“cross-att”和视图融合特征“cross-att”中的特征信息,多模态的特征信息之间信息互补,因而融合得到的特征的信息表达能力更好。
2、用户时序特征融合子网络。
用户时序特征融合子网络的目的是对用户的时序特征进行融合,使得输出的用户时序特征具有用户历史行为的数据关联能力,那么特征的信息表达能力更好。具体的,用户原始数据中的用户行为原始数据在时间维度上存在关联关系,比如,用户在五分钟前浏览的商品(如手机)可能会影响用户当下的行为(如浏览该手机的详情页),用户当下的行为可能会影响用户后续的行为(如浏览手机的手机壳、数据线等配件商品)。常规技术中的推荐系统直接将用户原始数据输入神经网络如深度神经网络(deep neural networks,DNN)中提取用户特征,并未对用户在时间维度上产生的原始数据进行交互,因而提取到的用户特征对用户行为的信息表达能力不强,导致模型精度较差。
基于此,本实施例提供了一种可以提取用户各个历史行为之间的相关性的网络,也就是上文所说的用户时序特征融合子网络。继续参考图5,在用户行为原始数据输入至特征融合子网络之前,先通过嵌入层emb layers将用户行为原始数据转换为相同维度的编码表示,得到用户行为样本。然后将用户行为样本作为第二输入样本,输入用户时序特征融合子网络中。与对象特征融合子网络相类似的,用户时序特征融合子网络也可以计算输入其中的第二输入样本中的每相邻两个用户行为样本之间的相关性系数。相关性系数高,则第j个用户行为样本融合到第j+1个用户行为样本的参考比例大;相关性系数低,则第j个用户行为样本融合到第j+1个用户行为样本的参考比例小。
该实施例中,相关性系数同样可以根据先验知识、第二输入样本的第二特征或两个特征的特征分量确定。下面以特征分量为例进行说明。
继续参考图5,用户时序特征融合子网络通过全连接层提取第j个用户行为样本的特征向量,以矩阵X’表示,并构建三个权重矩阵WQ(相当于前文所说的第一权重矩阵)、WK(相当于前文所说的第二权重矩阵)、WV(相当于前文所说的第三权重矩阵)分别查询第j个用户行为样本和其他样本的关系以及特征向量的表达。通过将第j个用户行为样本的特征向量分别与三个权重矩阵相乘,得到查询分量Qj、键值分量Kj和内容分量Vj。
然后用户时序特征融合子网络通过注意力门(attention gate,AG)模块处理第j个用户行为样本的三个分量,具体如表达式(1)所示。并使用残差结构强化第j个用户行为样本的内容分量Vj,具体如表达式(2)所示。
Q ag j,K ag j,V ag j = attentiongate(Qj,Kj,Vj) (1)
V ag j = V ag j + Vj (2)
相比于Vj,Vagj是AG模块通过抑制学习与任务无关的特征,同时加强学习与任务有关的特征所得到的强化内容分量,因此,以强化内容分量与内容分量进行拼接,可以强化内容分量的信息表达能力,使其具有更丰富的特征信息。
对每个用户行为特征的内容分量都进行强化之后,可以执行下一步,使用第j个用户行为特征的Kj和Qk强化第j+1个用户行为特征的Kj+1和Qj+1,旨在提取第j个用户行为特征和第j+1个用户行为特征的相关性,具体如表达式(3)和表达式(4)所示。
Q j+1 = Q ag j + Q j+1 (3)
K j+1 = K ag j + K j+1 (4)
之后用户时序特征融合子网络使用第j个行为特征输出的特征值Vagj强化第j+1个用户行为样本对应的内容分量Vj+1,具体如表达式(5)所示。
V j+1 = V ag j + V j+1 (5)
继续参考图5,将用户行为样本i1-e,i2-e,…,in-e与模型初始强化特征i0输入用户时序特征融合子网络(sqr attention)之后,经过时序特征融合,输出强化后的V1,V2,…,Vj+1,分别对应图5中的i1-ae,i2-ae,…,in-ae。即,用户行为样本随着时间序列横向传播,使得所有历史行为特征的查询分量Q,键值分量K和内容分量V都会得到积累强化,其中,强化后的内容分量V作为用户时序特征融合子网络的输出,强化后的查询分量Q,键值分量K用来输入到下一个AG模块中,起到信息传递过程中的信息增强作用,以减少模型传递过程信息损失。这样一来,用户各历史行为之间的关联能力提高,使得用户行为数据的信息表达能力也更好。
3、交互子网络。
交互子网络的目的是训练过程避免用户原始数据和备选对象的多模态数据彼此隔离,缺少交互。通过用户和备选对象之间的信息依赖,对用户原始数据和备选对象的多模态数据进行强化,使最终得到的特征的信息表达能力更强。
继续参考图5,在用户属性原始数据输入至交互子网络之前,先通过嵌入层emblayers将用户属性原始数据转换为相同维度的编码表示,得到用户属性样本。
将用户属性样本输入神经网络如DNN中提取用户属性特征,得到用户属性特征,对应图5中的user embedding。
然后在用户侧增加增强向量augU,在备选对象侧增加增强向量augI,以符号Au,Ai表示。将增强向量augU与用户属性特征(user embedding)拼接后得到增强向量augU,将增强向量augI与融合特征(item embedding)拼接后等到增强向量augI。将用户属性特征(user embedding)、融合特征(item embedding)、增强向量augU和增强向量augI作为第三输入样本,输入交互子网络中。
示例性的,在构建模型时,增强向量augI和增强向量augU是模型的初始特征参数,分别表征物料和用户,是对物料信息和用户信息的初步抽象。随着模型不断训练,增强向量augI和增强向量augU可以迭代至能够分别表示物料信息和用户信息。
交互子网络中,用户属性特征(user embedding)和融合特征(item embedding)都依次经过全连接层和norm层,在全连接层根据用户属性特征得到对应的各个用户的预测概率分布,以及根据融合特征得到对应的各个备选对象的预测概率分布。norm层对概率分布进行归一化处理,最终输出用户对应的repI以及备选对象对应的repU。
本申请实施例中,除了采用通用的交叉熵损失函数(cross-entropy loss)之外,还增加对偶损失(dual loss)来实现用户和备选对象之间的信息交互。对偶损失采用均方差损失函数,具体如表达式(6)和表达式(7)所示。通过两个塔之间的隐士反馈实现不同塔之间的信息交互。
;
表达式中,u表示用户user,i表示备选对象item,y表示偏好标签,Au表示用户侧的增强向量,Ri表示repI,Ai表示备选对象侧的增强向量,Ru表示repU。
以j=N=1为例,在该公式中,偏好标签为1,表示训练样本为正样本,将y=1代入表达式(6)和表达式(7)中,可得到lossu=(Au-Ri)2 以及lossi=(Ai-Ru)2。在模型训练过程中,lossu和lossi不断迭代,直至不再变化且趋近于0时,模型训练完成,此时Au与Ri相接近,Ai与Ru相接近。也就是说,用户侧的增强向量augI与备选对象侧的表示向量repU趋于一致,备选对象侧的增强向量augU与用户侧的表示向量repI趋于一致,由于两个向量越接近,表示损失越小,所以当他们趋于一致时,增强向量迭代为正样本信息的综合表示,可通过增强向量表示用户信息和物料信息。这样两个塔之间便完成了信息交互。
当模型训练完成后,之前提到的构建三个权重矩阵WQ、WK和WV更新为最优权重矩阵。之后,可应用训练好的模型(或称信息推荐模型)来预测用户对备选对象的偏好度,从而为用户进行信息推荐。具体可参见下文描述。
二、模型应用。
参考图8,手机显示第一界面801,用户A在第一界面801执行点击购物APP的应用图标802的第二操作。手机响应于第二操作,打开购物APP,以及向服务器发送推荐请求。其中,推荐请求包括用户标识。服务器接收到用户标识,获取用户标识对应的用户原始数据以及推荐池中的N个待推荐的备选对象的多模态原始数据。服务器将用户A的用户原始数据以及N个待推荐的备选对象的多模态原始数据作为信息推荐模型的输入。服务器使用信息推荐模型预测用户对N个待推荐的备选对象的偏好度,其中偏好度以偏好标签表示。基于偏好度服务器从N个待推荐的备选对象中选择至少一个推荐对象,并将推荐对象的商品信息803显示在购物APP启动后显示的第二界面804上。
信息推荐模型能够通过自注意力模块对备选对象的各个模块的特征进行融合,得到更具有备选对象的信息表达能力的融合特征,所以信息推荐模型对备选对象的特征提取的能力更强。且信息推荐模型能够通过用户时序特征融合子网络提取用户各个历史行为之间的相关性,并基于相关性对用户的时序特征进行融合,得到更具有用户行为的信息表达能力的用户行为特征,所以信息推荐模型对用户的行为特征的提取能力更强。不仅如此,信息推荐模型还能够通过交互子网络增强repI和repU,使得repI和repU这两个特征分别包含有与另一特征交互的信息。这样一来,信息推荐模型具备更好的用户对备选对象的偏好度预测的能力,所以输出的偏好度的准确率高,向用户提供的推荐对象能够是用户感兴趣的商品,推荐效果更好。
下面示例性的说明图8中采用信息推荐模型进行信息推荐的具体实现。如图9所示,信息推荐方法包括:
S901、获取用户的用户数据和多组备选对象的对象数据,其中,用户数据包括用户在预设时间段内的行为数据;每组对象数据包括同一个备选对象的多模态数据。
其中,备选对象(或称待选对象)是指等待被选择的对象,例如等待被选择的视频、内容(如图片、文章、帖子)、商品等。由于用户可以与备选对象的多模态数据进行交互,如用户与手机商品的图片、视频进行交互,与手机商品的评论文字进行交互,用户购买手机商品产生购买信息等结构化数据的交互,所以在本实施例中,提取的是备选对象的多模态数据,以便于全面覆盖到用户可能与备选对象的各个模态数据产生的交互情况。
行为数据是指用户与对象产生交互行为的数据,其中对象包括备选对象、或者其他对象。示例性的,备选对象为手机a~手机c系列,那么对象可以是手机a~手机c系列,以及手机系列,以及平板a系列,以及视频a~视频z,以及内容a~内容z等,也就是说对象可以包括备选对象、备选对象同类型的对象、备选对象不同类型的对象。行为数据能够表征用户与备选对象的历史行为,采集行为数据的目的是根据用户的历史行为预测出用户对备选对象的偏好度,以便于依据偏好度向用户进行推荐。
在一些实施例中,用户数据还包括用户属性数据,用户属性数据是指与用户属性相关的数据,用户属性数据包括:用户性别、用户年龄、用户消费习惯等。在一些实施例中,用户属性数据以结构配置数据(struct profile data)表示,结构配置数据(structprofile data)可以是表格、矩阵、序列等整齐格式化的数据。结构化数据可以存储于数据库中。
在一些实施例中,第二设备中存储有多个用户的用户数据以及多个对象的对象数据。当第二设备接收到第一设备发送的推荐请求,第二设备从存储的用户数据集合以及对象数据集合中获取多个用户中的用户对应的用户数据,以及多个对象中的备选对象对应的对象数据。
在获取到用户的用户数据和多组备选对象的对象数据之后,第二设备执行S902,从而对用户数据进行处理。
S902、基于用户数据确定用户的时序行为特征信息,时序行为特征信息由用户在预设时间段内的多个行为特征信息融合得到,其中,在行为数据基于时间关系排序的情况下,第j+1个行为数据对应的行为特征信息是第j+1个行为数据对应的初始行为特征信息与第j个行为数据对应的行为特征信息的融合结果。
时序行为特征信息融合了用户在预设时间段内的各个行为数据的特征信息,与常规技术中直接拼接行为数据后输入网络中进行识别不同的是,本步骤考虑到用户前后行为的相关性会使得产生的相邻两个行为数据之间也具有相关性。而相邻两个行为数据的相关性是无法通过拼接行为数据输入网络模型中识别得到的。所以常规技术中并没有利用用户前后行为的相关性,导致提取出来的用户特征的信息表达能力不强。本实施例中提取用户第j+1个行为动作(或称交互行为动作)产生的第j+1个行为数据对应的初始行为特征信息,并将用户第j个行为数据对应的行为特征信息与之融合,从而得到第j+1个行为数据对应的行为特征信息。示例性的,以j=3为例,第4个行为动作产生的第4个行为数据对应的行为特征信息=第4个初始行为特征信息+第3个行为特征信息=第4个初始行为特征信息+第3个初始行为特征信息+第2个行为特征信息=第4个初始行为特征信息+第3个初始行为特征信息+第2个初始行为特征信息+第1个初始行为特征信息。也就是说,对第4个行为数据提取的行为特征信息不仅包括第4个行为数据本身提取出来的初始行为特征信息,还包括在第4个行为动作产生之前的用户的行为动作对应的第1个行为数据、第2个行为数据以及第3个行为数据对应的行为特征信息。这样一来,相邻两个行为数据之间的相关性能够起到对后一行为数据提取出来的特征进行增强的效果。
在一些实施例中,可以采用上文训练的信息推荐模型来确定用户的时序行为特征信息。具体的,将用户的用户数据输入信息推荐模型中,由信息推荐模型中的用户时序特征融合子网络计算第j+1个行为数据与第j个行为数据之间的相关性系数,用户时序特征融合子网络根据相关性系数对第j+1个行为数据对应的初始行为特征信息和第j个行为数据对应的行为特征信息进行融合。该实施例中,第4个行为特征信息并不是直接由第4个初始行为特征信息与第3个行为特征信息拼接得到的,而是基于相关性融合,可以提供融合结果的合理性。
与上文模型训练相对应的,相关性系数可以通过行为数据对应的行为特征信息之间的特征分量确定。具体的,行为数据通过嵌入层emb layers转换为相同维度的编码表示后,输入全连接层提取特征向量,以矩阵X’表示,并构建三个权重矩阵WQ、WK、WV分别查询第j个行为嵌入(相当于上文模型训练中的用户行为样本)和其他行为嵌入的关系以及特征向量的表达。通过将第j个行为嵌入的特征向量分别与三个权重矩阵相乘,得到查询分量Qj、键值分量Kj和内容分量Vj。
然后用户时序特征融合子网络通过注意力门(attention gate,AG)模块处理第j个行为嵌入(behavior emb,对应图5中输入AG模块前的in-e,n=j)的三个分量,具体如表达式(1)所示。并使用残差结构强化第j个行为嵌入的内容分量Vj,具体如表达式(2)所示。
Q ag j,K ag j,V ag j = attentiongate(Qj,Kj,Vj) (1)
V ag j = V ag j + Vj (2)
作为一种示例,AG模块可采用长短期记忆网络(long short-term memory,LSTM)模型的遗忘门和输入门架构,AG模块将查询分量Qj、键值分量Kj和内容分量Vj中的有用信息传递下去,将无用信息遗忘,使得输入下一个AG模块的数据是经过注意力筛选过的分量,信息表达能力更好。
对每个用户行为特征的内容分量都进行强化之后,可以执行下一步,使用第j个行为特征信息的Kagj和Qagj强化第j+1个初始行为特征信息的Kj+1和Qj+1,旨在提取第j个行为嵌入和第j+1个行为嵌入的相关性,具体如表达式(3)和表达式(4)所示。
Q j+1 = Q ag j + Q j+1 (3)
K j+1 = K ag j + K j+1 (4)
之后用户时序特征融合子网络使用第j个行为特征输出的特征值Vagj强化第j+1个用户行为样本对应的内容分量Vj+1,具体如表达式(5)所示。
V j+1 = V ag j + V j+1 (5)
上文模型训练中提到,训练结束的信息推荐模型中的三个权重矩阵WQ、WK和WV更新为最优权重矩阵,因而将第j个行为嵌入的特征向量分别与三个权重矩阵相乘,得到查询分量Qj、键值分量Kj和内容分量Vj也为最优分量。那么最终强化得到的内容分量V(对应图5中的i1-ae、i2-ae、…、in-ae)是最具有行为数据的信息表达能力的行为特征。
将n个行为数据输入用户时序特征融合子网络后输出的n个行为特征进行融合,由于每个行为特征都是经过对用户各历史行为之间的相关性学习到的,所以融合得到的时序行为特征信息的信息表达能力更好。
S903、基于对象数据确定备选对象的多模态融合特征信息,多模态融合特征信息包括基于多模态数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征。
多模态融合特征信息是指针对对象数据中的多模态数据,对任意两个模态数据之间的特征信息进行融合,使得每个模态数据对应的特征信息都融合了其他模态数据对应的特征信息,这样一来,每个模态数据对应的特征信息便得到的强化,具有更丰富的信息表达能力。
本实施例中,多模态数据对应的模态特征并不是直接拼接后得到强化特征的,而是基于各模态特征之间的相似性进行合理的融合。可以理解的是,相似性可由具体数值表示,如相似程度。相似程度高,则第一模态与其他模态相融合时,其他模态的参考权重高;反之亦反。
根据相似性融合各模态特征,使得融合结果更合理,因而得到的融合特征的信息表达能力更好。
与上文模型训练相对应的,相关性系数可以通过各模态之间的特征分量的相似度确定。具体的,对象数据通过嵌入层emb layers转换为相同维度的编码表示后,输入全连接层提取特征向量,以矩阵X表示,并构建三个权重矩阵WQ、WK、WV分别查询各模态的特征信息之间的关系以及特征向量的表达。例如结构化数据对应的特征信息与文本数据对应的特征信息之间的关系、结构化数据对应的特征信息与视图数据对应的特征信息之间的关系、文本数据对应的特征信息与结构化数据对应的特征信息之间的关系、文本数据对应的特征信息与视图数据对应的特征信息之间的关系、视图数据对应的特征信息与结构化数据对应的特征信息之间的关系以及视图特征与文本数据对应的特征信息之间的关系。
具体的,通过将结构化数据的特征向量分别与三个权重矩阵相乘,得到查询分量Q、键值分量K和内容分量V。对于文本数据、视图数据也同样提取其查询分量Q、键值分量K和内容分量V。其中,查询分量Q是指第一模态数据待查询第二模态数据,键值分量K是指第一模态数据等待被第二模态数据查询,内容分量V是指第一模态数据的特征信息。其中,第一模态数据与第二模态数据是同一备选对象不同模态的数据。
然后自注意力模块通过第一模态数据的查询分量Q与第二模态数据的键值分量K进行相似度计算得到第二模态数据的融合权重。常用的相似度计算方式可以是点积相似度,余弦相似度等。示例性的,将结构化数据的查询分量Q与文本数据的键值分量K进行乘积(或称点积),其乘积反映文本数据对结构化数据的匹配度,为防止乘积值过大,将乘积值除以dk的平方根,然后将结果经过归一化层(softmax),得到文本数据的特征匹配分数。其中,dk是指查询分量Q矩阵、查询分量K矩阵的列数。然后以文本数据的特征匹配分数与文本数据的内容分量V相乘,得到融合分量,将融合分量与结构化文本相拼接,得到两个模态分量相交互的融合结果(相当于强化特征)。
多模态融合特征信息包括了强化特征,因而相比于单一特征,其能够反映多模态的特征信息,且相比于多模态特征,其结合了不同模态信息相互交互的信息,因而,多模态融合特征信息的信息表达能力更强。
S904、基于时序行为特征信息和多模态融合特征信息之间的相似度,为用户从多个备选对象中确定推荐对象。
其中,常用的相似度计算方式可以是点积相似度,余弦相似度等,在此不作赘述。本实施例中从用户数据中提取出的特征充分考虑了用户前后交互行为动作之间的关联性,因而更能反映用户的偏好度。从对象数据中提取出的特征充分考虑了同一备选对象的多模态数据之间的信息交互,因而更能表征备选对象的属性。所以计算得到的时序行为特征信息和多模态融合特征信息之间的相似度与实际用户对各个备选对象的偏好度更接近,因而相似度的预测准确度更好。那么基于相似度为用户进行推荐,效果更好。
继续参考图5,在一些实施例中,可以在输出时序行为特征信息(或称融合特征)之后,将其输入融合特征索引模块(对应图5中的item embedding index),并控制输出相似度排序前K位(top-K)的备选对象,作为推荐对象。
在一些实施例中,可以通过用户覆盖率以及物品点击率判断不同信息推荐方法的优劣度。
其中,用户覆盖率、物品点击率具体如表达式(8)和表达式(9)所示,其中,#recall_users表示召回商品覆盖的数量数,#items表示商品数。Cu,cu均表示点击次数,Eu,eu均表示商品展示数量。
用户覆盖率:;
物品点击率:;
将图召回模型(u2i_eges)、深度向量召回模型(dssm)、统计协同召回模型(usercf)、冷启动最新最热模型(devicetype)与本方案提出的信息推荐模型(gmfrc)进行对比,得到的结果如图11和图12所示,gmfrc模型的用户覆盖率比作为对比的四个模型中用户覆盖率最高的u2i_eges提升了12.33%,点击率比四个模型中点击率最高的u2i_eges提升了8.71%,因此可以看出,根据本申请实施例提供的信息推荐方法进行信息推荐,不仅用户覆盖率更高,而且用户对物品的点击率也更高,说明推荐效果更好。
以上是以图8所示的应用场景进行举例说明的。在一些实施例中,当用户执行第三操作,其中,第三操作是用户与对象1的交互操作,第一设备向第二设备发送第三操作对应的用户数据,第二设备更新存储的用户数据,其中,更新后的用户数据包括用户与对象1的交互产生的行为数据。那么第二设备采用信息推荐模型进行推荐的过程中,会将更新后的用户数据作为输入,使得输出的推荐对象与用户执行的第三操作相关联。示例性的,当用户执行点击商品A的第三操作,那么推荐对象可能是基于用户对商品A的偏好度进行推荐的商品B,以起到用户产生交互行为动作的同时,为用户推荐与之相关的推荐对象的作用。所以本方法可应用于内容持续更新流推荐、视频持续更新流推荐和电商领域商品推荐等信息推荐场景,能够在用户交互行为动作不断更新的情况下,持续为用户推荐内容、视频或商品。
综上,本申请实施例提供一种信息推荐模型的训练方法以及一种信息推荐方法,在信息推荐模型中本申请实施例提出了三个子网络,分别是用于融合用户原始数据中用户在预设时间段内的多个行为特征,得到样本用户对应的时序行为特征信息的用户时序特征融合子网络,用于根据所述样本对象原始数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征,确定所述样本对象对应的多模态融合特征信息的特征融合子网络以及用于交互用户侧特征和备选对象侧特征的交互子网络。通过这三个子网络起到强化输出特征的作用,使得预测的准确率更高。
相对应的,在信息推荐方法中,提出了三种机制,分别是不同模态的数据源之间的内在交互注意力机制(inter cross attention),ICA),能够融合不同模态的数据源之间的特征,以及提出时间序列残差注意机制(time sequence redisual attention,TSRA),通过捕捉用户交互历史序列数据关联性来增强数据的表达力,以及提出用户与备选对象特征交互机制(interactive network attention,INA),避免训练过程中用户与备选对象的隔离。
本申请另一些实施例提供了一种电子设备,该电子设备可以包括:上述显示屏(如触摸屏)、存储器和一个或多个处理器。该显示屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中手机执行的各个功能或者步骤。该电子设备的结构可以参考图3所示的手机的结构。
本申请实施例还提供一种芯片系统,如图10所示,该芯片系统包括至少一个处理器1001和至少一个接口电路1002。处理器1001和接口电路1002可通过线路互联。例如,接口电路1002可用于从其它装置(例如,服务器220的存储器)接收信号。又例如,接口电路1002可用于向其它装置(例如处理器1001)发送信号。
例如,接口电路1002可读取服务器220中存储器中存储的指令,并将该指令发送给处理器1001。当所述指令被处理器1001执行时,可使得服务器220执行上述各实施例中的各个步骤。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (13)
1.一种信息推荐方法,其特征在于,包括:
获取用户的用户数据和多组备选对象的对象数据,其中,所述用户数据包括所述用户在预设时间段内的行为数据;每组所述对象数据包括同一个备选对象的多模态数据;
基于所述用户数据确定所述用户的时序行为特征信息,所述时序行为特征信息由所述用户在所述预设时间段内的所述行为数据对应的多个行为特征信息融合得到;
对所述对象数据进行第三特征提取,得到所述对象数据对应的第二特征向量;
根据所述第二特征向量与预设的第四权重矩阵、第五权重矩阵、第六权重矩阵的乘积,得到每个所述对象数据对应的查询分量、键值分量、内容分量;
从每个所述对象数据对应的查询分量、键值分量、内容分量中获取所述备选对象的第一模态数据对应的查询分量和所述备选对象的第二模态数据对应的键值分量;
根据每个所述备选对象的第一模态数据对应的查询分量和所述备选对象的第二模态数据对应的键值分量的相似度,确定第二参考权重;
基于所述第二参考权重将所述备选对象的第二模态数据对应的内容分量融合到所述备选对象的第一模态数据对应的内容分量中,得到融合分量;
将所述融合分量和所述备选对象的第一模态数据对应的内容分量进行融合处理,得到强化特征;多模态融合特征信息包括基于所述多模态数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征;
基于所述时序行为特征信息和所述多模态融合特征信息之间的相似度,从所述多个备选对象中为所述用户确定推荐对象。
2.根据权利要求1所述的方法,其特征在于,在所述行为数据基于时间关系排序的情况下,第j+1个行为数据对应的行为特征信息是第j+1个行为数据对应的初始行为特征信息与第j个行为数据对应的行为特征信息的融合结果。
3.根据权利要求1所述的方法,其特征在于,所述基于所述用户数据确定所述用户的时序行为特征信息,包括:
获取相邻两个所述行为数据之间的第一相关性系数,基于所述第一相关性系数将相邻两个所述行为数据中的前一个行为数据对应的行为特征信息融合到后一个初始行为数据对应的行为特征信息中,得到后一个行为数据对应的行为特征信息。
4.根据权利要求3所述的方法,其特征在于,所述第一相关性系数由相邻两个所述行为数据对应的特征分量之间的相似度确定;
所述获取相邻两个所述行为数据之间的第一相关性系数,基于所述第一相关性系数将相邻两个所述行为数据中的前一个行为数据对应的行为特征信息融合到后一个初始行为数据对应的行为特征信息中,得到后一个行为数据对应的行为特征信息,包括:
对所述行为数据进行第一特征提取,得到所述行为数据对应的第一特征向量;
根据所述第一特征向量与预设的第一权重矩阵、第二权重矩阵、第三权重矩阵的乘积,得到每个所述行为数据对应的第一查询分量、第一键值分量、第一内容分量;
将每个所述行为数据对应的第一查询分量、第一键值分量、第一内容分量进行第二特征提取,得到第二查询分量、第二键值分量和第二内容分量;
将所述第二内容分量与所述第一内容分量进行融合,得到所述行为数据对应的强化内容分量;
根据相邻两个所述行为数据中的前一个行为数据对应的所述第二键值分量和后一个行为数据对应的所述第二查询分量的相似度,确定第一参考权重;
基于所述第一参考权重将所述前一个行为数据对应的所述强化内容分量融合到所述后一个行为数据对应的第一内容分量中,以迭代得到所述后一个行为数据对应的第一内容分量;
将所述后一个行为数据对应的所述第二内容分量作为所述后一个行为数据对应的行为特征信息。
5.根据权利要求4所述的方法,其特征在于,所述预设的第一权重矩阵、第二权重矩阵、第三权重矩阵是由对偶损失函数训练信息推荐模型得到的;所述对偶损失函数用于训练所述信息推荐模型,使得所述用户数据对应的增强向量与所述多模态融合特征信息之间的差值小于或等于第一阈值,以及使得所述对象数据对应的增强向量与所述时序行为特征信息之间的差值小于或等于第二阈值。
6.根据权利要求5所述的方法,其特征在于,针对第j个训练样本,所述对偶损失函数的表达式包括:
;
;
其中,u表示用户;i表示对象;y表示训练样本的偏好标签,所述偏好标签的大小用于指示用户对对象的偏好度的大小,所述对象包括所述备选对象;Au表示所述用户数据对应的增强向量,Ri表示所述时序行为特征信息;Ai表示所述对象数据对应的增强向量,Ru表示所述多模态融合特征信息。
7.根据权利要求1所述的方法,其特征在于,所述根据每个所述备选对象的第一模态数据对应的查询分量和所述备选对象的第二模态数据对应的键值分量的相似度,确定第二参考权重,包括:
;
其中,F表示第二参考权重;Qi表示第一模态数据对应的查询分量;Kj表示第二模态数据对应的键值分量;dk表示第四权重矩阵或第五权重矩阵或第六权重矩阵的行数。
8.根据权利要求1所述的方法,其特征在于,在所述多模态数据包括结构化数据、文本数据和视图数据的情况下,所述多模态融合特征信息包括:所述结构化数据对应的强化特征,所述文本数据对应的强化特征以及所述视图数据对应的强化特征。
9.一种信息推荐模型的训练方法,其特征在于,包括:
获取m组用户原始数据和n组样本对象原始数据,其中,每组用户原始数据包括一个样本用户的用户行为原始数据,每组样本对象原始数据包括一个样本对象的多模态原始数据;
基于所述m组用户原始数据和所述n组样本对象原始数据获取m个所述样本用户对n个所述样本对象的偏好信息;
根据所述偏好信息标注得到m个所述样本用户对n个所述样本对象的偏好标签;
将所述m组用户原始数据、所述n组样本对象原始数据作为信息推荐模型的输入,将m*n个所述偏好标签输入所述信息推荐模型的输出,训练所述信息推荐模型;
其中,所述信息推荐模型中的用户时序特征融合子网络用于融合用户原始数据中用户在预设时间段内的多个行为特征,得到样本用户对应的时序行为特征信息;
所述信息推荐模型中的特征融合子网络用于根据所述样本对象原始数据中的任意两个模态数据对应的模态特征之间的相似性融合得到的强化特征,确定所述样本对象对应的多模态融合特征信息;
所述样本用户对应的时序行为特征信息与所述样本对象对应的多模态融合特征信息之间的相似度用于表征所述偏好信息。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
基于对偶损失函数调整所述信息推荐模型的模型参数,使得所述样本对象对应的增强向量与所述多模态融合特征信息之间的差值小于或等于第一阈值,以及使得所述样本对象对应的增强向量与所述时序行为特征信息之间的差值小于或等于第二阈值。
11.一种电子设备,其特征在于,包括:处理器,用于存储所述处理器可执行指令的存储器,所述处理器被配置为执行所述指令时,使得所述电子设备实现如权利要求1至8中任一项所述的方法、或权利要求9或10所述的方法。
12.一种信息推荐系统,其特征在于,包括:服务器和电子设备,所述服务器用于在接收到所述电子设备发送的推荐请求之后,执行如权利要求1至8中任一项所述的方法、或权利要求9或10所述的方法。
13.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1至8中任一项所述的方法、或权利要求9或10所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310385070.2A CN116108282B (zh) | 2023-04-12 | 2023-04-12 | 一种信息推荐模型的训练方法、信息推荐方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310385070.2A CN116108282B (zh) | 2023-04-12 | 2023-04-12 | 一种信息推荐模型的训练方法、信息推荐方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116108282A CN116108282A (zh) | 2023-05-12 |
CN116108282B true CN116108282B (zh) | 2023-08-29 |
Family
ID=86256558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310385070.2A Active CN116108282B (zh) | 2023-04-12 | 2023-04-12 | 一种信息推荐模型的训练方法、信息推荐方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116108282B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118656088A (zh) * | 2024-08-22 | 2024-09-17 | 成都维中震科技有限公司 | 一种基于大数据的软件安装方法、系统、设备和介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254785A (zh) * | 2021-06-21 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 推荐模型训练方法、推荐方法和相关设备 |
CN114185651A (zh) * | 2021-12-16 | 2022-03-15 | 哈尔滨理工大学 | 一种融合多模态信息的移动群智感知任务推荐方法 |
CN114398505A (zh) * | 2022-01-19 | 2022-04-26 | 腾讯科技(深圳)有限公司 | 目标词语的确定方法、模型的训练方法、装置及电子设备 |
CN114529008A (zh) * | 2021-12-30 | 2022-05-24 | 北京达佳互联信息技术有限公司 | 信息推荐方法、对象识别方法及装置 |
WO2022156525A1 (zh) * | 2021-01-25 | 2022-07-28 | 北京沃东天骏信息技术有限公司 | 对象匹配方法、装置及设备 |
CN115080836A (zh) * | 2021-03-10 | 2022-09-20 | 腾讯科技(北京)有限公司 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
CN115186177A (zh) * | 2022-06-15 | 2022-10-14 | 平安银行股份有限公司 | 一种社交信息推荐方法、装置、计算机设备及存储介质 |
CN115858910A (zh) * | 2021-09-23 | 2023-03-28 | 腾讯科技(深圳)有限公司 | 基于人工智能的对象推荐方法、装置及电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102444712B1 (ko) * | 2016-01-12 | 2022-09-20 | 한국전자통신연구원 | 다중-모달리티 특징 융합을 통한 퍼스널 미디어 자동 재창작 시스템 및 그 동작 방법 |
CN110162703B (zh) * | 2019-05-13 | 2024-08-20 | 深圳市雅阅科技有限公司 | 内容推荐方法、训练方法、装置、设备及存储介质 |
CN111291266B (zh) * | 2020-02-13 | 2023-03-21 | 深圳市雅阅科技有限公司 | 基于人工智能的推荐方法、装置、电子设备及存储介质 |
CN114036397B (zh) * | 2021-11-26 | 2023-08-01 | 北京百度网讯科技有限公司 | 数据推荐方法、装置、电子设备和介质 |
-
2023
- 2023-04-12 CN CN202310385070.2A patent/CN116108282B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022156525A1 (zh) * | 2021-01-25 | 2022-07-28 | 北京沃东天骏信息技术有限公司 | 对象匹配方法、装置及设备 |
CN115080836A (zh) * | 2021-03-10 | 2022-09-20 | 腾讯科技(北京)有限公司 | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 |
CN113254785A (zh) * | 2021-06-21 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 推荐模型训练方法、推荐方法和相关设备 |
CN115858910A (zh) * | 2021-09-23 | 2023-03-28 | 腾讯科技(深圳)有限公司 | 基于人工智能的对象推荐方法、装置及电子设备 |
CN114185651A (zh) * | 2021-12-16 | 2022-03-15 | 哈尔滨理工大学 | 一种融合多模态信息的移动群智感知任务推荐方法 |
CN114529008A (zh) * | 2021-12-30 | 2022-05-24 | 北京达佳互联信息技术有限公司 | 信息推荐方法、对象识别方法及装置 |
CN114398505A (zh) * | 2022-01-19 | 2022-04-26 | 腾讯科技(深圳)有限公司 | 目标词语的确定方法、模型的训练方法、装置及电子设备 |
CN115186177A (zh) * | 2022-06-15 | 2022-10-14 | 平安银行股份有限公司 | 一种社交信息推荐方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116108282A (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020215962A1 (zh) | 视频推荐方法、装置、计算机设备及存储介质 | |
WO2022100221A1 (zh) | 检索处理方法、装置及存储介质 | |
CN105210063A (zh) | 为数据可视化推荐基于上下文的动作 | |
EP2577944B1 (en) | Method and apparatus for identifying network functions based on user data | |
CN111611490A (zh) | 资源搜索方法、装置、设备及存储介质 | |
CN116108282B (zh) | 一种信息推荐模型的训练方法、信息推荐方法及设备 | |
CN112685578B (zh) | 一种多媒体信息内容提供方法及装置 | |
US11222090B2 (en) | Site and service signals for driving automated custom system configuration | |
CN113039513B (zh) | 一种输入法候选内容的推荐方法及电子设备 | |
CN116186197A (zh) | 话题推荐方法、装置、电子设备及存储介质 | |
CN114281936A (zh) | 分类方法、装置、计算机设备及存储介质 | |
CN116048765B (zh) | 任务处理方法、样本数据处理方法及电子设备 | |
CN103092900A (zh) | 相关产品的单个混合视图呈现 | |
CN116089368B (zh) | 文件搜索方法和相关装置 | |
CN114707075B (zh) | 一种冷启动推荐方法和设备 | |
CN116128571A (zh) | 广告曝光量分析方法及相关装置 | |
CN116955757A (zh) | 切换应用程序的搜索方法、装置、设备、介质和程序产品 | |
CN112786022B (zh) | 终端、第一语音服务器、第二语音服务器及语音识别方法 | |
CN116205686A (zh) | 一种多媒体资源推荐的方法、装置、设备和存储介质 | |
CN114594882A (zh) | 一种反馈方法、装置及系统 | |
CN113495967A (zh) | 一种多媒体数据的推送方法、设备、服务器以及存储介质 | |
CN116339562B (zh) | 一种快捷输入方法及电子设备 | |
CN115348353B (zh) | 一种内容推送方法和服务器 | |
EP4310696A1 (en) | Image search method, terminal, and server | |
CN116012118B (zh) | 一种产品推荐方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |