节点坐标的确定方法以及装置与流程

文档序号:18195290发布日期:2019-07-17 05:48阅读:780来源:国知局
节点坐标的确定方法以及装置与流程

本申请实施例涉及数据挖掘技术领域,尤其涉及一种节点坐标的确定方法以及装置。



背景技术:

随着大数据时代的来临,对样本数据中各个对象之间的关系进行分析显得越来越重要,而无向图作为一种基本的方法,在数据挖掘领域有广泛的应用。无向图即由多个节点以及连接节点的边构成的网络图,无向图的边没有方向。

通常,构建无向图有两种方法,一种是先从数据样本中选定较为特殊的节点作为参考点,再根据其他节点与此节点的关联度确定其他节点的位置,从而构建无向图,但是这种构建无向图的方法需要经过多次计算才能确定所有无向图的节点,计算复杂;为此,通常采用另一种确定无向图的方法即:根据流形嵌入思想,确定高维图相应的嵌入映射,以实现维数约简,得到符合流形约束的无向图,但是这种构建无向图的方法需要先确定无向图对应的高维图,计算也较为复杂。



技术实现要素:

本申请实施例的目的在于提供一种节点坐标的确定方法以及装置,用以至少解决现有技术中构建无向图时计算复杂的问题。

本申请实施例提供一种节点坐标的确定方法,其包括:

对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;

根据所述样本数据中节点之间的关系值,构建目标函数;

根据所述目标函数在流形约束下的特征值,确定所述节点的坐标,以确定所述样本数据对应的无向图。

本申请实施例还提供一种节点坐标的确定装置,其包括:

分析模块,用于对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;

函数构建模块,用于根据所述样本数据中节点之间的关系值,构建目标函数;

坐标确定模块,用于根据所述目标函数在流形约束下的特征值,确定所述节点的坐标,以确定所述样本数据对应的无向图。

本实施例提供的节点坐标的确定方法以及装置,通过对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;根据所述样本数据中节点之间的关系值,构建目标函数,并可以根据所述目标函数在流形约束下的特征值,一次性地确定符合流形约束的所有节点的坐标,进而直接确定符合流形约束的无向图即可,无需进行多次计算、也无需确定无向图对应的高维图,计算简单。

附图说明

图1为本申请实施例一提供的一种节点坐标的确定方法流程示意图;

图2为本申请实施例二提供的一种节点坐标的确定方法流程示意图;

图3为本申请实施例三提供的一种节点坐标的确定装置结构示意图;

图4为本申请实施例四提供的一种节点坐标的确定装置结构示意图。

具体实施方式

以下将配合图式及实施例来详细说明本申请的实施方式,藉此对本申请如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。

首先需要说明的是,本实施例提供的节点坐标的确定方法可以应用于确定无向图,无向图指的是边没有方向的图,其中,图中的节点代表对象,节点之间的边即节点之间的距离。通常,绘制无向图是为了展示对象之间的关系,绘制时需要确定每个节点的坐标(即节点的位置),然后绘制节点之间的边。

为方便描述,下述以构建表示人与人之间关系的无向图为例,对本申请实施例提供的节点坐标的确定方法进行说明,当然,在本实施例的基础上,本领域的技术人员可以直接将本实施例提供的节点坐标的确定方法应用于其他方面,例如构建表示人(即对象)与人之间的相似度的无向图、构建表示多个pc或基站(即对象)之间通信的无向图等,这些方案也在本申请的保护范围内。

图1为本申请实施例一提供的一种节点坐标的确定方法流程示意图,如图1所示,其包括:

s11、对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据。

本实施例中,每个人(即对象)可以对应一个节点,每个人对应的节点数据可以为识别此人的基础数据,以及此人的社交应用记录、通话记录等,部分或全部人对应的节点数据综合起来可以组成样本数据。

本实施例中,通过对上述样本数据进行分析,可以确定节点与节点之间的关系值,通过该关系值的大小反应两个节点对应的人之间关系的远近。例如在社交应用中互动较为频繁的两个人关系较近,则这两个人对应的两个节点之间的关系值较大;通话记录较为频繁的两个人之间关系较近,则这两个人对应的两个节点之间的关系值较大。

s12、根据所述样本数据中节点之间的关系值,构建目标函数。

本实施例中,目标函数可以用来表征样本数据中节点之间的关系值与无向图中节点的之间距离的联系。例如,在上述步骤中假设了两个人之间的关系越近,根据样本数据确定的两个节点之间的关系值越大;在本步骤中可以进一步假设两个人之间的关系越近,对应的两个节点之间的距离越小。则可以确定关系值与无向图之间的关系为:两个节点之间的关系值越大,两个节点之间的距离越小。

