金融行业标准网
(19)中华 人民共和国 国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202111415792.5 (22)申请日 2021.11.25 (71)申请人 上海交通大 学 地址 200240 上海市闵行区东川路80 0号 (72)发明人 姚建国 陈悦  (74)专利代理 机构 上海汉声知识产权代理有限 公司 3123 6 代理人 胡晶 (51)Int.Cl. G06N 20/00(2019.01) G06F 16/901(2019.01) G06F 9/50(2006.01) (54)发明名称 基于Optane DIMM的大规模图嵌入训练方法 及系统 (57)摘要 本发明提供了一种基于Optane  DIMM的大规 模图嵌入训练方法及系统, 包括: 原始图处理步 骤: 对原始图进行处理, 生成DRAM能够加载的图 数据; 数据预处理步骤: 将图数据根据特征进行 两层图分割, 将完整图拆分成子图, 并存储在磁 盘中, 使得子图能够加载入GP U进行分区训练; 图 训练步骤: 根据不同介质的访存特性, 将训练所 用的图数据存储在不同的物理介质中, 根据训练 过程中所依赖数据的不同特性来切割算法, 采用 CPU和GPU分工训练, 平衡CPU计算、 GPU计算以及 CPU‑GPU通信三者的开销。 本发明根据图的特性 进行高质量的两层图分割, 将大图转化为子图, 存储在磁盘中, 从而子图能够加载入GPU进行分 区训练。 权利要求书2页 说明书9页 附图1页 CN 114118443 A 2022.03.01 CN 114118443 A 1.一种基于Optane  DIMM的大规模图嵌入训练方法, 其特 征在于, 包括: 原始图处理步骤: 对原 始图进行处 理, 生成DRAM能够加载的图数据; 数据预处理步骤: 将图数据根据特征进行两层图分割, 将完整图拆分成子图, 并存储在 磁盘中, 使得子图能够加载入GPU 进行分区训练; 图训练步骤: 根据不同介质的访存特性, 将训练所用的图数据存储在不同的物理介质 中, 根据训练过程中所依赖数据的不同特性来切割 算法, 采用CPU和GPU分工训练, 平衡CPU 计算、 GPU计算以及CPU ‑GPU通信三 者的开销。 2.根据权利要求1所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述原始图处理步骤包括以下子步骤: S1: 初始化大小为hash_table_size的哈希 表, 用于存 储顶点名字 到顶点ID的映射; S2: 进入循环, 循环次数为原 始图列表的大小; S3: 每次循环从原 始图中读入一条边, 由顶点v_name,目标顶点u_name组成; S4: 从哈希表中查找v_name是否已经出现过, 若是, 则返回映射后的v_id, 若否, 则调用 hash_table.Ad dVertex(name_v,count_num_ver tices)方法, 插 入新的顶点; S5: 若调用hash_table.AddVertex(name_v,count_num_vertices), 首先创建新的顶 点, 并加入顶点集合vertices,然后计数器count_num_vertices自增一; 如果count_num_ vertices超过了现有ver tices的最大容 量, vertices将会自动扩容; S6: 循环直到找到哈希 表的空位, 在哈希 表中插入顶点名字 到ID的映射关系; S7: 根据S4 ‑S6中的步骤处 理u_name; S8: 将映射后的边写入输出文件。 3.根据权利要求1所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述图数据是以文件的形式存储在磁盘上, 数据格式为source_vertex_id,destination_ vertex_id; 对于无向图, 同时存储source_vertex_id,destination_vertex_id; destination_vertex_id,source_ver tex_id两条边 来表示。 4.根据权利要求1所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述图数据的拆分包括: ‑采用边分割策略: 将图数据按照点划分, 将边隔开, 划分子图数据为GPU数量, 对于单 个GPU的设备, 则不进行边分割; ‑采用点分割策略: 将图数据按照边划分, 划分子图数量根据GPU内存大小决定, 当子图 能够完整载入GPU时, 则不进行点分割策略。 5.根据权利要求1所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述CPU执行负采样和割边训练操作, 所述GPU 执行正采样、 正样 本训练和负样本训练操作, 所 述CPU‑GPU通信采用PCI负载 执行。 6.根据权利要求5所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述CPU任务具体包括: 数据加载: 加载训练所需的数据, 包括图结构数据和图嵌入数据; 所述图结构数据从磁盘中加载到Optane  DIMM中, 并抽象出元数据结构Graph, 指向 Optane DIMM中的具体数据, 元 数据存储在DRAM中; 所述图嵌入数据在DRAM中分配内存并初始化, 抽象出元数据结构Embeddin g, 指向具体权 利 要 求 书 1/2 页 2 CN 114118443 A 2数据, 存储在DRAM中; 负采样: 系统开启FIRST_PARTITION_NUM数量的线程, 每个线程维护NEG_SAMPLE_POOL_ NUM块采样池, 采样池大小为 NEG_SAMPLE_PO OL_SIZE, 不同线程并行负采样; 割边训练: 针对边分割过程中产生的每条割边, 利用CPU进行训练; CPU开启CROSS_ EDGE_TRAI N_THREAD条线程, 每条线程负责部分切边的训练 任务调度: 第一层子图由不同GPU并行训练, 不同GPU之间数据隔离, 无数据通信开销; 第二层子图串行训练; 图嵌入评价: 利用生成的节点嵌入, 运行不同类型的机器学习任务, 评估微观f1或宏观 f1, 与其他解决方案进行比较。 7.根据权利要求1所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述负采样过程中, 对每个小采样池的采样策略包括: 统计整图点的度和与子图点的度和, 根 据子图度和占整图度和的比例决定每 个子图采样数, 满足以下 条件: subgraphi_degree_num/graph_degre e_num =subgraphi_neg_sam_num/NEG_SAMPLE_PO OL_SIZE。 8.根据权利要求5所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述GPU任务包括: 正采样: 对于每一条边, 通过随机游走的方式进行正采样, 输入为顶点vid, 输出为正采 样边列表; 训练: 对于 子图中的每一条边, 利用GPU 进行训练。 9.根据权利要求5所述的基于Optane  DIMM的大规模图嵌入训练方法, 其特征在于: 所 述PCI负载任务包括: 图结构数据传输:通过PCIe协议将图结构数据由Optane  DIMM拷贝到GPU 进行计算; 负样本传输:通过PCIe协议将图结构数据由主机DRAM拷贝到GPU 进行计算; 嵌入传输:通过PCIe协议将图结构数据由主机DRAM拷贝到GPU 进行计算; 嵌入传输:通过PCIe协议将嵌入数据由GPU拷贝回主机DRAM 。 10.一种基于Optane  DIMM的大规模图嵌入训练系统, 其特 征在于, 包括: 原始图处理模块: 对原 始图进行处 理, 生成DRAM能够加载的图数据; 数据预处理模块: 将图数据根据特征进行两层图分割, 将完整图拆分成子图, 并存储在 磁盘中, 使得子图能够加载入GPU 进行分区训练; 图训练模块: 根据不同介质的访存特性, 将训练所用的图数据存储在不同的物理介质 中, 根据训练过程中所依赖数据的不同特性来切割 算法, 采用CPU和GPU分工训练, 平衡CPU 计算、 GPU计算以及CPU ‑GPU通信三 者的开销。权 利 要 求 书 2/2 页 3 CN 114118443 A 3

.PDF文档 专利 基于Optane DIMM的大规模图嵌入训练方法及系统

文档预览
中文文档 13 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共13页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 基于Optane DIMM的大规模图嵌入训练方法及系统 第 1 页 专利 基于Optane DIMM的大规模图嵌入训练方法及系统 第 2 页 专利 基于Optane DIMM的大规模图嵌入训练方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-19 01:21:18上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。