一种多特征融合的社交网络好友推荐方法及装置

文档序号:26506948发布日期:2021-09-04 08:55阅读:227来源:国知局
一种多特征融合的社交网络好友推荐方法及装置

1.本申请涉及复杂网络的信息挖掘技术领域,尤其涉及一种多特征融合的社交网络好友推荐方法及装置。


背景技术:

2.随着社交网络的蓬勃发展,越来越多的人开始使用facebook、微信等虚拟社交平台。社交网络变得更加庞大而复杂,蕴含着大量有价值的信息。将社交网络中的用户抽象为节点,将用户之间的联系抽象为节点之间的连边,以此可以构建复杂网络。社区作为一种数据组织形式广泛存在于各种复杂网络中,在社交网络中拥有相同兴趣的用户往往形成同一社区。社交网络中的好友推荐功能,利用用户之间的兴趣爱好和联系进行好友推荐,社交平台上的好友推荐功能作为信息过滤的重要手段,可以通过社区划分向用户推荐具有相同或相似兴趣的用户。
3.现有技术中,大多数社交软件是基于某一个特征来对目标用户进行好友推荐。特征包括节点重要性、共同好友数以及最短路径等,根据任一特征,对目标用户所在社区内的其他用户进行排序,通过排序结果确定最终的好友推荐列表。其中节点重要性包括度数、介数和紧密度,用于衡量复杂网络中,其他节点对于目标节点的重要性。例如:qq是根据目标用户与其他用户之间的共同好友数进行好友推荐。微信提供了“摇一摇”功能进行基于地域距离的好友推荐(最短路径)。
4.尽管现有的社交网络好友推荐方法已取得较好的推荐效果,然而大多数方法主要以单一特征进行衡量,在一定程度上存在局限性和片面性。由于现实世界的社交网络是极为复杂的,单一的特征可能仅适合特定的网络拓扑结构。因此,仅采用单一特征进行好友推荐,存在很大局限性。


技术实现要素:

5.本申请公开的一种多特征融合的社交网络好友推荐方法及装置,用于解决现有技术中的社交网络好友推荐方法,仅采用单一特征进行衡量,存在局限性和片面性的技术问题。
6.本申请第一方面公开了一种多特征融合的社交网络好友推荐方法,包括:
7.获取目标用户,并确定目标社区,所述目标社区为所述目标用户所在的任一社区;
8.根据所述目标社区,获取第一特征、第二特征和第三特征,所述第一特征为其他用户的节点重要性,所述第二特征为所述目标用户与所述其他用户之间的共同好友数,所述第三特征为所述目标用户与所述其他用户之间的最短路径;所述其他用户是指所述目标社区内除所述目标用户外的用户;
9.根据所述第一特征、所述第二特征和所述第三特征,确定第一特征向量、第二特征向量和第三特征向量;
10.根据所述第一特征向量和预设的第一初始权重确定第一均方误差,以及根据所述
第二特征向量和预设的第二初始权重确定第二均方误差,以及根据所述第三特征向量和预设的第三初始权重确定第三均方误差;所述第一初始权重为所述第一特征的初始权重,所述第二初始权重为所述第二特征的初始权重,所述第三初始权重为所述第三特征的初始权重,所述第一初始权重、所述第二初始权重和所述第三初始权重的和为1;
11.确定第一偏导数、第二偏导数和第三偏导数;所述第一偏导数是指所述第一均方误差关于所述第一初始权重的偏导数,所述第二偏导数是指所述第二均方误差关于所述第二初始权重的偏导数,所述第三偏导数是指所述第三均方误差关于所述第三初始权重的偏导数;
12.根据所述第一偏导数和预设的学习率,对所述第一初始权重进行迭代处理,确定所述第一特征的最优权重;
13.根据所述第二偏导数和所述学习率,对所述第二初始权重进行迭代处理,确定所述第二特征的最优权重;
14.根据所述第三偏导数和所述学习率,对所述第三初始权重进行迭代处理,确定所述第三特征的最优权重;
15.根据所述第一特征的最优权重、所述第一特征向量、所述第二特征的最优权重、所述第二特征向量、所述第三特征的最优权重以及所述第三特征向量,确定所述目标用户与所述其他用户成为好友的可能性;
16.根据所述目标用户与所述其他用户成为好友的可能性,确定好友推荐列表。
17.可选的,获取目标用户,并确定目标社区,包括:
18.获取所述目标用户所在的社交网络;
19.对所述目标用户所在社交网络进行社区划分,确定社区划分信息;
20.根据所述社区划分信息,确定所述目标社区。
21.可选的,所述根据所述第一偏导数和预设的学习率,对所述第一初始权重进行迭代处理,确定所述第一特征的最优权重,包括:
22.通过如下公式迭代获取所述第一特征的最优权重:
[0023][0024][0025]
...
[0026][0027]
其中,θ
a1
表示所述第一初始权重,θ
a2
表示所述第一特征经过一次迭代后的权重,θ
a3
表示所述第一特征经过两次迭代后的权重,θ
an
‑1表示所述第一特征经过n

