首页> 中国专利> 基于图神经网络预测用户评级的方法和装置

基于图神经网络预测用户评级的方法和装置

摘要

本申请公开了人工智能领域中基于图神经网络预测用户评级的方法和装置。本申请提供的技术方案中,根据用户购买商品的历史记录和用户对商品的用户评论中的商品特征构建用户‑商品‑商品特征三部图;根据构建的三部图,使用神经网络学习用户、商品和商品特征的表征信息,其中,用户的表征信息由相邻商品特征的表征信息和相邻商品的表征信息学习而来,商品的表征信息由相邻商品特征的表征信息和相邻用户的表征信息学习而来,商品特征的表征信息由相邻用户和相邻商品的表征信息学习而来;学习到的用户表征信息、商品表征信息和商品特征表征信息通过神经网络预测生成用户对商品的评级信息。本申请提供的技术方案,可以提高用户评级的准确度。

著录项

  • 公开/公告号CN112488355A

    专利类型发明专利

  • 公开/公告日2021-03-12

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN202011176586.9

  • 发明设计人 赵煜;杨斯雯;许强;李维;何彦杉;

    申请日2020-10-28

  • 分类号G06Q10/04(20120101);G06N3/08(20060101);G06N3/04(20060101);G06Q10/06(20120101);G06Q30/02(20120101);

  • 代理机构11205 北京同立钧成知识产权代理有限公司;

  • 代理人陈洪艳;刘芳

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-06-19 10:11:51

说明书

技术领域

本申请涉及人工智能领域,特别涉及一种基于图神经网络预测用户评级的方法和装置。

背景技术

人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。

目前,AI已经广泛应用于生活中的各个领域,例如,AI可以应用于电子商务网站的用户评级预测。随着网络的普及,用户经常在线上做各种活动,例如在电子商务网站上购买产品和预定餐厅。通常,用户在进行线上活动时,会从大量相似的商品中选择喜欢的商品。为了减轻用户挑选商品的认知负担,推荐系统的作用至关重要。推荐系统可以通过用户历史的购买习惯来预测用户对商品的用户评级,以此来向用户推荐商品。

需要预测用户u对商品i的用户评级时,可以通过深度学习网络分别从用户u所写的用户评论中和商品i收到的用户评论中学习出用户u的表征信息和商品i的表征信息,并将学习出的用户u的代表性嵌入向量和商品i的代表性嵌入向量相结合,最后基于结合得到的代表性嵌入相邻预测用户u对商品i的用户评级。

但是,使用上述技术预测用户对商品的评级时,经常会出现预测不准确的问题。例如,用户对网站推荐的商品满意度不高。

发明内容

本申请提供了基于图神经网络预测用户评级的方法和相关装置,可以提高用户评级的准确度。

第一方面,本申请提供一种基于神经网络预测用户评级的方法。所述方法包括:使用神经网络基于多个用户中每个用户的相邻商品特征的表征信息、所述每个用户的相邻商品的表征信息、多个商品中每个商品的相邻商品特征的表征信息、所述每个商品的相邻用户的表征信息、所述每个用户的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息、所述每个商品的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息,生成目标表征信息,所述目标表征信息包括待评级用户的表征信息、待评级商品的表征信息、所述待评级商品的相邻商品特征的表征信息和所述待评级用户的相邻商品特征的表征信息;使用所述神经网络基于所述目标表征信息,获得第一评级信息,所述第一评级信息表示所述待评级用户对所述待评级商品的用户评级;其中,所述多个用户包括三部图中通过商品节点和/或商品特征节点连接的多个用户节点所对应的多个用户,所述每个用户的相邻商品特征包括所述三部图中与所述每个用户对应的用户节点相连的商品特征节点所对应的商品特征,所述每个用户的相邻商品包括所述三部图中与所述每个用户对应的用户节点相连的商品节点所对应的商品,所述多个商品包括所述三部图中通过用户节点和/或商品特征节点连接的多个商品节点所对应的多个商品,所述每个商品的相邻商品特征包括所述三部图中与所述每个商品对应的商品节点相连的商品特征节点所对应的商品特征,所述每个商品的相邻用户包括所述三部图中与所述每个商品对应的商品节点相连的用户节点所对应的用户;所述三部图包括M

本方法中,根据用户购买商品的历史记录和用户对商品的用户评论中的商品特征构建用户-商品-商品特征三部图;根据构建的三部图,使用神经网络学习用户、商品和商品特征的表征信息,其中,用户的表征信息由相邻商品特征的表征信息和相邻商品的表征信息学习而来,商品的表征信息由相邻商品特征的表征信息和相邻用户的表征信息学习而来,商品特征的表征信息由相邻用户和相邻商品的表征信息学习而来;学习到的用户表征信息、商品表征信息和商品特征表征信息通过神经网络预测生成用户对商品的评级信息。本申请提供的技术方案,可以提高用户评级的准确度。

结合第一方面,在第一种可能的实现方式中,所述神经网络为图神经网络,初始化所述每个用户的表征信息、所述每个商品的表征信息和所述每个用户的每个相邻商品特征的表征信息和所述每个商品的每个相邻商品特征的表征信息。

相应地,所述使用神经网络基于多个用户中每个用户的相邻商品特征的表征信息、所述每个用户的相邻商品的表征信息、多个商品中每个商品的相邻商品特征的表征信息、和所述每个商品的相邻用户的表征信息、所述每个用户的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息、所述每个商品的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息,生成目标表征信息,包括:步骤一,使用所述图神经网络的嵌入更新层,基于所述每个用户的表征信息、所述每个用户的相邻商品特征的表征信息和所述每个用户的相邻商品的表征信息,更新所述每个用户的表征信息;步骤二,使用所述图神经网络的嵌入更新层,基于所述每个商品的表征信息、所述每个商品的相邻用户的表征信息和所述每个商品的相邻商品特征的表征信息,更新所述每个商品的表征信息;步骤三,使用所述图神经网络的嵌入更新层,基于所述多个商品特征中每个商品特征的表征信息、所述每个商品特征的第一相邻商品的表征信息和所述每个商品特征的第一相邻用户的表征信息,更新所述每个商品特征的表征信息。

