一种用于商品推荐的知识图谱处理方法及装置与流程

文档序号:17940046发布日期:2019-06-18 22:59阅读:212来源:国知局
一种用于商品推荐的知识图谱处理方法及装置与流程

本发明涉及互联网技术领域,尤其涉及一种用于商品推荐的知识图谱处理方法及装置。



背景技术:

知识图谱作为一种实体或概念以及实体/概念之间关系表示方法,在搜索、自然语言处理、问答等领域有较多的应用,在零售或电子商务领域的应用尚处于起步阶段。当前电子商务领域,知识图谱相关技术主要集中于如何提取商品/用户标签,通过新提取的标签特征直接应用于搜索或推荐领域。

在电商领域中,由于需要处理海量且实时变化的数据,因此目前业内主要研究的是通过如何训练知识图谱的标签,或者是如何从图片、网页等数据源中提取标签。而标签提取之后的处理方案则鲜有研究,各标签之间的关联关系通常是人工维护的。而受限于人力成本和数据量,还没有系统性的关于商品/用户系统的量化表示方案,也难以实现服务于零售关系的关系抽取。

使得知识图谱技术在电商零售领域的发展缓慢,使用范围不大。



技术实现要素:

本发明的实施例提供一种用于商品推荐的知识图谱处理方法及装置,能够构建商品与用户之间的知识图谱。

为达到上述目的,本发明的实施例采用如下技术方案:

利用用户画像信息进行one-hot编码得到初始用户向量,利用商品属性信息进行one-hot编码得到初始商品向量;

根据所述初始用户向量和所述初始商品向量,对第一神经网络模型进行训练学习,并得到所述第一神经网络模型计算结果中的隐藏层的向量结果,作为用户的向量表示和商品的向量表示;

计算所述用户的向量表示与所述商品的向量表示之间的距离,将计算得到的距离作为相似度;

利用所述初始用户向量表示和所述初始商品向量表示,构建第二神经网络模型,将所述第二神经网络模型的计算结果中的隐藏层的向量结果,作为商品的邻域向量表示;

根据所得到的邻域向量表示,计算各个商品之间的相关度;

利用所述用户的向量、所述商品的向量、所得到的相似度和相关度,构建所述用户与商品之间的知识图谱。

本实施例中,针对当前商品/用户知识的量化表示问题,本实施例中提出了一种通过构建神经网络,训练表示向量的方法。具体根据商品/用户标签构成的零售知识库,基于神经网络方法获取商品/用户知识表示,通过机器学习方法或简单距离计算提取商品/用户知识形似相关关系,利用提取的关系与标签构建一种零售领域的商品与用户知识图谱。从而实现了对零售知识进行量化表示,基于量化表示抽取相似相关关系,进而构建出一种商品与用户知识图谱。

通过利用训练的连续向量,可以进一步进行计算或利用机器学习提取相似相关关系,进而构建一种零售领域的商品\用户知识图谱。通过这种知识图谱,可以提升零售领域许多机器学习应用的效率和精度,如解决商品推荐技术领域的冷启动问题,提升广告投放的精准度等。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的系统架构示意图;

图2a为本发明实施例提供的方法流程示意图;

图2b为本发明实施例提供的知识图谱构建逻辑的实例示意图;

图3是本发明实施例提供的一种训练商品/用户标签知识向量的模型示意图;

图4是本发明实施例提供的一种训练商品/用户邻域向量的模型示意图;

图5为本发明实施例提供的装置结构示意图。

具体实施方式

为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。下文中将详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其它特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其它元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

本实施例中的方法流程,具体可以在一种如图1所示的系统上执行,该系统包括:后台服务器和数据库。

后台服务器通过访问数据库获取商品画像标签和用户画像信息。本实施例中所揭示的后台服务器,具体可以是服务器、工作站、超级计算机等设备,或者是由多个服务器组成的一种用于数据处理的服务器集群系统。

数据库对接商品库、商品交易平台和零售商系统等业务系统,比如可以从商品库中获取商品画像标签,从商品交易平台或者零售商系统内部获取用户画像信息。本实施例中所揭示的数据库,具体可以是一种图数据库,如neo4j、orientdb等,也可以是关系型数据库,如mysql、oracle、db2等,具体可以是包括存储设备的数据服务器以及与数据服务器相连的存储设备,或者是由多个数据服务器和存储服务器组成的一种用于数据库的服务器集群系统。

本发明实施例提供一种用于商品推荐的知识图谱处理方法,如图2a所示,包括:

