论文目录 | |
摘要 | 第1-6页 |
ABSTRACT | 第6-10页 |
缩略语对照表 | 第10-13页 |
第一章 绪论 | 第13-19页 |
1.1 CUDA发展概述 | 第13-14页 |
1.2 Word2Vec发展概述 | 第14-16页 |
1.3 课题研究意义 | 第16页 |
1.4 本文组织结构 | 第16-19页 |
第二章 Word2Vec技术研究 | 第19-31页 |
2.1 词向量 | 第19-20页 |
2.1.1 One-Hot表示方式 | 第19-20页 |
2.1.2 分布式表示方式 | 第20页 |
2.2 统计语言模型 | 第20-21页 |
2.3 神经网络语言模型 | 第21-23页 |
2.4 Word2Vec模型 | 第23-29页 |
2.4.1 CBOW + Hierarchical Softmax网络结构 | 第24-26页 |
2.4.2 CBOW + Negative Sampling网络结构 | 第26-27页 |
2.4.3 Skip-gram + Hierarchical Softmax网络结构 | 第27-28页 |
2.4.4 Skip-gram + Negative Sampling网络结构 | 第28-29页 |
2.5 本章小结 | 第29-31页 |
第三章 CUDA程序优化技术 | 第31-45页 |
3.1 任务划分优化 | 第31-32页 |
3.2 存储器访问优化 | 第32-35页 |
3.2.1 主机端与设备端通信优化 | 第34页 |
3.2.2 共享存储器访问优化 | 第34-35页 |
3.2.3 全局存储器访问优化 | 第35页 |
3.3 指令流优化 | 第35-36页 |
3.4 均衡GPU资源 | 第36页 |
3.5 基于CUDA并行架构的矩阵乘法研究与优化 | 第36-43页 |
3.5.1 CUDA实现矩阵乘法 | 第37-39页 |
3.5.2 CUDA优化方案 1 | 第39-41页 |
3.5.3 CUDA优化方案 2 | 第41-42页 |
3.5.4 CUDA优化方案总结 | 第42-43页 |
3.6 本章小结 | 第43-45页 |
第四章 基于CUDA的Word2Vec设计与实现 | 第45-61页 |
4.1 串行版本的Word2Vec算法 | 第45-47页 |
4.2 Word2Vec在CUDA平台实现的可行性分析 | 第47-48页 |
4.2.1 CUDA编程模型 | 第47页 |
4.2.2 基于CUDA的Word2Vec任务划分 | 第47-48页 |
4.3 基于CUDA的Word2Vec并行算法设计 | 第48-50页 |
4.4 基于CUDA的Word2Vec实现 | 第50-58页 |
4.4.1 CUDA初始化 | 第51页 |
4.4.2 主机端和设备端的数据传输 | 第51-53页 |
4.4.3 内核函数kernel | 第53-58页 |
4.5 基于CUDA的Word2Vec代码优化 | 第58-59页 |
4.6 本章小结 | 第59-61页 |
第五章 实验结果与分析 | 第61-69页 |
5.1 实验环境 | 第61-62页 |
5.2 正确性验证 | 第62-65页 |
5.2.1 计算词向量的距离 | 第62-63页 |
5.2.2 向量加减 | 第63-65页 |
5.3 性能比较 | 第65-66页 |
5.4 本章小结 | 第66-69页 |
第六章 总结与展望 | 第69-71页 |
6.1 本文工作总结 | 第69页 |
6.2 未来工作展望 | 第69-71页 |
参考文献 | 第71-75页 |
致谢 | 第75-77页 |
作者简介 | 第77-78页 |