该实现方式中,使用图神经网络的嵌入更新层更新每个用户的表征信息、每个商品的表征信息和每个商品特征的表征信息,执行一次嵌入更新可以更新三部图中所有节点的表征信息,提高了学习效率。

结合第一种可能的实现方式,在第二种可能的实现方式中,所述图神经网络包括L层嵌入更新层,L等于所述待评级用户与所述多个用户中的第一用户之间的连接关系长度,所述待评级用户与所述第一用户之间的连接关系长度大于所述待评级用户与其他用户之间的连接关系长度,所述待评级用户与所述多个用户中每个用户之间的连接关系长度是指三部图中所述待评级用户对应的用户节点至所述每个用户对应的用户节点的最短路径上包含的商品节点、商品特征节点和用户节点的数量减去1,L为正整数。

该实现方式中,将待评级用户与距离最远的用户节点之间的最短路径上包含的所有节点的数量作为图神经网络中嵌入更新层的层数,使得待评级用户对应的用户节点可以学习到三部图中所有与待评级用户对应的用户节点有连接关系的节点的表征信息,提高了待评级用户的表征信息的准确度,进而提高了预测评级的准确度。

结合第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述使用所述图神经网络的嵌入更新层,基于所述每个用户的表征信息、所述每个用户的相邻商品特征的表征信息和所述每个用户的相邻商品的表征信息,更新所述每个用户的表征信息,包括:使用所述嵌入更新层中的注意力网络基于所述每个用户的n

该实现方式中,使用注意力网络作为聚合函数来聚合每个用户的相邻商品特征的表征信息,可以得到用户的每个相邻商品特征的注意力值,即每个相邻商品特征对用户的重要性,提高了每个用户的相邻商品特征的表征信息的准确度。

结合上述任意一种可能的实现方式,在第四种可能的实现方式中,所述使用所述图神经网络的嵌入更新层,基于所述每个商品的表征信息、所述每个商品的相邻用户的表征信息和所述每个商品的相邻商品特征的表征信息,更新所述每个商品的表征信息,包括:使用所述嵌入更新层中的注意力网络基于所述每个商品的n

该实现方式中,使用注意力网络作为聚合函数来聚合每个商品的相邻商品特征的表征信息,可以得到商品的每个相邻商品特征的注意力值,即每个相邻商品特征在商品中所观察到的质量,提高了每个商品的相邻商品特征的表征信息的准确度。

结合上述任意一种可能的实现方式,在第五种可能的实现方式中,所述第一相邻用户为所述待评级用户,所述第一相邻商品为所述待评级商品。

结合第一方面或上述任意一种可能的实现方式,在第六种可能的实现方式中,所述使用所述神经网络基于所述目标表征信息,获得第一评级信息,包括:使用所述神经网络对所目标表征信息进行合并,得到合并信息;使用所述神经网络基于所述合并信息预测得到所述第一评级信息。

该实现方式中,使用神经网络对得到的多个商品特征的表征信息进行合并,得到一个商品特征的合并表征信息,并基于待评级用户的表征信息、待评级商品的表征信息和商品特征的合并表征信息得到待评级用户对待评级商品的预测用户评级,提高了预测用户评级的准确度。

结合第一方面或上述任意一种可能的实现方式,在第七种可能的实现方式中,基于所述第一评级信息和所述待评级用户对所述待评级商品的真实评级信息,对所述神经网络进行训练。

该实现方式中,根据待评级用户对待评级商品的预测用户评级和真实预测评级对神经网络模型进行训练,使得该神经网络模型对用户评级的预测更加精确。

第二方面,本申请提供一种基于神经网络预测用户评级的装置,该装置可以包括用于实现第一方面中的方法的一个或多个功能模块,每个功能模块可以通过软件和/或硬件的方式实现。例如,该装置可以包括处理模块和评级模块。

第三方面,本申请提供一种基于神经网络预测用户评级的装置。该装置可以包括与存储器耦合的处理器。其中,该存储器用于存储程序代码,该处理器用于执行该存储器中的程序代码,以实现第一方面或其中任意一种实现方式中的方法。

可选地,该装置还可以包括该存储器。

第四方面,本申请提供一种芯片,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述至少一个处理器用于运行计算机程序或指令,以执行如第一方面或其中任意一种可能的实现方式所述的方法。

第五方面,本申请提供一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如第一方面或其中任意一种可能的实现方式所述的方法。

第六方面,本申请提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行如第一方面或其中任意一种可能的实现方式所述的方法。

第七方面,本申请提供一种计算设备,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述通信接口与目标系统通信,所述至少一个处理器用于运行计算机程序或指令,以执行如第一方面或其中任意一种可能的实现方式所述的方法。

第八方面,本申请提供一种计算系统,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述通信接口与目标系统通信,所述至少一个处理器用于运行计算机程序或指令,以执行如第一方面或其中任意一种可能的实现方式所述的方法。

附图说明

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

图1为本申请实施例提供的一种三部图的示意图;

图2为本申请的实施例的一种应用场景的示意图;

图3为本申请一个实施例的用于预测用户评级的神经网络的训练方法的流程示意图;

图4为本申请的一个用于预测用户评级的图神经网络的训练方法的流程示意图;

图5为本申请提供的图神经网络模型和8个基线模型的排序结果示意图;

图6为本申请提供的用户网络中商品特征的注意力分布示意图;

图7为本申请提供的商品网络中商品特征的注意力分布示意图;

图8为本申请一个实施例的基于神经网络预测用户评级的方法的示意性流程图;

图9为本申请一个实施例的系统架构示意图;

图10为本申请一个实施例的基于神经网络预测用户评级的装置的示意性结构图;

图11为本申请另一个实施例的基于神经网络预测用户评级的装置的示意性结构图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

为了便于理解,首先对本申请实施例所涉及的一些概念进行说明。