2次迭代后的权重,θ
an
表示所述第一特征的最优权重,α表示所述学习率,表示所述第一偏导数。
[0028]
可选的,所述根据所述第二偏导数和所述学习率对所述第二初始权重进行迭代处理,确定所述第二特征的最优权重,包括:
[0029]
通过如下公式迭代获取所述第二特征的最优权重:
[0030][0031][0032]
...
[0033][0034]
其中,θ
b1
表示所述第二初始权重,θ
b2
表示所述第二特征经过一次迭代后的权重,θ
b3
表示所述第二特征经过两次迭代后的权重,θ
bn
‑1表示所述第二特征经过n

2次迭代后的权重,θ
bn
表示所述第二特征的最优权重,α表示所述学习率,表示所述第二偏导数。
[0035]
可选的,所述根据所述第三偏导数和所述学习率对所述第三初始权重进行迭代处理,确定所述第三特征的最优权重,包括:
[0036]
通过如下公式迭代获取所述第三特征的最优权重:
[0037][0038][0039]
...
[0040][0041]
其中,θ
c1
表示所述第三初始权重,θ
c2
表示所述第三特征经过一次迭代后的权重,θ
c3
表示所述第三特征经过两次迭代后的权重,θ
cn
‑1表示所述第三特征经过n

2次迭代后的权重,θ
cn
表示所述第三特征的最优权重,α表示所述学习率,表示所述第三偏导数。
[0042]
可选的,根据所述第一特征的最优权重、所述第一特征向量、所述第二特征的最优权重、所述第二特征向量、所述第三特征的最优权重以及所述第三特征向量,确定所述目标用户与所述其他用户成为好友的可能性,包括:
[0043]
通过如下公式确定所述目标用户与所述其他用户成为好友的可能性:
[0044][0045]
其中,表示所述目标用户与所述其他用户成为好友的可能性,所述θ
an
表示所述第一特征的最优权重,x
(a)
表示所述第一特征向量,θ
bn
表示所述第二特征的最优权重,x
(b)
所述第二特征向量,θ
cn
表示所述第三特征的最优权重,x
(c)
所述第三特征向量。
[0046]
可选的,根据所述目标用户与所述其他用户成为好友的可能性,确定好友推荐列
表,包括:
[0047]
将所述目标用户与所述其他用户成为好友的可能性按照从大到小的方式进行排序,确定目标列表;
[0048]
根据所述目标列表,确定为所述好友推荐列表。
[0049]
本申请第二方面公开了一种多特征融合的社交网络好友推荐装置,所述多特征融合的社交网络好友推荐装置应用于本申请第一方面公开的多特征融合的社交网络好友推荐方法,所述多特征融合的社交网络好友推荐装置包括:
[0050]
目标用户获取模块,用于获取目标用户,并确定目标社区,所述目标社区为所述目标用户所在的任一社区;
[0051]
特征获取模块,用于根据所述目标社区,获取第一特征、第二特征和第三特征,所述第一特征为其他用户的节点重要性,所述第二特征为所述目标用户与所述其他用户之间的共同好友数,所述第三特征为所述目标用户与所述其他用户之间的最短路径;所述其他用户是指所述目标社区内除所述目标用户外的用户;
[0052]
特征向量获取模块,用于根据所述第一特征、所述第二特征和所述第三特征,确定第一特征向量、第二特征向量和第三特征向量;
[0053]
均方误差计算模块,用于根据所述第一特征向量和预设的第一初始权重确定第一均方误差,以及根据所述第二特征向量和预设的第二初始权重确定第二均方误差,以及根据所述第三特征向量和预设的第三初始权重确定第三均方误差;所述第一初始权重为所述第一特征的初始权重,所述第二初始权重为所述第二特征的初始权重,所述第三初始权重为所述第三特征的初始权重,所述第一初始权重、所述第二初始权重和所述第三初始权重的和为1;
[0054]
偏导数计算模块,用于确定第一偏导数、第二偏导数和第三偏导数;所述第一偏导数是指所述第一均方误差关于所述第一初始权重的偏导数,所述第二偏导数是指所述第二均方误差关于所述第二初始权重的偏导数,所述第三偏导数是指所述第三均方误差关于所述第三初始权重的偏导数;
[0055]
第一最优权重计算模块,用于根据所述第一偏导数和预设的学习率,对所述第一初始权重进行迭代处理,确定所述第一特征的最优权重;
[0056]
第二最优权重计算模块,用于根据所述第二偏导数和所述学习率,对所述第二初始权重进行迭代处理,确定所述第二特征的最优权重;
[0057]
第三最优权重计算模块,用于根据所述第三偏导数和所述学习率,对所述第三初始权重进行迭代处理,确定所述第三特征的最优权重;
[0058]
可能性获取模块,用于根据所述第一特征的最优权重、所述第一特征向量、所述第二特征的最优权重、所述第二特征向量、所述第三特征的最优权重以及所述第三特征向量,确定所述目标用户与所述其他用户成为好友的可能性;
[0059]
好友推荐列表获取模块,用于根据所述目标用户与所述其他用户成为好友的可能性,确定好友推荐列表。
[0060]
可选的,所述目标用户获取模块包括:
[0061]
社交网络获取单元,用于获取所述目标用户所在的社交网络;
[0062]
社区划分单元,用于对所述目标用户所在社交网络进行社区划分,确定社区划分
信息;
[0063]
目标社区获取单元,用于根据所述社区划分信息,确定所述目标社区。
[0064]
可选的,所述第一最优权重计算模块用于通过如下公式迭代获取所述第一特征的最优权重:
[0065][0066][0067]
...
[0068][0069]
其中,θ
a1
表示所述第一初始权重,θ
a2
表示所述第一特征经过一次迭代后的权重,θ
a3
表示所述第一特征经过两次迭代后的权重,θ
an
‑1表示所述第一特征经过n

