分布式词向量的研究及其并行化

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:wycgdxx86
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在自然语言处理领域,常常需要从大量语料库中提取规则和训练模型,很多算法需要不断迭代逼近最优解,往往具有复杂的逻辑和计算,因此该领域的应用常常面临着一个海量数据、高计算量的训练过程,高性能计算成为了自然语言处理领域的迫切需求。由于物理和设计上面的限制,多核并行计算已经遇到瓶颈,异构加速平台成为了高性能计算领域的一个主要手段。GPU作为一种高度并行的可编程部件,拥有极强的计算能力,已经普遍用于通用计算中。  词向量是自然语言处理的核心内容。分布式词向量能反映词与词的语义相似性,是目前主流的词表示方法。获得分布式词向量最主要的方法是word2vec,它具有较快的训练速度和较好的词向量质量。SPPMI算法是以word2vec为基础,拥有完善的理论证明,在某些情况下获得的词向量会更好。本文中主要以GPU为加速平台,利用CUDA编程框架,研究了word2vec和SPPMI算法的并行优化。  Word2vec得到的词向量具有很好的语义相似性。Word2vec模型包含了CBOW和Skip_gram两种模型,每种模型中分别包含了层次Softmax和Negative Sampling两种算法。本文在GPU上实现了它的四种算法,并取得不错的加速性能。在对层次化Softmax算法并行化时,在输出层用满二叉树结构代替了哈夫曼树结构,使得在这种模型在GPU上更容易并行实现。本文设计了一种在GPU上自适应的学习速率设置方法,使得算法更有效率。在Nvidia Tesla C2050的平台上,获得了14-28倍的加速效果。  Word2vec中缺少充分的理论证明,SPPMI算法以word2vec的Skip-gram模型中的Negative Sampling算法为基础,证明了模型中所有观测词和其上下文的点积可以构成一个实数矩阵,该矩阵中每个元素是对应词和上下文的点互信息。一般用SVD方法去求解SPPMI算法,但SVD方法在GPU上实现很困难。本文中提出用SGD方法去估计SPPMI算法中模型的参数,很方便在GPU上实现。观测词与上下文点互信息的矩阵是一个高维稀疏矩阵,本文使用了一种简单的稀疏存储格式,解决了这个矩阵带来的访存不均衡问题。本文中还针对SPPMI算法提出了一种数据重排的方法,减少在GPU上计算时的数据冲突。在Nvidia Tesla C2050的平台上,本文实现获得了超过1000倍的加速比。
其他文献
软件功能规模度量(Functionalsizemeasurement,FSM)方法是从用户的角度按功能来表达开发的工作产品,它通过确定功能域的数量来导出软件的规模,它是独立于所采用的技术或工具的。
Web已经成为网络信息的主要交互平台,是人们获取知识的主要来源。但是,由于Web页面的无结构性、超链接的自由无序性、以及Web内容的海量性、多样性和动态变化性,使得人们从Web上
Internet目前面临严峻的安全威胁,网络入侵检测和关联分析技术能有效地发现并理解这些威胁,构成了动态网络安全模型的关键环节,也成为目前网络安全领域的热点研究问题。 本文
国家岩矿化石标本资源管理系统是科技部国家自然科技资源共享平台项目的子项目。该项目是将分散在全国相关单位和专业研究人员的具有重要科学价值的珍贵岩矿化石标本,以共享
曲面编辑一直是人们研究的热点问题,特别是在计算机图形学、虚拟仿真、可视化、三维动画等领域有广泛的应用背景。本文讨论了曲面的编辑和形变的理论与方法,包括曲面的表示方法
本文首先论述了生物在识别物体的过程中需要经过很多个阶段的信息编码和提取过程,并将高度冗余的象素数据转变为特征信息再进行识别的特征对结合生物视觉编码机制的图像模式识
支持向量机(SupportVectorMachine,SVM)是在统计学习理论的基础上发展起来的一种新的机器学习方法,它在小样本问题中表现出很多良好性能。但如果遇到问题规模较大时,如样本维数
随着大数据时代的来临,数据成为越来越重要的生产资料,而且数据的规模远远超过单台计算机可以处理的范围,因此近年来涌现出很多分布式计算框架。因为不同的计算场景在实时性、交
书法是中国文化的独特表现艺术,在思想交流、文化传承等方面发挥着重要的作用。随着计算机技术的发展,这门古老的艺术被注入新的生命力,利用计算机强大的计算和仿真能力,越来越多
虚拟地形是虚拟现实与数字地形模型相结合的产物. 虚拟现实技术可以真实地模拟现实世界中物理上的、功能上的事物和环境.数字地形模型是当前用来表示地形信息的最常用的方