#深度学习

词性标注(Part-of-Speech Tagging, 简称POS tagging)是将句子中的每个词做一些标记,如动词,名词,副词,形容词等。词性很有用,因为它们揭示了一个单词及其相邻词的很多信息。知道一个单词是名词还是动词可以告诉我们可能的相邻单词(名词前面有限定词和形容词,动词前面有名词)和句法结构单词(名词通常是名词短语的一部分)。一个单词的词性甚至可以在语音识别或合成中发挥作用,因为有些单词不同词性时的读音是不同的。在本综述中,将讨论词性标注的相关算法,比如早期的隐马尔可夫模型 (Hidden Markov Model, HMM)和随机条件域 (Conditional Random Fields, CRF),以及近几年的神经网络。

Read More

BERT,完整描述是使用双向编码器的Transformer (Bidirectional Encoder Representations from Transformers), 是Google在2018年发布的一个神经网络模型 [1]。该模型与以往大多数NLP模型不同,它本身便是一个用于迁移训练的模型。

对于迁移训练,在计算机视觉中迁移训练已经是个常态了,一般都是在经过ImageNet数据训练的预训练模型上进行微调。如今,研究人员在处理NLP问题上也希望能够通过预训练来提高模型能力。而BERT的该论文主要阐述如何在BERT模型上进行预训练,然后基于预训练模型,对于不同任务(task)进行微调。

Read More

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

虽然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

Your browser is out-of-date!

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

×