s101、利用用户画像信息进行one-hot编码得到初始用户向量,利用商品属性信息进行one-hot编码得到初始商品向量。

其中,用户画像信息至少包括了:用户属性信息、用户行为信息和商品偏好等业内通常理解的用于描述用户画像的信息。所述商品属性信息至少包括了:商品的功能参数、产地和适合人群等业内通常理解的用于描述商品属性的信息。

分别对用户画像信息和商品属性信息进行one-hot编码,形成表示为(x1,x2,……,xn)之类的结构的高维向量,利用用户画像信息得到的高维向量作为初始用户向量,利用商品属性信息得到的高维向量作为初始商品向量。

s102、根据所述初始用户向量和所述初始商品向量,对第一神经网络模型进行训练学习,并得到所述第一神经网络模型计算结果中的隐藏层的向量结果,作为用户的向量表示和商品的向量表示。

在本实施例中,需要利用第一神经网络模型和第二神经网络模型,其中,第一神经网络模型的作用在于,对初始用户向量和初始商品向量进行学习,得到标签向量(具体表现为向量化编码的形式),标签向量首先由于计算商品/用户之间的标签向量距离,作为相似关系。

具体的,第一神经网络模型的形式可以多样的,如图3所示的一种模型形式,模型层数可以增加,形式也可以改变。这里模型训练后的向量(h1,h2,……,hn)最为商品/用户的向量表示,一般情况下,m远小于n。本实施例中,第一神经网络模型主要用于对向量降维,大部分的神经网络模型都能适用,可以依据具体的应用场景选用目前已有的神经网络模型作为第一神经网络模型。

第二神经网络模型,则是利用所述初始用户向量和所述初始商品向量进行构建的,第二神经网络模型用于对标签向量进行学习,得到领域向量(也是表现为向量化编码的形式)。关于领域向量的模型训练方法,神经网络的形式可以是循环神经网,如简单的rnn、bi-rnn、lstm、gru等。本实施例中,第二神经网络模型用于相似度计算,主要采用rnn(recurrentneuralnetworks,循环神经网络)作为第二神经网络模型。

不论是第一神经网络模型还是第二神经网络模型,每种神经网络模型中的初始用户向量和初始商品向量需要一起输入模型进行计算。

用户的向量表示,是以初始用户向量通过第一神经网络模型得到计算结果,计算结果中的隐藏层的向量结果即作为用户的向量表示。商品的向量表示,是以初始商品向量通过第一神经网络模型得到计算结果,计算结果中的隐藏层的向量结果即作为商品的向量表示。

s103、计算所述用户的向量表示与所述商品的向量表示之间的距离,将计算得到的距离作为相似度。

本实施例中,用户与商品之间的向量相似性计算,可以采用不同的距离定义,如欧式距离、夹角余弦、切比雪夫距离等,形式可以不同,只要能够量化对象间的相似程度,形成相似关系即可。

s104、利用所述初始用户向量和所述初始商品向量,构建第二神经网络模型,将所述第二神经网络模型的计算结果中的隐藏层的向量结果,作为商品的邻域向量表示。

s105、根据所得到的邻域向量表示,计算各个商品之间的相关度。

s106、利用所述用户的向量表示、所述商品的向量表示、所得到的相似度和相关度,构建所述用户与商品之间的知识图谱。

在本实施例中,如图2b所示的,以商品/用户作为实体,商品/用户具体表现为标签向量形式,如所述初始用户向量/所述初始商品向量,或者,所述用户的向量表示/所述商品的向量表示。并以所获取的s103中所获取的相似度和s105中所获取的相关度作为相似相关关系构建一种零售领域的商品/用户知识图谱。

知识图谱是人工智能的一个分支,研究对象的量化表示是人工智能的基础。在零售领域,当前的技术只是知识图谱领域的一个标签提取方法,还没有系统性的关于商品/用户系统的量化表示方法,以及服务于零售关系的关系抽取方法。而本实施例的方案目的在于如何表达标签,尤其是如何关联、形成拓扑,得到相似性和相关性,即如何训练标签之间的关系。

本实施例中,针对当前商品/用户知识的量化表示问题,本实施例中提出了一种通过构建神经网络,训练表示向量的方法。具体根据商品/用户标签构成的零售知识库,基于神经网络方法获取商品/用户知识表示,通过机器学习方法或简单距离计算提取商品/用户知识形似相关关系,利用提取的关系与标签构建一种零售领域的商品与用户知识图谱。从而实现了对零售知识进行量化表示,基于量化表示抽取相似相关关系,进而构建出一种商品与用户知识图谱。