电子商务网站:是指以网络电子的形式向用户售卖商品的网站。可以应用本申请实施例的技术方案的电子商务网站通常满足以下几点要求:1、有用户对购买或者使用过的商品的用户评级,表明用户对该产品的喜好程度;2、有用户对购买或者使用商品的用户评论。

用户评论:是指用户用自然语言的方式描述用户对商品的感受,以解释给出的用户评级。

用户评级:是指用户在电子商务网站购买或使用商品后为该商品打的分数。用户评级代表用户对商品的喜爱程度,用户评级越高表示该用户越喜爱该商品。例如,在某一电子商务网站中,用户可以给商品打1-5分的用户评级,1分代表用户不喜欢该商品,5分代表用户喜欢该商品。用户评级通常伴有用户评论,以解释所给出的用户评级的原因。

商品特征:是指出现在用户评论中,以名词或者名词短语的形式,描述一个商品的显著特征。例如,商品特征可以为价格、服务、味道和清洁度等。

商品特征提取:是指从用户评论中提取出商品的显著特征。具体地,给定用户评论作为输入,输出为名词或者名词短语描述的商品特征,比如输出“价格”和“服务”。商品特征提取可以有多种方法,包括人工手动提取和非监督的机器学习方法提取。目前,本领域技术人员已经提出了多种非监督的机器学习方法来提取商品特征。

在一种提取商品特征的方法中,假设在用户评论中,每一个商品特征都有相对应的情感表达,并且,商品特征和情感表达由特定的语法呈现。例如,“服务也很热情”,“服务”为商品特征,“热情”为与之对应的情感表达,“热情”是直接修饰“服务”的。该方法中,先人工创建情感表达单词库,例如“热情,不错,便宜,周到”;再由创建的单词库和指定的语法,找出单词库中情感表达所对应的商品特征;再由找到的商品特征和指定的语法找出新的情感表达,并更新单词库;不断迭代找到新的商品特征和情感表达,直到商品特征和情感表达饱和。

嵌入向量:是指将事物(比如用户,商品和商品特征)映射到一个实数向量用来表征该事物的属性。嵌入向量被广泛应用在机器学习中做预测推理,例如,可以通过用户u的用户嵌入向量和商品i的商品嵌入向量预测用户u对商品i的用户评级。嵌入向量是在模型训练过程中不断优化和学习得来的。如果两个事物的属性相似,所学习到的对应的嵌入向量会有高的相似度。

三部图:是指表示用户与该用户的相邻商品之间、用户与该用户的相邻商品特征之间、商品与该商品的相邻用户之间、商品与该商品的相邻用户特征之间、商品特征与该商品特征的相邻用户之间和商品特征与该商品特征的相邻商品之间的交互关系的示意图。

例如,一个三部图可以包括M

M

M

M

三部图中包含了以下三种交互关系:1)用户与商品的交互关系,基于该关系可获知用户的相邻商品和商品的相邻用户;2)商品与商品特征的交互关系,基于该关系可以获知商品的相邻商品特征和商品特征的相邻商品;3)用户-商品特征的交互关系,基于该关系可以获知用户的相邻商品特征和商品特征的相邻用户。

商品的相邻用户:是指购买过和/或评论过该商品的用户。例如,商品i的相邻用户包括购买过和/或评论过商品i的用户。

商品的相邻商品特征:是指评论过该商品的商品特征。例如,商品i的相邻商品特征包括评论过商品i的商品特征。

用户的相邻商品:是指被该用户购买过和/或评论过的商品。例如,用户u的相邻商品包括用户u购买过和/评论过的商品。

用户的相邻商品特征:是指被该用户评论过的商品特征。例如,用户u的相邻商品特征包括用户u评论过的商品特征。

商品特征的相邻用户:是指评论过该商品特征的用户。例如,商品特征a的相邻用户包括评论过商品特征a的用户。

商品特征的相邻商品:是指被该商品特征评论过的商品。例如,商品特征a的相邻商品包括被商品特征a评论过的商品。

其中,M

连接关系长度:是指三部图中任意一个节点至除该节点外的任意一个节点的最短路径上包含的所有节点的数量。例如,用户u

为了便于理解三部图、相邻用户、相邻商品、相邻商品特征和连接关系长度等概念,下面以图1所示的三部图为例进行介绍。

如图1所示,商品1为用户1的相邻商品,商品特征1为用户1的相邻商品特征,用户2为商品1的相邻用户,商品特征2为商品1和用户3的相邻商品特征,用户3为商品1和商品特征1的相邻用户,商品2为商品特征1和用户3的相邻商品。用户1与用户2的连接关系长度为2。

图神经网络:是指包含多个嵌入更新层(embedding updating layer)和一个预测层(prediction layer)的神经网络。

通常,一个嵌入更新层执行两个操作来更新一个三部图中一个节点的嵌入向量。这两个操作可以包括聚合(aggregate)和合并(combine)。

聚合(aggregate)操作使用聚合函数聚合当前节点的邻居节点的嵌入向量,以得出邻居节点的聚合嵌入向量。例如在图1中,为了更新用户1的节点的嵌入向量,可以使用聚合操作来聚合商品1的节点和商品特征1的节点的嵌入向量,得到一个聚合的邻居嵌入向量。常用的聚合方法包括均值、最大池,长短期记忆网络(long short-term memory,LSTM)和注意力网络。

合并(combine)操作结合聚合得到的邻居嵌入向量与当前节点的当前嵌入向量,生成当前节点的更新后的嵌入向量。常用的合并包括拼接。

一个嵌入更新层可以同时更新三部图里的所有节点的嵌入向量。图神经网络包含L层嵌入更新层。L的值等于三部图中待评级用户对应的节点与用于更新待评级用户的表征信息所使用的节点之间的最大连接关系长度。在模型应用时,图神经网络的嵌入更新层的层数通常是需要设定好的。作为一种示例,可以根据预测评级的准确率需求来设定嵌入更新层的层数,例如,对预测评级的准确率需求高时,可以测试不同嵌入更新层的层数,选择准确率最高的嵌入更新层层数。或者,也可以根据经验设定嵌入更新层的层数。