2次迭代后的权重,θ
an
表示所述第一特征的最优权重,α表示所述学习率,表示所述第一偏导数。
[0070]
可选的,所述第二最优权重计算模块用于通过如下公式迭代获取所述第二特征的最优权重:
[0071][0072][0073]
...
[0074][0075]
其中,θ
b1
表示所述第二初始权重,θ
b2
表示所述第二特征经过一次迭代后的权重,θ
b3
表示所述第二特征经过两次迭代后的权重,θ
bn
‑1表示所述第二特征经过n

2次迭代后的权重,θ
bn
表示所述第二特征的最优权重,α表示所述学习率,表示所述第二偏导数。
[0076]
可选的,所述第三最优权重计算模块用于通过如下公式迭代获取所述第三特征的最优权重:
[0077][0078][0079]
...
[0080][0081]
其中,θ
c1
表示所述第三初始权重,θ
c2
表示所述第三特征经过一次迭代后的权重,θ
c3
表示所述第三特征经过两次迭代后的权重,θ
cn
‑1表示所述第三特征经过n

2次迭代后的权重,θ
cn
表示所述第三特征的最优权重,α表示所述学习率,表示所述第三偏导数。
[0082]
可选的,所述可能性获取模块用于通过如下公式确定所述目标用户与所述其他用户成为好友的可能性:
[0083][0084]
其中,表示所述目标用户与所述其他用户成为好友的可能性,所述θ
an
表示所述第一特征的最优权重,x
(a)
表示所述第一特征向量,θ
bn
表示所述第二特征的最优权重,x
(b)
所述第二特征向量,θ
cn
表示所述第三特征的最优权重,x
(c)
所述第三特征向量。
[0085]
可选的,所述好友推荐列表获取模块包括:
[0086]
目标列表获取单元,用于将所述目标用户与所述其他用户成为好友的可能性按照从大到小的方式进行排序,确定目标列表;
[0087]
好友推荐列表获取单元,根据所述目标列表,确定为所述好友推荐列表。
[0088]
本申请涉及复杂网络的信息挖掘技术领域,公开了一种多特征融合的社交网络好友推荐方法及装置。在该方法中,首先对目标用户所在社区进行划分,确定任一社区内其他用户的节点重要性(度数、介数和紧密度),进一步融合共同好友数以及最短路径的信息,求取不同特征的最优权重。根据不同特征的最优权重,确定社区内其他用户与目标用户成为好友的可能性,并根据可能性将其他用户进行排序,获取最终的好友推荐列表。本申请融入了多特征融合的节点重要性、共同好友数以及最短路径三个特征,通过梯度下降获取每个特征的最优权重,确定目标用户最终的好友推荐列表,能够有效解决仅采用单一特征进行好友推荐,存在局限性和片面性的技术问题。
附图说明
[0089]
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0090]
图1为本申请实施例公开的一种多特征融合的社交网络好友推荐方法的工作流程示意图;
[0091]
图2为本申请实施例公开的一种多特征融合的社交网络好友推荐装置的结构示意图。
具体实施方式
[0092]
为了解决现有技术中的社交网络好友推荐方法,仅采用单一特征进行衡量,存在局限性和片面性的技术问题,本申请通过以下两个实施例公开了一种多特征融合的社交网
络好友推荐方法及装置。
[0093]
本申请第一实施例公开了一种多特征融合的社交网络好友推荐方法,参见图1所示的工作流程示意图,所述多特征融合的社交网络好友推荐方法包括:
[0094]
步骤s101,获取目标用户,并确定目标社区,所述目标社区为所述目标用户所在的任一社区。
[0095]
进一步的,获取目标用户,并确定目标社区,包括:
[0096]
获取所述目标用户所在的社交网络。
[0097]
对所述目标用户所在社交网络进行社区划分,确定社区划分信息。
[0098]
根据所述社区划分信息,确定所述目标社区。
[0099]
具体来说,首先获取目标用户所在的社交网络数据,对目标用户所在的社交网络进行社区划分,以便在同一社区中为用户推荐潜在的好友。
[0100]
在本申请的部分实施例中,采用louvain算法进行社区划分,使用模块度作为评估社区划分结果优劣的衡量指标,模块度的定义为:
[0101][0102][0103]
其中,q表示模块度、a
ij
表示节点i与节点j之间连边的权重,如果是无权图,所有的边权重可以看作是1;k
i
表示节点i的度,k
j
表示节点j的度;c
i
表示节点i所在的社区,c
j
表示节点j所在的社区,若节点i和节点j属于相同的社区,则δ(c
i
,c
j
)为1,否则为0。
[0104]
令e
ij
为节点i所在社区与节点j所在社区内的边数之和与总边数的比值,a
i
表示节点i所在社区内的边数与整个社交网络总边数的比值,即:
[0105][0106][0107]
为了简化模块度的计算,若社交网络被分割为n个社区,模块度q的计算方式可定义为:
[0108][0109]
对社交网络进行社区划分时,每次划分计算依次模块度,模块度取值越大则划分结果越优。
[0110]
步骤s102,根据所述目标社区,获取第一特征、第二特征和第三特征,所述第一特征为其他用户的节点重要性,所述第二特征为所述目标用户与所述其他用户之间的共同好友数,所述第三特征为所述目标用户与所述其他用户之间的最短路径。所述其他用户是指所述目标社区内除所述目标用户外的用户。
[0111]
多特征融合计算节点重要性,在本申请的部分实施例中,采用d