本实施例中,通过利用训练的连续向量,可以进一步进行计算或利用机器学习提取相似相关关系,进而构建一种零售领域的商品\用户知识图谱。通过这种知识图谱,可以提升零售领域许多机器学习应用的效率和精度,如解决商品推荐技术领域的冷启动问题,提升广告投放的精准度等。

具体的,步骤s101中所述利用用户画像信息进行one-hot编码得到初始用户向量,包括:

获取所述用户画像信息,中提取用户特征标签,所述用户特征标签对应所述用户画像信息中的内容。

利用所述用户特征标签构建用户标签字典,并进行one-hot编码,将编码得到的高维初始向量作为所述初始用户向量。

获取或构建商品与用户相关知识标签或用户画像,制作特征字典,进行one-hot编码。具体可以从商品交易平台或者零售商系统内部获取用户属性、行为、商品偏好等用户画像信息,从商品库中获取商品画像标签,如功能参数、适合人群、保质期等。并进一步针对用户,获取或构建用户属性、用户行为,构建长短期需求偏好、用户画像等,对特征进行分类整合,然后进行编码,形成初始用户向量。然后对标签分类、去重、消歧,构建标签字典,最后进行one-hot编码,形成(x1,x2,……,xn)高维初始向量。

具体的,步骤s101中所述利用商品属性信息进行one-hot编码得到初始商品向量,包括:

获取所述商品属性信息,中提取商品特征标签,所述商品特征标签对应商品的用户特征和用户群体定位。

利用所述商品特征标签构建商品标签字典,并进行one-hot编码,将编码得到的高维初始向量作为所述初始商品向量。

获取或构建商品与用户相关知识标签或用户画像,制作特征字典,进行one-hot编码。具体可以从商品交易平台或者零售商系统内部获取用户属性、行为、商品偏好等用户画像信息,从商品库中获取商品画像标签,如功能参数、适合人群、保质期等。并进一步针对商品,获取商品功能参数、产地、保质期等属性标签,通过聚类或关键词提取等方法提取产品的用户特征、用户群体定位等特征,对特征进行分类整合,然后编码,形成初始商品向量。然后对标签分类、去重、消歧,构建标签字典,最后进行one-hot编码,形成(x1,x2,……,xn)高维初始向量。

具体的,步骤s104中构建第二神经网络模型,包括:

将所述初始商品向量,或者将所述商品的向量表示输入所述第二神经网络模型进行训练,其中,所述第二神经网络模型为循环神经网络模型。

所述第二神经网络模型的前向迭代的过程包括:st=f(u*xt+w*st-1)其中,xt表示t时刻邻域商品向量,ot表示t时刻的输出商品向量,st表示t时刻的记忆,f表示神经网络激活函数。

本实施例中,关于领域向量的模型训练方法,神经网络的形式可以是循环神经网,如简单的rnn、bi-rnn、lstm、gru等。如图4所示的模型举例,这里模型输入向量x,可以是初始用户向量和初始商品向量;在模型迭代的过程中,输入向量x也可以是用户的向量表示和商品的向量表示。中间是一个可以重复使用的网络单元。如果用xt表示t时刻某个邻域商品向量,ot表示t时刻的输出商品向量,st表示t时刻的记忆,f表示神经网络激活函数,则模型前向迭代公式可以表示为:st=f(u*xt+w*st-1)

其中的激活函数f可以选取relu,softmax等,输出为:ot=softmax(v*st)

以softmax为例,其定义为:

具体的,步骤s104中,所述将所述第二神经网络模型的计算结果中的隐藏层的向量结果,作为商品的邻域向量表示,包括:

利用商品/用户向量表示,构建神经网络,以最终购买的某一商品编码作为模型的标签变量,以同时购买该商品的其它商品编码作为模型的输入变量,进行模型训练,得到最后的隐藏层向量,作为该标签商品的邻域向量表示。例如:

以第x商品的编码作为所述第二神经网络模型的标签变量。训练所述第二神经网络模型,得到所述第二神经网络模型计算结果中的隐藏层的向量结果,作为所述第x商品的邻域向量表示,其中,所述其它商品为购买了所述第x商品的用户同时购买的商品,1≤x≤n,n为大于1的正整数。

具体的,步骤s105中,所述根据所得到的邻域向量表示,计算各个商品之间的相关度的具体方式,可以包括:根据所述第x商品的邻域向量表示,计算所述第x商品以外的商品与所述第x商品之间的相关度。