例如,假设使用两层嵌入更新层更新用户1节点的嵌入向量。在第一层嵌入更新层,为更新用户1节点的嵌入向量,需聚合商品1节点的嵌入向量和商品特征1节点的嵌入向量,然后合并用户1节点更新前的嵌入向量。同时,为更新商品1节点的嵌入向量,需聚合用户2节点、商品特征2节点和用户3节点的嵌入向量,再合并商品1节点更新前的嵌入向量;在第二层嵌入更新层,商品1节点的嵌入向量由第一层嵌入更新层中得来的商品1节点的嵌入向量和商品特征1的嵌入向量聚合更新得来。由于第一层嵌入更新层中商品1和商品特征1聚合了用户2,商品特特征2,用户3和商品2的嵌入向量,因此,经过两层嵌入更新层,用户1节点的嵌入向量结合了图中商品1节点、商品特征1节点、用户2节点、商品特征2节点、用户3节点和商品2节点的特征。

在经过L层嵌入更新层后,为了得到待评级用户对待评级商品的用户评级的预测,预测层将更新得到的待评级用户嵌入向量,待评级商品嵌入向量和待评级用户和商品的相邻特征的嵌入向量结合,使用神经网络生成用户评级的预测值。

图2为本申请的实施例的一种应用场景的示意图。图2所示的场景是用户使用用户终端201在电子商务网站购物。首先,用户在用户终端201显示的电子商务网站页面中输入商品文本查询信息;用户终端201向电子商务网站服务器202发送该商品文本查询信息;电子商务网站服务器202根据用户的商品文本查询信息与商品信息之间的文本匹配度找出相关商品清单,并预测用户对相关商品清单中的商品的用户评级;电子商务网站服务器202将商品清单中的商品根据预测的用户评级按照从大到小的顺序进行排列,并向用户终端201发送排序后的用户评级;用户终端201向用户展示排序后的用户评级。用户终端包括手机,电脑和平板等。

可以理解的是,图2的场景仅是一种示例,本申请的技术方案还可以应用于其它场景,只要该场景涉及根据用户的历史购买信息向用户推荐商品即可。其中,用户的历史购买信息可以包括:用户购买过的商品、用户对购买过的商品的用户评级和/或用户对购买过的商品的用户评论。例如,本申请的技术方案还可以应用于点评网站,根据用户消费过的餐厅向用户推荐新餐厅等场景。

下面对本申请所示的技术方案进行介绍。可以理解的是,下面几个实施例可以单独实现,也可以相互结合实现,对于相同或相似的内容,在不同的实施例中不再重复说明。

图3为本申请一个实施例的用于预测用户评级的神经网络的训练方法的流程示意图。如图3所示,该方法可以包括S301、S302和S303。

S301,使用神经网络基于多个用户中每个用户的相邻商品特征的表征信息、每个用户的相邻商品的表征信息、多个商品中每个商品的相邻商品特征的表征信息、每个商品的相邻用户的表征信息、每个用户的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息、每个商品的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息,生成目标表征信息,目标表征信息包括待评级用户的表征信息、待评级商品的表征信息、待评级商品的相邻商品特征的表征信息和待评级用户的相邻商品特征的表征信息。这多个用户中包含待评级用户,这多个商品中包含待评级商品。

商品特征的表征信息用于表示该商品特征所具有的特征,例如,商品特征的表征信息可以是该商品特征对应的单词。用户的表征信息用于表示用户的特征,例如,用户的表征信息可以包括该用户购买过的商品和/或该用户评论过的商品特征。商品的表征信息用于表示该商品的特征,例如,商品的表征信息可以包括购买过该商品的用户和/或评论过该商品的商品特征。

作为一种示例,用户的表征信息、商品的表征信息和商品特征的表征信息可以通过嵌入向量表示。在一种可能的实现方式中,基于多个用户中每个用户的相邻商品特征的表征信息、每个用户的相邻商品的表征信息、多个商品中每个商品的相邻商品特征的表征信息和每个商品的相邻用户的表征信息,生成待评级用户的表征信息,可以包括:对待评级用户的全部或部分相邻商品特征的表征信息,以及待评级用户的全部或部分相邻商品的特征进行聚合和/或合并,并将得到的信息当作待评级用户的表征信息。

作为一种示例,用户的表征信息、商品的表征信息和商品特征的表征信息为嵌入式向量时,可以使用注意力网络聚合得到用户的每个相邻商品特征的注意力值,并基于每个相邻商品特征的表征信息和对应的注意力值计算得到用户的相邻商品特征嵌入式向量;以及对用户的商品的表征信息进行聚合,得到用户的相邻商品嵌入式向量;最后对用户的相邻商品特征嵌入式向量、用户的相邻商品嵌入式向量和上一次更新得到的用户嵌入式向量进行合并,得到用户更新后的嵌入式向量。

作为另一种示例,用户的表征信息、商品的表征信息和商品特征的表征信息为嵌入式向量时,可以对待评级用户的相邻商品特征的表征信息进行平均值计算,然后对待评级用户的相邻商品的表征信息和相邻商品特征的平均值计算所得到的信息进行合并,从而得到待评级用户的表征信息。

例如,先对待评级用户的多个相邻商品特征的表征信息进行取平均值计算,得到所有相邻商品特征的共同表征信息,计算公式如下:

其中,

然后可以使用类似计算商品特征的共同表征信息的方法来计算待评级用户的所有相邻商品的共同表征信息;再将待评级用户的相邻商品特征的共同表征信息和待评级用户的相邻商品的共同表征信息拼接在一起,得到待评级用户的表征信息。

在一种可能的实现方式中,基于多个用户中每个用户的相邻商品特征的表征信息、每个用户的相邻商品的表征信息、多个商品中每个商品的相邻商品特征的表征信息、每个商品的相邻用户的表征信息、每个用户的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息、每个商品的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息,生成待评级商品的表征信息,可以包括:对待评级商品的全部或部分相邻商品特征的表征信息,以及待评级商品的全部或部分相邻用户的特征进行聚合/或合并,并将得到的信息当作待评级商品的表征信息。