s证据理论和topsis法进行社交网络的多特征融合实验。经过鲁棒性分析,依次对度数、介数和紧密度进行两两组合后,选择组合效果最优的组合度量社交网络中的节点重要性。这里使用了常用
的三种节点重要性指标,即度中心性、介数中心性和紧密中心性。此外为用户推荐潜在的好友需要综合考虑很多因素,本申请考虑共同好友数和最短路径两个特征。共同好友数越多的两个用户越有可能成为好友,最短路径的距离越小的两个用户越有可能成为好友。
[0112]
步骤s103,根据所述第一特征、所述第二特征和所述第三特征,确定第一特征向量、第二特征向量和第三特征向量。
[0113]
具体来说,将所述第一特征、所述第二特征和所述第三特征进行归一化处理,确定第一特征向量x
(a)
、所述第二特征向量x
(b)
、和所述第三特征向量x
(c)
。其中x
(a)
=(x
1(a)
,x
2(a)
,...,x
n(a)
),x
(b)
=(x
1(b)
,x
2(b)
,...,x
n(b)
),x
(c)
=(x
1(c)
,x
2(c)
,...,x
n(c)
),其中下标表示其他用户,例如:x
i(a)
表示第一特征向量中第i个用户的特征值(节点重要性)。
[0114]
步骤s104,根据所述第一特征向量和预设的第一初始权重确定第一均方误差,以及根据所述第二特征向量和预设的第二初始权重确定第二均方误差,以及根据所述第三特征向量和预设的第三初始权重确定第三均方误差。所述第一初始权重为所述第一特征的初始权重,所述第二初始权重为所述第二特征的初始权重,所述第三初始权重为所述第三特征的初始权重,所述第一初始权重、所述第二初始权重和所述第三初始权重的和为1。
[0115]
在本申请的部分实施例中,在多元线性回归中,将均方误差(mean square error,mse)作为损失函数。
[0116]
具体通过如下公式确定所述第一均方误差、所述第二均方误差和所述第三均方误差:
[0117][0118][0119][0120]
θ
t
=[θ
a

b

c
]
t

