基于智能芯片的SOM神经网络算法处理方法技术

技术编号:26173069 阅读:45 留言:0更新日期:2020-10-31 13:54
本发明专利技术提出了一种基于智能芯片的自组织特征映射神经网络(Self‑organizing Map,SOM)算法处理方法。SOM神经网络是无监督机器学习中一种经典的聚类算法,在图像处理、数据挖掘、深度学习有广泛的应用。本发明专利技术将SOM神经网络算法划分成不存在数据依赖的多个步骤,这个过程在下文中称为Kernel的划分。在保证每个步骤高并行度的情况下,将各个步骤在GPU上实现,对应下文里Kernel的分步骤实现与优化。在单个Kernel在GPU上完成高效的实现后,再将所有的步骤整合为一个Kernel。对整合后的Kernel进行深度优化,并将各个分步骤整合迭代的过程中,使用全局同步的方法,最终实现了一个可以在GPU端单次Kernel启动即可完成的高效的SOM神经网络算法。

【技术实现步骤摘要】
基于智能芯片的SOM神经网络算法处理方法
本专利技术属于计算机
,更进一步设计计算机视觉和深度学习
中的一种使用开放性计算语言OpenCL(OpenComputingLanguage)的自组织映射神经网络并行处理方法。本专利技术可以实现对自组织映射神经网络的计算过程进行加速。
技术介绍
自组织特征映射神经网络(Self-organizingMap,SOM)是一种聚类算法。它是人工神经网络的生物学合理模型,可以通过计算映射将任意维度的输入信号转换为一维或二维离散映射,并以自适应方式来实现该过程。它是在无监督的情况下自动对输入数据进行分类,对输入模式进行自组织学习,能够反复的调整连接权值,并最终在输出层将分类结果表示出来。SOM神经网络算法在机器学习、图像处理和深度学习中有广泛的应用。在许多应用场景中,需要对数据进行实时的处理,因此对高效实现SOM神经网络算法提出了要求。传统的机器学习算法的主要计算工具是CPU,因为CPU具有良好的通透性并且硬件架构已经成熟。但是,当数据量增加时,尤其是SOM神经网络算法,CPU的执行效率不能满本文档来自技高网...

【技术保护点】
1.一种基于智能芯片的SOM神经网络算法处理方法,其特征在于,包括以下步骤:/n(1)初始化,归一化权值向量,建立初始优胜领域,学习率赋予初始值;/n(2)输入归一化样本:/n(2a)数据点集X被平均分为s份,s是计算X子集中所有数据点标记的处理器的个数,每个线程执行赋予X

【技术特征摘要】
1.一种基于智能芯片的SOM神经网络算法处理方法,其特征在于,包括以下步骤:
(1)初始化,归一化权值向量,建立初始优胜领域,学习率赋予初始值;
(2)输入归一化样本:
(2a)数据点集X被平均分为s份,s是计算X子集中所有数据点标记的处理器的个数,每个线程执行赋予Xi单独的处理器的坐标和计算范围;
(3)计算点积,并选出点积值最大的获胜节点:
(3a)确定每一个work-group的线程规模,在本发明优化中,设置work-group大小为128;
(3b)确定每一个thread可使用的寄存器规模,大小为m个float4类型的栈内存(float4reg_Buffer[m]),并且加一个大小为m的int类型内存空间(intcounter_Buffer[m]);
(3c)每一个thread间隔128位访问输入的归一化样本,对于每一个归一化样本,计算其与权值向量的内积,得到内积值最大的获胜神经元c,并把数据点加入到Buffer[m]中,并对counter[m]进行加1操作;
(3d)对样本集完成一次遍历后,在每一个work-group的128个线程的寄存器中保存着它们所处理的数据点的对应获胜神经元;
(4)对优胜领域内节点调整权值:
(4a)在GlobalMemory中设置长度为work-group的int型volatile数组,并赋予初始值为0;
(4b)当每个work-group完成工作后,使用原子操作,将其在数组中对应位置的值变为1;
(4c)使用while循环访问volatile数组,直到数组全部为1,再进行后续操作;
(4d)在实现全局同步后,在本处将线程分配给获胜神经元,并对获胜神经元拓扑邻域Nc(n)内的兴奋神经元进行神经元权值向量的更新;
(4e)对学习速率和拓扑邻域进行更新,并且对学习后的权值重新进行归一化处理;
(5)判断迭代过程是否结束:
(5a)将每个工作组中的所有线程进行阈值判断判断迭代次数n是否超过N,如果n≤N,就跳到步骤(3),否则结束迭代过程;
(6)计算聚合度并写入标签集:
(6a)每个workgroup工作完成后,使用原子...

【专利技术属性】
技术研发人员:季振洲林灏铨王佩锟
申请(专利权)人:哈尔滨工业大学威海
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1