待评级商品的表征信息的获取方式可以参考待评级用户的表征信息的获取方式,此处不再赘述。

可以理解的是,上述生成待评级用户的表征信息和待评级商品的表征信息的实现方式仅是示例,本申请实施例生成待评级用户的表征信息和待评级商品的表征信息的实现方式并不限于此。

S302,使用该神经网络基于目标表征信息,获得待评级用户对待评级商品的第一评级信息。其中,第一评级信息用于表示或者指示待评级用户对待评级商品的评级。

使用神经网络基于目标表征信息生成待评级用户对待评级商品的第一评级信息时,在一些实现方式中,可以先对目标表征信息中包括的信息(例如待评级用户的表征信息和待评级商品的表征信息)进行合并,得到合并信息,然后将该合并信息输入神经网络的预测层,以得到第一评级信息。

S303,根据第一评级信息和待评级用户对待评级商品的真实评级信息,对该神经网络进行训练。

在一些可能的实现方式中,本实施例中的神经网络可以是图神经网络,用户、商品和商品特征的表征信息均可以是嵌入向量。

下面结合图4介绍用于预测用户评级的图神经网络的训练方法。

如图4所示,本实施例的图神经网络可以包含L个嵌入更新层,每个嵌入更新层包含用户网络、商品网络和商品特征网络,用户网络用于更新用户的嵌入向量,商品网络用于更新商品的嵌入向量,商品特征网络用于更新商品特征的嵌入向量。

S401,初始化每个用户的表征信息、每个商品的表征信息和每个用户的每个相邻商品特征的表征信息和每个商品的每个相邻商品特征的表征信息。

例如,分别为每个用户和每个商品随机分配一个嵌入向量

为了捕获商品特征的语义,可以将商品特征初始化为单词向量。在一种可行的实现方式中,可以对每个用户的用户评论和每个商品的用户评论进行训练,得到每个用户的用户评论中和每个商品的用户评论中每一个单词的单词向量v

每个用户的相邻商品特征和每个商品的相邻商品特征中可能会包含多个单词,例如,“staff service”包含两个单词“staff”和“service”。将每个单词映射到其相对应的单词向量。计算所有单词向量的平均值,得到商品特征a的初始化嵌入向量

为了保持每个用户的每个相邻商品特征和每个商品的每个相邻商品特征的语义,商品特征的初始化嵌入向量

S402,使用图神经网络中的嵌入更新层中的用户网络,基于每个用户的表征信息、每个用户的相邻商品特征的表征信息和每个用户的相邻商品的表征信息,更新每个用户的表征信息。

例如,可以先分别对每个用户的所有相邻商品特征的表征信息进行聚合和该用户的所有相邻商品的表征信息进行聚合,再根据聚合得到的商品特征表征信息和聚合得到的商品表征信息更新该用户的表征信息。

下面先介绍对每个用户的所有相邻商品的表征信息进行聚合的实现方式。

示例性的,针对一个用户和该用户的相邻商品,可以使用如下关系式基于嵌入转换矩阵

其中,σ是线性整流函数(rectified linear unit,ReLU),

对于经过上式转化后的相邻商品的嵌入向量

其中,Aggregate代表聚合函数,N(u)表示每个用户的所有邻居商品节点,

可以理解的是,上述聚合函数可以包括最大值聚合函数、LSTM聚合函数或注意力网络。与使用最大值聚合函数、LSTM聚合函数或注意力网络获取用户的相邻商品的表征信息相比,使用均值聚合函数获取用户的相邻商品的表征信息有助于避免该图神经网络出现过度拟合现象。

下面介绍对该用户的所有相邻商品特征的表征信息进行聚合的实现方式。

首先,可以使用如下关系式基于嵌入转换矩阵

其中,σ是ReLU函数,

对于经过上式转化后的每个相邻商品特征的嵌入向量

其中,Aggregate代表聚合函数,Au表示每个用户的所有相邻商品特征节点,

可以理解的是,上述聚合函数可以包括最大值聚合函数、LSTM聚合函数或注意力网络。与使用最大值聚合函数、LSTM聚合函数或均值聚合函数获取用户的相邻商品的表征信息相比,使用注意力网络作为聚合函数来聚合用户的相邻商品特征的表征信息,能够得到每个相邻商品特征对用户的重要性,使得获得的每个用户的相邻商品特征节点的表征信息更加准确。

下面介绍使用注意力网络作为聚合函数聚合用户的相邻商品特征表征信息的示例性实现方式。

首先,使用缩放点积运算在转换的用户表征信息

第二步,计算商品特征a

第三步,使用得到的商品特征注意力值聚合相邻商品特征,得到聚合的商品特征嵌入向量

其中,

下面介绍根据聚合得到的商品特征表征信息和聚合得到的商品表征信息更新该用户的表征信息的实现方式。

将该用户的相邻商品的表征信息

示例性的,可以通过取平均值、嵌入向量相连或使用神经网络学习参数聚合等方法来合并用户的相邻商品的表征信息

该用户在当前嵌入更新层更新后的表征信息

其中,

采用向量相连法合并合并用户的相邻商品的表征信息

S403,使用图神经网络中的嵌入更新层中的商品网络,基于每个商品的表征信息、每个商品的相邻用户的表征信息和每个商品的相邻商品特征的表征信息,更新每个商品的表征信息。

例如,可以先分别对每个商品的所有相邻商品特征的表征信息进行聚合和该商品的所有相邻用户的表征信息进行聚合,再根据聚合得到的商品特征表征信息和聚合得到的用户表征信息更新该商品的表征信息。

下面先介绍对每个商品的所有相邻用户的表征信息进行聚合的实现方式。

示例性的,针对一个商品,可以使用如下关系式基于嵌入转换矩阵

其中,σ是ReLU函数,

对于经过上式转化后的相邻用户的嵌入向量