[0121]
θ
a

b

c
=1;
[0122]
其中,mse(θ
a
)表示第一均方误差,mse(θ
b
)表示第二均方误差,mse(θ
c
)示第三均方误差,n表示其他用户的个数,θ
t
表示第一初始权重θ
a
、第二初始权重θ
b
和第三初始权重θ
c
的组合转置向量。
[0123]
步骤s105,确定第一偏导数、第二偏导数和第三偏导数。所述第一偏导数是指所述第一均方误差关于所述第一初始权重的偏导数,所述第二偏导数是指所述第二均方误差关于所述第二初始权重的偏导数,所述第三偏导数是指所述第三均方误差关于所述第三初始权重的偏导数。
[0124]
在本申请的部分实施例中,使用梯度下降最小化mse(θ),需要计算mse(θ)关于每个初始权重的偏导数,也就是改变初始权重对于损失函数的该变量,具体通过如下公式确定所述第一偏导数、所述第二偏导数和所述第三偏导数:
[0125]
[0126][0127][0128]
其中,表示所述第一偏导数,表示所述第二偏导数,表示所述第三偏导数。
[0129]
得到所述第一偏导数、所述第二偏导数和所述第三偏导数后,需要结合步长来更新每一次迭代的参数,找到损失函数的最小值点,具体参见步骤s106至步骤s108。
[0130]
步骤s106,根据所述第一偏导数和预设的学习率,对所述第一初始权重进行迭代处理,确定所述第一特征的最优权重。
[0131]
进一步的,所述根据所述第一偏导数和预设的学习率,对所述第一初始权重进行迭代处理,确定所述第一特征的最优权重,包括:
[0132]
通过如下公式迭代获取所述第一特征的最优权重:
[0133][0134][0135]
...
[0136][0137]
其中,θ
a1
表示所述第一初始权重,θ
a2
表示所述第一特征经过一次迭代后的权重,θ
a3
表示所述第一特征经过两次迭代后的权重,θ
an
‑1表示所述第一特征经过n

