【技术实现步骤摘要】
基于图表示学习的目标特征信息提取方法及系统
[0001]本专利技术属于目标特征提取领域,更具体地,涉及一种基于图表示学习的目标特征信息提取方法及系统
。
技术介绍
[0002]随着社会信息化程度的不断提高,图作为一种重要的数据结构已广泛应用于众多领域,例如在社交网络中,可以用顶点表示用户,边表示用户之间的关注或互动;在化学分子网络中,顶点表示原子,边表示键;电子商务网络中,顶点表示用户,边表示用户对商品的浏览和评分等等
。
近年来,基于图数据的分析任务变得愈加重要,而图表示学习作为一种有效的图分析技术也备受关注,如
Deepwalk,Node2vec,LINE
,
ProNE
等,其旨在将大规模和高维的图数据映射为低维稠密向量空间,以提取对应的目标特征信息,同时保留原有图中的结构和属性特征,更重要的是可以有效的应用到机器学习任务中,如链接预测
、
节点分类
、
推荐系统
、
可视化等
。
[0003]图表示学习在过去十年间得到了大量的研究和应用,随着图数据规模的不断增长,对图表示学习方法在大规模图上的效率和可扩展性提出了更高的要求
。
例如,对于具有1亿个顶点和5亿条边的图数据,使用
20
个线程在主流服务器上,
LINE
需要数周
、Deepwalk
和
Node2vec
需要数月才能完成图的表示学习
。 />最近,提出了一种快速且可扩展的图表示学习方法
ProNE
,该方法首先通过稀疏矩阵分解快速产生初始的嵌入向量表示;然后,针对稀疏矩阵分解只能捕获局部结构信息,
ProNE
进一步利用高阶
Cheeger
不等式对图结构进行谱空间的调制,使得整合后的图结构更加强调局部的平滑信息和全局的聚类信息,最后,通过在调整后的图结构上传播初始顶点嵌入向量表示来融合局部平滑信息和全局聚类信息,从而学习到更好的图嵌入向量表示
。
相比较于
Deepwalk、Node2vec
和
LINE
,
ProNE
可以提供
10
倍至
400
倍的性能加速
。
同样对于具有1亿个顶点和5亿条边的图数据,
ProNE
在使用一个线程的情况下只需要
29
小时就可完成训练
。
但是,由于
ProNE
是基于矩阵分解的图表示学习技术,其训练过程中需要超过
500GB
的内存空间,远远超出普通商用服务器的容量
。
即使通过分布式的方式提供内存支持,
DRAM
在成本代价方面也面临严重的可扩展性问题
。
[0004]持久内存
(Persistent Memory,PM)
,也称为非易失性内存
(Non
‑
Volatile Memory
,
NVM)
,该新型存储器件结合了
DRAM
的字节可寻址和低延迟的特性,并提供类似于
SSD
的持久性和大容量,但与现有的连接到
PCIe
等外部接口的存储设备
(
包括
Optane SSD)
相比
,
具有更低的延迟和更高的读写带宽
。
目前,持久内存设备
(Intel Optane DC Persistent Memory Modules,Optane PM)
已经商用且被
Intel Cascade Lake
处理器所支持,并以标准的可寻址
DDR4 DIMM
的形式出现在
CPU
内存总线上,与
DRAM DIMM
一样,
PM
通过与
DDR4
兼容的自定义协议与内存控制器进行通信
。
但
PM
比
DRAM
拥有更高的存储容量,可以提供
128GB、256GB、512GB
三种不同的容量选择,且其每单位容量的价格比
DRAM
低
2.1
倍,这为内存依赖性很强的图表示学习技术带来了新的契机
。
然而,与
DRAM
相比,
PM
表现出显著的性能差距,其写带宽和读带宽分别只有
DRAM
的
1/6
和
1/3
,这严重影响了在
PM
上进行图表示
学习的效率
。
例如,在
Twitter
图
(
顶点数为
1131.6
万,边数为
1.27
亿
)
上运行
ProNE
,虽然使用
PM
可以节省超过2倍的内存成本
(DRAM
约为
785
美元,
PM
约为
312
美元
)
,但相较
DRAM
的运行环境,其执行时间慢了
4.96
倍
。
因此,考虑并优化
DRAM
和
PM
之间的性能差距是在持久内存上进行高效且可扩展的图表示学习的关键
。
[0005]目前通用的多核计算机广泛使用了非统一内存访问
(Non
‑
Uniform Memory Access
,
NUMA)
架构
。
在
Optane PM
中,处理器和
DRAM/PM
也被分组成节点,且节点间通过
Intel Ultra Path Interconnect(UPI)
相互连接
。
对于传统基于
DRAM
的
NUMA
系统,远端
NUMA
节点的内存访问延迟通常高于本地
NUMA
节点,而
PM
在
NUMA
架构下则进一步加剧了内存访问延迟的不对称性
。
例如,与本地写相比
(
在8个线程上
)
,远端写操作的峰值带宽降低了
69.2
%
。
更严重的是,基于
PM
系统的远端和本地的延迟比基于
DRAM
的系统分别高
3.3
倍和
4.2
倍,这表明在
NUMA
架构下
DRAM
本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.
一种基于图表示学习的目标特征信息提取方法,所述方法应用于非一致内存访问
NUMA
架构,其特征在于,包括以下步骤:确定包含目标信息的图数据;所述图数据的顶点包括目标节点和邻居节点,节点之间存在边则表示节点之间存在关联,邻居节点为与目标节点存在直接关联或间接关联的节点;按照图数据中各个顶点度的降序重新组织图数据,之后将具有相同顶点度的顶点合并,得到对应的顶点块,记录每个度数对应顶点块的起始偏移量和顶点块内每个顶点的一阶邻居顶点,以将图数据对应的稀疏矩阵以压缩稀疏块的格式存储到对应的内存;所述内存为当前
NUMA
节点上的本地内存或跨
NUMA
节点上的远端内存;在当前
NUMA
节点读取本地内存和
/
或远端内存存储的稀疏矩阵,将读取的稀疏矩阵分别与本地内存存储的稠密矩阵相乘,并将相乘得到的中间矩阵写入本地内存,之后将当前
NUMA
节点本地内存上存储的中间矩阵合并得到目标的特征信息;所述稠密矩阵用于对图数据对应的稀疏矩阵进行特征表示,所述稀疏矩阵以压缩稀疏块的格式存储在内存上使得读取稀疏矩阵的方式为顺序读取,以提高
NUMA
节点在矩阵运算过程中的访问带宽,减少
NUMA
架构中本地和远端内存之间的性能差距对目标特征信息提取过程的影响
。2.
根据权利要求1所述的方法,其特征在于,所述
NUMA
节点上稀疏矩阵和稠密矩阵的乘法操作采用并行运算方式,所述并行运算的线程任务通过熵感知的方式分配,以实现不同线程之间工作负载均衡,降低并行计算过程中的尾延迟
。3.
根据权利要求2所述的方法,其特征在于,所述并行运算的线程通过熵感知的方式分配,具体为:根据动态负载平衡方案确定未分配线程的初始工作负载和工作负载熵值;基于未分配线程的初始工作负载
、
稀疏矩阵的离散度及顺序访问的带宽确定未分配线程的执行效率;基于线程运行时间与工作负载熵值之间的线性关系将未分配线程执行效率和工作负载熵值联合,确定未分配线程工作负载熵值与稀疏矩阵离散度之间的对应关系;根据已分配的工作负载熵值和已分配的线程数确定动态平均工作负载熵值,并基于未分配线程的工作负载熵值和未分配线程的初始工作负载,且结合负载熵值与稀疏矩阵离散度的关系确定未分配线程的最佳负载
。4.
根据权利要求1所述的方法,其特征在于,所述稀疏矩阵和稠密矩阵的存储在内存的划分方式根据
NUMA
节点的数量确定
。5.
根据权利要求1所述的方法,其特征在于,所述压缩稀疏块格式下的数据包括:
Deg_ind、Deg_list、nnz_list
和
col_list
;其中,
Deg_list
为顶点度数列表,
Deg_ind
为图数据组成的稀疏矩阵的行索引,
col_list
为图数据组成的稀疏矩阵的列索引,
nnz_list
为图数据组成的稀疏矩阵的元素值<...
【专利技术属性】
技术研发人员:王芳,冯丹,施展,方鹏,万兴宇,潘和畅,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。