CN113792553A - 用于自然语言处理神经网络模型的可视化分析方法和系统 - Google Patents

用于自然语言处理神经网络模型的可视化分析方法和系统 Download PDF

Info

Publication number
CN113792553A
CN113792553A CN202111014678.1A CN202111014678A CN113792553A CN 113792553 A CN113792553 A CN 113792553A CN 202111014678 A CN202111014678 A CN 202111014678A CN 113792553 A CN113792553 A CN 113792553A
Authority
CN
China
Prior art keywords
neural network
network model
mutual information
word
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111014678.1A
Other languages
English (en)
Inventor
刘世霞
李振
张慧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN202111014678.1A priority Critical patent/CN113792553A/zh
Publication of CN113792553A publication Critical patent/CN113792553A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种用于自然语言处理神经网络模型的可视化分析方法和系统,涉及自然语言处理技术领域,该方案通过接收神经网络模型和用于训练所述神经网络模型的训练语料库;计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。由此,采用上述方案的本申请可以实现对不同结构的神经网络模型进行对比分析并可视化展示,从而改善用户体验。

Description

用于自然语言处理神经网络模型的可视化分析方法和系统
技术领域
本申请涉及自然语言处理技术领域,尤其涉及一种用于自然语言处理神经网络模型的可视化分析方法和系统。
背景技术
最近几年,应用于自然语言处理的深度学习技术得到了迅速的发展,提出了卷积神经网络模型(CNN)、长短期记忆神经网络模型(LSTM),到基于深度自注意力变换网络(Transformer)的不同的深度模型,并且不断改善自然语言处理任务的性能。
为了提高自然语言处理任务的性能,这些深度神经网络模型架构变得越来越复杂,并且越来越多样化。例如,最近的专用于自然语言处理的BERT神经网络模型包含数亿个参数。BERT神经网络模型与卷积神经网络模型和循环神经网络模型等传统神经网络模型相比,BERT神经网络模型无需循环和卷积结构,而是依靠注意力机制。这些复杂多样的架构,使得在进行自然语言处理任务时,理解和比较这些神经网络模型的内部工作方式,寻求进一步改进成为一项挑战。
但是,现有大多数自然语言处理神经网络模型的解释方法仅限于针对某些特定网络结构,缺乏对具有不同架构、不同参数的神经网络模型进行分析的一致的和通用的方法。例如,现有的应用于自然语言处理的神经网络模型可视化工具就仅能为用户提供对于一种应用于自然语言处理的特定结构神经网络模型的分析信息,不能支持其他结构神经网络模型的分析,不能使用户对不同神经网络模型进行对比分析,造成用户体验不佳。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的第一个目的在于提出一种用于自然语言处理神经网络模型的可视化分析方法,以实现对不同架构、不同工作方式的用于自然语言处理的深度神经网络模型执行分析,使得用户可从所述神经网络模型中有效地识别和诊断问题并修复问题,进而建立性能更好的深度神经网络模型。
本申请的第二个目的在于提出一种用于自然语言处理神经网络模型的可视化分析系统。
本申请的第三个目的在于提出一种计算机设备。
本申请的第四个目的在于提出一种非临时性计算机可读存储介质。
为达上述目的,本申请第二方面实施例提出了一种用于自然语言处理神经网络模型的可视化分析方法,该方法包括:
接收神经网络模型和训练语料库,其中,所述训练语料库用于训练所述神经网络模型;
计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;
将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。
可选的,在本申请实施例中,在所述将所述训练语料库中每个单词及其对所述神经网络模型的重要程度可视化展示之后,还包括:
对所述重要程度进行分析,以确定所述训练语料库中的异常单词,并将所述异常单词对所述神经网络模型的重要程度作为第一异常值;
根据所述第一异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
可选的,在本申请实施例中,在所述计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息之后,还包括:
将多个所述第一互信息组成第一互信息向量,其中,通过下述步骤获取所述第一互信息向量:
对所述训练样本添加高斯噪音;
根据所述训练样本和所述高斯噪音构建关于所述第一互信息向量的损失函数;
对关于所述第一互信息向量的损失函数使用最大似然估计使所述损失函数最小,计算得到第一高斯噪音,并根据所述第一高斯噪音获取所述第一互信息向量;其中,
所述损失函数的表达式为:
Figure BDA0003240005770000021
其中,
Figure BDA0003240005770000022
为添加高斯噪音后的训练样本,
Figure BDA0003240005770000023
表示∈i是服从
Figure BDA0003240005770000024
分布的高斯噪音,φ表示所述神经网络模型,S表示所述训练样本通过神经网络模型φ在输出层输出的语义向量,
Figure BDA0003240005770000025
表示所述神经网络模型φ对所述训练语料库中全体训练样本在输出层输出的语义向量的方差,
Figure BDA0003240005770000026
表示对
Figure BDA0003240005770000027
的数学期望,K和λ取做0-1之间的经验值。
可选的,在本申请实施例中,所述根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度,具体包括:
获取所述每个单词在所述训练语料库出现的词频,和所述每个单词与所述神经网络模型在输出层输出的语义向量的贡献度;
根据所述词频和所述词频计算所述重要程度;其中,通过下式计算所述重要程度:
M=log(C(w)+1.0)*G(w)
其中,M为每个单词对所述神经网络模型的重要程度,w为训练语料库中的每个单词,C(w)为每个单词在所述训练语料库出现的词频,G(w)为每个单词与神经网络模型在输出层输出的语义向量的第一互信息的均值。
可选的,在本申请实施例中,在所述接收神经网络模型和训练语料库之后,还包括:
计算所述训练语料库中每个训练样本对所述神经网络模型的预测得分和所述输出层输出的语义向量;
通过投影技术对所述神经网络模型的预测得分和所述输出层输出的语义向量进行投影处理,以得到每个训练样本的投影坐标并进行可视化展示。
可选的,在本申请实施例中,在所述通过投影技术对所述神经网络模型的预测得分和所述输出层输出的语义向量进行投影处理,以得到每个训练样本的投影坐标并进行可视化展示之后,还包括:
对所述重要程度进行分析,以确定所述训练语料库中的异常样本,并将所述异常样本对所述神经网络模型的投影坐标作为第二异常值;
根据所述第二异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
可选的,在本申请实施例中,在所述接收神经网络模型和训练语料库之后,还包括:
计算所述训练语料库中每个训练样本与所述神经网络模型的每个中间层的第二互信息矩阵;
根据所述第二互信息矩阵提取每个训练样本与所述神经网络模型的多个中间层的第一多个第二互信息列向量,其中,一个第二互信息列向量中的每个元素指示一个训练样本中包含的每个单词对某一中间层的第二互信息值;
对所述第一多个第二互信息列向量进行层次聚类,以得到每个训练样本在每个中间层的语法结构,并计算所述第一多个第二互信息列向量中的任意两个元素的相似度;
将所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行可视化展示。
可选的,在本申请实施例中,在所述将所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行可视化展示之后,还包括:
对所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行分析,以确定得到的所有所述语法结构和所述相似度中的异常语法结构和/或相似度异常,并将所述异常语法结构和/或相似度异常作为第三异常值;
根据所述第三异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
可选的,在本申请实施例中,根据所述第二互信息矩阵获取所述训练语料库中包含同一单词的训练样本与所述神经网络模型的多个中间层对应的第二多个第二互信息列向量,并计算所述同一单词与所述神经网络模型中输出层输出的语义向量的第二互信息;
显示所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词。
可选的,在本申请实施例中,对显示的所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词进行分析,以确定异常单词并将其作为第四异常值;
根据所述第四异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
为达上述目的,本申请第二方面实施例提出了一种用于自然语言处理神经网络模型的可视化分析系统,该系统包括:
接收模块,用于接收神经网络模型和训练语料库,其中,所述训练语料库用于训练所述神经网络模型;
处理模块,用于计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;
可视化模块,用于将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。
可选的,在本申请实施例中,所述可视化分析系统,还包括异常确定模块,所述异常确定模块,用于对所述重要程度进行分析,以确定所述训练语料库中的异常单词,并将所述异常单词对所述神经网络模型的重要程度作为第一异常值;
所述可视化模块,还用于根据所述第一异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
可选的,在本申请实施例中,所述处理模块,还用于:
将多个所述第一互信息组成第一互信息向量,其中,通过下述步骤获取所述第一互信息向量:
对所述训练样本添加高斯噪音;
根据所述训练样本和所述高斯噪音构建关于所述第一互信息向量的损失函数;
对关于所述第一互信息向量的损失函数使用最大似然估计使所述损失函数最小,计算得到第一高斯噪音,并根据所述第一高斯噪音获取所述第一互信息向量;其中,
所述损失函数的表达式为:
Figure BDA0003240005770000051
其中,
Figure BDA0003240005770000052
为添加高斯噪音后的训练样本,
Figure BDA0003240005770000053
表示∈i是服从
Figure BDA0003240005770000054
分布的高斯噪音,φ表示所述神经网络模型,S表示所述训练样本通过神经网络模型φ在输出层输出的语义向量,
Figure BDA0003240005770000055
表示所述神经网络模型φ对所述训练语料库中全体训练样本在输出层输出的语义向量的方差,
Figure BDA0003240005770000056
表示对
Figure BDA0003240005770000057
的数学期望,K和λ取做0-1之间的经验值。
可选的,在本申请实施例中,所述处理模块,还用于:计算所述训练语料库中每个训练样本与所述神经网络模型的每个中间层的第二互信息矩阵;
根据所述第二互信息矩阵提取每个训练样本与所述神经网络模型的多个中间层的第一多个第二互信息列向量,其中,一个第二互信息列向量中的每个元素指示一个训练样本中包含的每个单词对某一中间层的第二互信息值;
对所述第一多个第二互信息列向量进行层次聚类,以得到每个训练样本在每个中间层的语法结构,并计算所述第一多个第二互信息列向量中的任意两个元素的相似度;
所述可视化模块,还用于将所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行可视化展示。
可选的,在本申请实施例中,所述异常确定模块,还用于:对所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行分析,以确定得到的所有所述语法结构和所述相似度中的异常语法结构和/或相似度异常,并将所述异常语法结构和/或相似度异常作为第三异常值;
所述可视化模块,还用于根据所述第三异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
可选的,在本申请实施例中,所述处理模块,还用于根据所述第二互信息矩阵获取所述训练语料库中包含同一单词的训练样本与所述神经网络模型的多个中间层对应的第二多个第二互信息列向量,并计算所述同一单词与所述神经网络模型中输出层输出的语义向量的第二互信息;
所述可视化模块,还用于显示所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词。
可选的,在本申请实施例中,所述异常确定模块,还用于对显示的所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词进行分析,以确定异常单词并将其作为第四异常值;
所述可视化模块,还用于根据所述第四异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
为达上述目的,本申请第三方面实施例提出了一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如本申请第一方面实施例所述的方法。
为了实现上述目的,本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如本申请第一方面实施例所述的方法。
综上所述,本申请实施例的用于自然语言处理神经网络模型的可视化分析方法、可视化分析系统、计算机设备和非临时性计算机可读存储介质,该方案通过接收神经网络模型和用于训练所述神经网络模型的训练语料库;计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。由此,通过上述方法可以实现对不同结构的神经网络模型进行对比分析并可视化展示,从而改善用户体验。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例1所提供的用于自然语言处理神经网络模型的可视化分析方法的流程图;
图2为本申请实施例2所提供的第一种用于自然语言处理神经网络模型的可视化分析方法的流程图;
图3为实施例2所提供的第二种用于自然语言处理神经网络模型的可视化分析方法的流程图;
图4为实施例2所提供的第三种用于自然语言处理神经网络模型的可视化分析方法的流程图;
图5为本申请实施例3所提供的第一种用于自然语言处理神经网络模型的可视化分析系统的结构示意图;
图6为实施例3所提供的第二种用于自然语言处理神经网络模型的可视化分析系统的结构示意图;以及
图7为实施例3进行可视分析的系统的可视化模块输出的一个示例性二维平面示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
如前所述,最近几年,应用于自然语言处理的深度学习技术得到了迅速的发展,提出了卷积神经网络模型(CNN)、长短期记忆神经网络模型(LSTM),到基于深度自注意力变换网络(Transformer)的不同的深度模型,并且不断改善自然语言处理任务的性能。为了提高自然语言处理任务的性能,这些深度神经网络模型架构变得越来越复杂,并且越来越多样化。例如,最近的专用于自然语言处理的BERT神经网络模型包含数亿个参数。BERT神经网络模型与卷积神经网络模型和循环神经网络模型等传统神经网络模型相比,BERT神经网络模型无需循环和卷积结构,而是依靠注意力机制。这些复杂多样的架构,使得在进行自然语言处理任务时,理解和比较这些神经网络模型的内部工作方式,寻求进一步改进成为一项挑战。但是,现有大多数自然语言处理神经网络模型的解释方法仅限于针对某些特定网络结构,缺乏对具有不同架构、不同参数的神经网络模型进行分析的一致的和通用的方法。例如,现有的应用于自然语言处理的神经网络模型可视化工具就仅能为用户提供对于一种应用于自然语言处理的特定结构神经网络模型的分析信息,不能支持其他结构神经网络模型的分析,不能使用户对不同神经网络模型进行对比分析,造成用户体验不佳。因此,迫切地需要一种统一的方法来帮助自然语言处理领域专家分析和比较不同的神经网络模型,以便加深对模型的了解并做出针对性的改进。
在本申请实施例中,可以为用户提供一种对用于自然语言处理的不限定结构特性的神经网络模型进行可视分析的方法及系统,从而改进对应用于自然语言处理的神经网络模型的性能。并且通过可视化技术更好地展示神经网络模型存在的问题,更好的和用户交互来对不同结构的神经网络模型、或者同一神经网络模型的不同中间层进行对比分析,从而改善用户体验。
另外,本申请实施例在观察神经网络模型在所述训练语料库的性能时,接收用户输入的查询条件,并在确定查询条件为查看目标样本对神经网络模型预测的贡献信息时,通过训练样本可视化模块,显示目标样本以及样本所对应单词对神经网络模型预测的性能信息;在确定查询条件为查看目标单词对神经网络模型预测的贡献信息时,通过可视化模块,显示目标单词在不同上下文中对神经网络模型预测的贡献信息。所述多级可视化视图和交互式分析可帮助用户探索所述神经网络模型的局限性,并确定其性能低下的根本原因。
下面参考附图描述本申请实施例的用于自然语言处理神经网络模型的可视化分析方法和系统。
实施例1
图1为本申请实施例1所提供的用于自然语言处理神经网络模型的可视化分析方法的流程图。
针对上述问题,本申请实施例提供的用于自然语言处理神经网络模型的可视化分析方法,如图1所示,该方法20包括以下步骤:
步骤201,接收神经网络模型和训练语料库,其中,所述训练语料库用于训练所述神经网络模型。
在本申请实施例中,用于自然语言处理的神经网络模型包含输入层、多个中间层和输出层,用于训练神经网络模型的训练语料库包含多个训练样本,每个训练样本是由多个单词构成的句子或段落,输出层输出的是语义向量。
具体而言,本申请实施例可以通过通过图形用户接口或者用户命令等从用户处接收上传的用于自然语言处理的深度神经网络模型和用于训练深度神经网络模型的训练语料库;也可以将用于自然语言处理的深度神经网络模型和用于训练深度神经网络模型的训练语料库存储在内部或者外部的存储介质中,需要的时候直接读取即可;也可以通过网络传输获取用于自然语言处理的深度神经网络模型和用于训练深度神经网络模型的训练语料库。除此之外,也可以通过其他方式获取用于自然语言处理的深度神经网络模型和用于训练深度神经网络模型的训练语料库,在此不在一一列举。
本申请实施例中的用于自然语言处理的神经网络模型包含输入层、多个中间层以及输出层,其中多个中间层被视作函数f1、f2、…、fn,用于自然语言处理的神经网络模型101被视作函数f,其中函数f是函数f1、f2、…、fn组成的复合函数。输入层接收对一个训练样本(句子/段落)所包含的所有单词编码得到的输入向量,输出层输出该训练样本(句子/段落)含有定义的语义向量。这些编码、定义、神经网络函数计算的方法都是本领域技术人员所熟知的,这里不再赘述。
步骤202,计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度。
在本申请实施例中,计算训练语料库中每个训练样本中的每个单词与神经网络模型的输出层输出的语义向量的第一互信息,对训练语料库中每一个训练样本的每个单词的第一互信息ζi的含义为每个单词对神经网络模型的输出层输出的语义向量的重要程度,具体而言,当该单词对输出层输出的语义向量的重要程度高,则可以接受的不会使输出层输出的语义向量发生明显变化的高斯噪声更小;当该单词对输出层输出的语义向量的重要程度低,则可以接受的不会使输出层输出的语义向量发生明显变化的高斯噪声更大。训练语料库中每个训练样本中的所有单词与神经网络模型的输出层输出的语义向量的第一互信息组成第一互信息向量ζ,ζi为ζ在某一维度上的值,为特定训练样本的每个单词与神经网络模型的输出层输出的语义向量的第一互信息值,ζ可以使用如下方式计算:首先对一个特定的训练样本添加高斯噪音σ,其中,σ是由该特定训练样本的每个单词的高斯噪声σi组成的向量,其次设置损失函数为:
Figure BDA0003240005770000091
其中,
Figure BDA0003240005770000092
表示添加高斯噪音后的特定的训练样本,
Figure BDA0003240005770000093
表示∈i是服从
Figure BDA0003240005770000094
分布的高斯噪音,
Figure BDA0003240005770000095
表示神经网络模型101,S表示该特定训练样本通过神经网络模型
Figure BDA0003240005770000096
在输出层输出的语义向量,
Figure BDA0003240005770000097
表示神经网络模型
Figure BDA0003240005770000098
对训练语料库102中全体训练样本在输出层输出的语义向量的方差,
Figure BDA0003240005770000099
表示对
Figure BDA00032400057700000910
的数学期望,K和λ可以取做0-1之间的经验值;最后对L(σ)使用最大似然估计使损失函数L(σ)最小,计算得到σ0,则ζ=-log(σ0)。
进一步地,在本申请实施例中,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度,具体包括:
计算所有所述的第一互信息的均值,以得到第一互信息均值;
获取每个单词在所述训练语料库出现的词频;
通过所述第一互信息均值和所述词频计算所述重要程度;其中,通过下式计算所述重要程度:
M=log(C(w)+1.0)*G(w)
其中,M为每个单词对所述神经网络模型的重要程度,w为训练语料库中的每个单词,C(w)为每个单词在所述训练语料库出现的词频,G(w)为第一互信息均值。
具体而言,本申请实施例中的训练语料库包含的所有单词中每个单词对神经网络模型的重要程度,可以使用如下公式计算:
M1=log(词频(w)=1.0)*贡献度(w)
M1表示一个特定单词对神经网络模型的重要程度,词频(w)表示该特定单词在训练语料库出现的词频,贡献度(w)表示该特定单词在训练语料库中每一个包含该特定单词的训练样本中该特定单词与神经网络模型在输出层输出的语义向量的第一互信息的均值。
步骤203,将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。
在本申请实施例中,每个单词在显示的大小由其对神经网络模型的重要程度决定,并使用词云技术对单词在屏幕上显示的位置进行排布,词云技术在现有技术中有多种定义,在此可以采用任意一种定义方式。
综上,本申请实施例公开的方法,通过接收神经网络模型和用于训练所述神经网络模型的训练语料库;计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。由此,通过上述方法可以实现对不同结构的神经网络模型进行对比分析并可视化展示,从而改善用户体验。
实施例2
图2为本申请实施例2所提供的用于自然语言处理神经网络模型的可视化分析方法的流程图。
如图2所示,本申请实施例提供的可视化分析方法300,包括以下步骤:
步骤310,获取用于自然语言处理的神经网络模型和用于训练神经网络模型的训练语料库,该神经网络模型包含输入层、多个中间层和输出层,该训练语料库包含多个训练样本,每个训练样本是由多个单词构成的句子或段落。
步骤320,计算训练语料库中每个训练样本中的每个单词与神经网络模型的输出层输出的语义向量的第一互信息。
步骤330,利用计算的第一互信息获得训练语料库中包含的所有单词中每个单词对神经网络模型的重要程度。
步骤340,显示训练语料库中包含的所有单词中的每个单词及其对神经网络模型的重要程度。
步骤350,响应于接收显示的某一单词对神经网络模型的重要程度为异常值,确定神经网络模型中出现了样本倾斜的异常现象。
在本申请实施例中,训练语料库中每个训练样本中的所有单词与神经网络模型的输出层输出的语义向量的第一互信息组成第一互信息向量ζ,ζi为ζ在某一维度上的值,为该特定训练样本的每个单词与神经网络模型的输出层输出的语义向量的第一的互信息值,ζ使用如下方式计算:
(1)对特定的训练样本添加高斯噪音σ,其中σ是由该特定训练样本的每个单词的高斯噪声σi组成的向量,
(2)设置损失函数为:
Figure BDA0003240005770000111
其中,
Figure BDA0003240005770000112
表示添加高斯噪音后的特定的训练样本,
Figure BDA0003240005770000113
表示∈i是服从
Figure BDA0003240005770000114
分布的高斯噪音,
Figure BDA0003240005770000115
表示神经网络模型,S表示该特定训练样本通过神经网络模型
Figure BDA0003240005770000116
在输出层输出的语义向量,
Figure BDA0003240005770000117
表示神经网络模型
Figure BDA0003240005770000118
对训练语料库中全体训练样本在输出层输出的语义向量的方差,
Figure BDA0003240005770000119
表示对
Figure BDA00032400057700001110
的数学期望,K和λ取做0-1之间的经验值;以及
(3)对L(σ)使用最大似然估计使损失函数L(σ)最小,计算得到σ0,则ζ=-log(σ0)。
在本申请实施例中,使用如下公式计算每个单词对所述神经网络模型的重要程度:
M=log(词频(w)+1.0)*贡献度(w)
其中M表示一个特定单词对神经网络模型的重要程度,词频(w)表示该特定单词在训练语料库出现的词频,贡献度(w)表示该特定单词在训练语料库中每一个包含该特定单词的训练样本中该特定单词与神经网络模型在输出层输出的语义向量的第一互信息的均值。
图3示出了根据本发明实施例的一种在深度神经网络模型训练过程中确定神经网络模型中出现样本标注异常的异常现象的方法400的流程图,其中,方法400是方法300的后续优选步骤,如图3所示,包括以下步骤:
步骤410,计算训练语料库中每个训练样本对神经网络模型的预测得分和输出层输出的语义向量。
步骤420,将训练语料库中每个训练样本对神经网络模型的预测得分和输出层输出的语义向量使用投影技术得到二者组成的每个训练样本的投影坐标。
步骤430,根据每个训练样本的投影坐标在用于显示的二维平面以图形显示每个训练样本。
步骤440,响应于接收显示的某一训练样本的投影坐标为异常值,确定神经网络模型中出现了样本标注异常的异常现象。
图4示出了根据本发明实施例的一种在深度神经网络模型训练过程中确定神经网络模型中出现网络结构问题的异常现象的方法500的流程图,可以理解为方法400是图2或者图3的后续优选步骤,如图4所示,方法500包括以下步骤:
步骤510,计算训练语料库中每个训练样本与神经网络模型的所有中间层的第二互信息矩阵。
步骤520,利用计算的第二互信息矩阵,提取训练语料库中每个训练样本与神经网络模型的多个中间层的第一多个第二互信息列向量,其中一个第二互信息列向量中的每个元素指示一个训练样本中包含的每个单词对某一中间层的第二互信息值。
步骤530,对第一多个第二互信息列向量进行层次聚类以得到每个训练样本在每个中间层的语法结构。
步骤540,计算第一多个第二互信息列向量中的任意两个元素的相似度。
步骤550,响应于接收显示的某一训练样本的选择,显示选择的训练样本在每个中间层的语法结构以及该第一多个第二互信息列向量中的任意两个元素的相似度。
步骤560,响应于接收显示的某一训练样本的某一语法结构或元素相似度为异常值,确定神经网络模型中出现网络结构问题的异常现象。
步骤570,响应于接收该第二互信息的阈值以及显示的另一特定单词的选择,对训练语料库中所有包含该另一特定单词的训练样本与神经网络模型的多个中间层的第二多个第二互信息列向量,显示所该第二多个第二互信息列向量中包含的高于该第二互信息的阈值的元素值对应的单词。
步骤580,响应于接收显示的该第二多个第二互信息列向量中包含的高于该第二互信息的阈值的元素值对应的某个单词为异常值,确定神经网络模型中出现网络结构问题的异常现象。
在本申请实施例中,第二互信息矩阵τ,τi,j的含义为每个训练样本中的第i个单词对神经网络模型的第j个中间层输出向量的重要程度,第二互信息矩阵τ使用如下方式计算:
(1)对一个特定的训练样本添加高斯噪音σ,其中σ是由该特定的训练样本的每个单词的高斯噪声σi组成的向量;
设置损失函数为:
Figure BDA0003240005770000131
其中,
Figure BDA0003240005770000132
表示添加高斯噪音后的该特定的训练样本,
Figure BDA0003240005770000133
表示∈i是服从
Figure BDA0003240005770000134
分布的高斯噪音,
Figure BDA0003240005770000135
表示从神经网络模型101输入层到该中间层之间构成的函数,
Figure BDA0003240005770000136
表示神经网络模型
Figure BDA0003240005770000137
对训练语料库102中全体训练样本在该中间层输出向量的方差,
Figure BDA0003240005770000138
表示对
Figure BDA0003240005770000139
的数学期望,K和λ可以取做0-1之间的经验值;
(2)对L(σ)使用最大似然估计使损失函数L(σ)最小,计算得到σ1,则该训练样本中所有单词对该中间层输出向量的互信息列向量τj=-log(σ1);
(3)得到所述训练语料库中所有训练样本对所述神经网络模型的所有中间层输出向量的第二互信息矩阵τ。
通过使用上述用于自然语言处理的深度神经网络模型进行可视分析的方法,用户可以观察神经网络模型在所述训练语料库的性能,并且接收用户的查询条件,在确定查询条件为查看目标样本对神经网络模型预测的贡献信息时,显示目标样本以及样本所对应单词对神经网络模型预测的性能信息;在确定查询条件为查看目标单词对神经网络模型预测的贡献信息时,显示目标单词在不同上下文中对神经网络模型预测的贡献信息。上述用于自然语言处理的深度神经网络模型进行可视分析的方法,其中的多级可视化视图和交互式分析可以帮助用户探索神经网络模型的局限性,并确定神经网络模型性能低下的根本原因。
实施例3
为了实现上述实施例,本申请还提出一种用于自然语言处理神经网络模型的可视化分析系统。
图5本申请实施例3所提供的第一种用于自然语言处理神经网络模型的可视化分析系统的结构示意图。
如图5所示,本申请提出的用于自然语言处理神经网络模型的可视化分析系统10,包括:
接收模块11,用于接收神经网络模型和训练语料库,其中,所述训练语料库用于训练所述神经网络模型;
处理模块12,用于计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;
可视化模块13,用于将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。
进一步地,本申请实施例的可视化分析系统,还包括异常确定模块,所述异常确定模块,用于对所述重要程度进行分析,以确定所述训练语料库中的异常单词,并将所述异常单词对所述神经网络模型的重要程度作为第一异常值;
所述可视化模块,还用于根据所述第一异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
图6为实施例3提供的第二种用于自然语言处理神经网络模型的可视化分析系统的结构示意图,如图6所示,该可视化分析系统100包括:接收模块110、处理模块120、可视化模块130和异常确定模块140。
进一步地,本申请实施例中,接收模块110被配置为接收用于自然语言处理的神经网络模型101和用于训练神经网络模型101的训练语料库102。用于自然语言处理的神经网络模型101包含输入层、多个中间层和输出层,用于训练神经网络模型101的训练语料库102包含多个训练样本,每个训练样本是由多个单词构成的句子或段落,输出层输出的是语义向量。处理模块120被配置为计算训练语料库中每个训练样本中的每个单词与神经网络模型101的输出层输出的语义向量的第一互信息,以及利用计算的第一互信息获得训练语料库102中包含的所有单词中每个单词对神经网络模型101的重要程度。可视化模块130被配置为显示训练语料库102中所有单词中每个单词及其对神经网络模型101的重要程度。此外,接收模块还被配置为接收可视化模块130显示的某一单词对神经网络模型101的重要程度为异常值。异常确定模块140被配置为响应于接收模块110接收可视化模块130显示的某一单词对神经网络模型101的重要程度为异常值,确定神经网络模型101中出现了样本倾斜的异常现象。该对用于自然语言处理的深度神经网络模型的可视分析系统100可实现为一般的计算机系统上的应用程序,或者实现为服务器系统上的应用程序,或者实现为网络应用程序,或者实现为云平台上的应用程序。
在本申请实施例中,接收模块110可以被配置为通过图形用户接口或者用户命令等从用户处接收上传的用于自然语言处理的深度神经网络模型101和用于训练深度神经网络模型的训练语料库102。接收模块110也可以被配置为将用于自然语言处理的深度神经网络模型101和用于训练深度神经网络模型的训练语料库102存储在内部或者外部的存储介质中,并由接收模块110读取。接收模块110也可以被配置为通过网络传输获取用于自然语言处理的深度神经网络模型101和用于训练深度神经网络模型的训练语料库102,等等。
在本申请实施例中,用于自然语言处理的神经网络模型101包含输入层、多个中间层以及输出层,其中多个中间层被视作函数f1、f2、…、fn,用于自然语言处理的神经网络模型101被视作函数f,其中函数f是函数f1、f2、…、fn组成的复合函数。输入层接收对一个训练样本(句子/段落)所包含的所有单词编码得到的输入向量,输出层输出该训练样本(句子/段落)含有定义的语义向量。这些编码、定义、神经网络函数计算的方法都是本领域技术人员所熟知的,这里不再赘述。
在本申请实施例中,处理模块120可以被配置为计算训练语料库102中每个训练样本中的每个单词与神经网络模型101的输出层输出的语义向量的第一互信息,对训练语料库102中每一个训练样本的每个单词的第一互信息ζi的含义为每个单词对神经网络模型101的输出层输出的语义向量的重要程度,具体而言,当该单词对输出层输出的语义向量的重要程度高,则可以接受的不会使输出层输出的语义向量发生明显变化的高斯噪声更小;当该单词对输出层输出的语义向量的重要程度低,则可以接受的不会使输出层输出的语义向量发生明显变化的高斯噪声更大。训练语料库中每个训练样本中的所有单词与神经网络模型的输出层输出的语义向量的第一互信息组成第一互信息向量ζ,ζi为ζ在某一维度上的值,为特定训练样本的每个单词与神经网络模型的输出层输出的语义向量的第一互信息值,ζ可以使用如下方式计算:首先对一个特定的训练样本添加高斯噪音σ,其中σ是由该特定训练样本的每个单词的高斯噪声σi组成的向量,其次设置损失函数为:
Figure BDA0003240005770000151
其中,
Figure BDA0003240005770000152
表示添加高斯噪音后的特定的训练样本,
Figure BDA0003240005770000153
表示∈i是服从
Figure BDA0003240005770000154
分布的高斯噪音,
Figure BDA0003240005770000155
表示神经网络模型101,S表示该特定训练样本通过神经网络模型
Figure BDA0003240005770000156
在输出层输出的语义向量,
Figure BDA0003240005770000157
表示神经网络模型
Figure BDA0003240005770000158
对训练语料库102中全体训练样本在输出层输出的语义向量的方差,
Figure BDA0003240005770000159
表示对
Figure BDA00032400057700001510
的数学期望,K和λ可以取做0-1之间的经验值;最后对L(σ)使用最大似然估计使损失函数L(σ)最小,计算得到σ0,则ζ=-log(σ0)。这些计算方式都是本领域技术人员所熟知的,这里不再赘述。训练语料库102中包含的所有单词中每个单词对神经网络模型101的重要程度,可以使用如下公式计算:
M=log(词频(w)+1.0)*贡献度(w)
其中M表示一个特定单词对神经网络模型101的重要程度,词频(w)表示该特定单词在训练语料库102出现的词频,贡献度(w)表示该特定单词在训练语料库102中每一个包含该特定单词的训练样本中该特定单词与神经网络模型101在输出层输出的语义向量的第一互信息的均值。
可视化模块130可以被配置为显示训练语料库102中包含的每个单词及其对神经网络模型101的重要程度。在一种实施方式中,每个单词在可视化模块130中的显示大小由其对神经网络模型101的重要程度决定,并使用词云技术对单词在屏幕上显示的位置进行排布,词云技术在现有技术中有多种定义。本发明可以采用任意一种定义方式。并且,接收模块110还被配置为接收可视化模块130显示的某一单词对神经网络模型101的重要程度为异常值。在一种实施方式中,接收模块110可以被配置为通过鼠标点击接收可视化模块130显示的某一单词对神经网络模型101的重要程度为异常值。在另一种实施方式中,接收模块110也可以被配置为使用键盘敲击接收可视化模块130显示的某一单词(例如敲出该单词)对神经网络模型101的重要程度为异常值。在另一种实施方式中,接收模块110也可以被配置为使用手指在可视化模块130控制的显示屏选取显示的某一单词对神经网络模型101的重要程度为异常值,等等。
在一种实施方式中,处理模块120可以被进一步配置为计算训练语料库102中每个训练样本对神经网络模型101的预测得分和输出层输出的语义向量。
在一种实施方式中,可视化模块130可以被进一步配置为,计算训练语料库102中每个训练样本对神经网络模型101的预测得分和输出层输出的语义向量,使用投影技术得到二者组成的投影坐标,投影技术在现有技术中有多种定义,本发明可以采用任意一种定义方式。在一种优选的实施方式中,使用t-SNE技术将训练语料库102中每个训练样本对神经网络模型101的输出层输出的语义向量投影到横坐标,并且将训练语料库102中每个训练样本对神经网络模型101的预测得分线性投影到纵坐标,将横坐标和纵坐标组合得到二维坐标,并且在用于显示的二维平面中以图形(例如正六边形、圆形等等)进行显示。
图7示出了根据本发明实施例的对用于自然语言处理的深度神经网络模型进行可视分析的系统100的可视化模块130输出的一个示例性二维平面200,该二维平面可以显示在显示器上,或者在其他输出设备上(例如打印机等等)。其中二维平面200示出了训练语料库102中的若干单词,每个单词的大小编码了其对深度神经网络模型101的重要程度,其中,可以通过训练语料库102中单词的词频和平均贡献度来衡量单词对用于自然语言处理的深度神经网络模型101的重要程度。词“care”210在训练语料库102中出现在3个不同的训练样本中,假定它在三个样本中的贡献度分别为0.6、0.7和0.5,此时平均贡献度为(0.6+0.7+0.5)/3=0.6,其重要程度为log(3+1)*0.6=0.831;而图7中最大的单词“recommend”215在训练语料库102中出现在了13个不同的训练样本中,其平均贡献度为0.55,其重要程度为log(13+1)*0.55=1.45,因此“recommend”在图7中的字体大小大于“care”。图7也示出了根据本发明实施例的对用于自然语言处理的深度神经网络模型进行可视分析的系统100的可视化模块130示出的用于表示每个训练样本的正六边形。其中,样本220表示出现在训练语料库102中的一个特定样本,其横坐标表示该训练样本对神经网络模型101的语义向量经过t-SNE技术计算得到的一维投影坐标,此时经过归一化的计算值为0.98;其纵坐标表示其对神经网络模型101的预测得分经过t-SNE技术计算得到的一维投影坐标,此时经过归一化的计算值为0.95;经过计算得到的横纵坐标决定样本220出现于图7布局中的右上角位置。在一种优选的实施方式中,当多个训练样本经过计算的横纵坐标相同,显示出现重合时,可以将其对应的多个图形合并为一个图形显示。本领域技术人员知道,也可以使用其他的投影方式。
在一种实施方式中,接收模块110还被配置为接收可视化模块130显示的某一单词的重要程度为异常值,并且异常确定模块140被配置为响应于接收模块110接收可视化模块130显示的某一单词的重要程度为异常值,确定神经网络模型101中出现样本倾斜的异常现象。例如,对图7的示例中,如果可视化模块130接收用户利用鼠标/键盘/触摸屏手指输入确定单词“care”210的重要程度为异常值,则异常确定模块140确定神经网络模型101在单词“care”210上出现了样本倾斜的异常现象。换句话说,在所示用于情感分类任务的神经网络分类器中,单词“care”210上出现的样本倾斜现象指示含有单词“care”的训练语料库102中的训练样本更多的被标注为负面情感,导致神经网络模型101错误的认为单词“care”具有负面情感。
在本申请实施例中,可视化模块130被进一步配置为,接收显示的某一样本的预测得分和输出层输出的语义向量两者组成的函数的投影坐标为异常值,并且异常确定模块140被进一步配置为,响应于接收显示的某一样本的预测得分和输出层输出的语义向量两者组成的函数的投影坐标为异常值,确定神经网络模型101中出现样本标注异常的异常现象。例如,对图7的示例中,如果可视化模块130接收用户利用鼠标/键盘/触摸屏手指输入确定样本220的重要程度为异常值,则异常确定模块140响应于接收显示的样本220的重要程度为异常值,确定神经网络模型101中在样本220上出现样本标注异常的异常现象。换句话说,当样本类别标注和样本真实所属分类不一致时,被认为出现了样本标注异常的异常现象。
在本申请实施例中,处理模块120被进一步配置为计算训练语料库102中每个训练样本与神经网络模型101的所有中间层的第二互信息矩阵τ,τi,j的含义为每个训练样本中的第i个单词对神经网络模型101的第j个中间层的输出向量的重要程度。具体而言,当该单词对该中间层输出向量的重要程度高,则可以接受的不会使该中间层输出向量发生明显变化的高斯噪声更小;当该单词对该中间层输出向量的重要程度低,则可以接受的不会使该中间层输出向量发生明显变化的高斯噪声更大。τ可以使用如下方式计算:首先对一个特定的训练样本添加高斯噪音σ,其中σ是由该特定的训练样本的每个单词的高斯噪声σi组成的向量,并设置损失函数为:
Figure BDA0003240005770000181
其中,
Figure BDA0003240005770000182
表示添加高斯噪音后的该特定的训练样本,
Figure BDA0003240005770000183
表示∈i是服从
Figure BDA0003240005770000184
分布的高斯噪音,
Figure BDA0003240005770000185
表示从神经网络模型101输入层到该中间层之间构成的函数,
Figure BDA0003240005770000186
表示神经网络模型
Figure BDA0003240005770000187
对训练语料库102中全体训练样本在该中间层输出向量的方差,
Figure BDA0003240005770000188
表示对
Figure BDA0003240005770000189
的数学期望,K和λ可以取做0-1之间的经验值。对L(σ)使用最大似然估计使损失函数L(σ)最小,计算得到σ1,则该训练样本中所有单词对该中间层输出向量的互信息列向量τj=-log(σ1),从而得到训练语料库102中所有训练样本对神经网络模型101的所有中间层输出向量的第二互信息矩阵τ。
在一种实施方式中,处理模块120还被配置为,利用计算的第二互信息矩阵,提取训练语料库102中每个训练样本与神经网络模型101的多个中间层的第一多个第二互信息列向量。例如,对于训练语料库102中的某一训练样本“I like this movie”,其由4个单词组成,神经网络模型101由6个中间层组成,则训练样本“I like this movie”与神经网络模型101的所有中间层的第二互信息矩阵τ是一个4×6的矩阵,τ2,3的含义是该训练样本中的第2个单词“like”与神经网络模型101的第3个中间层的第二互信息值,该训练样本与神经网络模型101的6个中间层有6个第二互信息列向量,6个第二互信息列向量的向量长度均为4,指示该训练样本中的4个单词分别对该中间层的第二互信息值。处理模块120还被配置为:对训练语料库102中每个训练样本与神经网络模型101的多个中间层的第一多个第二互信息列向量进行层次聚类,得到训练语料库102中每个训练样本在神经网络模型101的多个中间层的层次结构,该层次结构也被认为是训练语料库102中每个训练样本在神经网络模型101的多个中间层的语法结构。层次聚类方法在现有技术中有多种定义,本发明可以采用任意一种定义方式。在一种优选的实施方式中,使用Agglomerative Clustering技术对第一多个第二互信息列向量进行聚类,可以得到层次化的聚类结果,也即训练语料库102中每个训练样本在神经网络模型101的多个中间层的语法结构。处理模块120还被配置为:对训练语料库102中每个训练样本对神经网络模型101的多个中间层的第一多个第二互信息列向量中的任意两个元素计算相似度。。在一种优选的实施方式中,计算第一多个第二互信息列向量中的任意两个元素的相似度,可以使用余弦相似度。本领域技术人员知道,也可以采用其他计算方式。
在本申请实施例中,接收模块110还被配置为接收可视化模块显示的对某一训练样本的选择;可视化模块130被进一步配置为,响应于接收模块接收对某一训练样本的选择,对选择的训练样本在神经网络模型101的每个中间层的语法结构和训练语料库102中每个训练样本对神经网络模型101的多个中间层的第一多个第二互信息列向量中的任意两个元素的相似度进行显示;接收模块110还被配置为接收可视化模块130显示的某一训练样本的某一语法结构或元素相似度为异常值;并且异常确定模块140被进一步配置为,响应于接收可视化模块130显示的某一训练样本的某一语法结构或元素相似度为异常值,确定神经网络模型101中出现了网络结构问题的异常现象。
在本申请实施例中,处理模块120被进一步配置为利用计算的第二互信息矩阵,获得训练语料库102中包含的每个单词的所有包含该单词的训练样本与神经网络模型101的多个中间层的第二多个第二互信息列向量。
在本申请实施例中,可视化模块130被进一步配置为响应于接收第二互信息的阈值和显示的某一单词的选择,显示训练语料库102中包含的每个单词的所有包含该单词的训练样本与神经网络模型101的多个中间层的第二多个第二互信息列向量中包含的高于第二互信息的阈值的元素值对应的单词,并且异常确定模块140被进一步配置为,响应于训练语料库102中包含的每个单词的所有包含该单词的训练样本与神经网络模型101的多个中间层的第二多个第二互信息列向量中包含的高于第二互信息的阈值的元素值对应的单词为异常值,确定神经网络模型101中出现了网络结构问题的异常现象。
综上所述,通过使用上述用于自然语言处理的深度神经网络模型进行可视分析的系统100,用户可以观察神经网络模型在所述训练语料库的性能,并且通过接收模块110接收用户的查询条件,在确定查询条件为查看目标样本对神经网络模型预测的贡献信息时,通过可视化模块130,显示目标样本以及样本所对应单词对神经网络模型预测的性能信息;在确定查询条件为查看目标单词对神经网络模型预测的贡献信息时,通过可视化模块130,显示目标单词在不同上下文中对神经网络模型预测的贡献信息。上述用于自然语言处理的深度神经网络模型进行可视分析的系统100,其中的多级可视化视图和交互式分析可帮助用户探索神经网络模型101的局限性,并确定神经网络模型101性能低下的根本原因。
为了实现上述实施例,本申请还提出一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述实施例所描述的方法。
为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例所描述的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (19)

