符号预测方法及装置与流程

文档序号:12825756阅读:249来源:国知局
符号预测方法及装置与流程

本发明实施例属于社交网络领域,尤其涉及一种符号预测方法及装置。



背景技术:

近年来,符号预测是社交网络研究的重要内容,在社交网络中,正链接通常表示友好、喜欢、信任等关系,负链接表示敌对、不喜欢、不信任等关系,符号预测就是预测个体间可能出现的对立关系。对符号社交网络中链接的正负预测即符号预测,符号预测对社交网络的个性化推荐、网络中异常节点的识别、用户聚类等都具有非常重要的应用价值。

现有技术中,对于现有符号预测算法主要有基于信任传播模型、基于矩阵分解或矩阵填充、基于网络结构以及基于网络上下文等符号预测算法。具体地,guha等人得到4种用于预测正负关系的传播模型来发现符号社交网络中每个用户仅提供少量信任或不信任关系,从而预测出网络中任意两个用户之间信任与否;hsieh等人将符号预测问题转化为低秩矩阵填充问题,用低秩矩阵填充算法有效地预测网络中未知的边的符号。但这两种符号预测算法计算准确率还比较低,且不适合应用于复杂网络领域。

故,有必要提出一种新的技术方案,以解决上述技术问题。



技术实现要素:

鉴于此,本发明实施例提供了一种符号预测方法及装置,旨在解决现有的符号预测方法计算效率较低且不适合应用于复杂网络领域的问题。

本发明实施例是这样实现的,一种符号预测方法,所述符号预测方法包括:

定义邻接矩阵表示社交网络,构建所述社交网络的网络模型并初始化;

将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布;

基于模型选择标准和所述模型参数的后验近似分布选取最优模型;

基于所述最优模型按照预定义算法进行符号预测。

本发明实施例的另一目的在于提供一种符号预测装置,所述符号预测装置包括:

构建单元,用于定义邻接矩阵表示社交网络,构建所述社交网络的网络模型并初始化;

拟合单元,用于将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布;

最优模型选取单元,用于基于模型选择标准和所述模型参数的后验近似分布选取最优模型;

符号预测单元,用于基于所述最优模型按照预定义算法进行符号预测。

在本发明实施例中,通过定义邻接矩阵表示社交网络,构建所述社交网络的网络模型并初始化,将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布,再基于模型选择标准和所述模型参数的后验近似分布选取最优模型,最后基于所述最优模型按照预定义算法进行符号预测,该方法适用于简单网络和复杂网络,并提高了符号预测的准确率。

附图说明

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

图1是本发明第一实施例提供的一种符号预测方法的流程图;

图2是本发明第一实施例提供的一种符号预测方法的示意图;

图3是本发明第二实施例提供的一种符号预测装置的结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

实施例一:

图1示出了本发明第一实施例提供的一种符号预测方法的流程图,详述如下:

步骤s11,定义邻接矩阵表示社交网络,构建所述社交网络网络模型并初始化。

在本实施例中,定义一个邻接矩阵a表示社交网络n,所述邻接矩阵a中的元素aij表示所述社交网络n中节点i和节点j的链接,其中i与j分别表示节点i和节点j。aij=1表示节点i与节点j之间存在一条正链接,aij=-1表示节点i与节点j之间存在一条负链接,aij=0表示节点i与节点j之间无链接。

构建所述社交网络n的网络模型nm并初始化该网络模型nm,所述网络模型nm=(n,k,z,π,ω),其中,n,k,z,π,ω都为所述网络模型nm中的模型参数,n表示所述网络模型中节点的数量,k表示所述网络模型中的块数,k用于表示社交网络中所包含的社区数,k∈[1,n],z为n×k维向量,用于指示每个节点所属的块,π是k×k×3维向量,用于表示所述网络模型中块间连接的概率,ω是k维向量,用于表示节点属于所述网络模型中的块的概率。

具体地,在本实施例中,所述网络模型nm=(n,k,z,π,ω)中,参数π满足以下关系:

且πlq具有如下先验分布:

其中,γ(x)表示gamma函数(伽玛函数),h={1,2,3},h=1表示块l中节点i与块q中节点j之间存在一条正链接,h=2表示块l中节点i与块q中节点j之间不存在链接,h=3表示块l中节点i与块q中节点j之间存在一条负链接。πlq1表示块l与块q间节点存在一条正链接的概率,πlq2表示块l与块q间节点没有链接的概率,πlq3表示块l与块q间节点存在一条负链接的概率,表示参数π先验分布的参数,其取值范围为[0,+∞)。

参数ω满足以下关系:

且ω具有如下先验分布:

