识别用户关系的方法及装置与流程

文档序号:14940895发布日期:2018-07-13 20:44阅读:168来源:国知局

本发明涉及网络技术领域,特别涉及一种识别用户关系的方法及装置。



背景技术:

随着网络技术的发展,用户之间的网络业务也越来越频繁,很多网络业务使用到用户之间的关系,如在百度百科中,一个名人的介绍网页中,会有和该名人存在用户关系的另一个人的链接,点击该链接,用户可以进入另一个人的介绍网页。因此如何识别用户之间的关系成为一项关键技术。

目前,用户之间的关系的识别方法可以是,通过网络爬虫,将特定网站上的网页抓取下来,然后提取其中的结构化和半结构化的信息,用预先设定的正则表达式去获取网站中的人物信息和其他信息(如工作信息、家庭信息等),然后处理上述信息,与预设的用户关系类型进行匹配。例如,在网站中获取到演员a和演员b出演同一部电影,服务器处理信息时可以得到演员a和演员b工作信息相同的信息,通过此信息与预设的用户关系类型进行匹配,而预设的用户关系类型中,同事关系定义为工作信息相同,因此服务器将演员a和演员b之间的关系识别为同事。

在实现本发明的过程中,发明人发现现有技术至少存在以下问题:

基于上述识别方法,只能查询到出名人物的信息,因此只能确定出名人物之间的关系类型,导致可以确定关系类型的用户具有局限性。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种识别用户关系的方法及装置。所述技术方案如下:

第一方面,提供了一种训练模型的方法,所述方法包括:

获取初始用户关系分类模型,所述初始用户关系分类模型包括:初始cnn模型、初始rnn模型、初始全连接神经网络模型和softmax算法模块;其中,所述初始cnn模型以及所述初始rnn模型的输出端分别与所述初始全连接神经网络模型的输入端连接,所述初始全连接神经网络模型的输出端与所述softmax算法模块连接;

获取多个样本用户的样本数据,每两个样本用户的样本数据包括第一样本用户和第二样本用户的属性信息、第一样本用户和第二样本用户之间的交互信息、以及第一样本用户和第二样本用户之间的已知用户关系;

基于所述多个样本用户的样本数据对所述初始用户关系模型进行训练,得到所述用户关系分类模型。

第二方面,提供了一种识别用户关系的方法,所述方法包括:

确定待识别的第一用户和第二用户;

获取所述第一用户和所述第二用户的属性信息,以及第一用户和第二用户之间的交互信息;

根据用户关系分类模型、所述第一用户和所述第二用户的属性信息、以及第一用户和第二用户之间的交互信息,确定所述第一用户和所述第二用户之间的用户关系;

其中,所述用户关系分类模型基于多个样本用户的属性信息、交互信息以及已知用户关系训练得到。

第三方面,提供了一种训练模型的装置,所述装置包括:

第一获取模块,用于获取初始用户关系分类模型,所述初始用户关系分类模型包括:初始cnn模型、初始rnn模型、初始全连接神经网络模型和softmax算法模块;其中,所述初始cnn模型以及所述初始rnn模型的输出端分别与所述初始全连接神经网络模型的输入端连接,所述初始全连接神经网络模型的输出端与所述softmax算法模块连接;

第二获取模块,用于获取多个样本用户的样本数据,每两个样本用户的样本数据包括第一样本用户和第二样本用户的属性信息、第一样本用户和第二样本用户之间的交互信息、以及第一样本用户和第二样本用户之间的已知用户关系;

用户关系分类模型训练模块,用于基于所述多个样本用户的样本数据对所述初始用户关系模型进行训练,得到所述用户关系分类模型。

第四方面,提供了一种识别用户关系的装置,所述装置包括:

确定模块,用于确定待识别的第一用户和第二用户;

第一获取模块,用于获取所述第一用户和所述第二用户的属性信息以及用户之间的交互信息;

识别模块,用于根据用户关系分类模型、所述第一用户和所述第二用户的属性信息以及用户之间的交互信息,得到所述第一用户和所述第二用户之间的用户关系;

其中,所述用户关系分类模型基于多个样本用户的属性信息、交互信息以及已知用户关系训练得到。

第五方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述第一方面所述的训练模型的方法。

第六方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述第二方面所述的识别用户关系的方法。

第七方面,一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述第一方面所述的训练模型的方法。

第八方面,一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述第二方面所述的识别用户关系的方法。

本发明实施例提供的技术方案带来的有益效果是:

通过利用由用户的属性信息和用户之间的交互信息训练得到的用户关系分类模型,来对待识别的用户进行关系识别,由于在模型训练时是基于用户的属性信息和用户之间的交互信息等进行,因此,该用户关系分类模型能够表示用户之间的准确关系,从而达到对用户之间的关系进行识别的目的,且识别所得到的用户关系准确性高,有利于后续有针对性的制定用户之间的关系进行应用策略,为商业运营等提供了有力依据。

