神经网络的可解释性,从经验主义到数学建模(一篇icml)

本来想把题目取为“从炼丹到化学”,但是这样的题目太言过其实,远不是近期可以做到的,学术研究需要严谨。但是,寻找适当的数学工具去建模深度神经网络表达能力和训练能力,将基于经验主义的调参式深度学习,逐渐过渡为基于一些评测指标定量指导的深度学习, 是新一代人工智能需要面对的课题,也是在当前深度学习浑浑噩噩的大背景中的一些新的希望。

这篇短文旨在介绍团队近期的ICML工作——”Towards a Deep and Unified Understanding of Deep Neural Models in NLP”。这是我与微软亚洲研究院合作的一篇论文。其中,微软研究院的王希廷研究员在NLP方向有丰富经验,王老师和关超宇同学在这个课题上做出了非常巨大的贡献,这里再三感谢。

大家说神经网络是“黑箱”,其含义至少有以下两个方面:一、神经网络特征或决策逻辑在语义层面难以理解;二、缺少数学工具去诊断与评测网络的特征表达能力(比如,去解释深度模型所建模的知识量、其泛化能力和收敛速度),进而解释目前不同神经网络模型的信息处理特点。

过去我的研究一直关注第一个方面,而这篇ICML论文同时关注以上两个方面——针对不同自然语言应用的神经网络,寻找恰当的数学工具去建模其中层特征所建模的信息量,并可视化其中层特征的信息分布,进而解释不同模型的性能差异。

其实,我一直希望去建模神经网络的特征表达能力,但是又一直迟迟不愿意下手去做。究其原因,无非是找不到一套优美的数学建模方法。深度学习研究及其应用很多已经被人诟病为“经验主义”与“拍脑袋”,我不能让其解释性算法也沦为经验主义式的拍脑袋——不然解释性工作还有什么意义。

研究的难点在于对神经网络表达能力的评测指标需要具备“普适性”和“一贯性”。首先,这里“普适性”是指解释性指标需要定义在某种通用的数学概念之上,保证与既有数学体系有尽可能多的连接,而与此同时,解释性指标需要建立在尽可能少的条件假设之上,指标的计算算法尽可能独立于神经网络结构和目标任务的选择。

其次,这里的“一贯性”指评测指标需要客观的反应特征表达能力,并实现广泛的比较,比如

1. 诊断与比较同一神经网络中不同层之间语义信息的继承与遗忘;

2. 诊断与比较针对同一任务的不同神经网络的任意层之间的语义信息分布

3. 比较针对不同任务的不同神经网络的信息处理特点。

具体来说,在某个NLP应用中,当输入某句话x=[x1,x2,…,xn]到目标神经网络时,我们可以把神经网络的信息处理过程,看成对输入单词信息的逐层遗忘的过程。即,网络特征每经过一层传递,就会损失一些信息,而神经网络的作用就是尽可能多的遗忘与目标任务无关的信息,而保留与目标任务相关的信息。于是,相对于目标任务的信噪比会逐层上升,保证了目标任务的分类性能。

我们提出一套算法,测量每一中层特征f中所包含的输入句子的信息量,即H(X|F=f)。当假设各单词信息相互独立时,我们可以把句子层面的信息量分解为各个单词的信息量H(X|F=f) = H(X1=x1|F=f) + H(X2=x2|F=f) + … + H(Xn=xn|F=f). 这评测指标在形式上是不是与信息瓶颈理论相关?但其实两者还是有明显的区别的。信息瓶颈理论关注全部样本上的输入特征与中层特征的互信息,而我们仅针对某一特定输入,细粒度地研究每个单词的信息遗忘程度。

其实,我们可以从两个不同的角度,计算出两组不同的熵H(X|F=f)。(1)如果我们只关注真实自然语言的低维流形,那么p(X=x|F=f)的计算比较容易,可以将p建模为一个decoder,即用中层特征f去重建输入句子x。(2)在这篇文章中,我们其实选取了第二个角度:我们不关注真实语言的分布,而考虑整个特征空间的分布,即x可以取值为噪声。在计算p(X=x,F=f) = p(X=x) p(F=f|X=x)时,我们需要考虑“哪些噪声输入也可以生成同样的特征f”。举个toy example,当输入句子是"How are you?"时,明显“are”是废话,可以从“How XXX you?”中猜得。这时,如果仅从真实句子分布出发,考虑句子重建,那些话佐料(“are” “is” “an”)将被很好的重建。而真实研究选取了第二个角度,即我们关注的是哪些单词被神经网络遗忘了,发现原来“How XYZ you?”也可以生成与“How are you?”一样的特征。

这时,H(X|F=f)所体现的是,在中层特征f的计算过程中,哪些单词的信息在层间传递的过程中逐渐被神经网络所忽略——将这些单词的信息替换为噪声,也不会影响其中层特征。这种情况下,信息量H(X|F=f)不是直接就可以求出来的,如何计算信息量也是这个课题的难点。具体求解的公式推导可以看论文,知乎上只放文字,不谈公式。

首先,从“普适性”的角度来看,中层特征中输入句子的信息量(输入句子的信息的遗忘程度)是信息论中基本定义,它只关注中层特征背后的“知识量”,而不受网络模型参数大小、中层特征值的大小、中层卷积核顺序影响。其次,从“一贯性”的角度来看,“信息量”可以客观反映层间信息快递能力,实现稳定的跨层比较。如下图所示,基于梯度的评测标准,无法为不同中间层给出一贯的稳定的评测。

