[发明专利]一种基于结构的图节点相似度并行计算方法有效
| 申请号: | 201310102281.7 | 申请日: | 2013-03-27 |
| 公开(公告)号: | CN103177414A | 公开(公告)日: | 2013-06-26 |
| 发明(设计)人: | 冯伟;万亮;谭志羽;鲁志超;江健民 | 申请(专利权)人: | 天津大学 |
| 主分类号: | G06T1/00 | 分类号: | G06T1/00;G06T1/20 |
| 代理公司: | 天津市北洋有限责任专利代理事务所 12201 | 代理人: | 温国林 |
| 地址: | 300072*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 结构 节点 相似 并行 计算方法 | ||
1.一种基于结构的图节点相似度并行计算方法,其特征在于,所述方法包括以下步骤:
(1)CPU端作为主机端读入多个故事文本或图像,建立图模型,获取图的邻接矩阵;
(2)GPU端作为设备端,接收CPU端传输的邻接矩阵,GPU端计算邻接矩阵;
(3)GPU端得到邻接矩阵,并传输至CPU端。
2.根据权利要求1所述的一种基于结构的图节点相似度并行计算方法,其特征在于,当CPU端作为主机端读入多个故事文本时,所述GPU端计算邻接矩阵W的步骤具体为:所述GPU端计算第一邻接矩阵,即,
1)通过节点a和b在所述第一邻接矩阵中的位置索引计算节点对(a,b)在grid中所对应的block索引和thread索引,其中grid为GPU内核函数的网格,block为网格中的线程块,thread为线程块中的线程;
2)GPU端为第一邻接矩阵中每一个节点对(a,b)之间的相似度计算分配对应线程,即:通过block索引和thread索引查找节点对(a,b)对应线程,在GPU端通过对应线程计算节点对(a,b)的相似性。
3.根据权利要求2所述的一种基于结构的图节点相似度并行计算方法,其特征在于,当CPU端作为主机端读入多个图像时,所述GPU端计算邻接矩阵W的步骤具体为:所述GPU端计算第二邻接矩阵,包括:
1)搜索第k-1次迭代时的位置矩阵Pk-1中非零值,将非零元素的行索引、列索引和对应值分别记入row,col,value三个数组中;
2)通过位置矩阵Pk-1计算第K次迭代的位置矩阵Pk:
3)计算对角元素和;
4)将本次迭代得到的Mk加入S(a,b)中:S(a,b)=S(a,b)+Mk。
4.根据权利要求1所述的一种基于结构的图节点相似度并行计算方法,其特征在于,当CPU端作为主机端读入多个图像时,所述方法还包括:
所述CPU端获取转移矩阵T,所述GPU端作为设备端接收所述转移矩阵T。
5.根据权利要求4所述的一种基于结构的图节点相似度并行计算方法,其特征在于,当CPU端作为主机端读入多个图像时,所述方法还包括:将所述转移矩阵T以行压缩存储的结构存储为稀疏矩阵,所述GPU端计算邻接矩阵W的步骤具体为:所述GPU端计算第二邻接矩阵,包括:
1)CPU端循环K次调用GPU端内核函数并行计算相似性;
2)GPU端将计算结果传回CPU端;
3)GPU端计算位置矩阵Pk的对角线和Mk:
4)GPU端计算相似性矩阵s中对应元素的相似度的值S(a,b):S(a,b)=S(a,b)+Mk。
6.根据权利要求5所述的一种基于结构的图节点相似度并行计算方法,其特征在于,所述CPU端循环K次调用GPU端内核函数并行计算相似性具体包括:
a)计算Ti中的非零值索引x;
b)计算Tj中的非零值索引y;
c)计算对应索引的相似度;
d)计算结点对(a,b)在位置矩阵中位置;
e)更新位置矩阵Pk:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津大学,未经天津大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310102281.7/1.html,转载请声明来源钻瓜专利网。