附图说明

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

图1是本发明实施例提供的一种实施环境图;

图2是本发明实施例提供的一种识别用户关系的方法的流程图;

图3是本发明实施例提供的一种模型训练过程的示意图;

图4是本发明实施例提供的一种模型训练的装置的结构示意图;

图5是本发明实施例提供的一种识别用户关系装置的结构示意图;

图6是本发明实施例提供的一种识别用户关系装置的结构框图;

图7是本发明实施例提供的一种识别用户关系装置的结构框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1是本发明实施例提供的一种实施环境图。该实施环境包括多个终端101、用于为该多个终端提供服务的服务器102。多个终端101通过无线或者有线网络和服务器102连接,该多个终端101可以为能够访问服务器102的电子设备,该电子设备可以为电脑、智能手机、平板电脑或者其他电子设备。服务器102可以为一个或者多个网站服务器,该服务器102可以作为用户的载体,该服务器102可以根据其用户通过终端对社交应用软件进行的操作,例如填写用户信息、发消息、点赞、评论等操作,对用户的属性信息和用户之间的交互信息进行更新。对于服务器102来说,该服务器102还可以具有至少一种数据库,用以存储用户关系链、用户的属性信息、用户之间的交互信息以及样本用户的样本数据等等。

其中,本发明实施例所涉及的用户可以是指用户的账号,服务器可以基于用户的账号记录该用户的属性信息和与其他用户之间的交互信息,从而使得用户通过终端对其它用户进行点赞、评论等操作时,能够实现对用户的属性信息和用户之间的交互信息的更新。例如,该服务器102为微型博客服务器,则该服务器102上存储有多个用户,当用户通过微型博客的客户端或门户网站查看自己所关注的用户所发布的消息时,可以展示消息页面,该消息页面上可以包括多个用户名以及每个用户名所发布的消息,用户可以任一它用户的用户名进行点击,以查看该用户名对应的消息列表。用户还可以通过微型博客的客户端或门户网站所提供的评论或发消息功能,向该用户发消息或评论该用户所发布的消息,以实现与该用户的交互。

图2是本发明实施例提供的一种识别用户关系的方法的流程图。参见图2,该图2所示的流程具体包括两部分,第一部分为基于样本用户的样本数据的模型训练过程,第二部分为基于模型的识别过程。在通过步骤200至202训练得到用户关系分类模型后,即可在需要进行识别用户之间的关系时,直接使用该用户关系分类模型,如步骤203至205,而无需再次进行训练或复杂计算。下面对各个步骤进行详述:

200、获取多个样本用户的样本数据,每两个样本用户的样本数据包括第一样本用户和第二样本用户的属性信息、第一样本用户和第二样本用户之间的交互信息、以及第一样本用户和第二样本用户之间的已知用户关系。

发明人认识到,通过两个用户各自的属性信息可以得到两个用户各自的个人身份属性特征,通过两个用户之间的交互信息可以得到两个用户之间的亲密度,通过上述信息共同确定两个用户之间的关系可以更细节化的体现用户之间的关系,因此,采用这两种信息,所确定的用户关系更加准确。其中,用户关系可以是同学、同事、夫妻、母女、闺蜜等,用户关系可以是技术人员预先设置并存储在服务器中,也可以是用户自己设置并保存在服务器中,在识别用户关系的时候,对用户的属性信息和用户之间的交互信息进行处理,并与上述关系进行匹配,最终确定用户之间的关系。

训练模型时,可以从数据库中获取多个样本用户的样本数据。采用两个样本用户进行模型训练时,两个样本用户的样本数据需要包括第一样本用户和第二样本用户的属性信息、第一样本用户和第二样本用户之间的交互信息可以作为初始用户关系分类模型的输入数据,第一样本用户和第二样本用户之间的已知用户关系可以作为初始用户关系分类模型输出结果的对比信息。

在本发明实施例中,上述样本用户的属性信息可以包括以下属性中的一种或多种:年龄、性别、职业、兴趣爱好、家庭住址、个人简介。

例如,两个样本用户的属性信息中,若家庭住址相同,性别相同,且年龄差距不大于15岁,可以确定两个样本用户的关系是姐妹;若家庭住址相同,性别相同,且年龄差距大于15岁但小于40岁,可以确定两个样本用户的关系是母女;若家庭住址相同,性别相同,且年龄差距不小于40岁,可以确定两个样本用户的关系是祖孙。当服务器需要收集样本用户的属性信息时,可以在记录样本用户的属性信息的社交应用软件的数据库中,查找样本用户对应的年龄、性别、职业、兴趣爱好、家庭住址、个人简介中的一种或多种属性信息,查找到上述信息后,对这些信息进行预处理。例如,年龄、性别、职业这三个属性,可以用长度为k的独热码表示。具体的处理方式可以如下:第一样本用户的年龄为d,则k维向量的第d维取值为1,其余取值都为0;性别、职业与年龄类似,职业可以设置k个职业,第一样本用户的职业为e,则k维向量的第e维取值为1,其余都为0。其中,上述的d、e、k皆为正整数。

