[发明专利]一种应用于K-Mean聚类算法中的加速方法及其装置有效
申请号: | 201711241635.0 | 申请日: | 2017-11-30 |
公开(公告)号: | CN108009099B | 公开(公告)日: | 2021-08-20 |
发明(设计)人: | 张伍召;谭旭;王达;叶笑春;张浩 | 申请(专利权)人: | 北京中科睿芯科技集团有限公司 |
主分类号: | G06F12/0862 | 分类号: | G06F12/0862;G06F16/28 |
代理公司: | 北京科龙寰宇知识产权代理有限责任公司 11139 | 代理人: | 孙皓晨 |
地址: | 100095 北京市海淀区温泉*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用于 mean 算法 中的 加速 方法 及其 装置 | ||
1.一种应用于K-Mean聚类算法中的加速方法,其特征在于,包括以下步骤:
S1:将聚类计算所需的中心点和普通点分别预取至一第一缓存区和一第二缓存区;
S2:依次从第一缓存区和第二缓存区读取中心点和普通点并计算每一普通点与所有中心点之间的距离;
S3:根据上一步骤的计算结果确定每一普通点距离最近的中心点,并将每一普通点对应的中心点进行更新;
S4:判断是否存在多个普通点同时更新同一个中心点的情况,如果存在,则进行冲突整合;
S5:判断中心点的更新是否过快,如果是,则将每一普通点更新后的中心点信息进行缓冲;
S6:检测是否满足终止条件,如果是,则终止聚类计算过程,若为否,则重复进行上述过程,
计算每一普通点与所有中心点之间的距离是通过PE_NUM个计算单元进行,PE_NUM为大于1的整数,其中,每个计算单元计算完其中一个普通点与所有中心点之间的距离之后再针对下一个普通点进行计算,每个计算单元的并行度为C_NUM,C_NUM为大于1的整数,
于一轮计算完成后,PE_NUM个计算单元共计算出PE_NUM个普通点对应的距离最近的中心点,得到PE_NUM个普通点对应的中心点索引Tag1~TagPE_NUM以及相对应的更新内容M1~MPE_NUM,之后步骤S4中进行冲突整合的计算过程如下:
M1=M1+(Tag1Tag2)×M2+(Tag1Tag3)×M3+…+(Tag1TagPE_NUM)×MPE_NUM
对于2≤n≤PE_NUM-1,
对于n=PE_NUM,
其中,“”的含义如下:对于任意“U”和“V”,若U=V,则UV=1以及若U≠V,则UV=0以及
冲突整合后的M1~MPE_NUM分别存储至一规约寄存器中,每一规约寄存器均具有一Tag位和一内容位,其中,Tag位中存储的是中心点索引Tag1~TagPE_NUM,内容位存储的是冲突整合后的M1~MPE_NUM。
2.根据权利要求1所述的应用于K-Mean聚类算法中的加速方法,其特征在于,所述第一缓存区为CRAM,所述第二缓存区为PRAM,并且所述第一缓存区和所述第二缓存区均为乒乓缓存区。
3.根据权利要求1所述的应用于K-Mean聚类算法中的加速方法,其特征在于,步骤S3中确定每一普通点距离最近的中心点是通过树形比较器进行。
4.根据权利要求1所述的应用于K-Mean聚类算法中的加速方法,其特征在于,步骤S5中,判断聚类个数k是否大于2×PE_NUM×C_NUM,若为是,则通过一更新调度单元将规约寄存器中的数据读取至PE_NUM个缓存器中,PE_NUM个缓存器分别具有一Tag位和一内容位,Tag位分别为Tag1′~TagPE_NUM′,Tag位Tag1′~TagPE_NUM′通过依次读取每一规约寄存器的Tag位而更新,内容位X1~XPE_NUM的更新方式如下:
Xn=(Tag1Tag1′)×M1+(Tag2Tag2′)×M2+……+(TagPE_NUMTagPE_NUM′)×MPE_NUM。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中科睿芯科技集团有限公司,未经北京中科睿芯科技集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711241635.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种香猪产崽用的保育室装置
- 下一篇:一种车辆协作式编队行驶系统