在构建目标函数时,可以根据关系值与无向图之间的关系预先设置一预设函数,再将确定关系值作为已知数代入预设函数中,从而完成目标函数的构建;当然,也可以在关系值的基础上,直接根据预设的关系值与无向图之间的关系构建目标函数。

s13、根据所述目标函数在流形约束下的特征值,确定所述节点的坐标,以确定所述样本数据对应的无向图。

流形(manifold)是局部具有欧式空间性质的空间,包括各种纬度的曲线曲面,例如球体、弯曲的平面等。流形的局部和欧式空间是同构的,通过增加流形约束可以使确定的无向图为具有流形结构的无向图。

本实施例提供的一种节点坐标的确定方法,通过对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;根据所述样本数据中节点之间的关系值,构建目标函数,并可以根据所述目标函数在流形约束下的特征值,一次性地确定符合流形约束的所有节点的坐标,进而直接确定符合流形约束的无向图即可,无需进行多次计算、也无需确定无向图对应的高维图,计算简单。

图2为本申请实施例二提供的一种节点坐标的确定方法流程示意图,如图2所示,其包括:

s21、对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据。

具体地,本实施例中,可以设人数(即节点数)为n,则当前确定的节点集合为{v1,v2,...vn},根据样本数据中每个人的社交应用记录、通话记录等,可以确定样本数据中节点vi、节点vj之间的关系值w0i,j,由于本申请实施例中最终确定的是无向图,因此,此处确定的关系值w0i,j为正数。

为了方便描述,关系值确定后用数组(vi,vj,w0i,j)表示,即节点vi与节点vj之间的关系值为w0i,j,其中,1<=i<=n,1<=j<=n,且i,j均为整数。在本实施例中,可以假设节点vi、节点vj对应的两个人之间的关系越密切,w0i,j的值越大。当然,在本实施例的其他实现中,还可以假设节点vi、节点vj对应的两个人之间的关系越密切,w0i,j的值越小,或假设其他对应关系,本实施例在此不进行限定。具体确定关系值的方法有多种,例如可以通过预设的计算方法确定关系值;或者为不同的内容设置不同的权值,进而综合确定关系值等,本实施例在此不再赘述。

另外,在确定所有的关系值之后,可以删除关系值中的极小值,从而减少计算量。关系值中的极小值w0i,j代表节点vi、节点vj对应的两个人之间并不存在紧密关系,例如仅仅存在一次通话记录等。具体地,可以预设一个关系值阈值,例如1,若关系值w0i,j小于预设的关系值阈值,则认为其是关系值中的极小值,将其删除。

在删除关系值中的极小值之后,还可以删除孤立的节点,使得每个节点均与至少另一个节点之间存在关系值。孤立的节点与孤立的人对应,孤立的人即根据此人的社交应用记录、通话记录等可以确定此人与其他所有人均不存在联系,即孤立节点与其他节点均不存在关系,进而无法根据节点之间的关系值确定孤立节点的位置。

当然,本实施例的其他实现中,删除关系值中的极小值与删除孤立节点的先后顺序可以变化,或可以只有其中之一。

s22、根据所述样本数据中节点之间的关系值,构建邻接矩阵。

本实施例中,邻接矩阵w0用于表示所有的关系值的集合。

上述步骤中确定出(vi,vj,w0i,j)之后,本步骤中,可以将(vi,vj,w0i,j)中的w0i,j作为邻接矩阵w0中的元素w0i,j构建邻接矩阵w0,对于节点vi、节点vj,关系值可以为w0i,j或者w0j,i,而两个节点之间的关系值是固定的,因此邻接矩阵w0中,w0i,j=w0j,i;如果节点vi节点vj之间没有关系值,则设w0中对应元素w0i,j=w0j,i=0。

综上,对于i=1…n,j=1…n,均存在w0i,j=w0j,i,即邻接矩阵w0为n*n的对称矩阵。

s23、根据所述邻接矩阵,以及根据所述样本数据中节点之间的关系值与所述节点之间距离的对应关系,构建所述目标函数。

本实施例中,邻接矩阵可以用来表示样本数据中节点之间的关系值,而根据所述样本数据中节点之间的关系值与所述节点之间距离的对应关系,可以构建目标函数,从而将邻接矩阵转换为节点的距离,进而确定节点的坐标。

