2. AutoEncoder在NLP中的应用

1. AutoEncoder介绍

2. Applications of AutoEncoder in NLP

3. Recursive Autoencoder(递归自动编码器)

4. Stacked AutoEncoder(堆栈自动编码器)

1. 前言

深度学习是机器学习的一个分支,它设计大量的学习函数和概念模型。大多数机器学习须要大量的人工筛选的特征做为输入,一般特征筛选须要对数据的意义有深刻的了解。而且一个能很好的适用于一组数据的特征可能并不使用于其余数据集。深度学习算法在不一样层次上对数据进行抽象,每个层都是根据上一个简单的层抽象定义。这是为何深度学习可以在复杂的任务熵表现出强大能力的缘由。html

2. AutoEncoder介绍

在接下来的内容中,咱们将主要讨论自动编码器(AE)在NLP中的应用。自动编码器是表示学习算法的一个很好的例子。它结合了编码器功能和解码器功能,以尽量重建输入的方式进行训练,同时隐藏层表示具备有用的属性。算法

2.1 Recursive Autoencoder(递归自动编码器)

RAE是递归自动编码器,假设咱们有一句话的分词后的向量表示方式,但愿从词向量中推断这个句子大几率。咱们先为句子构建二叉树结构。第一步,RAE重建两个叶子节点,然后再每一个步骤中,重建一个叶子节点和上一个RAE中的隐藏节点,直到最后重建出整棵树,RAE的构建方式能够训练任意的输入。
image网络

2.2 Stacked Autoencoder(堆叠自动编码器)

咱们后面将介绍如何使用堆叠自动编码器构建深度网络。SAE是经过依次训练单个自动编码器,使用反向传播进行微调,而后添加输出层(例如用于分类问题的softmax层)来完成的。已经证实单独训练层的方法致使准确性的显着提升。app

image

3. AutoEncoder in NLP

天然语言处理(NLP)是一个研究领域,它对涉及计算机理解人类语言的问题感兴趣。NLP包含计算机科学中一些最古老,最困难的问题。近年来,深度学习使得一些看似棘手的问题取得了有但愿的进展,以下所示。事实上,自动编码器已被用于尝试解决如下问题:机器学习

3.1 word Embeddings(词向量)

为了让计算机识别语言,咱们须要可以使用单词,句子和段落并将它们映射到向量。咱们将单词转换为向量的过程。有一下几种方法,词集模型、词代模型、n-gram、TF-IDF、word2vec。这些是传统的词向量模型,由Lebret和Collobert在2015年提出的论文《“The Sum of Its Parts”:
Joint Learning of Word and Phrase Representations with Autoencoders》,它使用自动编码器来共同窗习单词和短语的表示。函数

image

3.2 NMT(机器翻译)

机器翻译是一个很是难的问题,它的目标是准确地将文本从一种语言翻译成另外一种语言。
逐字翻译的传统方法会产生很是差的结果,部分缘由是大多数现代语言之间存在显着的句法差别。解决方案是分析输入语言中的语法,生成解析树,而后执行转换,生成一个新的解析树,可用于生成输出语言中的文本。
可是,因为同音异义词而致使错误:在不一样的语境中,词语可能会有很是不一样的含义。解决方案是分析源语言中的语义,而后根据这个含义生成目标文本。这个含义能够用单词,句子和段落向量的形式编码。
这些不一样的方法由Vauquois金字塔显示。一般,中间表示的深度越大,翻译质量越高。正如Chandar和Lauly在2014年提出的论文《Bilingual Autoencoders with Global Descriptors
for Modeling Parallel Sentences》,讨论如何使用自动编码器来构建双语单词和短语表示,不过说到机器翻译,不得不说的也是在2014年,由google提出的《Sequence to Sequence Learning
with Neural Networks》,其实AE和Seq2Seq有不少类似的地方。学习

image

3.3 Document Clustering(文档聚类)

文档聚类是将文档(例如网页或新闻报道)聚合成不一样类别的问题。咱们将主要讨论无监督的文档分类。这里的挑战是以什么样的方式表示文档,使得它们能够容易且准确地聚类。
2006年,Hinton使用自动编码器把804414个向量下降为2000个维度,每一个向量表明新闻专线故事中的特定单词几率。从下面显示的结果能够看出,自动编码器明显优于基于PCA的语义分析的标准方法和Roweis在2000年提出的非线性降维算法。测试

image

3.4 Sentiment Analysis(情绪分析)

咱们将研究情绪分析中最基本的任务:肯定陈述的情绪。换句话说,咱们想要判断给定的文本是正面的,中性的仍是负面的。这种情绪分析在商业中具备重要的应用,例如股票预测以及产品研究和营销。google

早期的方法只是寻找积极或消极的话语,并单独预测这种情绪。例如,包含“好”一词的评论多是积极的。这种方法能够很是快速地实现,所以仍然有几家公司使用这种方法实时对大量数据进行情绪分析。然而,这样的策略多是不许确的(大多数研究发现这种方法对于大约60-80%的测试数据是准确)。
2011年,由R Socher、Andrew Y. Ng等人发表的论文《Semi-Supervised Recursive Autoencoders
for Predicting Sentiment Distributions》讨论使用递归自动编码器的方法实现情绪分析。
image编码

4. 总结

文本主要介绍了AE在NLP中能够尝试去解决的问题,其实AE能有这么多用处,主要仍是得益于AE算法的强大的数据压缩的功能,可以把不管什么形式的数据压缩到固定维度,供给进行下一步运算使用。

相关文章
相关标签/搜索