Facebook激进地使用卷积网络处理NLP问题,意外地取得了很不错的效果。而 Google 一不做二不休,发布了一种新型的网络结构,transformer模型 [1],该网络结构既不使用RNN,也不使用CNN,而且也获得不错的效果。

Read More

使用长短时期记忆(LSTM)用于序列模型取得了很好的效果,在2017年由Facebook提出了使用卷积神经网络构建Seq2Seq模型 [1]。循环神经网络通过窗口移动方式输入数据进行训练,当句子有 \(\large n\) 个窗口时,获得对应的特征表示的时间复杂度为 \(\large \mathcal{O}(n)\)。而使用卷积神经网络进行并行化计算,当卷积核宽度为 \(\large k\) ,其时间复杂度为 \(\large \mathcal{O}(\frac{n}{k})\)

Read More

编码和解码

我们把源句子(source sentence)表示为 \(\large (x_1, x_2, \dots, x_n) \in x\), 目标句子(target sentence)表示为 \(\large (y_1, y_2, \dots, y_n) \in y\)

使用编码网路(encoder)对源句子进行编码,使用解码网络(decoder)对源句子的编码进行解码,解码出预测句子。同时,作为监督,把目标句子作为解码网络的输入。

Read More

GloVe(Global Vector),是一种结合全局矩阵分解和本地上下文窗口的方法。LSA(latent semantic analysis)虽然能够有效的统计信息,但在词汇类比任务中表现很差。而Skip-gram虽然在词汇类比任务中表现很好,但依赖于窗口的移动,而不能有效统计全局的计数。论文作者认为,全局计数的对数加上双线性回归方法会非常合适。

Read More

Word2Vec模型中,主要有Skip-Gram和CBOW两种模型,从直观上理解,Skip-Gram是给定 Input Word 来预测上下文。而CBOW是给定上下文来预测。本篇文章仅讲解Skip-Gram模型。

Read More

虽然DQN的表现很好,但它有一个致命的缺点是无法学习连续动作空间。回想一下,DQN 是根据greddy策略找到最大Q值对应的行为,即 \(\large a = \mathop{argmax}\limits_{a \in \mathcal{A}} Q(s)\),也就说每一个行为对应一个Q值,当动作是高维度的或者是连续的,那么DQN的计算代价就很大,甚至无法进行学习。这时使用策略梯度就能很好解决这个问题。我们把环境动作设计成连续的,用动作特征表示一个动作,使用策略梯度,我们不需要计算每一个动作的Q值,而是可以通过参数化近似的办法直接输出一个动作特征,而不是从某个值映射到某个动作。DDPG (Deep Deterministic Policy Gradient)算法很好的弥补了DQN的缺陷。当然,并不是DDPG只能解决连续动作问题,只要把动作特征映射到某一个动作上就能应对非连续动作空间问题了。

Read More

前段时间在CentOS6集群上跑TensorFlow的时候遇到了glibc和gcc版本过低的问题。本篇先讲升级glibc。

注意,glibc是linux的核心底层库,一旦升级失败,系统基本就完蛋了。虽然这个教程我有九成把握能升级成功,但是为了避免突发情况,建议你在实际环境上升级之前,先跑一台虚拟机去模拟升级。

Read More

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×