其中,Aggregate代表聚合函数,N(i)表示每个商品的所有邻居用户节点,

可以理解的是,上述聚合函数可以包括最大值聚合函数、LSTM聚合函数或注意力网络。与使用最大值聚合函数、LSTM聚合函数或注意力网络获取商品的相邻用户的表征信息相比,使用均值聚合函数获取商品的相邻用户的表征信息有助于避免该图神经网络出现过度拟合现象。

对该商品的所有相邻商品特征的表征信息进行聚合的实现方式,可以参考对用户的所有相邻商品特征的表征信息进行聚合的实现方式,此处不再赘述。

同理,使用注意力网络作为聚合函数来聚合商品的相邻商品特征的表征信息,能够得到每个相邻商品特征对商品的重要性,使得获得的每个商品的相邻商品特征节点的表征信息更加准确。

根据聚合得到的商品特征表征信息和聚合得到的用户表征信息更新该商品的表征信息的实现方式,可以参考根据聚合得到的商品特征表征信息和聚合得到的商品表征信息更新用户的表征信息的实现方式,此处不再赘述。

同理,采用向量相连法合并商品的相邻用户的表征信息、相邻商品特征的表征信息和该商品在上一层嵌入更新层得到的表征信息后,在当前嵌入更新层可以得到一个一维的商品嵌入向量。

S404,使用图神经网络中的嵌入更新层中的商品特征网络,基于多个商品特征中每个商品特征的表征信息、每个商品特征的相邻商品的表征信息和每个商品特征的相邻用户的表征信息,更新每个商品特征的表征信息。

在一种可行的实现方式中,可以先分别对每个商品特征的所有相邻商品的表征信息进行聚合和该商品特征的所有相邻用户的表征信息进行聚合,再根据聚合得到的商品表征信息和聚合得到的用户表征信息更新该商品特征的表征信息。

示例性的,针对一个商品特征a

对于该商品特征的每个相邻用户,可以使用如下关系式基于嵌入转换矩阵

其中,σ是ReLU函数,

对于经过上式转化后的相邻用户的嵌入向量

其中,Aggregate代表聚合函数,A(u)表示每个商品特征的所有邻居用户节点,

可以理解的是,上述聚合函数可以包括最大值聚合函数、LSTM聚合函数或注意力网络。

对该商品特征的所有相邻商品的表征信息进行聚合时,首先,可以使用如下关系式基于嵌入转换矩阵V

其中,σ是ReLU函数,V

对于经过上式转化后的相邻用户的嵌入向量

其中,Aggregate代表聚合函数,A(i)表示每个商品特征的所有相邻商品节点,

可以理解的是,上述聚合函数可以包括最大值聚合函数、LSTM聚合函数或注意力网络。

聚合得到的商品用户表征信息和聚合得到的商品表征信息之后,可以将该商品特征的相邻用户的表征信息

示例性的,可以通过取平均值、嵌入向量相连或使用神经网络学习参数聚合等方法来合并商品特征的相邻用户的表征信息

该商品特征更新后的表征信息

其中,

采用向量相连法合并商品特征的相邻用户的表征信息

对于一组用户u和商品i,可能该用户和该商品分别会有许多相邻商品特征,即a∈A

在每个嵌入更新层,假设更新用户u和商品i所有的邻居商品特征,与用户网络只更新一个用户u的嵌入向量和商品网络只更新一个商品i的嵌入向量不同,商品特征网络会更新n

理想情况下,每一个商品特征的嵌入向量的更新需要聚合其所有采样的相邻用户和相邻商品。但是,与用户网络和商品网络相比,更新n

作为一种示例,可以选择当前需要预测用户评级的用户u和商品i分别作为代表性的相邻用户和相邻商品。

示例性的,以多个商品特征中每个商品特征的代表性的相邻用户为待评级用户和每个商品特征的代表性的相邻商品为待评级商品为例进行介绍。

使用如下公式更新每个商品特征的嵌入向量,即每个商品特征的表征信息

其中,

将该商品特征的代表性相邻用户的表征信息,即待评级用户的表征信息

在该种实现方式中,只选取每个商品特征的代表性的相邻用户和代表性的相邻商品进行聚合,可以节约计算机资源,可以减少计算时间。

本实施例中,S402至S404可以重复执行L次,L为正整数。通常来说,L可以是预先设定好的,例如可以根据预测评级的准确率来设置L。其中,每执行一次S402至S404,可以理解为一个嵌入更新层执行了一次相关操作。

S405,使用该图神经网络的预测层,基于L层嵌入更新层输出的表征信息,预测待评级用户对待评级商品的第一评级信息。

使用图神经网络的预测层基于嵌入更新层输出的表征信息生成待评级用户对待评级商品的第一评级信息时,在一些实现方式中,可以先对嵌入更新层输出的表征信息进行合并,得到合并信息,然后将该合并信息输入图神经网络的预测层,以得到第一评级信息。

作为一种示例,为了预测待评级用户u对待评级商品i的评级,先对n

其中,

S406,根据第一评级信息和待评级用户对待评级商品的真实评级信息,对该图神经网络进行训练。

例如,使用损失函数计算第一评级信息和待评级用户对待评级商品的真实评级信息之间的损失值,并基于该损失值调整图神经网络中的嵌入更新层和/或预测层中的权重参数。

本申请一个实施例中还提出了一种基于神经网络预测用户评级的方法。该实施例中可以包括与图3中的S301和S302相似的操作,或者该实施例中可以参考与图4中的S401至S405相似的操作。

本申请提供的技术方案中,根据用户购买商品的历史记录和用户对商品的用户评论中的商品特征构建用户-商品-商品特征三部图。根据构建的三部图,使用神经网络学习用户,商品和商品特征的表征信息。特别的,每个用户的表征信息由相邻商品特征的表征信息、相邻商品的表征信息学习而来;每个商品的表征信息由相邻商品特征的表征信息、相邻用户的表征信息学习而来;相邻商品特征的表征信息由相邻用户、相邻商品的表征信息学习而来。学习的用户表征信息、商品表征信息和相邻商品特征表征信息通过神经网络,预测生成用户对商品的评级信息。评级信息用于表示待评级用户对待评级商品的用户评级。图神经网络通过待评级用户对待评级商品的真实评级信息进行训练。本申请提供的技术方案,可以提高用户评级的准确度。