下图比较了不同可视化方法在分析“reverse sequence”神经网络中层特征关注点的区别。我们基于输入单词信息量的方法,可以更加平滑自然的显示神经网络内部信息处理逻辑

下图分析比较了不同可视化方法在诊断“情感语义分类”应用的神经网络中层特征关注点的区别。我们基于输入单词信息量的方法,可以更加平滑自然的显示神经网络内部信息处理逻辑

————————————————————————————————————

基于神经网络中层信息量指标,分析不同神经网络模型的处理能力。我们分析比较了四种在NLP中常用的深度学习模型,即BERT, Transformer, LSTM, 和CNN。在各NLP任务中, BERT模型往往表现最好,Transformer模型次之。

如下图所示,我们发现相比于LSTM和CNN,基于预训练参数的BERT模型和Transformer模型往往可以更加精确地找到与任务相关的目标单词,而CNN和LSTM往往使用大范围的邻接单词去做预测。

进一步,如下图所示,BERT模型在预测过程中往往使用具有实际意义的单词作为分类依据,而其他模型把更多的注意力放在了and the is 等缺少实际意义的单词上。

如下图所示,BERT模型在L3-L4层就已经遗忘了EOS单词,往往在第5到12层逐渐遗忘其他与情感语义分析无关的单词。相比于其他模型,BERT模型在单词选择上更有针对性。

我们的方法可以进一步细粒度地分析,各个单词的信息遗忘。BERT模型对各种细粒度信息保留的效果最好。

十多年前刚刚接触AI时总感觉最难的是独立找课题,后来发现追着热点还是很容易拍脑袋想出一堆新题目,再后来发现真正想做的课题越来越少,虽然AI领域中学者们的投稿量一直指数增长。

回国以后,身份从博后变成了老师,带的学生增加了不少,工作量也翻倍了,所以一直没有时间写文章与大家分享一些新的工作,如果有时间还会与大家分享更多的研究,包括这篇文章后续的众多算法。信息量在CV方向应用的论文,以及基于这些技术衍生出的课题,我稍后有空再写。

顺便做个广告,欢迎有能力的学生来实验室实习,同时也招博后。目前我的团队有30余人,其中不少同学是外校全职访问实习生。我一般会安排每三四人为一个团队做一个课题,由于访问实习生往往不用为上课而分心,可以全天候做实验室工作,在经过一定训练之后往往会担任团队领导。

可解释性AI
可解释性AI

理论计算机视觉人工智能深度学习
4
相关数据
微软亚洲研究院机构

微软亚洲研究院于1998年在北京成立,是微软公司在亚太地区设立的基础及应用研究机构,也是微软在美国本土以外规模最大的一个研究院。微软亚洲研究院从事自然用户界面,智能多媒体,大数据与知识挖掘,人工智能,云和边缘计算,计算机科学基础等领域的研究,致力于推动计算机科学前沿发展,着眼下一代革命性技术的研究,助力微软实现长远发展战略。通过与微软产品部门紧密合作,微软亚洲研究院将众多创新技术转移到了微软的核心产品中,如Office、Windows、Azure、Bing、Visual Studio、Xbox Kinect以及小冰、Cortana和Microsoft Translator等人工智能产品。

https://www.msra.cn/
微软机构

微软是美国一家跨国计算机科技公司,以研发、制造、授权和提供广泛的计算机软件服务为主。总部位于美国华盛顿州的雷德蒙德,最为著名和畅销的产品为Microsoft Windows操作系统和Microsoft Office办公室软件,以及Xbox的游戏业务。微软是美国《财富》杂志2015年评选的世界500强企业排行榜中的第95名。

https://www.microsoft.com/en-us/about
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

语义分析技术

语义分析是编译过程的一个逻辑阶段, 语义分析的任务是对结构上正确的源程序进行上下文有关性质的审查,进行类型审查。语义分析是审查源程序有无语义错误,为代码生成阶段收集类型信息。比如语义分析的一个工作是进行类型审查,审查每个算符是否具有语言规范允许的运算对象,当不符合语言规范时,编译程序应报告错误。如有的编译程序要对实数用作数组下标的情况报告错误。又比如某些程序规定运算对象可被强制,那么当二目运算施于一整型和一实型对象时,编译程序应将整型转换为实型而不能认为是源程序的错误。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

信息论技术

信息论是在信息可以量度的基础上,研究有效地和可靠地传递信息的科学,它涉及信息量度、信息特性、信息传输速率、信道容量、干扰对信息传输的影响等方面的知识。通常把上述范围的信息论称为狭义的信息论,又因为它的创始人是香农,故又称为香农信息论。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

知乎机构

知乎作为中文互联网知名知识内容平台,致力于构建一个人人都可接入的知识分享网络,让人们便捷地与世界分享知识、经验和见解,高效获得可信赖的解答。 目前,知乎已经覆盖「问答」社区、一站式知识服务平台「知乎大学」、短内容分享功能「想法」等一系列产品和服务,并建立了包括音频、视频在内的多元媒介形式。截止 2018 年 8 月底,知乎用户数已突破 2 亿,回答数超过 1.2 亿。未来,知乎进一步加大对 AI 技术和应用的投入,构建一个由 AI 驱动的智能社区,让知识普惠每一个人。

https://www.zhihu.com
推荐文章
暂无评论
暂无评论~