Loading

摘要: 设$A$为一个有$n$个数字的序列,其中所有的数字各不相同。如果存在正整数$i$和$j$,使得$1 \le i \lt j \le n$且$A[i] \gt A[j]$,那么数对$(A[i], A[j])$就被称为$A$的一个逆序对,也称作逆序,逆序对的数量就是逆序数。如下图所示,$(A[2], A 阅读全文
posted @ 2020-04-05 20:07 shuo-ouyang 阅读(1289) 评论(0) 推荐(0) 编辑
摘要: 将深度学习模型的训练从单GPU扩展到多GPU主要面临以下问题:(1)训练框架必须支持GPU间的通信,(2)用户必须更改大量代码以使用多GPU进行训练。为了克服这些问题,本文提出了Horovod,它通过Ring Allreduce实现高效的GPU间通信,而且仅仅更改少量代码就可以实现多GPU训练。 T 阅读全文
posted @ 2020-03-28 11:57 shuo-ouyang 阅读(541) 评论(0) 推荐(0) 编辑
摘要: MXNet是一个支持多种编程语言的机器学习库,使用MXNet可以方便地实现机器学习算法,尤其是深度神经网络。通过嵌入在宿主语言中,它将声明式符号表达与命令式张量计算相结合。它提供自动求导以计算梯度。MXNet具有高效的计算和存储操作,可运行在从移动设备到分布式GPU集群的各种异构系统上。MXNet的 阅读全文
posted @ 2020-03-28 11:53 shuo-ouyang 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 字典树模板题 LeetCode 208. 实现Trie(前缀树) class Trie { public: /** Initialize your data structure here. */ Trie() { isEnd = false; fill(begin(next), end(next), 阅读全文
posted @ 2020-03-25 21:17 shuo-ouyang 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 由于良好的可扩展性,随机梯度下降(SGD)的并行实现是最近研究的热点。实现并行化SGD的关键障碍就是节点间梯度更新时的高带宽开销。因此,研究者们提出了一些启发式的梯度压缩方法,使得节点间只传输压缩后的梯度。尽管这些启发式方法在实践中很有效,但它们有时并不会收敛。 本文提出了量化SGD(Quantiz 阅读全文
posted @ 2020-03-24 19:08 shuo-ouyang 阅读(2643) 评论(1) 推荐(0) 编辑
摘要: 通过将分布式随机梯度下降(SGD)中的稠密更新替换成稀疏更新可以显著提高训练速度。当大多数更新接近于0时,梯度更新会出现正偏差,因此我们将99%最小更新(绝对值)映射为零,然后使用该稀疏矩阵替换原来的稠密矩阵。该方法可以于梯度量化相结合来进一步压缩梯度。我们探索了不同的的参数配置并将它们应用到神经机 阅读全文
posted @ 2020-03-24 19:06 shuo-ouyang 阅读(957) 评论(0) 推荐(0) 编辑
摘要: 默认构造函数的构建操作 默认构造函数在需要的时候被编译器合成出来。这里“在需要的时候”指的是编译器需要的时候。 带有默认构造函数的成员对象 如果一个类没有任何构造函数,但是它包含一个成员对象,该成员对象拥有默认构造函数,那么这个类的隐式默认构造函数就是非平凡的,编译器需要为该类合成默认构造函数。为了 阅读全文
posted @ 2020-03-24 18:10 shuo-ouyang 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 在深度神经网络的分布式训练中,梯度和参数同步时的网络开销是一个瓶颈。本文提出了一个名为TernGrad梯度量化的方法,通过将梯度三值化为${-1, 0, 1}$来减少通信量。此外,本文还使用逐层三值化和梯度裁剪加速算法的收敛。 在传统的数据并行SGD的每次迭代$t$中,训练数据会被分成$N$份以供$ 阅读全文
posted @ 2020-03-24 15:42 shuo-ouyang 阅读(754) 评论(0) 推荐(0) 编辑
摘要: C++对象模式 非静态数据成员放置在每个类对象内,静态数据成员则被放置在所有类对象之外。静态和非静态的成员函数也被放置在所有类对象之外。每个类产生一堆指向虚函数的指针,放在虚表(vtbl)中。每个类对象维护一个指针(vptr),指向相关的虚表。虚表的首元素维护了每个类所关联的 对象。 优点:空间与存 阅读全文
posted @ 2020-03-20 19:57 shuo-ouyang 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 题目类型: 判断20分(10题) 单选20分(10题) 简答30分(5题) 问答/计算30分(3题) 1. ARPANET的主要设计原则 1.1 最基本目标:连接不同的网络 1.1.1 不同网络连接的需求 (1)无线分组网络介入并使用ARPANET中的计算资源 (2)连接不同类型(传输介质)的局域网 阅读全文
posted @ 2019-01-07 20:13 shuo-ouyang 阅读(1233) 评论(0) 推荐(1) 编辑