本实施例中,将初始向量转换为相应的向量表示,通过第一神经网络模型得到的向量表示,实际上即是对于海量的标签数据进行的降维标识,并利用向量表示进一步处理分析出相关性和关联性,实现了以较小的维度浓缩了大量商品/用户的属性与标签,即实现了降维分析相关性,而且能够体现出对象间相近关系。通过这种量可以直接计算对象的距离,得到对象间的相似关系,进一步,可以通过模型训练得到对象的相关关系。

相关性和相似性这两种关系作为零售领域的重要关系,是推荐、广告等应用的基础。比如,商品推荐方面,可以实现推荐功能的冷启动问题,而且在准确性上相比传统方法也有较大的提高。利用这些关系构建知识图谱,以图数据库的形式服务应用,可以实现系统的毫秒级响应,从而大幅提高业务系统的运行效率。

本实施例中,还提供一种用于商品推荐的知识图谱处理装置,如图5所示的,包括:

编码模块,用于利用用户画像信息进行one-hot编码得到初始用户向量,利用商品属性信息进行one-hot编码得到初始商品向量。

第一处理模块,用于根据所述初始用户向量和所述初始商品向量,对第一神经网络模型进行训练学习,并得到所述第一神经网络模型计算结果中的隐藏层的向量结果,作为用户的向量表示和商品的向量表示。

相似度计算模块,用于计算所述用户的向量表示与所述商品的向量表示之间的距离,将计算得到的距离作为相似度。

第二处理模块,用于利用所述初始用户向量表示和所述初始商品向量表示,构建第二神经网络模型,将所述第二神经网络模型的计算结果中的隐藏层的向量结果,作为商品的邻域向量表示。

相关度计算模块,用于根据所得到的邻域向量表示,计算各个商品之间的相关度。

图谱构建模块,用于利用所述用户的向量、所述商品的向量、所得到的相似度和相关度,构建所述用户与商品之间的知识图谱。

其中,所述编码模块,具体用于获取所述用户画像信息,中提取用户特征标签,其中,所述用户画像信息至少包括了:用户属性信息、用户行为信息和商品偏好,所述用户特征标签对应所述用户画像信息中的内容。利用所述用户特征标签构建用户标签字典,并进行one-hot编码,将编码得到的高维初始向量作为所述初始用户向量。

所述编码模块,具体还用于:获取所述商品属性信息,中提取商品特征标签,其中,所述商品属性信息至少包括了:商品的功能参数、产地和适合人群,所述商品特征标签对应商品的用户特征和用户群体定位。利用所述商品特征标签构建商品标签字典,并进行one-hot编码,将编码得到的高维初始向量作为所述初始商品向量。

所述第二处理模块,具体用于将所述初始商品向量,或者将所述商品的向量表示输入所述第二神经网络模型进行训练,其中,所述第二神经网络模型为循环神经网络模型。所述第二神经网络模型的前向迭代的过程包括:st=f(u*xt+w*st-1),其中,xt表示t时刻邻域商品向量,ot表示t时刻的输出商品向量,st表示t时刻的记忆,f表示神经网络激活函数。

所述第二处理模块,具体用于以第x商品的编码作为所述第二神经网络模型的标签变量。训练所述第二神经网络模型,得到所述第二神经网络模型计算结果中的隐藏层的向量结果,作为所述第x商品的邻域向量表示,其中,所述其它商品为购买了所述第x商品的用户同时购买的商品,1≤x≤n,n为大于1的正整数。

所述相关度计算模块,具体用于根据所述第x商品的邻域向量表示,计算所述第x商品以外的商品与所述第x商品之间的相关度。

本实施例中,针对当前商品/用户知识的量化表示问题,本实施例中提出了一种通过构建神经网络,训练表示向量的方法。具体根据商品/用户标签构成的零售知识库,基于神经网络方法获取商品/用户知识表示,通过机器学习方法或简单距离计算提取商品/用户知识形似相关关系,利用提取的关系与标签构建一种零售领域的商品与用户知识图谱。从而实现了对零售知识进行量化表示,基于量化表示抽取相似相关关系,进而构建出一种商品与用户知识图谱。

本实施例中,通过利用训练的连续向量,可以进一步进行计算或利用机器学习提取相似相关关系,进而构建一种零售领域的商品\用户知识图谱。通过这种知识图谱,可以提升零售领域许多机器学习应用的效率和精度,如解决商品推荐技术领域的冷启动问题,提升广告投放的精准度等。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1