在构建目标函数前,先建立节点坐标的集合作为目标函数的未知数,上述步骤中假设存在n个人,则本步骤中可以假设节点{v1,v2,...vn}的坐标为向量b1,b2......,bn,每个坐标向量均对应一个人。另外,假设本实施例中确定的无向图为二位无向图,则对于k=1...n,向量bk为二维向量。

另外,为了扩大不同关系值之间的大小差距,还可以假设一个在非负区间内单调递增的函数f(x)=x2,x>=0。由于本申请确定的是无向图,因此确定的关系值一定为整数,则单调递增函数的定义域为x>=0;以及设另一n*n的矩阵w,对于矩阵w,wi,j=f(w0i,j),其中i=1…n,j=1…n,用来进一步表示节点之间的关系值。当然,在本申请其他实施例中,也可以设定其他单调递增函数或者直接变更上述步骤中根据每个人的社交应用记录、通话记录等确定关系值的方法,来实现上述目的。

本实施例中,根据上述步骤中关系值的大小与人与人之间联系的关系,若设定人与人人与人之间关系越紧密,在最终确定的无向图中节点之间的距离越小,则可以确定所述节点之间的关系值与所述节点之间距离的对应关系可以包括:所述样本数据中节点之间的关系值越大,所述节点之间的距离越小。即节点的坐标为最优坐标时,关系值最大的两个节点之间的距离最近。

再结合上述确定的矩阵b(b1,b2......,bn组成的矩阵,作为目标函数中的未知数)以及矩阵w(用于确定目标函数中的常量),可以构建目标函数。同时结合上述的“节点的坐标为最优坐标时,关系值最大的两个节点之间的距离最近”结论,可以确定目标函数为:

从而完成目标函数的构建。

本实施例中,邻接矩阵为一种关系值的表示方法,通过邻接矩阵表示关系值,可以使构建的目标函数更加简单。

s24、根据所述样本数据,确定所述无向图对应的度矩阵以及拉普拉斯矩阵。

无向图的度矩阵用来表示该节点与相邻的节点之间的距离的总和。度矩阵可以根据上述步骤中确定的矩阵w确定;或者,度矩阵可以直接根据样本数据确定。本实施例中,度矩阵为一n*n的对角矩阵:

其中,

无向图的拉普拉斯矩阵是一种用来描述无向图的矩阵,可以反映出数据内在的流形结构。拉普拉斯矩阵可以根据上述步骤中确定的矩阵w、度矩阵d确定;或者,拉普拉斯矩阵可以直接根据样本数据确定。本实施例中,在确定出度矩阵d、矩阵w之后,可以设拉普拉斯矩阵为一n*n的矩阵l,计算公式为l=d-w,计算得到的拉普拉斯矩阵是一个半正定矩阵。

s25、根据所述度矩阵以及所述拉普拉斯矩阵确定所述流形约束。

具体地,由于wij是直接根据节点之间的关系值确定的已知的值,因此,度矩阵d以及拉普拉斯矩阵l也为已知的矩阵,而由于拉普拉斯矩阵可以反映出数据内在的流形结构,因此,已知的度矩阵d以及拉普拉斯矩阵l即可作为流形约束。

s26、根据所述目标函数在所述流形约束下的特征值,确定所述节点的坐标,以确定所述样本数据对应的无向图。

在确定度矩阵d以及拉普拉斯矩阵l之后,将其代入上述步骤中确定的目标函数,同时加入btdb=i来限制节点坐标的尺度,其中,可以将目标函数转换为下述公式:

其中,tr()表示括号中矩阵的迹,由于本实施例中确定的无向图是二维的,因此i表示2*2的单位矩阵。

求解上述公式可以等价于求解下面公式的广义特征值分解问题,从而将目标函数转换为与度矩阵d以及拉普拉斯矩阵l相关的广义特征值问题。则给定度矩阵d以及拉普拉斯矩阵l之后,可以求解下述公式中的x和a。

lx=adx

其中,a为特征值,x为特征向量。另外,由于拉普拉斯矩阵是一个半正定的矩阵,因此其最小的特征值a1为0,其对应的特征向量x1均为1,该特征向量无意义。由于本实施例确定的是二维无向图,因此在确定特征值时,可以按照由小到大的顺序,选取第二个特征值a2以及第三个特征值a3,并确定这两个特征值对应的特征向量x2、x3。

确定特征值以及其对应的特征向量后,可以确定一个n*2的矩阵(即上述步骤中的b1,b2,…,bn),即各个节点在无向图中的坐标。