为了验证前述图神经网络的有效性,申请人在25个来自亚马逊(Amazon)和Yelp电子商务网站的公开数据集做了大量的实验。每一个数据集包含了来自于一个领域(例如美妆或餐饮)的用户评论和用户评级。申请人挑选了8个预测用户评级的模型,作为与本申请中的图神经网络模型(ContGraph)作比较基线模型(baseline)。

这8个模型包括:PMF(Mnih,2008)模型、AARM(Guan,2019)模型、ALFM(Cheng,2018)模型、ANR(Chin,2018)模型、NARRE(Chen,2018)模型、NGCF(Wang,2019)模型、GC-MC(Berg,2017)模型和GC-MC+Feat(Berg,2017)模型。

下面介绍数据集的处理和模型评估方法。

1)数据集的处理。

表1数据集的统计描述

表1示出了25个数据集的统计信息。在表1中的第五列(商品特征数量)示出使用前述方法在用户评论中提取到的商品特征数量。上述数据集总共包含了超过22000000条用户评论。对于每一个数据集,按照80:10:10的比例将用户评级随机分成训练集,验证集和测试集。在使用训练集训练模型时,采用自适应梯度优化器(Adagrad)来优化目标函数。

根据经验将批次大小M设置为512,将Adagrad的初始学习率设置为0.003,将初始化的用户、商品和商品特征的嵌入向量的维度设置为300。在每一个嵌入更新层,随机采样10个邻居节点,即S

基于上述数据,使用训练集分别对前述8个基线模型和本申请的图神经网络模型进行训练。并使用测试集对训练得到的9个模型进行验证。

测试集的作用是评估模型用户评级预测的准确性。为了验证模型的预测用户评级的准确度,本实施例采用广泛使用的平均绝对误差(mean absolute error,MAE)指标,即真实的用户评级和预测用户评级之间的绝对差值的平均值来衡量预测准确度。

在下面的关系式中,N指代的是测试集中数据的个数。MAE值越小,代表模型取得的效果越好。

其中,r

本申请的图神经网络模型和8个基线模型在测试集测试后的预测结果的比较结果如表2所示。

表2本申请图神经网络模型和8个基线模型的比较结果

表2中,第二列代表了对应模型在25个数据集所取得的平均MAE值。实验发现,针对每一个数据集,本申请提出的图神经网络模型与其他8个基线模型相比,都取得了最好的MAE值。本申请提出的图神经网络模型比最好的基线模型,即GC-MC+Feat,平均提高了7.3%的用户评级预测准确率。

为了验证本申请提出的图神经网络模型的商品排序的效果,本实施例还比较了本申请实施例提出的图神经网络模型和8个基线模型在25个数据集的排序效果。比较中采用标准的评估指标包括:排在前K位的商品排序的精度和召回率,分别记为精度@K(precision@K)和召回率@K(recall@K)。作为一种示例,K可以从{5,10,15,20}中选择。precision@K和recall@K的值越大代表模型的排序效果越好。

基于本申请实施例提出的图神经网络模型和8个基线模型的预测结果对商品进行排序所对应的precision@K和recall@K的对比图如图5所示。图5中左边的图的横坐标表示K,纵坐标表示召回率;图5中右边的图的横坐标表示K,纵坐标表示准确度。由图5可知,本申请提出的图神经网络型得到了最好的排序结果。

本申请实施例提出图神经网络模型中使用注意力网络聚合用户评论中的商品特征来学习用户和商品的嵌入向量。在模型学习(训练)的过程中,根据用户与用户评论和商品与用户评论的交互关系,不断学习更新用户、商品和商品特征的表征信息,所以注意力网络可以学习到用户关注哪些商品特征,商品在哪些商品特征所感受到的质量好。

本申请一个实施例中,使用服装鞋帽和珠宝数据集来验证所学习到的注意力值的有效性。在该数据集上运行训练好的本申请实施例的图神经网络模型,可以得到不同商品特征在用户网络和商品网络的注意力值。

以本申请实施例的图神经网络模型在每一个嵌入更新层随机采样10个邻居节点为例,注意力值大于0.1表示相应的商品特征对用户很重要或在商品中的质量好,注意值小于0.1表示相应的商品特征对用户不重要或在商品中的质量差。本实施例进行两个实验来评估获得的注意力值的有效性。

根据商品特征出现的次数总结出用户和商品提到的前10位商品特征。对于每一个商品特征,使用图6和图7所示的箱型图展示出用户网络中的注意力值分布和商品网络中的注意力值分布。图6和图7中,横坐标表示商品特征,包括舒适度(fit)、大小(size)、耐用性(wear)、外观(look)、价格(price)、颜色(color)、质量(quality)、鞋(shose)、对(pair)、买(buy)和材质(material);纵坐标表示注意力值(attention values)。

图6和图7显示了前10位商品特征在用户网络和商品网络中的分布值。图6说明同一商品特征对不同的用户有不同的重要性,因为同一商品特征从不同的用户既可以得到低的注意力值,即注意力值小于0.1,也可以得到高的注意力值,即注意力值大于0.1。从注意力的平均值看,用户总体更看重商品的材料、质量和价格。

图7显示,在商品网络中,除了商品特征“对”外,大多数的商品特征得到了注意力值大于0.1。在用户评论中,“对”是一个中性词,描述了一件物品,例如“一条牛仔裤”。因此,用户可能会对该商品特征保持中立。实验结果表明被频繁提及到的商品特征可能不会获得高的注意力值。

为了进一步验证本申请实施例的图神经网络模型得到的注意力值得有效性,本申请进行了人工分析,按照统计的方法,在得到的注意力值中随机选取了377个注意力值。两名评估员通过人工阅读用户评论,独立验证所得到的注意力值的正确性。