除了上述的3个属性,可以在社交应用软件中的文本信息中提取出n-3个可以描述样本用户属性的词语,将词语通过word2vec(一个将词语转换成词向量的工具)词模型,将n-3个属性词语转成k维的向量,从而得到(n-3)×k的二维向量,和上述的年龄、性别、职业3个独热码,一起组成n×k的二维向量。其中,n为提取的属性的个数,根据试验经验可以取值为196。根据上述处理,将第二样本用户的属性信息同样组成n×k的二维向量。

通过对样本用户的属性信息进行上述预处理后,可以形成样本用户的属性信息对应的二维向量,以便后续的使用和处理。

在本发明实施例中,上述交互信息可以包括以下信息中的一种或多种:

发消息次数、点赞次数、评论次数、发红包次数。

具体地,当服务器需要收集样本用户之间的交互信息时,可以在记录样本用户的交互信息的社交应用软件的数据库中,查找预设时长内的两个样本用户之间的交互信息,例如,两个样本用户之间的发消息、评论、点赞、发红包等的次数,并对查找到的上述交互信息进行预处理。例如,统计子时长的交互信息:子时长总次数、子时长平均值、子时长最大值、子时长最小值。假设子时长为一周,第一账户和第二账户之间交互信息为发消息的次数统计,则可以统计4个统计量:一周内发消息的总次数、一周内平均每天发消息次数、一周内每天发消息次数的最大值、一周内每天发消息次数的最小值。假设有f种交互信息,则每个子时长一共有4f个统计量,构成长度为4f的向量,假设预设时长内一共有p周,则按照时间顺序,生成p个长度为4f的行为向量,所有行为向量组成一个时间序列。其中,f、p为正整数,预设时长可以取值为6个月。

通过对样本用户之间的交互信息进行上述预处理后,可以形成样本用户之间的交互信息对应的时间序列,以便后续的使用和处理。

通过上述样本用户的样本数据对初始用户关系分类模型的训练,社交应用软件中的用户的属性信息更准确和直接,交互信息可以充分展示两个用户之间的亲密度,而且交互信息是获取预设时长内的交互信息并进行统计处理,然后按照时间顺序生成时间序列,该时间序列具有实时性,且通过对该时间序列的处理可以知道亲密度随时间的变化,使训练得到的用户关系分类模型增加了准确性和实时性。

需要说明的是,为了提高识别精度,在获取样本数据时,可以基于用户关系链进行获取,也即是,对于用于训练的每两个样本用户的样本数据来说,第一样本用户和第二样本用户可以具有以下关系:第一样本用户为第二样本用户的用户关系链上的用户。或,第二样本用户为第一样本用户的用户关系链上的用户。或,第一样本用户和第二样本用户同属于一条用户关系链。

在本发明实施例中,在训练初始用户关系分类模型过程中,待识别用户关系的两个样本用户可以有以下几种关系:

一、第一样本用户为第二样本用户的用户关系链上的样本用户,例如,在社交应用软件中,第二样本用户单方面关注了第一样本用户,或第一样本用户与第二样本用户之间互相关注。

二、第二样本用户为第一样本用户的用户关系链上的样本用户,例如,在社交应用软件中,第一样本用户单方面关注了第二样本用户,或第一样本用户与第二样本用户之间互相关注。

三、第一样本用户和第二样本用户同属于一条用户关系链,例如,在社交应用软件中,第一样本用户和第二样本用户互不关注,但两者拥有至少一位共同好友。

201、获取初始用户关系分类模型,初始用户关系分类模型包括:初始cnn模型、初始rnn模型、初始全连接神经网络模型和softmax算法模块。

其中,初始cnn(convolutionalneuralnetworks,卷积神经网络)模型以及初始rnn(recurrentneuralnetworks,循环神经网络)模型的输出端分别与初始全连接神经网络模型的输入端连接,初始全连接神经网络模型的输出端与softmax(柔性最大值传输函数)算法模块连接。

在实施中,基于上述连接方式,初始cnn模型、初始rnn模型、初始全连接神经网络模型和softmax算法模块的具体应用过程可以是,将两个样本用户的属性信息输入到初始cnn模型中,输出两个结果,将两个样本用户之间的交互信息输入到初始rnn模型中,输出一个结果,将上述输出结果输入到初始全连接神经网络模型中,而初始全连接神经网络模型输出的结果,输入到softmax算法模块中。

