本发明属于计算机科学技术领域,具体涉及一种虚拟交易平台的信任关系网络嵌入方法。
背景技术:
虚拟交易平台让用户给出对其他用户的信任与不信任反馈,提高自己的服务质量。因为多了用户之间的信任关系,在网络结构上,虚拟交易平台的信任关系网络相比于一般的社会网络更加复杂。如果用户a被大多数与他存在交易的对象不信任,而只被一两个人信任,那么就可以把用户a标记不值得信赖的对象,在他与其他人发生交易之前,告知对方,防范风险交易。为了有效地处理虚拟交易平台的信任关系网络数据,最关键的技术是发现一种有效的网络嵌入、网络表征学习方法。
早几年的网络嵌入学习主要集中在矩阵分解,如ahmed等提出了基于图的邻接矩阵的图分解;ou等推导了相似性度量的方法,提出了保留高阶近似的嵌入。这些模型都是编码器-解码器架构的,其中编码器把节点映射到嵌入空间,解码器再通过矩阵分解生成节点表征。词嵌入模型skip-gram在自然语言处理方面取得了巨大的成功,perzzi等设计的deepwalk将节点的随机游走序列作为skip-gram模型的输入,使用图中节点与节点的共现关系来学习节点的表征。随机游走序列的生成可以并行处理,减少采样的时间。而且网络的变化是局部的,只会对部分随机游走路径产生影响。该方法为以后的网络嵌入学习提供了一个方向。相对于deepwalk的无偏随机游走,node2vec设置了两个额外的参数p和q,控制重复访问刚访问过的节点的概率和访问距离近还是远的下一个节点,生成有偏随机游走。特征哈希是一种降维的技术,attenberg把它应用到电子邮件垃圾过滤中。argerich提出了基于特征哈希的词嵌入方法hash2vec,它不是将词的索引进行哈希处理,而是将词的上下文信息进行保留。这些方法对于学习一般的社会网络表征很有效,但对于虚拟交易平台的信任关系网络,它们不能很好地保留网络的结构信息。而且虚拟交易平台的信任关系网络中的信任传递是很重要的组成部分,它可以帮助我们得到更好的节点表征,而现有的模型基本都没有考虑这一点。
技术实现要素:
为了解决上述技术问题,本发明提出了一种虚拟交易平台的信任关系网络嵌入方法,利用哈希函数和节点间的信任关系,从不同的方面考虑网络,该方法能够在较短的时间内得到结果,保证学习到的节点表征能够很好地保留网络的信息,以便后续的虚拟交易平台的信任关系网络数据处理。
本发明所采用的技术方案是:一种虚拟交易平台的信任关系网络嵌入方法,其特征在于使用哈希函数和节点间的信任关系去学习网络节点的表征,包括以下步骤:
步骤1:在原始的信任关系网络中选择部分边作为训练集,并根据训练集的网络结构生成长度相同的随机游走路径;
步骤1选择了部分边作为训练集,然后生成了随机游走路径,具体的实现包括以下步骤:
步骤1.1:定义虚拟交易平台的信任关系网络为:
gini=<v,e>
其中,v是节点集,n=|v|是节点数,e是节点与节点之间的有向边的集合;
将边集合e中的数据打乱,然后从中选择一定比例的边e′作为训练集;
根据训练集中的边,构造信任关系网络:g=<v,e′>;
步骤1.2:对于信任关系网络中的每个节点,从该节点出发,在游走的每一步中,从当前节点作为起点的边中随机选择一条,沿着这条边移动到下一个节点,重复这个过程若干次,记录经过的每个节点,得到一条随机游走路径;每个节点都重复上述过程多次;
步骤2:使用哈希函数学习信任关系网络节点的表征;
步骤2使用哈希函数学习信任关系网络节点的表征的具体实现包括以下子步骤;
步骤2.1:m∈rb×d是节点的共享矩阵;
存在k个不同的哈希函数hk=md,其中
d:{1,…,n}→{1,…,b}
即哈希函数d将节点编号映射为数b1(b1≤b);
每个hk相当于取了矩阵m的一个行向量;
步骤2.2:将步骤2.1得到的k个行向量进行加权求和,得到节点u的表征:
其中,u是信任关系网络g中的一个节点,heu是节点u的表征;k是哈希函数的个数;hi(u)是节点u的第i个哈希函数运算结果;
那么,对于一个节点对(u,v),它们的相似性为
其中,u,v为信任网络g中的节点;heu、hev分别是节点u、v通过步骤2.2得到的表征
步骤3:考虑信任关系稳固的三元组结构,根据节点的信任传递模式,学习得到节点的表征;
步骤3利用节点间的信任关系学习节点的表征,具体实现包括以下步骤:
步骤3.1:信任关系三元组存在如下36种情况:
任意两个节点之间存在6中可能的信任关系:
节点u信任节点v、节点v信任节点u、节点u信任节点v且节点v信任节点u、节点u不信任节点v、节点v不信任节点u、节点u不信任节点v且节点v不信任节点u;
那么信任关系稳固的三元组共有6*6=36种情况;
步骤3.2:对于每个节点对(u,v)之间存在多条长度为2的路径,统计每种路径的个数即三元组的个数,构成向量tt(u,v);
步骤3.3:
其中,
步骤4:将步骤2和步骤3得到的节点表征进行聚合得到节点最后表征结果;
步骤4将步骤2和步骤3得到的节点表征进行聚合,具体实现包括以下步骤:
步骤4.1:节点的最终表征为:
节点对(u,v)的相似性为:
s(u,v)=f1(u,v) f2(u,v)
其中,f1(u,v)是哈希函数学习的节点表征度量的节点相似性,f2(u,v)是考虑节点信任传递关系时节点的相似性。
步骤4.2:节点u和节点v的信任关系是根据u到v的路径上的每个节点对之间的信任关系得到的;
当u信任v时,ruv=1,反之,ruv=-1;
根据结构平衡理论,距离较远的两个节点的信任程度会衰减;
其中,l为随机游走路径的长度;luv为节点u,v在路径中的距离;m为衰减系数,当m=1时,信任程度的衰减与节点间的距离线性相关;
步骤4.3:采用负采样,选择少量负样本进行参数更新;
最终的损失函数为:
其中,节点v是出现在节点u窗口内的节点;节点ui是根据负采样分布pn(u)采样的节点;ruv是节点对(u,v)的信任关系;s(u,v)是节点对(u,v)的相似程度;tuv是衰减后的节点对(u,v)信任程度;σ是sigmoid函数;n是负样本的个数。
步骤4.4:使用随机梯度下降法求解,并进行参数更新,具体如下:
其中,
通过不断地迭代学习,更新参数hi(u)、
本发明优点在于,使用哈希函数对节点表征进行了压缩,减少了存储空间;考虑了节点间信任关系传递,更有效地提取网络信息,使得最终的节点表征能更好地适用于虚拟交易平台信任关系网络数据处理。
附图说明
图1为本发明的流程框图。
图2为本发明实施例的示意图。
图3为本发明中节点间信任关系三元组示意图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
下面结合附图介绍本发明的具体实施方式:
步骤1:在原始的信任关系网络中选择部分边作为训练集,并根据训练集的网络结构生成长度相同的随机游走路径;
步骤1选择了部分边作为训练集,然后生成了随机游走路径,具体的实现包括以下步骤:
步骤1.1:定义虚拟交易平台的信任关系网络为:
gini=<v,e>
其中,v是节点集,n=7000是节点数,e是节点与节点之间的有向边的集合;
将边集合e中的数据打乱,然后从中选择一定比例的边e′作为训练集;
根据训练集中的边,构造信任关系网络:g=<v,e′>;
步骤1.2:对于信任关系网络中的每个节点,从该节点出发,在游走的每一步中,从当前节点作为起点的边中随机选择一条,沿着这条边移动到下一个节点,重复这个过程若干次,记录经过的每个节点,得到一条随机游走路径;每个节点都重复上述过程多次;
步骤2:使用哈希函数学习信任关系网络节点的表征;
步骤2使用哈希函数学习信任关系网络节点的表征的具体实现包括以下子步骤;
步骤2.1:m∈rb×d是节点的共享矩阵;
存在k=2个不同的哈希函数hk=md,其中
d:{1,...,7000}→{1,...,5000}
即哈希函数d将节点编号映射为数b1(b1≤5000);
每个hk相当于取了矩阵m的一个行向量;
步骤2.2:将步骤2.1得到的k个行向量进行加权求和,得到节点u的表征:
其中,u是信任关系网络g中的一个节点,heu是节点u的表征;k是哈希函数的个数;hi(u)是节点u的第i个哈希函数运算结果;
那么,对于一个节点对(u,v),它们的相似性为
其中,u,v为信任网络g中的节点;heu、hev分别是节点u、v通过步骤2.2得到的表征
步骤3:考虑信任关系稳固的三元组结构,根据节点的信任传递模式,学习得到节点的表征;
步骤3利用节点间的信任关系学习节点的表征,具体实现包括以下步骤:
步骤3.1:信任关系三元组存在如下36种情况:
任意两个节点之间存在6中可能的信任关系:
节点u信任节点v、节点v信任节点u、节点u信任节点v且节点v信任节点u、节点u不信任节点v、节点v不信任节点u、节点u不信任节点v且节点v不信任节点u;
那么信任关系稳固的三元组共有6*6=36种情况;
步骤3.2:对于每个节点对(u,v)之间存在多条长度为2的路径,统计每种路径的个数即三元组的个数,构成向量tt(u,v);
步骤3.3:
其中,
步骤4:将步骤2和步骤3得到的节点表征进行聚合得到节点最后表征结果;
步骤4将步骤2和步骤3得到的节点表征进行聚合,具体实现包括以下步骤:
步骤4.1:节点的最终表征为:
节点对(u,v)的相似性为:
s(u,v)=f1(u,v) f2(u,v)
其中,f1(u,v)是哈希函数学习的节点表征度量的节点相似性,f2(u,v)是考虑节点信任传递关系时节点的相似性。
步骤4.2:节点u和节点v的信任关系是根据u到v的路径上的每个节点对之间的信任关系得到的;
当u信任v时,ruv=1,反之,ruv=-1;
根据结构平衡理论,距离较远的两个节点的信任程度会衰减;
其中,l为随机游走路径的长度;luv为节点u,v在路径中的距离;m为衰减系数,当m=1时,信任程度的衰减与节点间的距离线性相关;
步骤4.3:采用负采样,选择少量负样本进行参数更新;
最终的损失函数为:
其中,节点v是出现在节点u窗口内的节点;节点ui是根据负采样分布pn(u)采样的节点;ruv是节点对(u,v)的信任关系;s(u,v)是节点对(u,v)的相似程度;tuv是衰减后的节点对(u,v)信任程度;σ是sigmoid函数;n是负样本的个数。
步骤4.4:使用随机梯度下降法求解,并进行参数更新,具体如下:
其中,
通过不断地迭代学习,更新参数hi(u)、
为了验证算法在网络嵌入方面的效果,采用wikielec数据集进行实验。该数据集是一个投票网络数据集,用户可以支持(信任)或反对(不信任)其他用户的选举对象。聚合节点的表征来表示边的表征,再通过训练一个逻辑回归模型,判断学习到的表征的效果。表1为实验结果。
表1不同训练集大小下,链路预测的准确程度
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
1.一种虚拟交易平台的信任关系网络嵌入方法,其特征在于,包括以下步骤:
步骤1:在原始的信任关系网络中选择部分边作为训练集,并根据训练集的网络结构生成长度相同的随机游走路径;
步骤2:使用哈希函数学习信任关系网络节点的表征;
步骤3:考虑信任关系稳固的三元组结构,根据节点的信任传递模式,学习得到节点的表征;
步骤4:将步骤2和步骤3得到的节点表征进行聚合得到节点最后表征结果。
2.根据权利要求1所述的虚拟交易平台的信任关系网络嵌入方法,其特征在于:
步骤1选择了部分边作为训练集,然后生成了随机游走路径,具体的实现包括以下步骤:
步骤1.1:定义虚拟交易平台的信任关系网络为:
gini=<v,e>
其中,v是节点集,n=|v|是节点数,e是节点与节点之间的有向边的集合;
将边集合e中的数据打乱,然后从中选择一定比例的边e′作为训练集;
根据训练集中的边,构造信任关系网络:g=<v,e′>;
步骤1.2:对于信任关系网络中的每个节点,从该节点出发,在游走的每一步中,从当前节点作为起点的边中随机选择一条,沿着这条边移动到下一个节点,重复这个过程若干次,记录经过的每个节点,得到一条随机游走路径;每个节点都重复上述过程多次。
3.根据权利要求1所述的虚拟交易平台的信任关系网络嵌入方法,其特征在于:
步骤2使用哈希函数学习信任关系网络节点的表征的具体实现包括以下子步骤;
步骤2.1:m∈rb×d是节点的共享矩阵;
存在k个不同的哈希函数hk=md,其中
d:{1,…,n}→{1,…,b}
即哈希函数d将节点编号映射为数b1(b1≤b);
每个hk相当于取了矩阵m的一个行向量;
步骤2.2:将步骤2.1得到的k个行向量进行加权求和,得到节点u的表征:
其中,u是信任关系网络g中的一个节点,heu是节点u的表征;k是哈希函数的个数;hi(u)是节点u的第i个哈希函数运算结果;
那么,对于一个节点对(u,v),它们的相似性为
其中,u,v为信任网络g中的节点;heu、hev分别是节点u、v通过步骤2.2得到的表征。
4.根据权利要求1所述的虚拟交易平台的信任关系网络嵌入方法,其特征在于:
步骤3利用节点间的信任关系学习节点的表征,具体实现包括以下步骤:
步骤3.1:信任关系三元组存在如下36种情况:
任意两个节点之间存在6中可能的信任关系:
节点u信任节点v、节点v信任节点u、节点u信任节点v且节点v信任节点u、节点u不信任节点v、节点v不信任节点u、节点u不信任节点v且节点v不信任节点u;
那么信任关系稳固的三元组共有6*6=36种情况;
步骤3.2:对于每个节点对(u,v)之间存在多条长度为2的路径,统计每种路径的个数即三元组的个数,构成向量tt(u,v);
步骤3.3:
其中,
5.根据权利要求1所述的虚拟交易平台的信任关系网络嵌入方法,其特征在于:
步骤4将步骤2和步骤3得到的节点表征进行聚合,具体实现包括以下步骤:
步骤4.1:节点的最终表征为:
节点对(u,v)的相似性为:
s(u,v)=f1(u,v) f2(u,v)
其中,f1(u,v)是哈希函数学习的节点表征度量的节点相似性,f2(u,v)是考虑节点信任传递关系时节点的相似性;
步骤4.2:节点u和节点v的信任关系是根据u到v的路径上的每个节点对之间的信任关系得到的;
当u信任v时,ruv=1,反之,ruv=-1;
根据结构平衡理论,距离较远的两个节点的信任程度会衰减;
其中,l为随机游走路径的长度;luv为节点u,v在路径中的距离;m为衰减系数,当m=1时,信任程度的衰减与节点间的距离线性相关;
步骤4.3:采用负采样,选择少量负样本进行参数更新;
最终的损失函数为:
其中,节点v是出现在节点u窗口内的节点;节点ui是根据负采样分布pn(u)采样的节点;ruv是节点对(u,v)的信任关系;s(u,v)是节点对(u,v)的相似程度;tuv是衰减后的节点对(u,v)信任程度;σ是sigmoid函数;n是负样本的个数;
步骤4.4:使用随机梯度下降法求解,并进行参数更新,具体如下:
其中,
通过不断地迭代学习,更新参数hi(u)、