2次迭代后的权重,θ
an
表示所述第一特征的最优权重,α表示所述学习率,也称为步长,表示所述第一偏导数。
[0138]
通过上述公式,根据第一初始权重求得下一次迭代的权重,将结果代入多元线性回归模型求得下一次的预测值,如此循环,直到θ
a
变化极小的时候停止迭代,获取所述第一特征的最优权重θ
an
,这里n为正整数,表示目前已经迭代了n

1次。
[0139]
步骤s107,根据所述第二偏导数和所述学习率,对所述第二初始权重进行迭代处理,确定所述第二特征的最优权重。
[0140]
进一步的,所述根据所述第二偏导数和所述学习率对所述第二初始权重进行迭代处理,确定所述第二特征的最优权重,包括:
[0141]
通过如下公式迭代获取所述第二特征的最优权重:
[0142]
[0143][0144]
...
[0145][0146]
其中,θ
b1
表示所述第二初始权重,θ
b2
表示所述第二特征经过一次迭代后的权重,θ
b3
表示所述第二特征经过两次迭代后的权重,θ
bn
‑1表示所述第二特征经过n

2次迭代后的权重,θ
bn
表示所述第二特征的最优权重,α表示所述学习率,表示所述第二偏导数。
[0147]
通过上述公式,根据第二初始权重求得下一次迭代的权重,将结果代入多元线性回归模型求得下一次的预测值,如此循环,直到θ
b
变化极小的时候停止迭代,获取所述第二特征的最优权重θ
bn
,这里n为正整数,表示目前已经迭代了n

1次。
[0148]
步骤s108,根据所述第三偏导数和所述学习率,对所述第三初始权重进行迭代处理,确定所述第三特征的最优权重。
[0149]
进一步的,所述根据所述第三偏导数和所述学习率对所述第三初始权重进行迭代处理,确定所述第三特征的最优权重,包括:
[0150]
通过如下公式迭代获取所述第三特征的最优权重:
[0151][0152][0153]
...
[0154][0155]
其中,θ
c1
表示所述第三初始权重,θ
c2
表示所述第三特征经过一次迭代后的权重,θ
c3
表示所述第三特征经过两次迭代后的权重,θ
cn
‑1表示所述第三特征经过n

2次迭代后的权重,θ
cn
表示所述第三特征的最优权重,α表示所述学习率,表示所述第三偏导数。
[0156]
通过上述公式,根据第三初始权重求得下一次迭代的权重,将结果代入多元线性回归模型求得下一次的预测值,如此循环,直到θ
c
变化极小的时候停止迭代,获取所述第三特征的最优权重θ
cn
,这里n为正整数,表示目前已经迭代了n