如果一个注意力值大于0.1,并且其对应的商品特征在用户评论中得到了正向的用户情感,即用户喜欢该商品特征在商品里的表现,或者该注意力值小于0.1并且其对应的商品特征在用户评论中得到了中立的或负向的情感,即用户不喜欢该商品特征在商品里的表现,则该注意力值被认为是正确的。

实验结果表明有75%的学习到的注意力值是正确的。因此,本申请实施例的图神经网络模型可以学习到有代表性的注意力值来聚合商品特征嵌入向量。

使用本申请前述图3或图4所示的方法训练得到神经网络之后,就可以使用该神经网络来预测用户对商品的用户评级了。

本申请一个实施例的基于神经网络预测用户评级的方法的示意性流程图如图8所示。该方法可以包括S801和S802。

S801,使用神经网络基于多个用户中每个用户的相邻商品特征的表征信息、每个用户的相邻商品的表征信息、多个商品中每个商品的相邻商品特征的表征信息、每个商品的相邻用户的表征信息、每个用户的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息、每个商品的相邻商品特征中每个商品特征的相邻用户的表征信息和相邻商品的表征信息,生成目标表征信息,目标表征信息包括待评级用户的表征信息、待评级商品的表征信息、待评级商品的相邻商品特征的表征信息和待评级用户的相邻商品特征的表征信息。

该步骤可以参考图3中的S301,或参考图4中的S401至S404,此处不再赘述。

S802,使用该神经网络基于目标表征信息,获得待评级用户对待评级商品的第一评级信息。其中,第一评级信息用于表示或者指示待评级用户对待评级商品的评级

该步骤可以参考图3中的S302,或参考图4中的S405,此处不再赘述。

如图9所示,本申请实施例提供了一种系统架构900。数据采集设备960用于采集用户数据和商品数据并存入数据库930,训练设备920基于数据库930中维护的用户数据和商品数据生成目标模型/规则901。其中,用户数据可以包括用户的历史购物信息和用户对商品的历史评论,商品数据包括购买过商品的历史购买信息和商品的历史用户评论。

训练设备920可以执行前述图3或图4所示的方法,从而训练得到用于预测用户对商品的评级信息的目标模型/规则901。

训练设备920得到的目标模型/规则可以应用不同的系统或设备中。在附图9中,执行设备910配置有I/O接口912,与外部设备进行数据交互,“用户”可以通过客户设备940向I/O接口912输入用户信息和查询的商品信息。

执行设备910可以调用数据存储系统950中的数据、代码等,也可以将数据、指令等存入数据存储系统950中。

计算模块911使用目标模型/规则901对输入的用户信息和商品信息进行处理,从而得到用户对商品的用户评级信息。例如,计算模块911可以执行图3中S301和S302,或执行图4中的S401至S405,从而得到用户评级信息。

最后,I/O接口912将处理结果返回给客户设备940,提供给用户。

在附图9中所示情况下,用户可以手动指定输入执行设备910中的数据,例如,在I/O接口912提供的界面中操作。另一种情况下,客户设备940可以自动地向I/O接口912输入数据并获得结果,如果客户设备940自动输入数据需要获得用户的授权,用户可以在客户设备940中设置相应权限。用户可以在客户设备940查看执行设备910输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备940也可以作为数据采集端将采集到用户信息和待查询商品信息存入数据库930。

值得注意的,附图9仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在附图9中,数据存储系统950相对执行设备910是外部存储器,在其它情况下,也可以将数据存储系统950置于执行设备910中。

图10和图11为本申请的实施例提供的可能的装置的结构示意图。这些装置可以用于实现上述方法,因此也能实现上述方法实施例所具备的有益效果。

在本申请的实施例中,图10或图11所示的装置可以是如图9所示的训练设备920或执行设备910,还可以是应用于训练设备或应用于执行设备的模块(如芯片)。

装置1000可以包括处理模块1001和评级模块1002。处理模块1001也可以称为处理单元1001,评级模块1002也可以称为评级单元1002。

在一种实现方式中,装置1000可以用于实现上述图8所示的方法。例如,处理模块1001用于实现S801,评级模块1002用于实现S802。

在另一种实现方式中,装置1000还可以包括训练模块。该实现方式中的装置1000可以用于实现上述图3所示的方法。例如,处理模块1001用于实现S301,评级模块1002用于实现S302,训练模块可以用于实现S303。

在又一种实现方式中,装置1000还可以包括训练模块。该实现方式中的装置1000可以用于实现上述图4所示的方法。例如,处理模块1001用于实现S401至S403,评级模块1002用于实现S404,训练模块用于实现S405。

图11为本申请另一个实施例提供的装置的结构示意图。图11所示的装置1100可以用于执行前述任意一个实施例所述的方法。

如图11所示,本实施例的装置1100包括:存储器1101、处理器1102、通信接口1103以及总线1104。其中,存储器1101、处理器1102、通信接口1103通过总线1104实现彼此之间的通信连接。

存储器1101可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器1101可以存储程序,当存储器1101中存储的程序被处理器1102执行时,处理器1102可以用于执行图3、图4或图8所示的方法的各个步骤。

处理器1102可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请方法实施例的推理车道的方法或训练车道推理模型的方法。

处理器1102还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请各个实施例的方法的各个步骤可以通过处理器1102中的硬件的集成逻辑电路或者软件形式的指令完成。

上述处理器1102还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1101,处理器1102读取存储器1101中的信息,结合其硬件完成本申请实施例中各个方法所需执行的功能,例如,可以执行图3、图4或图8所示实施例的各个步骤/功能。

通信接口1103可以使用但不限于收发器一类的收发装置,来实现装置1100与其他设备或通信网络之间的通信。

总线1104可以包括在装置1100各个部件(例如,存储器1101、处理器1102、通信接口1103)之间传送信息的通路。

应理解,本申请实施例所示的装置1100可以是电子设备,或者,也可以是配置于电子设备中的芯片。

应理解,本申请实施例中的处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。

上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。

应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。

本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。

应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号