202、基于所述多个样本用户的样本数据对初始用户关系模型进行训练,得到用户关系分类模型。

以训练过程中的一次计算过程为例,每次计算过程可以向当前的初始用户关系模型输入两个样本用户的样本数据为例,如图3所示,步骤202可以包括以下步骤1至步骤7:

步骤1:将第一样本用户的属性信息和第二样本用户的属性信息,输入初始cnn模型,分别得到第一向量和第二向量,第一向量用于表示第一样本用户的属性特征,第二向量用于表示第二样本用户的属性特征。

将第一样本用户的属性信息对应的二维向量输入初始cnn模型,初始cnn模型中预设的卷积核对该二维向量进行卷积,通过对属性信息的特征提取,可以得到第一向量,第一向量可以用于表示第一样本用户的属性特征。第二样本用户的属性信息输入初始cnn模型的处理过程与上述类似,可以得到第二向量,第二向量可以用于表示第二样本用户的属性特征。

需要说明的是,初始cnn模型的卷积核的列数与属性信息的量化值位数相等。即,初始cnn模型的卷积核的列数与样本用户的属性信息对应的二维向量的列数相等,例如,样本用户的属性信息为n×k的二维向量,则可以设置初始cnn模型的卷积核的规格为s×k,其中,s、n、k为正整数。基于上述的处理,初始cnn模型中预设的卷积核对第一样本用户和第二样本用户的属性信息对应的二维向量进行卷积后,得到的第一向量和第二向量可以是n×1的一维向量,其中,n为提取的属性的个数,与样本用户的属性信息对应的二维向量的行数取值相同。这样,既可以保留全部的属性特征,又可以使后续对第一向量和第二向量的处理更为方便,减少了运算量。

步骤2:将第一样本用户和第二样本用户之间的交互信息,输入初始rnn模型,得到第三向量,第三向量用于表示第一样本用户和第二样本用户之间的亲密度。

获取第一样本用户和第二样本用户之间的交互信息对应的时间序列,将该时间序列输入初始rnn模型中,通过初始rnn模型的循环计算,可以得到第三向量,第三向量可以用于表示第一样本用户和第二样本用户之间的亲密度。

需要说明的是,第三向量可以是n×1的一维向量,和上述第一向量、第二向量的规格相同,使后续处理第一向量、第二向量和第三向量时,减少运算量。

本发明实施例中,样本用户之间的交互信息可以充分展示两个用户之间的亲密度,且交互信息是获取预设时长内的交互信息并进行统计处理,然后按照时间顺序生成时间序列,该时间序列具有实时性,且通过对该时间序列的处理可以知道亲密度随时间的变化,而rnn模型能更加有效地对用户之间的行为进行计算,更加能准确地鉴别用户之间的关系亲密度,因此,采用rnn模型处理样本用户之间的交互信息,可以使训练得到的用户关系分类模型增加准确性和实时性。

步骤3:将第一向量和第二向量,以及第三向量,输入初始全连接神经网络模型,得到第四向量,第四向量用于表示第一样本用户的属性特征、第二样本用户的属性特征和第一样本用户和第二样本用户之间的亲密度。

将得到的第一向量和第二向量,以及第三向量,输入初始全连接神经网络模型,初始全连接神经网络模型将第一向量和第二向量,以及第三向量进行连接整合,将三个不同类型的向量融合重新编码,输出结果为第四向量,第四向量可以用于表示第一样本用户的属性特征、第二样本用户的属性特征和第一样本用户和第二样本用户之间的亲密度。其中,第四向量为q×1的向量,q为正整数,表示用户关系的个数。

步骤4:将第四向量输入softmax算法模块,得到第五向量,第五向量用于表示第一样本用户和第二样本用户之间的估计用户关系的权重。

将第四向量输入softmax算法模块,softmax算法模块可以计算第四向量中,每种用户关系的权重,将第四向量转换成第五向量,第五向量可以用于表示第一样本用户和第二样本用户之间的估计用户关系的权重。其中,第五向量为q×1的向量,q为正整数,表示用户关系的个数。

softmax算法模块的计算公式如下:

其中,yi表示第五向量中的第i个分量,zi表示第四向量中的第i个分量。

步骤5:将第五向量中权重最大的维数对应的用户关系,确定为第一样本用户和第二样本用户之间的估计用户关系。

得到第五向量后,确定第五向量中权重的最大值的位数,将该位数对应的用户关系,确定为第一样本用户和第二样本用户之间的估计用户关系。

步骤6:根据估计用户关系和已知用户关系之间的误差,调整初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数。

将得到的估计用户关系与已知用户关系作比较,计算两者之间的误差,通过误差反向传播,调整初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数。