其中,γ(x)表示gamma函数(伽玛函数),k表示所述网络模型的块数,k为正整数,k∈[kmin,kmax],kmin∈[1,n],kmax∈[1,n]。ρ0是参数ω的先验分布p(ω)中的参数,其取值范围为(0,+∞)。

步骤s12,将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布。

在本实施例中,将所述网络模型nm与社交网络n拟合,即,将所述网络模型nm与所述邻接矩阵a拟合,所述步骤s12具体包括:

a1、将所述网络模型nm与所述邻接矩阵a拟合,其中,每个k值对应一个网络模型nm,估计所述网络模型nm中的模型参数π、ω及z的后验近似分布。

具体地,在计算过程中,参数k∈[1,n],每个k值对应一个网络模型nm,即每个k值对应一个具体参数值π、ω和z的后验近似分布。根据以下步骤计算模型参数π、ω和z的后验近似分布:

令(z,π,ω)的后验近似分布为q(z,π,ω),且具有以下表达式:

其中,zik是指示向量用于指示节点i是否属于块k,如果zik=1则节点i属于块k,如果zik=0则节点i不属于块k。τik是指示向量z的后验近似分布中的参数,其取值范围为[0,1],ηlq是参数π的后验近似分布的参数,其取值范围为[0,+∞)。

上世纪90年代,变分推断在概率模型上得到迅速发展,在贝叶斯框架下一般的变分法可应用于隐马尔科夫模型,混合因子分析,线性动力学,图模型等。变分贝叶斯是一类用于贝叶斯估计和机器学习领域中近似计算复杂积分的技术。它主要应用于复杂的统计模型中。通过公式(5)(6)(7)(8)计算模型参数π、ω和z的后验近似分布,以便通过这些参数的变量作出统计推断。

步骤s13,基于模型选择标准和所述模型参数的后验近似分布选取最优模型。

在本实施例中,所述步骤s13具体包括:

b1、基于变分贝叶斯方法结合所述网络模型nm推理获得模型选择标准h。具体地,所述模型选择标准h是基于变分贝叶斯方法结合网络模型nm推理获得,其具体形式如下:

b2、基于所述模型选择标准h和所述模型参数π、ω及z的后验近似分布,计算每个k值对应的网络模型nm的证据值hk。

具体地,为获取每个k值对应的网络模型nm的证据值hk(也称边际似然估计),先确定所述模型参数π、ω及z的后验近似分布的模型参数(τ,η,ρ)的最优值。

初始化模型参数(τ,η,ρ,η00),其中,η0是参数π先验分布中的参数,ρ0是参数ω先验分布中的参数,k∈[kmin,kmax],,kmin∈[1,n],kmax∈[1,n]。基于变分贝叶斯方法和步骤s12中的公式(5)(6)(7)(8),推理获得公式(9)(10)(11)所示的具体表达式。

根据如下公式(9),计算z近似分布的参数值,其中,τil表示节点i指向块l的概率。

其中,ψ(·)是digamma函数(伽玛函数对数的导数),∝表示“正比于”,当计算完τ后对其进行标准化使之满足

根据如下公式(10)(11),分别计算参数π和ω近似分布的参数值:

此时,确定一个k值,k的取值范围为[kmin,kmax],根据上述公式(9)(10)(11)的计算,获得一组参数(τ,η,ρ)的参数值,根据这一组参数值以及公式(12),计算对应的网络模型证据值hfront;公式(9)(10)(11)通过迭代的方式计算获得参数(τ,η,ρ)的下一组参数值,并根据公式(12)计算对应的网络模型证据值hnext,将hnext与hfront进行比较,当hnext与hfront的差值大于预定值δ,则继续进行迭代计算参数值;当hnext与hfront的差值小于预定值δ,则结束迭代,并确定网络模型证据值hnext对应的参数值为最优解并输出,同时,确定该k值对应的网络模型证据值为hnext。根据上述方法计算每一个k值下输出的参数(τ,η,ρ)的参数值以及对应的网络模型证据值hk。

b3、选择最大的证据值hk所对应的网络模型nm作为最优模型nmoptim。

具体地,对于一个特定网络模型nm,其网络模型证据值越高,则所述网络模型nm对社交网络的拟合程度越好,因此,选择证据值hk最大所对应的网络模型nm作为最优模型nmoptim。

步骤s14,基于所述最优模型按照预定义算法进行符号预测。

在本实施例中,根据步骤s13中获得最优模型nmoptim,所述步骤s14具体包括:

基于所述最优模型nmoptim中参数π的后验近似分布,按照预定义公式进行符号预测。其中,根据步骤s12中的公式(7)得到参数π的后验近似分布q(π)。