确定节点的坐标后,可以在无向图中绘制这些节点,以及根据节点之间的关系值绘制节点之间的边,从而构建表示人与人之间关系的无向图,无向图中的每个节点即代表一个人,无向图中边的长度与人与人之间关系的远近成反比。

本实施例中,通过根据所述样本数据中节点之间的关系值,构建邻接矩阵,并根据邻接矩阵确定目标函数以及流形约束,进而可以直接确定所有节点的坐标,以在流形约束下,确定各个节点在二维空间上的最优坐标,进而确定了最优的无向图。

此外,在上述步骤的基础上,本申请另一实施例提供的节点坐标的确定方法还可以包括:

s27、根据确定的所述无向图,确定所述样本数据的可视化显示模型。

确定无向图后,可以直接将无向图作为可视化显示模型;或者,可以根据实际需要将确定的无向图的各个节点整体进行平移、缩放、旋转中的任一种处理,从而确定最终的可视化显示模型,进而实现样本数据的可视化显示。

例如,若展示无向图时需要将某一个人对应的节点为无向图中的零点,在确定节点的,可以将此人对应的节点的作为零点坐标,对各个节点进行整体的平移或旋转等,从而确定可视化显示模型;若展示无向图时,需要将无向图的坐标控制在一定范围内,则可以根据这个范围对各个节点进行整体的缩放,从而确定可视化显示模型。

另外,上述实施例二中确定的是各个节点在二维空间上的最优表示,因此在上述实施例二中确定的无向图的基础上,可以通过本步骤实现无向图的最优可视化表示。

另外需要说明的是,上述实施例二仅对具体的目标函数及其特征值确定方法、节点坐标的确定方法的原理进行示例性说明,在具体实现时,可以直接预设一个预设函数lx=adx,再根据样本数据以及无向图的维度,确定函数中的常量(l以及d)以确定流形约束以及目标函数、确定特征值的数量(例如两个,与二维无向图对应)、确定节点的数量(n个,与样本数据中对象的数量相同),最终根据目标函数确定节点的坐标,进而确定无向图。

图3为本申请实施例三提供的一种节点坐标的确定装置结构示意图,如图所示,其包括:

分析模块31,用于对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;

函数构建模块32,用于根据所述样本数据中节点之间的关系值,构建目标函数;

坐标确定模块33,用于根据所述目标函数在流形约束下的特征值,确定所述节点的坐标,以确定所述样本数据对应的无向图。

本实施例提供的一种节点坐标的确定装置,通过对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;根据所述样本数据中节点之间的关系值,构建目标函数,并可以根据所述目标函数在流形约束下的特征值,一次性地确定符合流形约束的所有节点的坐标,进而直接确定符合流形约束的无向图,计算简单。

图4为本申请实施例四提供的一种节点坐标的确定装置结构示意图,如图所示,在上述实施例的基础上,本实施例中的函数构建模块32包括:

矩阵构建单元321,用于根据所述样本数据中节点之间的关系值,构建邻接矩阵;

函数构建子单元322,用于根据所述邻接矩阵,以及根据所述样本数据中节点之间的关系值与所述节点之间距离的对应关系,构建所述目标函数。

可选地,所述节点之间的关系值与所述节点之间距离的对应关系包括:所述样本数据中节点之间的关系值越大,所述节点之间的距离越小。

可选地,所述坐标确定模块33包括:

矩阵确定单元331,用于根据所述样本数据,确定所述无向图对应的度矩阵以及拉普拉斯矩阵;

约束确定单元332,用于根据所述度矩阵以及所述拉普拉斯矩阵确定所述流形约束;

坐标确定子单元333,用于根据所述目标函数在所述流形约束下的特征值,确定所述节点的坐标,以确定所述样本数据对应的无向图。

可选地,节点坐标的确定装置还包括:

可视化显示模块34,用于根据确定的所述无向图,确定所述样本数据的可视化显示模型。

本实施例提供的一种节点坐标的确定装置,通过对样本数据进行分析,确定所述样本数据中节点之间的关系值,所述样本数据包括多个对象对应的节点数据;根据所述样本数据中节点之间的关系值,构建目标函数,并可以根据所述目标函数在流形约束下的特征值,一次性地确定符合流形约束的所有节点的坐标,进而直接确定符合流形约束的无向图即可,无需进行多次计算、也无需确定无向图对应的高维图,计算简单。

本申请的实施例所提供的装置可通过计算机程序实现。本领域技术人员应该能够理解,上述的单元以及模块划分方式仅是众多划分方式中的一种,如果划分为其他单元或模块或不划分块,只要信息对象的具有上述功能,都应该在本申请的保护范围之内。

本领域的技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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