1.一种用于自然语言处理神经网络模型的可视化分析方法,其特征在于,包括:
接收神经网络模型和训练语料库,其中,所述训练语料库用于训练所述神经网络模型;
计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;
将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。
2.根据权利要求1所述的可视化分析方法,其特征在于,在所述将所述训练语料库中每个单词及其对所述神经网络模型的重要程度可视化展示之后,还包括:
对所述重要程度进行分析,以确定所述训练语料库中的异常单词,并将所述异常单词对所述神经网络模型的重要程度作为第一异常值;
根据所述第一异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
3.根据权利要求1或2所述的可视化分析方法,其特征在于,在所述计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息之后,还包括:
将多个所述第一互信息组成第一互信息向量,其中,通过下述步骤获取所述第一互信息向量:
对所述训练样本添加高斯噪音;
根据所述训练样本和所述高斯噪音构建关于所述第一互信息向量的损失函数;
对关于所述第一互信息向量的损失函数使用最大似然估计使所述损失函数最小,计算得到第一高斯噪音,并根据所述第一高斯噪音获取所述第一互信息向量;其中,
所述损失函数的表达式为:
Figure FDA0003240005760000011
其中,
Figure FDA0003240005760000012
为添加高斯噪音后的训练样本,
Figure FDA0003240005760000013
表示∈i是服从
Figure FDA0003240005760000014
分布的高斯噪音,φ表示所述神经网络模型,S表示所述训练样本通过神经网络模型φ在输出层输出的语义向量,
Figure FDA0003240005760000015
表示所述神经网络模型φ对所述训练语料库中全体训练样本在输出层输出的语义向量的方差,
Figure FDA0003240005760000016
表示对
Figure FDA0003240005760000017
的数学期望,K和λ取做0-1之间的经验值。
4.根据权利要求1或2所述的可视化分析方法,其特征在于,所述根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度,具体包括:
获取所述每个单词在所述训练语料库出现的词频,和所述每个单词与所述神经网络模型在输出层输出的语义向量的贡献度;
根据所述词频和所述词频计算所述重要程度;其中,通过下式计算所述重要程度:
M=log(C(w)+1.0)*G(w)
其中,M为每个单词对所述神经网络模型的重要程度,w为训练语料库中的每个单词,C(w)为每个单词在所述训练语料库出现的词频,G(w)为每个单词与神经网络模型在输出层输出的语义向量的第一互信息的均值。
5.根据权利要求1所述的可视化分析方法,其特征在于,在所述接收神经网络模型和训练语料库之后,还包括:
计算所述训练语料库中每个训练样本对所述神经网络模型的预测得分和所述输出层输出的语义向量;
通过投影技术对所述神经网络模型的预测得分和所述输出层输出的语义向量进行投影处理,以得到每个训练样本的投影坐标并进行可视化展示。
6.根据权利要求5所述的可视化分析方法,其特征在于,在所述通过投影技术对所述神经网络模型的预测得分和所述输出层输出的语义向量进行投影处理,以得到每个训练样本的投影坐标并进行可视化展示之后,还包括:
对所述重要程度进行分析,以确定所述训练语料库中的异常样本,并将所述异常样本对所述神经网络模型的投影坐标作为第二异常值;
根据所述第二异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
7.根据权利要求1或2所述的可视化分析方法,其特征在于,在所述接收神经网络模型和训练语料库之后,还包括:
计算所述训练语料库中每个训练样本与所述神经网络模型的每个中间层的第二互信息矩阵;
根据所述第二互信息矩阵提取每个训练样本与所述神经网络模型的多个中间层的第一多个第二互信息列向量,其中,一个第二互信息列向量中的每个元素指示一个训练样本中包含的每个单词对某一中间层的第二互信息值;
对所述第一多个第二互信息列向量进行层次聚类,以得到每个训练样本在每个中间层的语法结构,并计算所述第一多个第二互信息列向量中的任意两个元素的相似度;
将所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行可视化展示。
8.根据权利要求7所述的可视化分析方法,其特征在于,在所述将所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行可视化展示之后,还包括:
对所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行分析,以确定得到的所有所述语法结构和所述相似度中的异常语法结构和/或相似度异常,并将所述异常语法结构和/或相似度异常作为第三异常值;
根据所述第三异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
9.根据权利要求7所述的可视化分析方法,其特征在于,包括:
根据所述第二互信息矩阵获取所述训练语料库中包含同一单词的训练样本与所述神经网络模型的多个中间层对应的第二多个第二互信息列向量,并计算所述同一单词与所述神经网络模型中输出层输出的语义向量的第二互信息;
显示所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词。
10.根据权利要求8所述的可视化分析方法,其特征在于,包括:
对显示的所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词进行分析,以确定异常单词并将其作为第四异常值;
根据所述第四异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
11.一种用于自然语言处理神经网络模型的可视化分析系统,其特征在于,包括:
接收模块,用于接收神经网络模型和训练语料库,其中,所述训练语料库用于训练所述神经网络模型;
处理模块,用于计算所述训练语料库中每个单词与所述神经网络模型中输出层输出的语义向量的第一互信息,根据所述第一互信息获取所述训练语料库中每个单词对所述神经网络模型的重要程度;
可视化模块,用于将所述训练语料库中每个单词及其对所述神经网络模型的重要程度进行可视化展示。
12.根据权利要求11所述的可视化分析系统,其特征在于,所述可视化分析系统,还包括异常确定模块,所述异常确定模块,用于对所述重要程度进行分析,以确定所述训练语料库中的异常单词,并将所述异常单词对所述神经网络模型的重要程度作为第一异常值;
所述可视化模块,还用于根据所述第一异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
13.根据权利要求11或12所述的可视化分析系统,其特征在于,所述处理模块,还用于:
将多个所述第一互信息组成第一互信息向量,其中,通过下述步骤获取所述第一互信息向量:
对所述训练样本添加高斯噪音;
根据所述训练样本和所述高斯噪音构建关于所述第一互信息向量的损失函数;
对关于所述第一互信息向量的损失函数使用最大似然估计使所述损失函数最小,计算得到第一高斯噪音,并根据所述第一高斯噪音获取所述第一互信息向量;其中,
所述损失函数的表达式为:
Figure FDA0003240005760000041
其中,
Figure FDA0003240005760000042
为添加高斯噪音后的训练样本,
Figure FDA0003240005760000043
表示∈i是服从
Figure FDA0003240005760000044
分布的高斯噪音,φ表示所述神经网络模型,S表示所述训练样本通过神经网络模型φ在输出层输出的语义向量,
Figure FDA0003240005760000045
表示所述神经网络模型φ对所述训练语料库中全体训练样本在输出层输出的语义向量的方差,
Figure FDA0003240005760000046
表示对
Figure FDA0003240005760000047
的数学期望,K和λ取做0-1之间的经验值。
14.根据权利要求11或12所述的可视化分析系统,其特征在于,
所述处理模块,还用于:计算所述训练语料库中每个训练样本与所述神经网络模型的每个中间层的第二互信息矩阵;
根据所述第二互信息矩阵提取每个训练样本与所述神经网络模型的多个中间层的第一多个第二互信息列向量,其中,一个第二互信息列向量中的每个元素指示一个训练样本中包含的每个单词对某一中间层的第二互信息值;
对所述第一多个第二互信息列向量进行层次聚类,以得到每个训练样本在每个中间层的语法结构,并计算所述第一多个第二互信息列向量中的任意两个元素的相似度;
所述可视化模块,还用于将所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行可视化展示。
15.根据权利要求14所述的可视化分析系统,其特征在于,
所述异常确定模块,还用于:对所述语法结构和所述第一多个第二互信息列向量中的任意两个元素的相似度进行分析,以确定得到的所有所述语法结构和所述相似度中的异常语法结构和/或相似度异常,并将所述异常语法结构和/或相似度异常作为第三异常值;
所述可视化模块,还用于根据所述第三异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
16.根据权利要求14所述的可视化分析系统,其特征在于,
所述处理模块,还用于根据所述第二互信息矩阵获取所述训练语料库中包含同一单词的训练样本与所述神经网络模型的多个中间层对应的第二多个第二互信息列向量,并计算所述同一单词与所述神经网络模型中输出层输出的语义向量的第二互信息;
所述可视化模块,还用于显示所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词。
17.根据权利要求16所述的可视化分析系统,其特征在于,包括:
所述异常确定模块,还用于对显示的所述第二多个第二互信息列向量中包含的高于所述第二互信息的阈值的元素值对应的单词进行分析,以确定异常单词并将其作为第四异常值;
所述可视化模块,还用于根据所述第四异常值确定所述神经网络模型中出现样本倾斜的异常现象并进行可视化展示。
18.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-10中任一所述的方法。
19.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-10中任一所述的方法。
CN202111014678.1A 2021-08-31 2021-08-31 用于自然语言处理神经网络模型的可视化分析方法和系统 Pending CN113792553A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111014678.1A CN113792553A (zh) 2021-08-31 2021-08-31 用于自然语言处理神经网络模型的可视化分析方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111014678.1A CN113792553A (zh) 2021-08-31 2021-08-31 用于自然语言处理神经网络模型的可视化分析方法和系统