步骤7:输入其它样本用户的样本数据,重复上述处理过程,对初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数进行调整,使得初始用户关系分类模型输出的估计用户关系与已知用户关系之间的误差最小,得到用户关系分类模型。用户关系分类模型用于确定待识别的两个用户之间的用户关系。

在本发明实施例中,训练模型的过程是基于多个样本对模型进行训练的,也就是说,上述第一样本用户的样本数据和第二样本用户的样本数据的训练过程结束后,继续向初始用户关系分类模型输入其它样本用户的样本数据,按照上述步骤1至步骤7,直到估计用户关系和已知用户关系之间的误差收敛稳定为止,在这个过程中,不断调整初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数,使得到的估计用户关系和已知用户关系之间的误差最小,即,误差收敛稳定,将此时的cnn模型、rnn模型、全连接神经网络模型中的算法参数作为用户关系分类模型的参数,得到训练好的用户关系分类模型,训练好的用户关系分类模型可以准确地确定待识别的两个用户之间的用户关系。

需要说明的是,上述过程仅是用户关系分类模型训练过程的一个示例,在起到相同作用的情况下,可以由其它模型或算法模块代替上述过程中的模型和算法模块,本发明对此不作限定。

需要说明的是,上述的模型训练过程和识别两个用户之间的关系的过程可以是在同一个设备上实现,例如,均可由服务器进行,在服务器侧进行模型训练,并基于模型训练得到的用户关系分类模型进行识别,或者,还可以由服务器侧进行模型训练后,将训练所得到的用户关系分类模型下发至其他电子设备,而由其他电子设备基于该用户关系分类模型进行识别,本发明实施例对具体由哪些电子设备参与上述过程不做限定。下面对基于用户关系分类模型进行用户关系识别的过程进行说明。

203、确定待识别的第一用户和第二用户。

需要说明的是,服务器侧或其它设备均可以基于用户关系分类模型进行关系识别,当需要确定两个用户之间的关系的时候,获取第一用户和第二用户的用户标识,该用户标识可以用于在存储用户信息的数据库中查找到第一用户和第二用户的属性信息以及用户之间的交互信息。

在实际场景中,上述第一用户和第二用户可以是指对大量用户进行批量识别时的任两个用户,当然,上述第一用户和第二用户还可以是在某次需要针对性的对某两个用户进行识别时的用户,在此不做具体限定。

需要说明的是,第一用户和第二用户可以具有以下关系:第一用户为第二用户的用户关系链上的用户。或,第二用户为第一用户的用户关系链上的用户。或,第一用户和第二用户同属于一条用户关系链。

第一用户为第二用户的用户关系链上的用户。或,第二用户为第一用户的用户关系链上的用户。或,第一用户和第二用户同属于一条用户关系链。

在本发明实施例中,在使用用户关系分类模型进行用户关系的识别时,待识别用户关系的两个用户可以有以下几种关系:

一、第一用户为第二用户的用户关系链上的用户,例如,在社交应用软件中,第二用户单方面关注了第一用户,或第一用户与第二用户之间互相关注。

二、第二用户为第一用户的用户关系链上的用户,例如,在社交应用软件中,第一用户单方面关注了第二用户,或第一用户与第二用户之间互相关注。

三、第一用户和第二用户同属于一条用户关系链,例如,在社交应用软件中,第一用户和第二用户互不关注,但两者拥有至少一位共同好友。

204、获取第一用户和第二用户的属性信息,以及第一用户和第二用户之间的交互信息。

根据上述步骤203,获取第一用户和第二用户的用户标识后,向存储用户的属性信息的数据库和存储用户之间的交互信息的数据库,查询用户标识对应的属性信息和交互信息,从数据库中提取出用户标识对应的属性信息和交互信息。

205、根据用户关系分类模型、第一用户和第二用户的属性信息、以及第一用户和第二用户之间的交互信息,确定第一用户和第二用户之间的用户关系。

其中,用户关系分类模型基于多个样本用户的属性信息、交互信息以及已知用户关系训练得到。

获取第一用户和第二用户的属性信息以及用户之间的交互信息后,可以将两个用户的属性信息和用户之间的交互信息输入用户关系分类模型中,得到用户关系分类模型输出的向量,该向量用于表示每种用户关系所占的权重,将权重最大的向量位数对应的用户关系,确定为第一用户和第二用户之间的用户关系。

需要说明的是,目前,大多数关系识别技术把用户当做节点来处理,以得到能够表示节点之间好友关系的向量,这种表示方式不具有可比较性,而上述的处理将用户之间的关系向量处理成低维向量,这样既可以使关系向量具有可比较性,有利于后续对用户之间关系的应用,如各种精准推荐、广告应用等。

在实际场景中,该第一用户和第二用户的识别可以应用于多种不同场景下,例如,推荐场景,如商品推荐、餐饮推荐、广告推荐,假设已知a的兴趣,则根据a相关的关系类型,找到其他用户b,对用户推荐相似的结果。基于好友的广告推荐、商品推荐、信息推送等领域,能有效地提升成功率。再例如,验证场景,假设用户c、d被标注上关系x,用本申请中的用户关系分类模型得到用户的关系为y,比较x和y的差异,可以对用户关系进行验证等。下面基于不同的场景对上述实际使用进行说明:

一、推荐场景

基于上述用户关系分类模型确定用户之间的关系后,可以根据用户之间的关系向用户推荐信息。具体地,根据预先存储的用户关系与推荐信息类型的对应关系,以及第一用户与第二用户之间的用户关系,确定对应的目标推荐信息类型。在第一用户对应的推荐信息中,选取目标推荐信息类型的推荐信息。向第二用户发送目标推荐信息类型的推荐信息。

需要说明的是,技术人员可以预先设置用户关系与推荐信息类型的对应关系,可以采用表1的形式存储,如表1。

表1

例如,当需要根据用户p和用户q之间的关系进行信息推荐时,先根据上述用户关系分类模型确定用户p和用户q的关系为同学,然后根据上述表1,用户关系为同学时,对应的推荐信息类型为书籍信息,说明该书籍信息类型是两个用户可能都感兴趣的推荐信息类型。然后在p用户的推荐信息中查找推荐信息类型为书籍信息的推荐信息,查找到一个推荐m书籍的推荐信息,则将这个推荐m书籍的推荐信息发送给q用户。

通过用户之间的关系向用户发送对应的推荐信息类型,可以将推荐信息发送给对该类型的推荐信息感兴趣的用户,使各类型的推荐信息满足不同用户的喜好,提高了推荐信息的推荐效率。

上述用户关系分类模型也可以用于对用户之间的关系进行验证。具体地,接收关系验证请求,关系验证请求用于对第一用户和第二用户的原有关系进行验证。按照上述步骤203至步骤205,可以得到基于用户关系分类模型的第一用户与第二用户之间的关系,当第一用户与第二用户之间的用户关系与原有关系不同时,将原有关系更改为第一用户与第二用户之间的用户关系。

需要说明的是,用户之间的原有关系可以是各种社交软件原本对该两个用户之间的关系的定义。

二、验证场景

当需要验证两个用户之间的关系时,可以先从相应的社交应用软件的数据库中,获取两个用户之间的原有关系,然后可以向用户关系分类模型所在的设备发出关系验证请求,关系验证请求中携带该原有关系。该设备接收到关系验证请求后,按照上述步骤203至步骤205,得到基于用户关系分类模型的两个用户之间的关系,然后将原有关系与基于用户关系分类模型的两个用户之间的关系作比较,如果两者相同,则保持原有关系不变。如果两者不同,则将原有关系更改为基于用户关系分类模型得到的用户之间的关系。

例如,在某社交应用软件中,具有可以清理好友或标注好友之间关系的功能,当用户r使用该功能时,可以进行与好友之间的关系的验证,具体的例子可以如下:用户r和用户s之间的原有关系是陌生人,但近期两个用户关系密切,两个用户之间的交互信息可以表明,两个用户的亲密度很大,因此基于用户关系分类模型,得到两个用户之间的关系是闺蜜。由于原有关系与基于用户关系分类模型的两个用户之间的关系不同,因此将两个用户之间的关系重新确定为闺蜜,因此,该功能将用户r和用户s之间的关系标注为闺蜜。基于所标注的用户关系,可以在实现某些功能时针对性的进行处理,例如,在基于用户的需求执行清理好友功能时,则可以遍历用户与其他用户之间的用户关系,保留具有某些指定用户关系的用户,而删除不具有指定用户关系的用户,以提高操作效率。

本发明实施例提供的方法,通过利用由用户的属性信息和用户之间的交互信息训练得到的用户关系分类模型,来对待识别的用户进行关系识别,由于在模型训练时是基于用户的属性信息和用户之间的交互信息等进行,因此,该用户关系分类模型能够表示用户之间的准确关系,从而达到对用户之间的关系进行识别的目的,且识别所得到的用户关系准确性高,有利于后续有针对性的制定用户之间的关系进行应用的策略,为商业运营等提供了有力依据。

图4是本发明实施例提供的一种训练模型的装置的结构示意图。参见图4,所述装置包括:

第一获取模块401,用于获取初始用户关系分类模型,所述初始用户关系分类模型包括:初始cnn模型、初始rnn模型、初始全连接神经网络模型和softmax算法模块;其中,所述初始cnn模型以及所述初始rnn模型的输出端分别与所述初始全连接神经网络模型的输入端连接,所述初始全连接神经网络模型的输出端与所述softmax算法模块连接;

第二获取模块402,用于获取多个样本用户的样本数据,每两个样本用户的样本数据包括第一样本用户和第二样本用户的属性信息、第一样本用户和第二样本用户之间的交互信息、以及第一样本用户和第二样本用户之间的已知用户关系;

用户关系分类模型训练模块403,用于基于所述多个样本用户的样本数据对所述初始用户关系模型进行训练,得到所述用户关系分类模型。

在任一种可能实现方式中,所述用户关系分类模型训练模块,用于:

将所述第一样本用户的属性信息和所述第二样本用户的属性信息,输入初始cnn模型,分别得到第一向量和第二向量,所述第一向量用于表示所述第一样本用户的属性特征,所述第二向量用于表示第二样本用户的属性特征;

将所述第一样本用户和第二样本用户之间的交互信息,输入所述初始rnn模型,得到第三向量,所述第三向量用于表示所述第一样本用户和所述第二样本用户之间的亲密度;

将所述第一向量和所述第二向量,以及所述第三向量,输入所述初始全连接神经网络模型,得到第四向量,所述第四向量用于表示所述第一样本用户的属性特征、所述第二样本用户的属性特征和所述第一样本用户和所述第二样本用户之间的亲密度;

将第四向量输入所述softmax算法模块,得到第五向量,所述第五向量用于表示所述第一样本用户和第二样本用户之间的估计用户关系的权重;

将第五向量中权重最大的维数对应的用户关系,确定为第一样本用户和第二样本用户之间的估计用户关系;

根据所述估计用户关系和所述已知用户关系之间的误差,调整初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数;

输入其它样本用户的样本数据,重复上述处理过程,对初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数进行调整,使得所述初始用户关系分类模型输出的所述估计用户关系与所述已知用户关系之间的误差最小,得到所述用户关系分类模型;所述用户关系分类模型用于确定待识别的两个用户之间的用户关系。

在任一种可能实现方式中,所述初始cnn模型的卷积核的列数与所述属性信息的量化值位数相等。

图5是本发明实施例提供的一种识别用户关系装置的结构示意图。参见图5,所述装置包括:

确定模块501,用于确定待识别的第一用户和第二用户;

第一获取模块502,用于获取所述第一用户和所述第二用户的属性信息,以及第一用户和第二用户之间的交互信息;

识别模块503,用于根据用户关系分类模型、所述第一用户和所述第二用户的属性信息、以及第一用户和第二用户之间的交互信息,确定所述第一用户和所述第二用户之间的用户关系;

其中,所述用户关系分类模型基于多个样本用户的属性信息、交互信息以及已知用户关系训练得到。

在任一种可能实现方式中,所述装置还包括:

第二获取模块,用于获取初始用户关系分类模型,所述初始用户关系分类模型包括:初始cnn模型、初始rnn模型、初始全连接神经网络模型和softmax算法模块;其中,所述初始cnn模型以及所述初始rnn模型的输出端分别与所述初始全连接神经网络模型的输入端连接,所述初始全连接神经网络模型的输出端与所述softmax算法模块连接;

第三获取模块,用于获取多个样本用户的样本数据,每两个样本用户的样本数据包括第一样本用户和第二样本用户的属性信息、第一样本用户和第二样本用户之间的交互信息、以及第一样本用户和第二样本用户之间的已知用户关系;

用户关系分类模型训练模块,用于基于所述多个样本用户的样本数据对所述初始用户关系模型进行训练,得到所述用户关系分类模型。

在任一种可能实现方式中,所述用户关系分类模型训练模块,用于:

将所述第一样本用户的属性信息和所述第二样本用户的属性信息,输入初始cnn模型,分别得到第一向量和第二向量,所述第一向量用于表示所述第一样本用户的属性特征,所述第二向量用于表示第二样本用户的属性特征;

将所述第一样本用户和第二样本用户之间的交互信息,输入所述初始rnn模型,得到第三向量,所述第三向量用于表示所述第一样本用户和所述第二样本用户之间的亲密度;

将所述第一向量和所述第二向量,以及所述第三向量,输入所述初始全连接神经网络模型,得到第四向量,所述第四向量用于表示所述第一样本用户的属性特征、所述第二样本用户的属性特征和所述第一样本用户和所述第二样本用户之间的亲密度;

将第四向量输入所述softmax算法模块,得到第五向量,所述第五向量用于表示所述第一样本用户和第二样本用户之间的估计用户关系的权重;

将第五向量中权重最大的维数对应的用户关系,确定为第一样本用户和第二样本用户之间的估计用户关系;

根据所述估计用户关系和所述已知用户关系之间的误差,调整初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数;

输入其它样本用户的样本数据,重复上述处理过程,对初始cnn模型、初始rnn模型、初始全连接神经网络模型中的算法参数进行调整,使得所述初始用户关系分类模型输出的所述估计用户关系与所述已知用户关系之间的误差最小,得到所述用户关系分类模型;所述用户关系分类模型用于确定待识别的两个用户之间的用户关系。

在任一种可能实现方式中,所述初始cnn模型的卷积核的列数与所述属性信息的量化值位数相等。

在任一种可能实现方式中,所述装置还包括:

关系验证模块,用于接收关系验证请求,所述关系验证请求用于对所述第一用户和所述第二用户的原有关系进行验证;基于所述第一用户和所述第二用户执行用户关系识别过程,得到所述第一用户和所述第二用户之间的用户关系;当所述第一用户与第二用户之间的用户关系与所述原有关系不同时,将所述原有关系更改为所述第一用户与所述第二用户之间的用户关系。

在任一种可能实现方式中,所述装置还包括:

推荐模块,用于根据预先存储的用户关系与推荐信息类型的对应关系,以及所述第一用户与所述第二用户之间的用户关系,确定对应的目标推荐信息类型;在第一用户对应的推荐信息中,选取所述目标推荐信息类型的推荐信息;向所述第二用户发送所述目标推荐信息类型的推荐信息。

在任一种可能实现方式中,所述用户的属性信息包括以下属性中的一种或多种:

年龄、性别、职业、兴趣爱好、家庭住址、个人简介;

所述交互信息包括以下信息中的一种或多种:

发消息次数、点赞次数、评论次数、发红包次数。

在任一种可能实现方式中,所述第一用户为所述第二用户的用户关系链上的用户;或,所述第二用户为所述第一用户的用户关系链上的用户;或,所述第一用户和所述第二用户同属于一条用户关系链。

本发明实施例提供的装置,通过利用由用户的属性信息和用户之间的交互信息训练得到的用户关系分类模型,来对待识别的用户进行关系识别,由于在模型训练时是基于用户的属性信息和用户之间的交互信息等进行,因此,该用户关系分类模型能够表示用户之间的准确关系,从而达到对用户之间的关系进行识别的目的,且识别所得到的用户关系准确性高,有利于后续有针对性的制定用户之间的关系进行应用的策略,为商业运营等提供了有力依据。

图6是本发明实施例提供的一种电子设备的结构框图。该电子设备可以用于执行上述各个实施例中提供的识别用户关系的方法。参见图6,该电子设备600包括:电子设备600可以包括一个或者一个以上处理核心的处理器110、一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、通信模块150等部件。本领域技术人员可以理解,图6中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

通信模块150可以包括rf(radiofrequency,射频)电路和wifi(wirelessfidelity,无线保真)模块中至少一项。rf电路可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器110处理;另外,将涉及上行的数据发送给基站。通常,rf电路包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(sim)卡、收发信机、耦合器、lna(lownoiseamplifier,低噪声放大器)、双工器等。此外,rf电路还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于gsm(globalsystemofmobilecommunication,全球移动通讯系统)、gprs(generalpacketradioservice,通用分组无线服务)、cdma(codedivisionmultipleaccess,码分多址)、wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)、lte(longtermevolution,长期演进)、电子邮件、sms(shortmessagingservice,短消息服务)等。wifi属于短距离无线传输技术,电子设备600通过wifi模块可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。

存储器120可用于存储软件程序以及模块,处理器110通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备600的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器110和输入单元130对存储器120的访问。

输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接电子设备。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元140可用于显示由用户输入的信息或提供给用户的信息以及电子设备600的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用lcd(liquidcrystaldisplay,液晶显示器)、oled(organiclight-emittingdiode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图6中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。该显示单元140可用于显示待识别用户的属性信息和用户之间的交互信息,并通过输入单元130等所输入的操作对待识别用户的属性信息和用户之间的交互信息进行操作,例如触发识别流程等。

处理器110是电子设备600的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行电子设备600的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器110可包括一个或多个处理核心;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。

电子设备600还包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

尽管未示出,电子设备600还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,电子设备的显示单元是触摸屏显示器,电子设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。所述一个或者一个以上程序包含用于执行图2所示实施例中所执行操作的指令。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由电子设备中的处理器执行以完成下述实施例中的识别用户关系的方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

图7是本发明实施例提供的一种识别用户关系的装置的结构框图。例如,装置700可以被提供为一服务器。参照图7,装置700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理部件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述图2所示实施例提供的识别用户关系的方法。

装置700还可以包括一个电源组件726被配置为执行装置700的电源管理,一个有线或无线网络接口750被配置为将装置700连接到网络,和一个输入输出(i/o)接口758。装置700可以操作基于存储在存储器732的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述实施例所提供的识别用户关系的方法。例如,所述计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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