从神经科学的角度来看,尝试阅读本文是一项复杂的任务。目前,您可能受到电子邮件,新闻,我们手机上的通知的轰炸,平时烦人的同事打扰以及其他使您的大脑向多个方向旋转的干扰。为了阅读这篇小文章或执行许多其他认知任务,您需要集中精力,需要关注。

注意是一种认知技能,对知识的形成至关重要。然而,数百年来,注意力的动态一直是神经科学家们的一个谜,而就在最近,我们已经取得了重大突破,有助于解释注意力的工作原理。在深度学习程序的背景下,建立注意力动态似乎是显而易见的一步,以提高模型的知识并使模型适应不同的场景。将注意力机制构建到深度学习系统中是一个非常活跃的新兴研究领域。几个月前,Google Brain小组的研究人员发表了一篇论文,详细介绍了可用于模拟深度神经网络中注意力的一些关键模型。

注意如何工作?

为了理解深度学习系统中的注意力,研究一下这种认知现象在人脑中是如何发生的可能是有用的。从神经科学的角度来看,注意力是大脑选择性地专注于环境的一方面而忽略其他事物的能力。当前的研究确定了两种主要的注意力类型,它们都与大脑的不同区域有关。基于对象的注意力通常是指大脑专注于特定对象的能力,例如本文中某个部分的图片。基于空间的注意力主要与对特定位置的关注有关。两种注意力都与深度学习模型相关。尽管基于对象的注意力可以用于诸如图像识别或机器翻译之类的系统中,但空间注意力与诸如自动驾驶汽车之类的深度强化学习场景相关。

深度神经网络中的注意界面

当涉及深度学习系统时,为了模拟不同类型的注意力,已经创建了不同的技术。Google的研究论文集中在与循环神经网络(RNN)相关的四个基本模型上。为什么要使用RNN?好吧,RNN是一种网络,主要用于处理顺序数据并获得更高级的知识。结果,RNN通常被用作改进其他神经网络模型(例如卷积神经网络(CNN)或生成接口)的工作的第二步。在RNN中建立注意力机制可以帮助提高对不同深度神经模型的了解。Google Brain小组确定了以下四种将注意力吸引到RNN模型中的技术:

· 神经图灵机:最简单的注意力接口,神经图灵机(非关税措施)添加的存储器的结构与传统RNNs。使用内存结构可以使ATM指定“注意力分布”部分,该部分描述模型应关注的区域。去年,我发布了NTM概述,探讨了其一些基本概念。NTM的实现可以在许多流行的深度学习框架中找到,例如TensorFlow和Theano。

· 注意接口:注意接口使用RNN模型来关注另一个神经网络的特定部分。可以在使用CNN-RNN双工的图像识别模型中找到该技术的经典示例。在这种体系结构中,RNN将专注于CNN生成的图像的特定部分,以对其进行改进并提高知识的质量。

· 自适应计算时间:这是一种崭新的技术,允许RNN在每个时间步长执行多个计算步骤。这与注意力有什么关系?很简单,标准RNN在每个步骤中执行相同的计算量。自适应计算时间技术使用注意力分布模型来确定每次运行的步骤数,从而可以将更多的重点放在模型的特定部分上。

· 神经编程器:神经编程器是深度学习领域一个引人入胜的新领域,专注于学习创建程序以解决特定任务。实际上,它学会了生成此类程序而无需正确程序的示例。它发现了如何生成程序作为完成某些任务的一种手段。从概念上讲,神经程序员技术试图弥合神经网络与传统编程技术之间的鸿沟,而传统编程技术可用于开发深度学习模型中的注意力机制。

注意是人脑最复杂的认知能力之一。在神经网络中模拟注意力机制可以为深度学习的未来打开新的令人着迷的可能性。

本文转自towardsdatascience,原文地址