自然语言处理中的注意力机制是干什么的?

简介:
本文来自AI新媒体量子位(QbitAI)

谈神经网络中注意力机制的论文和博客都不少,但很多人还是不知道从哪看起。于是,在国外问答网站Quora上就有了这个问题:如何在自然语言处理中引入注意力机制?

Quora自家负责NLP和ML的技术主管Nikhil Dandekar做出了一个简要的回答:

概括地说,在神经网络实现预测任务时,引入注意力机制能使训练重点集中在输入数据的相关部分,忽略无关部分。

注意力是指人的心理活动指向和集中于某种事物的能力。比如说,你将很长的一句话人工从一种语言翻译到另一种语言,在任何时候,你最关注的都是当时正在翻译的词或短语,与它在句子中的位置无关。在神经网络中引入注意力机制,就让它也学会了人类这种做法。

注意力机制最经常被用于序列转换(Seq-to-Seq)模型中。如果不引入注意力机制,模型只能以单个隐藏状态单元,如下图中的S,去捕获整个输入序列的本质信息。这种方法在实际应用中效果很差,而且输入序列越长,这个问题就越糟糕。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

图1:仅用单个S单元连接的序列转换模型

注意力机制在解码器(Decoder)运行的每个阶段中,通过回顾输入序列,来增强该模型效果。解码器的输出不仅取决于解码器最终的状态单元,还取决于所有输入状态的加权组合。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

图2:引入注意力机制的序列转换模型

注意力机制的引入增加了网络结构的复杂性,其作为标准训练模型时的一部分,通过反向传播进行学习。这在网络中添加模块就能实现,不需要定义函数等操作。

下图的例子,是将英语翻译成法语。在输出翻译的过程中,你可以看到该网络“注意”到输入序列的不同部分。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

图3:翻译网络示意图

由于英语和法语语序比较一致,从网络示意图可以看出,除了在把短语“European Economic Zone(欧洲经济区)”翻译成法语“zone économique européenne”时,网络线有部分交叉,在大多数时,解码器都是按照顺序来“注意”单词的。

文中配图来自Distill

推荐阅读:

Attention and Augmented Recurrent Neural Networks
http://distill.pub/2016/augmented-rnns/

Attention and Memory in Deep Learning and NLP
http://www.wildml.com/2016/01/attention-and-memory-in-deep-learning-and-nlp/

Peeking into the neural network architecture used for Google’s Neural Machine Translation
https://smerity.com/articles/2016/google_nmt_arch.html

【完】

本文作者:王小新
原文发布时间:2017-05-12
相关文章
|
21天前
|
机器学习/深度学习 自然语言处理
利用深度学习技术改进自然语言处理中的命名实体识别
命名实体识别(Named Entity Recognition, NER)在自然语言处理领域扮演着重要角色,但传统方法在处理复杂语境和多样化实体时存在局限性。本文将探讨如何利用深度学习技术,特别是基于预训练模型的方法,来改进命名实体识别,提高其在现实场景中的性能和适用性。
|
2天前
|
机器学习/深度学习 算法 自动驾驶
深度学习在图像识别中的应用与挑战
【4月更文挑战第18天】 随着人工智能技术的飞速发展,深度学习已经成为计算机视觉领域的核心技术之一。尤其是在图像识别任务中,深度学习模型已经取得了显著的成果。然而,尽管取得了很多成功,但深度学习在图像识别领域仍然面临着一些挑战,如数据不平衡、模型泛化能力不足等。本文将探讨深度学习在图像识别中的应用及其面临的挑战,并对未来可能的发展趋势进行展望。
|
12天前
|
机器学习/深度学习 监控 算法
深度学习在图像识别中的应用及其挑战
【4月更文挑战第8天】 随着人工智能技术的飞速发展,深度学习已经成为了计算机视觉领域的核心动力,特别是在图像识别任务中展现出了卓越的性能。本文章将深入探讨深度学习模型在图像识别中的应用,包括卷积神经网络(CNN)的基础架构、训练策略以及优化方法。同时,我们也将审视当前技术面临的主要挑战,诸如数据偏差问题、对抗性攻击的防御、以及模型泛化能力的提升等。本文旨在为读者提供一个关于深度学习在图像识别领域的全面视角,并对未来发展趋势进行展望。
|
13天前
|
机器学习/深度学习
深度学习在图像识别中的应用和挑战
【4月更文挑战第7天】 随着科技的进步,深度学习已经在许多领域中得到广泛应用,其中图像识别是最为突出的一个。本文将探讨深度学习在图像识别中的应用,以及面临的主要挑战。我们将详细介绍卷积神经网络(CNN)在图像识别中的关键作用,以及如何通过训练提高其准确性。同时,我们也将讨论深度学习在图像识别中面临的主要挑战,包括数据偏见、模型解释性等问题。
|
13天前
|
机器学习/深度学习 监控 自动驾驶
深度学习在图像识别中的应用及挑战
【4月更文挑战第7天】随着人工智能技术的不断发展,深度学习已经成为计算机视觉领域的核心驱动力。本文旨在探讨深度学习技术在图像识别中的应用及其面临的挑战。首先,我们将介绍深度学习的基本原理和关键技术,然后分析其在图像识别领域的应用,最后讨论当前技术发展所面临的主要挑战。
|
1月前
|
机器学习/深度学习 自动驾驶 算法
探索深度学习在图像识别中的应用与挑战
【2月更文挑战第23天】 随着人工智能技术的迅猛发展,深度学习已成为推动计算机视觉领域进步的核心技术之一。本文旨在深入剖析深度学习技术在图像识别任务中的应用及其面临的挑战。首先,文中概述了深度学习的基础理论和关键技术,包括卷积神经网络(CNN)和循环神经网络(RNN)。其次,通过实例分析,展示了深度学习在图像分类、目标检测和语义分割等方面的应用成效。接着,讨论了数据偏差、模型泛化能力不足、计算资源限制等现实问题对深度学习在图像识别中的影响。最后,探讨了未来可能的研究方向和技术趋势,为该领域的研究提供参考。
11 0
|
Ubuntu 网络安全 Docker
docker—compose部署FATE
利用阿里云服务器,部署FATE环境
620 0
docker—compose部署FATE
|
安全 关系型数据库 MySQL
Docker 进阶 发布自己的Docker镜像 将镜像上传到阿里云和Docker Hub
上传自己制作的docker镜像的方法,将docker镜像上传到Docker Hub,阿里云的两种方法,以及上传镜像时可能遇见的问题和解决办法,每一步的详解和上传镜像时的规范。
3698 0
Docker 进阶 发布自己的Docker镜像 将镜像上传到阿里云和Docker Hub
|
机器学习/深度学习 自然语言处理 算法
自然语言处理 - 依存句法分析
句法分析(syntactic parsing)是自然语言处理中的关键技术之一,它是对输入的文本句子进行分析以得到句子的句法结构的处理过程。对句法结构进行分析,一方面是语言理解的自身需求,句法分析是语言理解的重要一环,另一方面也为其它自然语言处理任务提供支持。例如句法驱动的统计机器翻译需要对源语言或目标语言(或者同时两种语言)进行句法分析;语义分析通常以句法分析的输出结果作为输入以便获得更多的指示信息。
166 0
|
JSON Shell Linux
docker-registry 私有仓库镜像 之 查看与删除
docker-registry 私有仓库镜像 之 查看与删除
1877 0