1次。
[0157]
步骤s109,根据所述第一特征的最优权重、所述第一特征向量、所述第二特征的最优权重、所述第二特征向量、所述第三特征的最优权重以及所述第三特征向量,确定所述目标用户与所述其他用户成为好友的可能性。
[0158]
进一步的,根据所述第一特征的最优权重、所述第一特征向量、所述第二特征的最优权重、所述第二特征向量、所述第三特征的最优权重以及所述第三特征向量,确定所述目
标用户与所述其他用户成为好友的可能性,包括:
[0159]
通过如下公式确定所述目标用户与所述其他用户成为好友的可能性:
[0160][0161]
其中,表示所述目标用户与所述其他用户成为好友的可能性,值越大,表示越有可能成为好友,所述θ
an
表示所述第一特征的最优权重,x
(a)
表示所述第一特征向量,θ
bn
表示所述第二特征的最优权重,x
(b)
所述第二特征向量,θ
cn
表示所述第三特征的最优权重,x
(c)
所述第三特征向量。
[0162]
步骤s110,根据所述目标用户与所述其他用户成为好友的可能性,确定好友推荐列表。
[0163]
进一步的,根据所述目标用户与所述其他用户成为好友的可能性,确定好友推荐列表,包括:
[0164]
将所述目标用户与所述其他用户成为好友的可能性按照从大到小的方式进行排序,确定目标列表。
[0165]
根据所述目标列表,确定为所述好友推荐列表。
[0166]
在实际操作过程中,根据实际情况的需要,选取所述目标列表排序靠前的用户,确定为所述好友推荐列表。
[0167]
本申请上述实施例公开的一种多特征融合的社交网络好友推荐方法,首先对目标用户所在社区进行划分,确定任一社区内其他用户的节点重要性(度数、介数和紧密度),进一步融合共同好友数以及最短路径的信息,求取不同特征的最优权重。根据不同特征的最优权重,确定社区内其他用户与目标用户成为好友的可能性,并根据可能性将其他用户进行排序,获取最终的好友推荐列表。本申请融入了多特征融合的节点重要性、共同好友数以及最短路径三个特征,通过梯度下降获取每个特征的最优权重,确定目标用户最终的好友推荐列表,能够有效解决仅采用单一特征进行好友推荐,存在局限性和片面性的技术问题。
[0168]
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
[0169]
本申请第二实施例公开了一种多特征融合的社交网络好友推荐装置,所述多特征融合的社交网络好友推荐装置应用于本申请第一实施例公开的多特征融合的社交网络好友推荐方法,参见图2所示的结构示意图,所述多特征融合的社交网络好友推荐装置包括:
[0170]
目标用户获取模块201,用于获取目标用户,并确定目标社区,所述目标社区为所述目标用户所在的任一社区。
[0171]
特征获取模块202,用于根据所述目标社区,获取第一特征、第二特征和第三特征,所述第一特征为其他用户的节点重要性,所述第二特征为所述目标用户与所述其他用户之间的共同好友数,所述第三特征为所述目标用户与所述其他用户之间的最短路径。所述其他用户是指所述目标社区内除所述目标用户外的用户。
[0172]
特征向量获取模块203,用于根据所述第一特征、所述第二特征和所述第三特征,确定第一特征向量、第二特征向量和第三特征向量。
[0173]
均方误差计算模块204,根据所述第一特征向量和预设的第一初始权重确定第一均方误差,以及根据所述第二特征向量和预设的第二初始权重确定第二均方误差,以及根
据所述第三特征向量和预设的第三初始权重确定第三均方误差。所述第一初始权重为所述第一特征的初始权重,所述第二初始权重为所述第二特征的初始权重,所述第三初始权重为所述第三特征的初始权重,所述第一初始权重、所述第二初始权重和所述第三初始权重的和为1。
[0174]
偏导数计算模块205,用于确定第一偏导数、第二偏导数和第三偏导数。所述第一偏导数是指所述第一均方误差关于所述第一初始权重的偏导数,所述第二偏导数是指所述第二均方误差关于所述第二初始权重的偏导数,所述第三偏导数是指所述第三均方误差关于所述第三初始权重的偏导数。
[0175]
第一最优权重计算模块206,用于根据所述第一偏导数和预设的学习率,对所述第一初始权重进行迭代处理,确定所述第一特征的最优权重。
[0176]
第二最优权重计算模块207,用于根据所述第二偏导数和所述学习率,对所述第二初始权重进行迭代处理,确定所述第二特征的最优权重。
[0177]
第三最优权重计算模块208,用于根据所述第三偏导数和所述学习率,对所述第三初始权重进行迭代处理,确定所述第三特征的最优权重。
[0178]
可能性获取模块209,用于根据所述第一特征的最优权重、所述第一特征向量、所述第二特征的最优权重、所述第二特征向量、所述第三特征的最优权重以及所述第三特征向量,确定所述目标用户与所述其他用户成为好友的可能性。
[0179]
好友推荐列表获取模块210,用于根据所述目标用户与所述其他用户成为好友的可能性,确定好友推荐列表。
[0180]
进一步的,所述目标用户获取模块包括:
[0181]
社交网络获取单元,用于获取所述目标用户所在的社交网络。
[0182]
社区划分单元,用于对所述目标用户所在社交网络进行社区划分,确定社区划分信息。
[0183]
目标社区获取单元,用于根据所述社区划分信息,确定所述目标社区。
[0184]
进一步的,所述第一最优权重计算模块用于通过如下公式迭代获取所述第一特征的最优权重:
[0185][0186][0187]
...
[0188][0189]
其中,θ
a1
表示所述第一初始权重,θ
a2
表示所述第一特征经过一次迭代后的权重,θ
a3
表示所述第一特征经过两次迭代后的权重,θ
an
‑1表示所述第一特征经过n

2次迭代后的权重,θ
an
表示所述第一特征的最优权重,α表示所述学习率,表示所述第一偏导数。
[0190]
进一步的,所述第二最优权重计算模块用于通过如下公式迭代获取所述第二特征的最优权重:
[0191][0192][0193]
...
[0194][0195]
其中,θ
b1
表示所述第二初始权重,θ
b2
表示所述第二特征经过一次迭代后的权重,θ
b3
表示所述第二特征经过两次迭代后的权重,θ
bn
‑1表示所述第二特征经过n

2次迭代后的权重,θ
bn
表示所述第二特征的最优权重,α表示所述学习率,表示所述第二偏导数。
[0196]
进一步的,所述第三最优权重计算模块用于通过如下公式迭代获取所述第三特征的最优权重:
[0197][0198][0199]
...
[0200][0201]
其中,θ
c1
表示所述第三初始权重,θ
c2
表示所述第三特征经过一次迭代后的权重,θ
c3
表示所述第三特征经过两次迭代后的权重,θ
cn
‑1表示所述第三特征经过n

2次迭代后的权重,θ
cn
表示所述第三特征的最优权重,α表示所述学习率,表示所述第三偏导数。
[0202]
进一步的,所述可能性获取模块用于通过如下公式确定所述目标用户与所述其他用户成为好友的可能性:
[0203][0204]
其中,表示所述目标用户与所述其他用户成为好友的可能性,所述θ
an
表示所述第一特征的最优权重,x
(a)
表示所述第一特征向量,θ
bn
表示所述第二特征的最优权重,x
(b)
所述第二特征向量,θ
cn
表示所述第三特征的最优权重,x
(c)
所述第三特征向量。
[0205]
进一步的,所述好友推荐列表获取模块包括:
[0206]
目标列表获取单元,用于将所述目标用户与所述其他用户成为好友的可能性按照从大到小的方式进行排序,确定目标列表。
[0207]
好友推荐列表获取单元,根据所述目标列表,确定为所述好友推荐列表。
[0208]
以上结合具体实施方式和范例性实例对本申请进行了详细说明,不过这些说明并不能理解为对本申请的限制。本领域技术人员理解,在不偏离本申请精神和范围的情况下,可以对本申请技术方案及其实施方式进行多种等价替换、修饰或改进,这些均落入本申请的范围内。本申请的保护范围以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1