机器学习周报第十六周

摘要

词嵌入、序列到序列模型(Seq2Seq)以及注意力机制是深度学习中的三个重要组成部分,它们共同推动了自然语言处理的发展。词嵌入是将文本数据映射到低维向量空间的技术,使得计算机能够更好地理解和处理文本数据。Seq2Seq模型引入了编码器-解码器结构,可以处理序列到序列的任务,如机器翻译和文本摘要生成。而注意力机制则允许模型在处理长序列时关注输入序列的不同部分,从而提高了模型的性能和泛化能力。

Abstract

Word embedding, sequence-to-sequence modeling (Seq2Seq), and attention mechanisms are three important components of deep learning that together drive the development of natural language processing. Word embedding is a technique for mapping textual data into a low-dimensional vector space, allowing computers to better understand and process textual data.The Seq2Seq model introduces an encoder-decoder structure that can handle sequence-to-sequence tasks such as machine translation and text summary generation. The attention mechanism, on the other hand, allows the model to focus on different parts of the input sequence when processing long sequences, thus improving the performance and generalization of the model.

一、循环神经网络

1.1 词嵌入

如果我们能够学习到一个300维的特征向量(词嵌入),通常我们可以把这300维的数据嵌入到一个二维空间里实现可视化。常用的可视化算法是t-SNE算法,来自于Laurens van der Maaten 和 Geoff Hinton的论文。
如下图,如果观察这种词嵌入的表示方法,我们看到man和woman这些词聚集在一块,king和queen聚集在一块,表示人的单词也都聚集在一起。动物都聚集在一起,水果也都聚集在一起,像1、2、3、4这些数字也聚集在一起。如果把这些生物看成一个整体,他们也聚集在一起。
就整体而言,这种词嵌入算法(word embeddings algorithms)对于相近的概念,学到的特征也比较类似,在对这些概念可视化的时候,最终把它们映射为相似的特征向量。这种表示方式用的是在300维空间里的特征表示,这叫做嵌入(embedding)。之所以叫嵌入的原因是,你可以想象一个300维的空间,这里用个3维的代替。现在取每一个单词比如orange,它对应一个3维的特征向量,所以这个词就被嵌在这个300维空间里的一个点上了,apple这个词就被嵌在这个300维空间的另一个点上。为了可视化,t-SNE算法把这个空间映射到低维空间,也可以画出一个2维图像然后观察,这就是这个术语嵌入的来源。
在这里插入图片描述
如下图所示,我们用命名实体识别(named entity recognition)的例子,假如有一个句子:“Sally Johnson is an orange farmer.”(Sally Johnson是一个种橙子的农民),Sally Johnson是一个人名,所以这里的输出为1。之所以能确定Sally Johnson是一个人名而不是一个公司名,是因为你知道种橙子的农民一定是一个人。
如果用特征化表示方法,将词嵌入向量输入训练好的模型,如果你看到一个新的输入:“Robert Lin is an apple farmer.”(Robert Lin是一个种苹果的农民),因为知道orange和apple很相近,那么你的算法很容易得出Robert Lin也是一个人。那么对于不常见的单词,如这句话:“Robert Lin is a durian cultivator.”(Robert Lin是一个榴莲培育家)怎么办?榴莲(durian)是一种比较稀罕的水果,这种水果在新加坡和其他一些国家流行。如果对于一个命名实体识别任务,你只有一个很小的标记的训练集,里面甚至可能没有durian(榴莲)或者cultivator(培育家)这两个词。但是如果你有一个已经学好的词嵌入,它会告诉你durian(榴莲)也是水果,就像orange(橙子),并且cultivator(培育家),做培育工作的人其实跟farmer(农民)差不多,那么你就有可能从你的训练集里的“an orange farmer”(种橙子的农民)推断出“a durian cultivator”(榴莲培育家)也是一个人。
词嵌入能够达到上述效果,因为学习词嵌入的算法会考察非常大的文本集(very large text corpuses

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值