Publications (1)

Publication Number Publication Date
CN113792553A true CN113792553A (zh) 2021-12-14

Family

ID=79182440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111014678.1A Pending CN113792553A (zh) 2021-08-31 2021-08-31 用于自然语言处理神经网络模型的可视化分析方法和系统

Country Status (1)

Country Link
CN (1) CN113792553A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11538210B1 (en) * 2021-11-22 2022-12-27 Adobe Inc. Text importance spatial layout

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11538210B1 (en) * 2021-11-22 2022-12-27 Adobe Inc. Text importance spatial layout

Similar Documents

Publication Publication Date Title
US11244484B2 (en) AI-driven design platform
CN109670029B (zh) 用于确定问题答案的方法、装置、计算机设备及存储介质
JP7193252B2 (ja) 画像の領域のキャプション付加
US10997503B2 (en) Computationally efficient neural network architecture search
CN107330023B (zh) 基于关注点的文本内容推荐方法和装置
US20180276278A1 (en) Searching of data structures in pre-processing data for a machine learning classifier
Verstraete et al. Deep semi-supervised generative adversarial fault diagnostics of rolling element bearings
CN112400187B (zh) 用于检测生物医学图像中的异常的敲除自动编码器
JP7345046B2 (ja) 単語重複ベースのクラスタリングクロスモーダル検索
US20220230061A1 (en) Modality adaptive information retrieval
Fan et al. Fast and accurate cnn‐based brushing in scatterplots
CN106293074A (zh) 一种情绪识别方法和移动终端
Xiao et al. Multi-sensor data fusion for sign language recognition based on dynamic Bayesian network and convolutional neural network
CN114360711A (zh) 通过句法-语义对准和话语分析进行的基于多案例的推理
Liao et al. Hierarchical coherence modeling for document quality assessment
Sevastjanova et al. LMFingerprints: Visual explanations of language model embedding spaces through layerwise contextualization scores
Li et al. MIA-Net: Multi-modal interactive attention network for multi-modal affective analysis
CN109284497B (zh) 用于识别自然语言的医疗文本中的医疗实体的方法和装置
Emporio et al. SHREC 2022 track on online detection of heterogeneous gestures
CN117633516B (zh) 多模态嘲讽检测方法、装置、计算机设备以及存储介质
CN113792553A (zh) 用于自然语言处理神经网络模型的可视化分析方法和系统
Levonevskii et al. Methods for determination of psychophysiological condition of user within smart environment based on complex analysis of heterogeneous data
CN112883218A (zh) 一种图文联合表征的搜索方法、系统、服务器和存储介质
US20140214422A1 (en) Method and system for detecting boundary of coarticulated units from isolated speech
JP7346419B2 (ja) エンティティ間のコンテキスト的類似性の学習および適用

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination