1.本技术涉及计算机及通信技术领域,具体而言,涉及一种特征数据处理方法、装置、计算机可读介质及电子设备。
背景技术:2.在相关技术中,为了实现精准的内容推荐,通常需要获取到用户的交互数据,基于该交互数据确定用户的特征(如兴趣爱好等),进而向用户进行精准推荐。而当用户涉足一个新领域(如视频交互领域)时,由于在该新领域中由于没有任何的交互数据,因此难以确定用户的特征,进而会影响到内容推荐的准确性。
技术实现要素:3.本技术的实施例提供了一种特征数据处理方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以提高映射到目标领域中的用户特征向量的准确性。
4.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
5.根据本技术实施例的一个方面,提供了一种基于领域的特征数据处理方法,包括:获取用户在源领域中交互过的各个对象的对象特征向量;根据所述各个对象的对象特征向量,计算所述用户对应的偏好向量;基于所述用户对应的偏好向量,生成所述用户对应的向量映射函数;基于所述用户对应的向量映射函数,将所述用户在所述源领域中的用户特征向量映射到目标领域中,得到所述用户在所述目标领域中的用户特征向量。
6.根据本技术实施例的一个方面,提供了一种基于领域的特征数据处理装置,包括:获取单元,配置为获取用户在源领域中交互过的各个对象的对象特征向量;计算单元,配置为根据所述各个对象的对象特征向量,计算所述用户对应的偏好向量;生成单元,配置为基于所述用户对应的偏好向量,生成所述用户对应的向量映射函数;映射单元,配置为基于所述用户对应的向量映射函数,将所述用户在所述源领域中的用户特征向量映射到目标领域中,得到所述用户在所述目标领域中的用户特征向量。
7.在本技术的一些实施例中,基于前述方案,所述计算单元配置为:基于所述各个对象的对象特征向量,计算所述各个对象的对象特征向量所对应的权重;根据所述各个对象的对象特征向量所对应的权重,对所述各个对象的对象特征向量进行加权求和,得到所述用户对应的偏好向量。
8.在本技术的一些实施例中,基于前述方案,所述计算单元配置为:通过第一神经网络模型对所述各个对象的对象特征向量进行映射处理,得到所述各个对象的对象特征向量所对应的映射结果;对所述各个对象的对象特征向量所对应的映射结果进行归一化处理,得到所述各个对象的对象特征向量所对应的权重。
9.在本技术的一些实施例中,基于前述方案,所述生成单元配置为:通过第二神经网络模型对所述用户对应的偏好向量进行映射处理,得到所述用户对应的偏好向量的映射结
果;以所述用户对应的偏好向量的映射结果作为参数,生成所述用户对应的向量映射函数。
10.在本技术的一些实施例中,基于前述方案,通过机器学习模型计算所述用户对应的偏好向量,并生成所述用户对应的向量映射函数,以及将所述用户在所述源领域中的用户特征向量映射到所述目标领域中;所述机器学习模型包括偏好编码器和元网络,所述偏好编码器用于计算所述用户对应的偏好向量,所述元网络用于生成所述用户对应的向量映射函数。
11.在本技术的一些实施例中,基于前述方案,所述特征数据处理装置还包括:第一训练单元,配置为获取样本数据,所述样本数据包括用户样本在所述源领域中交互过的对象样本的对象特征向量、所述用户样本在所述源领域中的用户特征向量、所述用户样本在所述目标领域中交互过的对象样本所对应的对象特征向量、所述用户样本在所述目标领域中的评分矩阵,所述用户样本是同时处于所述源领域和所述目标领域中的用户;基于所述样本数据对所述机器学习模型进行训练,以使所述机器学习模型的损失函数最小。
12.在本技术的一些实施例中,基于前述方案,所述第一训练单元配置为:计算所述用户样本在所述目标领域中交互过的各个对象样本所对应的对象特征向量与所述机器学习模型映射得到的用户特征向量之间的乘积,所述映射得到的用户特征向量是将所述用户样本在所述源领域中的用户特征向量映射到所述目标领域中得到的;计算所述乘积与所述评分矩阵中对应的评分值之间的差值,得到所述各个对象样本对应的损失值;基于所述各个对象样本对应的损失值,生成所述损失函数。
13.在本技术的一些实施例中,基于前述方案,所述第一训练单元配置为:计算所述各个对象样本对应的损失值的绝对值之和,根据所述绝对值之和生成所述损失函数;或者计算所述各个对象样本对应的损失值的平方和,根据所述平方和生成所述损失函数。
14.在本技术的一些实施例中,基于前述方案,所述特征数据处理装置还包括:推荐单元,配置为基于所述用户在所述目标领域中的用户特征向量,向所述用户推荐所述目标领域中的内容。
15.在本技术的一些实施例中,基于前述方案,所述推荐单元还配置为:收集所述用户针对所述目标领域中的交互对象的行为数据;基于所述行为数据调整向所述用户推荐的所述目标领域中的内容。
16.在本技术的一些实施例中,基于前述方案,所述推荐单元配置为基于所述行为数据,通过所述目标领域对应的推荐模型向所述用户推荐的所述目标领域中的内容;
17.所述特征数据处理装置还包括:第二训练单元,配置为获取所述目标领域中的用户集合、所述目标领域中的对象集合,以及所述目标领域中的用户集合在所述目标领域中的评分矩阵;基于所述目标领域中的用户集合、所述目标领域中的对象集合,以及所述目标领域中的用户集合在所述目标领域中的评分矩阵,训练网络模型得到所述目标领域对应的推荐模型。
18.在本技术的一些实施例中,基于前述方案,所述特征数据处理装置还包括:第三训练单元,配置为获取所述源领域中的用户集合、所述源领域中的对象集合,以及所述源领域中的用户集合在所述源领域中的评分矩阵;基于所述源领域中的用户集合、所述源领域中的对象集合,以及所述源领域中的用户集合在所述源领域中的评分矩阵,训练网络模型得到所述源领域对应的推荐模型,以基于所述源领域对应的推荐模型获取所述用户在所述源
领域中交互过的各个对象的对象特征向量。
19.根据本技术实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的基于领域的特征数据处理方法。
20.根据本技术实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的基于领域的特征数据处理方法。
21.根据本技术实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的基于领域的特征数据处理方法。
22.在本技术的一些实施例所提供的技术方案中,通过根据用户在源领域中交互过的各个对象的对象特征向量计算用户对应的偏好向量,然后基于用户对应的偏好向量生成用户对应的向量映射函数,以基于用户对应的向量映射函数将用户在源领域中的用户特征向量映射到目标领域中,得到用户在目标领域中的用户特征向量,使得可以考虑每个用户的偏好向量,以针对每个用户生成相对应的向量映射函数,进而可以提高映射到目标领域中的用户特征向量的准确性。
23.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
24.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
25.图1示出了可以应用本技术实施例的技术方案的示例性系统架构的示意图;
26.图2示出了根据本技术的一个实施例的基于领域的特征数据处理方法的流程图;
27.图3示出了一种源领域与目标领域的用户特征向量映射关系;
28.图4示出了根据本技术的一个实施例的源领域与目标领域的用户特征向量映射关系;
29.图5示出了根据本技术的一个实施例的特征数据处理方法的流程图;
30.图6示出了根据本技术的一个实施例的基于领域的特征数据处理装置的框图;
31.图7示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
32.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加
全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
33.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
34.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
35.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
36.需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
37.人工智能(artificial intelligence,简称ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
38.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
39.机器学习(machine learning,简称ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
40.本技术实施例提供的技术方案涉及人工智能的机器学习等技术,具体通过如下实施例进行说明:
41.图1示出了可以应用本技术实施例的技术方案的示例性系统架构的示意图。
42.如图1所示,系统架构100可以包括终端设备(如图1中所示智能手机103、平板电脑102和便携式计算机101中的一种或多种,当然也可以是台式计算机、智能音箱、智能手表等)和服务器104。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
43.终端设备与服务器104之间可以通过各种连接类型的通信链路进行通信,比如有线通信链路、无线通信链路等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
44.在本技术的一个实施例中,用户a可以通过便携式计算机101与服务器104进行交互,比如服务器104可以向用户a使用的便携式计算机101推送源领域中的内容,源领域中的内容比如可以是文章、资讯等。当用户a想要进入目标领域时,目标领域比如可以是视频交互领域等,为了实现精准推送,服务器104可以获取用户a在源领域中交互过的各个对象(如用户a在源领域中浏览的各个文章)的对象特征向量,根据该各个对象的对象特征向量,计算用户a对应的偏好向量,然后基于用户a对应的偏好向量,生成用户a对应的向量映射函数,并基于用户a对应的向量映射函数,将用户a在源领域中的用户特征向量映射到目标领域中,得到用户a在目标领域中的用户特征向量。
45.在本技术的一个实施例中,当得到用户a在目标领域中的用户特征向量之后,可以基于用户a在目标领域中的用户特征向量向用户a使用的便携式计算机101推送目标领域中的内容。
46.类似地,对于用户b和用户c而言,都可以采用前述实施例中的技术方案确定其在目标领域中的用户特征向量,然后据此向其推送目标领域中的内容。可见,本技术实施例的技术方案可以考虑每个用户的偏好向量,以针对每个用户生成相对应的向量映射函数,进而可以提高映射到目标领域中的用户特征向量的准确性。
47.需要说明的是,本技术实施例所提供的基于领域的特征数据处理方法一般由服务器104执行,相应地,基于领域的特征数据处理装置一般设置于服务器104中。
48.以下对本技术实施例的技术方案的实现细节进行详细阐述:
49.图2示出了根据本技术的一个实施例的基于领域的特征数据处理方法的流程图,该基于领域的特征数据处理方法可以由服务器来执行,该服务器可以是图1中所示的服务器104。参照图2所示,该基于领域的特征数据处理方法至少包括步骤s210至步骤s240,详细介绍如下:
50.在步骤s210中,获取用户在源领域中交互过的各个对象的对象特征向量。
51.在本技术的一个实施例中,领域可以是按照业务类型来进行划分的,比如领域可以是文章交互领域(如读书应用、读书小程序等)、视频交互领域(如视频应用、视频小程序等)、游戏交互领域等。在本技术的其它实施例中,领域也可以是按照具体业务的类别来进行划分的,比如娱乐领域、科技领域、体育领域等。
52.在本技术的一个实施例中,对象是领域中交互的物,比如领域是文章交互领域时,文章交互领域中的对象可以是文章;领域是视频交互领域时,视频交互领域中的对象可以是视频;领域是娱乐领域时,娱乐领域中的对象可以是娱乐新闻、娱乐视频等。
53.需要说明的是:源领域是用户交互过的领域,比如用户在文章交互领域中进行了交互(如查看了某些文章、分享了某些文章等),当用户进入视频交互领域中之后,文章交互领域可以称之为源领域,视频交互领域可以称之为目标领域。
54.在本技术的一个实施例中,可以获取源领域中的用户集合、源领域中的对象集合,以及源领域中的用户集合在源领域中的评分矩阵,然后基于源领域中的用户集合、源领域中的对象集合,以及源领域中的用户集合在源领域中的评分矩阵,训练网络模型得到源领
域对应的推荐模型,然后基于源领域对应的推荐模型来获取用户在源领域中交互过的各个对象的对象特征向量。其中,对象特征向量是用于表征对象特征的向量。
55.在步骤s220中,根据各个对象的对象特征向量,计算用户对应的偏好向量。
56.在本技术的一个实施例中,用户对应的偏好向量是用于表征用户的兴趣爱好等。在计算用户对应的偏好向量时,可以基于各个对象的对象特征向量,计算各个对象的对象特征向量所对应的权重,然后根据各个对象的对象特征向量所对应的权重,对各个对象的对象特征向量进行加权求和,得到用户对应的偏好向量。
57.在本技术的一个实施例中,可以通过第一神经网络模型对各个对象的对象特征向量进行映射处理,得到各个对象的对象特征向量所对应的映射结果,然后对各个对象的对象特征向量所对应的映射结果进行归一化处理,得到各个对象的对象特征向量所对应的权重。
58.可选地,第一神经网络模型可以是一个两层的全连接神经网络模型,第j个对象的对象特征向量所对应的映射结果可以表示为a'j=h(vj;θ),其中,vj表示第j个对象的对象特征向量;θ表示设定的参数;h()函数表示一个全连接神经网络模型。
59.在得到第j个对象的对象特征向量所对应的映射结果之后,第j个对象的对象特征向量所对应的权重可以表示为:
[0060][0061]
其中,表示源领域中第l个对象的对象特征向量;表示源领域中所有对象的对象特征向量的集合;a
l
'表示源领域中第l个对象的对象特征向量所对应的映射结果。
[0062]
继续参照图2所示,在步骤s230中,基于用户对应的偏好向量,生成用户对应的向量映射函数。
[0063]
在本技术的一个实施例中,可以通过第二神经网络模型对用户对应的偏好向量进行映射处理,得到用户对应的偏好向量的映射结果,然后以用户对应的偏好向量的映射结果作为参数,生成用户对应的向量映射函数。
[0064]
可选地,第二神经网络模型可以是一个两层的全连接神经网络模型,第i个用户对应的偏好向量的映射结果可以表示为其中,表示第i个用户对应的偏好向量;φ表示设定的参数;g()函数表示一个全连接神经网络模型。
[0065]
在得到第i个用户对应的偏好向量的映射结果之后,第i个用户对应的向量映射函数可以表示为
[0066]
可见,在本技术的实施例中,由于考虑了每个用户的偏好向量,并针对每个用户生成了相对应的向量映射函数,进而可以提高映射到目标领域中的用户特征向量的准确性。
[0067]
继续参照图2所示,在步骤s240中,基于用户对应的向量映射函数,将用户在源领
域中的用户特征向量映射到目标领域中,得到用户在目标领域中的用户特征向量。
[0068]
在本技术的一个实施例中,假设第i个用户在源领域中的用户特征向量为那么通过映射处理得到用户在目标领域中的用户特征向量可以表示为
[0069]
在本技术的一个实施例中,在得到用户在目标领域中的用户特征向量之后,可以基于用户在目标领域中的用户特征向量,向用户推荐目标领域中的内容。比如目标领域为视频交互领域,那么可以基于用户在目标领域中的用户特征向量向用户推荐视频。
[0070]
在本技术的一个实施例中,当用户在目标领域中进行交互之后,可以收集用户针对目标领域中的交互对象的行为数据,然后基于收集到的行为数据调整向用户推荐的目标领域中的内容。比如目标领域为视频交互领域,根据收集到的用户的行为数据确定用户对科技类视频比较感兴趣,那么可以向用户推荐科技类视频。
[0071]
可选地,本技术实施例的技术方案可以在用户涉足一个新领域时,通过前述实施例的映射处理方案来将用户在源领域中的用户特征向量映射到新领域中,以基于映射到的用户特征向量来向用户推荐新领域中的内容。当用户在新领域中有交互行为数据之后,可以基于用户在新领域中的交互行为数据调整向用户推荐的新领域中的内容。
[0072]
在本技术的一个实施例中,可以基于用户针对目标领域中的交互对象的行为数据,通过目标领域对应的推荐模型向用户推荐目标领域中的内容。在这种情况下,可以通过训练得到目标领域对应的推荐模型,具体而言,可以获取目标领域中的用户集合、目标领域中的对象集合,以及目标领域中的用户集合在目标领域中的评分矩阵,然后基于目标领域中的用户集合、目标领域中的对象集合,以及目标领域中的用户集合在目标领域中的评分矩阵,训练网络模型得到目标领域对应的推荐模型。可选地,该网络模型可以是cnn(convolutional neural network,卷积神经网络)网络模型。
[0073]
在本技术的一个实施例中,图2所示实施例的技术方案可以通过机器学习模型来实现,即可以通过机器学习模型计算用户对应的偏好向量,并生成用户对应的向量映射函数,以及将用户在源领域中的用户特征向量映射到目标领域中;该机器学习模型可以包括偏好编码器和元网络,该偏好编码器用于计算用户对应的偏好向量,该元网络用于生成用户对应的向量映射函数。
[0074]
在这种情况下,需要对机器学习模型进行训练,具体而言,可以获取样本数据,该样本数据包括用户样本在源领域中交互过的对象样本的对象特征向量、用户样本在源领域中的用户特征向量、用户样本在目标领域中交互过的对象样本所对应的对象特征向量、用户样本在目标领域中的评分矩阵,该用户样本是同时处于源领域和目标领域中的用户,然后基于样本数据对机器学习模型进行训练,以使机器学习模型的损失函数最小。
[0075]
在本技术的一个实施例中,对于前述的损失函数,可以通过以下方式得到:计算用户样本在目标领域中交互过的各个对象样本所对应的对象特征向量与机器学习模型映射得到的用户特征向量之间的乘积,其中映射得到的用户特征向量是将用户样本在源领域中的用户特征向量映射到目标领域中得到的,然后计算该乘积与用户样本在目标领域中的评分矩阵中对应的评分值之间的差值,得到各个对象样本对应的损失值;然后基于各个对象样本对应的损失值,生成损失函数。
[0076]
在本技术的一个实施例中,可以计算各个对象样本对应的损失值的绝对值之和,根据该绝对值之和生成损失函数。或者也可以计算各个对象样本对应的损失值的平方和,根据该平方和生成损失函数。
[0077]
以下结合图3至图5对本技术实施例的技术方案进行详细阐述:
[0078]
如图3所示,在一种技术方案中,将不同用户(如图3中的用户a、用户b和用户c)在源领域和目标领域中的用户特征向量认定为是相同的映射关系,所以使用一个共享的映射函数来建立不同领域中的用户特征向量之间的关系。但是事实上,不同用户在不同领域中的用户特征向量之间的关系是非常多样化的,使用单一的映射函数来建立这样多样化的关系是不恰当的。
[0079]
基于此,在本技术的一个实施例中,可以针对不同用户进行个性化的建模处理。具体而言,用户在目标领域中可能感兴趣的内容应该与源领域存在一定的关联关系,所以用户在这两个领域中的用户特征向量之间的关系应该也和该用户在源领域中的交互有关。因此在本技术的实施例中使用了一个meta learner(元学习网络),其输入是用户在源领域交互过的历史(如交互过的对象所对应的特征向量,用于表示用户偏好),输出的是针对该用户的个性化的映射函数,其中针对不同用户的个性化映射函数是不相同的,通过该个性化的映射函数,可以很容易地将用户在源领域中的用户向量映射到目标领域。比如图4所示,针对用户a,元学习网络根据其在源领域交互过的历史(即用户喜好的物品)生成针对用户a的映射函数a,然后将用户a在源领域中的用户特征向量映射到目标领域;针对用户b,元学习网络根据其在源领域交互过的历史(即用户喜好的物品)生成针对用户b的映射函数b,然后将用户b在源领域中的用户特征向量映射到目标领域;针对用户c,元学习网络根据其在源领域交互过的历史(即用户喜好的物品)生成针对用户c的映射函数c,然后将用户c在源领域中的用户特征向量映射到目标领域。
[0080]
本技术实施例的一个处理流程如图5所示,其中包含有偏好编码器(preference encoder)和元网络(meta network)。具体地,可以将用户在源领域交互过的物品(物品即为前述实施例中交互的对象,比如可以是文章、视频等内容)的向量通过偏好编码器编码成偏好向量,由于不同的物品对于知识迁移的贡献是不同的(在源领域交互过的有些物品和目标领域中交互的物品是不相关的,但是有些也是存在较大关联关系的),因此可以通过注意力机制来编码用户在源领域中交互过的物品的特征向量,得到用户对应的偏好向量,具体如下公式(1)所示:
[0081][0082]
其中,表示用户i对应的偏好向量;表示用户i在源领域中交互过的第j个物品的物品特征向量;表示用户i在源领域中交互过的所有物品的物品特征向量的集合;aj表示用户i在源领域中交互过的第j个物品的物品特征向量所对应的权重。
[0083]
在上述公式(1)中,aj可以通过下述公式(2)来求得:
[0084]
[0085][0086]
其中,表示用户i在源领域中交互过的第l个物品的物品特征向量;表示用户i在源领域中交互过的所有物品的物品特征向量的集合;h()函数表示一个全连接神经网络模型;θ表示设定的参数。
[0087]
继续参照图5所示,在得到用户对应的偏好向量之后,将偏好向量输入元学习网络,得到针对每个用户的个性化映射函数其中函数中的意义如公式(3)所示:
[0088][0089]
在上述公式(3)中,表示第i个用户对应的偏好向量;φ表示设定的参数;g()函数表示一个全连接神经网络模型。
[0090]
在得到用户的个性化的映射函数之后,可以将用户在源领域的用户特征向量映射到目标领域中得到用户在目标领域中的用户特征向量,如下述公式(4)所示:
[0091][0092]
在上述公式(4)中,表示用户i在源领域中的用户特征向量。
[0093]
继续参照图5所示,在得到用户i在目标领域中的用户特征向量之后,基于目标领域中物品所对应的物品特征向量v
t
来得到最终的预测结果,即确定目标领域中物品所对应的物品特征向量与用户在目标领域中的用户特征向量是否匹配,如果匹配,则向用户推荐对应的物品。
[0094]
在本技术的一个实施例中,对于图5中所示的偏好编码器和元学习网络在进行训练时可以采用如下公式(5)所示的损失函数:
[0095][0096]
在公式(5)中,表示同时处于源领域和目标领域中的用户在目标领域中的评分矩阵;r
ij
表示同时处于源领域和目标领域中的第i用户与目标领域中的第j个物品之间的评分;表示用户在目标领域中交互过的第j个物品的物品特征向量。
[0097]
需要说明的是,在公式(5)中是通过差值的平方来计算损失函数,而在本技术的一个实施例中,也可以通过差值的绝对值来计算损失函数,即上述公式(5)可以变形为如下的公式(6):
[0098][0099]
在本技术的一个实施例中,为了获取源领域中物品所对应的物品特征向量和目标领域中物品所对应的物品特征向量,可以分别训练一个源领域模型和目标领域模型,然后通过源领域模型获取源领域中物品所对应的物品特征向量和用户在源领域中的用户特征向量;并通过目标领域模型获取目标领域中物品所对应的物品特征向量和用户在目标领域中的用户特征向量。为了训练源领域模型和目标领域模型,需要的数据包含源领域中的用户集合、物品集合、及评分矩阵,目标领域中的用户集合、物品集合、及评分矩阵,以及源领域和目标领域共享的用户集合。
[0100]
本技术上述实施例的技术方案使得可以考虑每个用户的偏好向量,以针对每个用户生成相对应的向量映射函数,进而可以提高映射到目标领域中的用户特征向量的准确性。
[0101]
以下介绍本技术的装置实施例,可以用于执行本技术上述实施例中的基于领域的特征数据处理方法。对于本技术装置实施例中未披露的细节,请参照本技术上述的基于领域的特征数据处理方法的实施例。
[0102]
图6示出了根据本技术的一个实施例的基于领域的特征数据处理装置的框图,该基于领域的特征数据处理装置可以设置在服务器内,该服务器可以是图1中所示的服务器104。
[0103]
参照图6所示,根据本技术的一个实施例的基于领域的特征数据处理装置600,包括:获取单元602、计算单元604、生成单元606和映射单元608。
[0104]
其中,获取单元602配置为获取用户在源领域中交互过的各个对象的对象特征向量;计算单元604配置为根据所述各个对象的对象特征向量,计算所述用户对应的偏好向量;生成单元606配置为基于所述用户对应的偏好向量,生成所述用户对应的向量映射函数;映射单元608配置为基于所述用户对应的向量映射函数,将所述用户在所述源领域中的用户特征向量映射到目标领域中,得到所述用户在所述目标领域中的用户特征向量。
[0105]
在本技术的一些实施例中,基于前述方案,计算单元604配置为:基于所述各个对象的对象特征向量,计算所述各个对象的对象特征向量所对应的权重;根据所述各个对象的对象特征向量所对应的权重,对所述各个对象的对象特征向量进行加权求和,得到所述用户对应的偏好向量。
[0106]
在本技术的一些实施例中,基于前述方案,计算单元604配置为:通过第一神经网络模型对所述各个对象的对象特征向量进行映射处理,得到所述各个对象的对象特征向量所对应的映射结果;对所述各个对象的对象特征向量所对应的映射结果进行归一化处理,得到所述各个对象的对象特征向量所对应的权重。
[0107]
在本技术的一些实施例中,基于前述方案,生成单元606配置为:通过第二神经网络模型对所述用户对应的偏好向量进行映射处理,得到所述用户对应的偏好向量的映射结果;以所述用户对应的偏好向量的映射结果作为参数,生成所述用户对应的向量映射函数。
[0108]
在本技术的一些实施例中,基于前述方案,通过机器学习模型计算所述用户对应的偏好向量,并生成所述用户对应的向量映射函数,以及将所述用户在所述源领域中的用
户特征向量映射到所述目标领域中;所述机器学习模型包括偏好编码器和元网络,所述偏好编码器用于计算所述用户对应的偏好向量,所述元网络用于生成所述用户对应的向量映射函数。
[0109]
在本技术的一些实施例中,基于前述方案,所述特征数据处理装置600还包括:第一训练单元,配置为获取样本数据,所述样本数据包括用户样本在所述源领域中交互过的对象样本的对象特征向量、所述用户样本在所述源领域中的用户特征向量、所述用户样本在所述目标领域中交互过的对象样本所对应的对象特征向量、所述用户样本在所述目标领域中的评分矩阵,所述用户样本是同时处于所述源领域和所述目标领域中的用户;基于所述样本数据对所述机器学习模型进行训练,以使所述机器学习模型的损失函数最小。
[0110]
在本技术的一些实施例中,基于前述方案,所述第一训练单元配置为:计算所述用户样本在所述目标领域中交互过的各个对象样本所对应的对象特征向量与所述机器学习模型映射得到的用户特征向量之间的乘积,所述映射得到的用户特征向量是将所述用户样本在所述源领域中的用户特征向量映射到所述目标领域中得到的;计算所述乘积与所述评分矩阵中对应的评分值之间的差值,得到所述各个对象样本对应的损失值;基于所述各个对象样本对应的损失值,生成所述损失函数。
[0111]
在本技术的一些实施例中,基于前述方案,所述第一训练单元配置为:计算所述各个对象样本对应的损失值的绝对值之和,根据所述绝对值之和生成所述损失函数;或者计算所述各个对象样本对应的损失值的平方和,根据所述平方和生成所述损失函数。
[0112]
在本技术的一些实施例中,基于前述方案,所述特征数据处理装置600还包括:推荐单元,配置为基于所述用户在所述目标领域中的用户特征向量,向所述用户推荐所述目标领域中的内容。
[0113]
在本技术的一些实施例中,基于前述方案,所述推荐单元还配置为:收集所述用户针对所述目标领域中的交互对象的行为数据;基于所述行为数据调整向所述用户推荐的所述目标领域中的内容。
[0114]
在本技术的一些实施例中,基于前述方案,所述推荐单元配置为基于所述行为数据,通过所述目标领域对应的推荐模型向所述用户推荐的所述目标领域中的内容;
[0115]
所述特征数据处理装置600还包括:第二训练单元,配置为获取所述目标领域中的用户集合、所述目标领域中的对象集合,以及所述目标领域中的用户集合在所述目标领域中的评分矩阵;基于所述目标领域中的用户集合、所述目标领域中的对象集合,以及所述目标领域中的用户集合在所述目标领域中的评分矩阵,训练网络模型得到所述目标领域对应的推荐模型。
[0116]
在本技术的一些实施例中,基于前述方案,所述特征数据处理装置600还包括:第三训练单元,配置为获取所述源领域中的用户集合、所述源领域中的对象集合,以及所述源领域中的用户集合在所述源领域中的评分矩阵;基于所述源领域中的用户集合、所述源领域中的对象集合,以及所述源领域中的用户集合在所述源领域中的评分矩阵,训练网络模型得到所述源领域对应的推荐模型,以基于所述源领域对应的推荐模型获取所述用户在所述源领域中交互过的各个对象的对象特征向量。
[0117]
图7示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
[0118]
需要说明的是,图7示出的电子设备的计算机系统700仅是一个示例,不应对本申
请实施例的功能和使用范围带来任何限制。
[0119]
如图7所示,计算机系统700包括中央处理单元(central processing unit,cpu)701,其可以根据存储在只读存储器(read-only memory,rom)702中的程序或者从存储部分708加载到随机访问存储器(random access memory,ram)703中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 703中,还存储有系统操作所需的各种程序和数据。cpu 701、rom 702以及ram 703通过总线704彼此相连。输入/输出(input/output,i/o)接口705也连接至总线704。
[0120]
以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
[0121]
特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(cpu)701执行时,执行本技术的系统中限定的各种功能。
[0122]
需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0123]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于
实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0124]
描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0125]
作为另一方面,本技术还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
[0126]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0127]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
[0128]
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
[0129]
应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。