具体地,所述预定义算法如下:

节点i和节点j间的链接符号根据以下公式(13)确定:

具体地,l和q分别表示块l与块q,其中,节点i属于块l,节点j属于块q,表示块l中节点i与块q中节点j之间存在一条正链接的概率,表示块l中节点i与块q中节点j之间存在一条负链接的概率,ηlq表示参数π的后验近似分布的参数值,。

具体地,以一个应用实施例为例,如图2所示,定义邻接矩阵a用于表示社交网络n,定义社区数即块数k的变化范围为[kmin,kmax],k=kmin,构建所述社交网络对应的网络模型nmk,并初始化所述网络模型nmk,所述网络模型nmk=(n,k,z,π,ω),估计参数π,ω,z的后验近似分布,计算所述网络模型nmk的证据值hk,判断此时k值是否为kmax,若不是,则令k=k+1,重复上述步骤,若此时k值为kmax,则选取证据值hk最大的k值对应的网络模型nmk作为最优网络模型nmoptim,最后基于最优网络模型nmoptim中参数π的后验近似分布预测符号。

本发明第一实施例中,通过定义邻接矩阵表示社交网络,构建所述社交网络的网络模型并初始化,将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布,再基于模型选择标准和所述模型参数的后验近似分布选取最优模型参数,同时确定最优模型,最后基于所述最优模型按照预定义算法进行符号预测,该方法适用于简单网络和复杂网络,并提高了符号预测的准确率。

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

实施例二:

图3示出了本发明第二实施例提供的一种符号预测装置的结构图。为了便于说明,仅示出了与本发明实施例相关的部分。

该符号预测装置包括:构建单元21、拟合单元22、最优模型选取单元23、符号预测单元24,其中:

构建单元21,用于定义邻接矩阵表示社交网络,构建所述社交网络的网络模型并初始化。

进一步地,所述构建单元21具体包括:

定义模块,用于定义一个邻接矩阵a表示社交网络,所述邻接矩阵a中的元素aij表示所述社交网络中节点i和节点j的链接,其中i与j分别表示节点i和节点j;aij=1表示节点i与节点j之间存在一条正链接,aij=-1表示节点i与节点j之间存在一条负链接,aij=0表示节点i与节点j之间无链接。

构建模块,用于构建所述社交网络的网络模型nm并初始化,所述网络模型nm=(n,k,z,π,ω),其中,n,k,z,π,ω都为所述网络模型nm中的模型参数,n表示所述网络模型中节点的数量,k表示所述网络模型中的块数,用于表示社交网络中所包含的社区数,k∈[1,n],z为n×k维向量,用于指示每个节点所属的块,π是k×k×3维向量,用于表示所述网络模型中块间连接的概率,ω是k维向量,用于表示节点属于所述网络模型中的块的概率。

具体地,在本实施例中,所述网络模型nm=(n,k,z,π,ω)中,参数π满足以下关系:

且πlq具有如下先验分布:

其中,γ(x)表示gamma函数(伽玛函数),h={1,2,3},h=1表示块l中节点i与块q中节点j之间存在一条正链接,h=2表示块l中节点i与块q中节点j之间不存在链接,h=3表示块l中节点i与块q中节点j之间存在一条负链接。πlq1表示块l与块q间节点存在一条正链接的概率,πlq2表示块l与块q间节点没有链接的概率,πlq3表示块l与块q间节点存在一条负链接的概率,表示参数π先验分布的参数,其取值范围为[0,+∞)。

参数ω满足以下关系:

且ω具有如下先验分布:

其中,γ(x)表示gamma函数(伽玛函数),k表示所述网络模型的块数,k∈[1,n],k∈[kmin,kmax],kmin∈[1,n],kmax∈[1,n]。ρ0是参数ω的先验分布p(ω)中的参数,其取值范围为(0,+∞)。拟合单元22,用于将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布。

在本实施例中,将所述网络模型nm与社交网络n拟合,即,将所述网络模型nm与所述邻接矩阵a拟合。

进一步地,所述拟合单元22具体包括:

拟合模块,用于将所述网络模型nm与所述邻接矩阵a拟合,其中,k∈[1,n],每个k值对应一个网络模型nm,估计所述网络模型nm中的模型参数π、ω及z的后验近似分布。

具体地,在计算过程中,参数k∈[1,n],每个k值对应一个网络模型nm,即每个k值对应一个具体参数值π、ω和z的后验分布。根据以下步骤计算模型参数π、ω和z的后验近似分布:

令(z,π,ω)的后验近似分布为q(z,π,ω),且具有以下表达式:

其中,zik是指示向量用于指示节点i是否属于块k,如果zik=1则节点i属于块k,如果zik=0则节点i不属于块k。τik是指示向量z的后验近似分布中的参数,其取值范围为[0,1],ηlq是参数π的后验近似分布的参数,其取值范围为[0,+∞)。

上世纪90年代,变分推断在概率模型上得到迅速发展,在贝叶斯框架下一般的变分法可应用于隐马尔科夫模型,混合因子分析,线性动力学,图模型等。变分贝叶斯是一类用于贝叶斯估计和机器学习领域中近似计算复杂积分的技术。它主要应用于复杂的统计模型中。通过公式(5)(6)(7)(8)计算模型参数π、ω和z的后验近似分布,以便通过这些参数的变量作出统计推断。

最优模型选取单元23,用于基于模型选择标准和所述模型参数的后验近似分布选取最优模型。

进一步地,所述最优模型选取单元23具体包括:

标准获取模块,用于基于变分贝叶斯方法结合所述网络模型nm获得模型选择标准h。具体地,所述模型选择标准h是基于变分贝叶斯方法结合网络模型nm推理获得,其具体形式如下:

证据值计算模块,用于基于所述模型选择标准h和所述模型参数π、ω及z的后验近似分布,计算每个k值对应的网络模型nm的证据值。

具体地,为获取每个k值对应的网络模型nm的证据值hk(也称边际似然估计),先确定所述模型参数π、ω及z的后验近似分布的模型参数(τ,η,ρ)的最优值。

初始化模型参数(τ,η,ρ,η00),其中,η0是参数π先验分布中的参数,ρ0是参数ω先验分布中的参数,k∈[kmin,kmax],,kmin∈[1,n],kmax∈[1,n]。基于变分贝叶斯方法和步骤s12中的公式(5)(6)(7)(8),推理获得公式(9)(10)(11)所示的具体表达式。

根据如下公式(9),计算z近似分布的参数值,其中,τil表示节点i指向块l的概率。

其中,ψ(·)是digamma函数(伽玛函数对数的导数),∝表示“正比于”,当计算完τ后对其进行标准化使之满足

根据如下公式(10)(11),分别计算参数π和ω近似分布的参数值:

此时,确定一个k值,k的取值范围为[kmin,kmax],根据上述公式(9)(10)(11)的计算,获得参数(τ,η,ρ)的一组参数值,根据这一组参数值以及公式(12),计算对应的网络模型证据值hfront;公式(9)(10)(11)通过迭代的方式计算获得参数(τ,η,ρ)的下一组参数值,并根据公式(12)计算对应的网络模型证据值hnext,将hnext与hfront进行比较,当hnext与hfront的差值大于预定值δ,则继续进行迭代计算参数值;当hnext与hfront的差值小于预定值δ,则结束迭代,并确定网络模型证据值hnext对应的参数值为最优解并输出,同时,确定该k值对应的网络模型证据值为hnext。根据上述方法计算每一个k值下输出的参数(τ,η,ρ)的参数值以及对应的网络模型证据值hk。

选取模块,用于选择最大的证据值hk所对应的网络模型nm作为最优模型nmoptim。

具体地,对于一个特定网络模型nm,其网络模型证据值越高,则所述网络模型nm对社交网络的拟合程度越好,因此,选择证据值hk最大所对应的网络模型nm作为最优模型nmoptim。

符号预测单元24,用于基于所述最优模型按照预定义算法进行符号预测。

进一步地,所述符号预测单元24具体包括:

符号预测模块,用于基于所述最优模型nmoptim中参数π的后验近似分布,按照预定义算法进行符号预测。其中,根据公式(7)得到参数π的后验近似分布q(π)。

其中,所述预定义算法如下:

节点i和节点j间的链接符号根据以下公式(13)确定:

具体地,l和q分别表示块l与块q,其中,节点i属于块l,节点j属于块q,表示块l中节点i与块q中节点j之间存在一条正链接的概率,表示块l中节点i与块q中节点j之间存在一条负链接的概率,ηlq表示参数π的后验近似分布的参数值。

本发明第二实施例中,通过定义邻接矩阵表示社交网络,构建所述社交网络的网络模型并初始化,将所述网络模型与所述邻接矩阵拟合,计算所述网络模型的模型参数的后验近似分布,再基于模型选择标准和所述模型参数的后验近似分布选取最优模型参数,同时确定最优模型,最后基于所述最优模型按照预定义算法进行符号预测,该方法适用于简单网络和复杂网络,并提高了符号预测的准确率。

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

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

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

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

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

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

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

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