CN113642674A - 一种基于图卷积神经网络的多轮对话分类方法 - Google Patents
一种基于图卷积神经网络的多轮对话分类方法 Download PDFInfo
- Publication number
- CN113642674A CN113642674A CN202111029893.9A CN202111029893A CN113642674A CN 113642674 A CN113642674 A CN 113642674A CN 202111029893 A CN202111029893 A CN 202111029893A CN 113642674 A CN113642674 A CN 113642674A
- Authority
- CN
- China
- Prior art keywords
- graph
- neural network
- matrix
- convolution neural
- model
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computational Mathematics (AREA)
- Biophysics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于图卷积神经网络的多轮对话分类方法,它包括:步骤1、对原始数据集进行数据预处理;步骤2、构建图结构;步骤3、对图结构进行预处理;步骤4、构建和训练图卷积神经网络模型;步骤5、在模型训练完毕之后,使用图卷积神经网络模型在数据集上对多轮对话进行分类;解决了现有技术多轮对话文本中无关干扰信息多且普遍,现有模型引入过多噪声,影响模型最终的分类效果等技术问题。
Description
技术领域
本发明属于自然语言处理的文本分类技术,尤其涉及一种基于图卷积神经网络的多轮对话分类方法。
背景技术
对话系统是人工智能领域中最具挑战性和最有意义的任务之一。早在人工智能研究的初期,人们就致力于开发智能的人机对话系统。近年来,随着深度学习在图象、语音和文本等领域的重大突破,出现了以深度学习为核心技术的对话系统。由于神经网络强大的表征能力,模型在文本分类和文本生成这两项任务的能力得到了大幅度提高,解决了对话系统的多种技术难题,诞生了众多成功的商业化产品,如Siri、小冰和小度等。
根据应用领域的不同,对话系统可以大致分为两类:任务型对话系统和非任务型对话系统。任务型对话系统旨在帮助用户完成某些特定的任务,例如查询天气、点外卖和指挥电力操作员等。而非任务型对话系统更关注与人类的互动以提供合理的、趣味的回复。而对多轮对话整体进行语义理解进而分类,可以识别整轮对话的意图,评估对话质量的好坏,还能从对话文本中发现异常事件,实现风险管控。在任务型对话领域,可以评估此次对话是否完成任务。而多轮对话的分类技术的研究也能应用到实际的人与人交互的多轮对话中,用于评估这一通交互是否完成既定的任务,例如在电力领域调度对话中,可以从调令员和受令员的多轮对话中反映每次调度的质量,从而能更好的要求和规范调令员和受令员行为规范,解决效率低下及风险高等一系列问题。多轮对话分类将对话上下文作为输入预测整轮对话的意图,理解整段对话的语义信息,对模型的分类能力要求更高,应用场景也更加丰富多样。
在多轮对话分类任务中,当前的研究工作往往倾向于直接将常见的文本分类模型应用到将多轮对话文本任务中;这些模型处理整个会话文本的通用方法包括简单的将多个句子被拼接成一个长序列作为模型输入以及根据多轮对话文本的层次结构(句子级别和单词级别)进行编码,提取特征并分类。综合以上,有学者提出了一个混合模型来组合多个神经网络的输出特征,如双向长短期记忆网络和胶囊网络等。这种方法在一定程度上提高了多轮对话分类的效果。
已有工作忽略了对话文本的自身特点,与常见的文本分类任务所使用的数据相比,会话文本包含更多的打招呼、寒暄以及身份确认等会话主题无关的干扰信息,规范性较差。因此,如果简单地将其视为普通文本进行编码,则会在模型的学习过程中引入过多的噪声,影响模型最终的分类效果。
发明内容
本发明要解决的技术问题是:提供一种基于图卷积神经网络的多轮对话分类方法,利用图卷积神经网络去冗余且高精准的语义信息学习能力,以解决现有技术多轮对话文本中无关干扰信息多且普遍,现有模型引入过多噪声,影响模型最终的分类效果等技术问题。
本发明技术方案:
一种基于图卷积神经网络的多轮对话分类方法,它包括:
步骤1、对原始数据集进行数据预处理;
步骤2、构建图结构;
步骤3、对图结构进行预处理;
步骤4、构建和训练图卷积神经网络模型;
步骤5、在模型训练完毕之后,使用图卷积神经网络模型在数据集上对多轮对话进行分类。
所述对原始数据集进行数据预处理的方法为:对原始数据集采取去除停用词、去除标点符号和不可见字符处理,将原始数据集表示成文本词语的TF-IDF矩阵形式。
构建图结构的方法为:针对图结构,图的节点将采用每一个词的词向量,邻居节点是与其相似度最高的若干词向量;邻居节点数目设置为8。
所述词向量,称为词嵌入,是以向量的形式表示语料库或者词汇表中的词语,即xi∈Rk;xi表示语料库或者词汇表中第i个词的词向量,Rk表示k维实数空间;原语料库或者词汇表中的词语被映射成向量空间中的点,从而作为输入用于图卷积神经网络模型的训练。
所述图结构进行预处理的方法包括:计算图的拉普拉斯矩阵,同时进行图傅立叶变换;具体包括:
图拉普拉斯矩阵,组合定义为L=D-W∈Rn*n,其中D∈Rn*n是对角度矩阵Dii=∑jWij,归一化定义为 其中In是单位矩阵;先计算由词向量构造的图矩阵,计算得到该图矩阵的度矩阵,再判断是否需要正则化;如果不需要正则化,则该图的拉普拉斯矩阵由L=D-W得到;反之,如果需要正则化,则对应的拉普拉斯矩阵计算公式为
图拉普拉斯矩阵L是一个实对称正半定矩阵,它有一个正交特征向量集,称为图傅立叶的模型,和其相关的有序实非负特征值标识为图的频率;拉普拉斯算子是通过傅立叶基U=[u0,…,un-1]∈Rn*n,使得L=UΛUT,其中Λ=diag([λ0,…,λn-1])∈Rn*n;图的傅立叶变换信号x∈Rn,然后将定义为它的逆为
构建的图卷积神经网络模型包括:图卷积层、激活函数层、池化层和全连接层网络结构。
所述图卷积层对图结构完成卷积操作,提取用于分类的特征;所述图卷积层的构建方法为:
经过图的傅里叶变换,将图数据从空域转化到了谱域,在图的谱域实现滤波操作;
图在傅里叶域,即谱域的卷积操作定义为:x*Gy=U((UTx)⊙(UTy)),式中:⊙是逐个元素的Hadamard乘积,U为傅立叶基矩阵,x为输入信号,y为卷积核的处理后的输出值;信号x由卷积核滤波器gθ过滤y=gθ(L)x=gθ(UΛUT)x=Ugθ(Λ)UTx;非参数滤波器即参数全部空域的滤波器定义为gθ(Λ)=diag(θ);参数θ∈Rn是傅立叶系数的矢量;
在图经过傅里叶变换到谱域之后能够实现滤波操作,但这样的滤波器是没有参数的,无法实现捕捉到局部特征,学习复杂度与图数目成正比,当图数据过大时,学习成本代价高,使得效率低;用多项式滤波器进行解决:参数θ∈Rn是多项式系数向量,k是多项式的阶数;在顶点j的值,以顶点i为中心的过滤器gθ由(gθ(L)δi)j=(gθ(L))i,j=∑kθk(Lk)i,j实现,内核通过克罗内克函数δi∈R进行卷积来定位;dG(i,j)>K,(LK)i,j=0,其中dG是最短路径距离,即连接图上两个顶点的最少数量的边;
通过使用上述K个参数,学习局部过滤器,过滤信号x的操作,x有y=Ugθ(Λ)UTx,因为傅立叶基U的乘法操作,使得代价仍然高O(n2);因此参数化gθ(L),把它看作一个多项式函数,从L递归地计算出来,因为K乘以稀疏矩阵L,代价为O(k|E|)小于O(n2),E为边数;这个多项式就是切比雪夫展开式;
k阶切比雪夫多项式Tk(x)通过递推来关系式计算,Tk(x)=2xTk-1(x)-Tk-2(x),其中T0=1且T1=x;这些多项式形成一个L的正交基dy是特征向量,是平方可积函数的Hilbert空间;滤波器因此作为截断展开式进行参数化上式的K-1阶,参数θ∈RK是切比雪夫系数向量,是在处评估的k阶Chebyshev多项式,其中对角矩阵的标准特征值位于[-1,1],λmax是对角矩阵Λ中最大元素;然后将滤波操作写为其中是在k阶Chebyshev多项式,由标准拉普拉斯评估,表示使用该迭代关系,计算且整个过滤操作 然后代价为O(K|E|)。
为了添加非线性元素,因此添加了激活函数层;采取ReLU函数,ReLU定义为:
式中:x为激活的输入值,y为激活函数的输出值。
所述池化层是将图结构进行粗化之后,对图上的节点随机编号,构造一个平衡二叉树;每一个粗化版本的节点对应于平衡二叉树的一层;最为粗化的图上的节点是平衡二叉树的父节点,次为粗化的图上的节点对应于平衡二叉树的第二层,依次类推,最原始的图上的节点,是该平衡二叉树上的叶节点。
所述全连接层采用dropout策略;所述dropout即在训练过程中,每一次迭代都会以概率p随机地选取一些结点不参与实际运算,在获取全连接层输出y之后,使用softmax函数即可获取对应的类别,softmax函数为,
公式中,l表示类别数,yi表示输出层的第i个值。
训练图卷积神经网络模型的方法为:在模型确定完毕之后,确定损失函数及训练方法;
损失函数是用来估量模型的预测值,是一个非负实值函数,用函数L(y,f(x))来表示;损失函数公式为
N表示样本数,x表示输入向量,f表示模型计算函数,y是真实数据标签表示;在损失函数确定之后,确定训练方法,在神经网络中,参数的调整优化是通过梯度下降完成的;采用小批量梯度下降法和动量优化法学习参数。
本发明的有益效果:
本发明将多轮对话文本表示为图结构,同时提取文本的特征,构造图卷积神经网络实现图数据的端到端的分类,即直接将图结构的对话文本信息及文本特征作为输入,图结构能有效的去掉冗余无关的信息,解决了现有模型去噪声能力差的问题,同时本发明考虑到文本的语义结构信息,从另一个角度捕捉文本的隐藏特征,提高多轮对话分类的效果。
解决了现有技术多轮对话文本中无关干扰信息多且普遍,现有模型引入过多噪声,影响模型最终的分类效果等技术问题。
附图说明
图1图卷积神经网络结构图;
图2图卷积运算示意图;
图3池化示意图;
图4全连接层示意图;
图5dropout示意图。
具体实施方式
本发明基于图卷积神经网络的多轮对话分类方法主要包括五个关键过程:数据预处理、构建图结构、图结构预处理、构建和训练图卷积神经网络模型和使用图卷积神经网络模型预测对话类别。
过程一:数据预处理
在真实数据中,往往存在大量的冗余信息,缺省值以及噪音,也可能因为人工错误导致异常点的存在。此外,就本发明所采用的数据集而言,因为其是多轮对话文本,口语化省略严重,还存在非结构化,词语之间不存在分隔符等诸多不利于提取特征的因素。因此,数据预处理是自然语言处理算法中必不可少的步骤。
常见的数据预处理操作包括数值归一化,数据结构化,数据去冗余等。就本发明而言,将对原始数据集采取去除停用词、去除标点符号和不可见字符、去除低频词等数据预处理操作,需要将原始数据集(文本信息)表示成数字形式。而时下将文本信息表示成数字有多种方式,如统计词频,TF-IDF,词向量等。本模型需要的输入有两部分,一是文本的特征矩阵,二是图结构。针对对话文本的特征矩阵,将采用文本词语的TF-IDF矩阵。TF-IDF是一种自然语言处理中最常用且基础的统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。
过程二:构建图结构
针对图结构,图的节点将采用每一个词的词向量,其邻居节点则是与其相似度最高的若干词。在本发明中,选择相似度最高的8个词的效果最好,因此邻居节点数目设置为8。
词向量,又被称为词嵌入,是以向量的形式表示语料库或者词汇表中的词语,即xi∈Rk。其中,xi表示语料库或者词汇表中第i个词的词向量,Rk表示k维实数空间。如此,原语料库或者词汇表中的词语就被映射成向量空间中的点,从而可以作为输入用于图卷积神经网络模型的训练。本发明采用Skip-gram获得词向量。
过程三:图结构预处理
由于后续计算涉及到图的卷积操作,根据谱图理论,需要用到图的拉普拉斯矩阵,因此预先进行计算。图拉普拉斯矩阵,其组合定义是L=D-W∈Rn*n,其中D∈Rn*n是对角度矩阵,Dii=∑jWij,Dii对角矩阵的对角元素,Wij为权重,W为图的(加权)邻接矩阵。归一化定义为其中In是单位矩阵。先计算由词向量构造的图矩阵,计算得到该图矩阵的度矩阵,再判断是否需要正则化。如果不需要正则化,则该图的拉普拉斯矩阵由L=D-W得到。反之,如果需要正则化,则对应的拉普拉斯矩阵计算公式为
为了实现之后的图卷积操作,需要实现图的傅里叶变换。由上述得到的图拉普拉斯矩阵L是一个实对称正半定矩阵,它有一个正交特征向量集,称为图傅立叶的模型,ul是某一特征向量,是和其相关的有序实非负特征值,标识为图的频率。拉普拉斯算子是通过傅立叶基U=[u0,…,un-1]∈Rn*n,使得L=UΛUT,其中Λ=diag([λ0,…,λn-1])∈Rn*n,是n*n的对角矩阵。图的傅立叶变换信号x∈Rn,然后将定义为它的逆为
通过图结构的预处理步骤计算了图的拉普拉斯矩阵,同时进行了图傅立叶变换。
过程四:构建和训练图卷积神经网络模型
卷积神经网络是深度学习中极具代表性的网络结构之一,它通过局部连接、权值共享、池化等方法避免了传统的神经网络的参数繁多等缺点,从而在视觉处理、自然语言处理等诸多领域取得了优异成绩。将CNN使用在图数据上的模型,称之为图卷积神经网络,简称GCN。将CNN泛化到图数据上需要三个主要步骤:(1)为了实现滤波操作,需要将图从节点域转化到谱域,设计使用在图上的局部卷积滤波器;(2)将近似节点聚集在一起的图粗化。原因在于,对图像进行最大池化或是平均池化时,每隔几个数据点就进行平均或是选取最大值的操作。同样,要对图数据进行池化操作时,先要标注、区分出相似节点将近似节点聚集在一起的图粗化;(3)经过图的粗化之后,获得了不同粗化版本的图,实现了近似节点的聚集。之后进行图的池化操作,将空间分辨率转化到更高的程度的滤波器分辨率。
本发明所采用的图卷积神经网络结构则如图1所示,包括图卷积层、激活函数层、池化层、全连接层等网络结构。为方便理解本发明所使用的图卷积神经网络结构,接下来将详细阐述其结构。
结构一:图卷积层
经过图的傅里叶变换,已经将图数据从空域转化到了谱域,在图的谱域可以实现滤波操作,流程图见图2。图在傅里叶域,即谱域的卷积操作定义为:x*Gy=U((UTx)⊙(UTy)),其中⊙是逐个元素的Hadamard乘积,U为上一部分提到的傅立叶基矩阵,x为输入信号,y为卷积核的处理后的输出值。信号x由卷积核滤波器gθ过滤y=gθ(L)x=gθ(UΛUT)x=Ugθ(Λ)UTx。非参数滤波器,即参数全部空域的滤波器将被定义为gθ(Λ)=diag(θ)。其中,参数θ∈Rn是傅立叶系数的矢量。
尽管在图经过傅里叶变换到谱域之后能够实现滤波操作,但这样的滤波器是没有参数的。无参数的滤波器的缺点:无法实现捕捉到局部特征,学习复杂度仍然与图数目成正比,当图数据过大时,学习成本代价过高,使得效率低。这个问题可以用多项式滤波器进行解决:其中参数θ∈Rn是多项式系数向量,k是多项式的阶数。在顶点j的值,以顶点i为中心的过滤器gθ由(gθ(L)δi)j=(gθ(L))i,j=∑kθk(Lk)i,j,内核通过克罗内克函数δi∈R进行卷积来定位。dG(i,j)>K意味着(LK)i,j=0,其中dG是最短路径距离,即连接图上两个顶点的最少数量的边。因此,由拉普拉斯K阶多项式表示的谱滤波器恰好是K局部化的。
即使可以通过使用上述K个参数,学习局部过滤器,过滤信号x的操作,x有y=Ugθ(Λ)UTx,该操作因为傅立叶基U的乘法操作,使得代价仍然高O(n2)。解决这个问题的方法是参数化gθ(L),把它看作一个多项式函数,可以从L递归地计算出来,因为K乘以稀疏矩阵L,代价为O(k|E|)远小于O(n2),其中E为边数。一个这样的多项式,传统上使用在图像信号处理中近似内核(如小波),就是切比雪夫展开式。
k阶切比雪夫多项式Tk(x)可以通过递推来关系式计算,Tk(x)=2xTk-1(x)-Tk-2(x),其中T0=1且T1=x。这些多项式形成一个L的正交基dy是特征向量,关于是平方可积函数的Hilbert空间。滤波器因此可以作为截断展开式进行参数化
上式的K-1阶,其中参数θ∈RK是切比雪夫系数向量,是在处评估的k阶Chebyshev多项式,其中对角矩阵的标准特征值位于[-1,1],λmax是对角矩阵Λ中最大元素。然后可以将滤波操作写为其中是在k阶Chebyshev多项式,由标准拉普拉斯评估。表示我们可以使用该迭代关系,计算且整个过滤操作然后代价为O(K|E|)。
结构二:非线性激活层
为了添加非线性元素,因此添加了激活层。本发明中采取ReLU(修正性单元,rectifiedlinearunit)方法。ReLU定义为:
其中,x为激活的输入值,y为激活函数的输出值,虽然有其他的激活函数,比如sigmoid函数、tanh函数,但ReLU具有自己的优势。如果在模型优化时使用随机梯度下降方法,ReLU的收敛速度更快。而且sigmoid激活函数和tanh激活函数当中使用了指数,这样的计算代价十分高昂,尤其是在数据量大的时候这个缺点更为明显。除此之外,在梯度消失问题上,sigmoid和tanh的效果都不佳,但ReLU却可以有效缓解。
结构三:池化层
图卷积层对图结构完成卷积操作后,提取用于分类的特征之后,下一步就是利用这些特征去做分类。然而,图卷积得到的特征、相关参数仍然太多,这将导致计算量过于庞大,甚至会导致过拟合现象的发生。因此,本发明将在图卷积层之后部署池化层以避免上述不利因素的影响。
所谓池化层,可以简单地理解为对图卷积层得到的特征的采样。传统的规则数据在进行池化的时候,每隔几个数据点做删除。然而对于一个权值图的节点做下采样,并没有每隔几个节点的概念。因此类比于规则数据,需要先将图的相似节点聚集在一起,即图的聚类。实际的情况是对节点数目众多的图结构做一次聚类,并不能将大部分相似节点聚集在一起。因此需要重复进行该操作,这实际上就是图的多尺度聚类。然而,图的聚类是一个NP-hard问题,因此需要采取能得到近似结果的方法。
图的聚类算法主要分为:划分聚类算法、层次聚类算法、基于密度的聚类算法、基于网格的聚类算法等等。多尺度聚类算法包括三个步骤:图的粗化、图的划分、图的精细化。
根据某些规则将图上的节点和边进行合并,得到一个粗化版本。在此基础上,继续重复节点和边合并的规则,进一步得到一个更高层次的粗化版本。根据具体的需求,确定粗化的程度和次数。在本发明中合并规则采用Graclus贪心算法。Graclus的贪心规则包括在每个粗化级别挑选一个未标记的顶点i,并将其与其未标记的邻居j之一匹配,以最大化局部归一化切割值Wi,j(1/di+1/dj),其中d表示权重之和,W是权重矩阵。然后标记两个匹配的顶点,粗化后的权重被设置为它们权重的总和。重复匹配,直到所有节点都被标记。从一个级别到下一个较粗糙的级别,它将节点数大致分为两部分,其中可能存在少数单个没有被匹配的节点。
将图结构进行粗化之后,对图上的节点随机编号,构造一个平衡二叉树。每一个粗化版本的节点对应于平衡二叉树的一层。最为粗化的图上的节点是平衡二叉树的父节点,次为粗化的图上的节点对应于平衡二叉树的第二层,依次类推,最原始的图上的节点,是该平衡二叉树上的叶节点。
在图结构完成了卷积、激活之后得到的是新的特征图,对这个特征图进行一定程度的粗化,并构造它对应的平衡二叉树。对此二叉树进行下采样操作,从二叉树的父节点开始,依次映射到二叉树的第二层、第三层……最后,图的池化就相当于对一维数据做池化。
如图3所示,G0是原始最精细的图,将每个节点进行如图所示的随机编号。利用Graclus算法对节点和边进行合并,假设节点0,1满足归一化切割值最大,进行合并为一个节点,节点4,5合并为一个节点,节点8,9合并为一个节点,节点6和节点10没有与之匹配合并的节点,是单节点,为了满足平衡二叉树的要求,因此添加假节点7和节点11,并设初始值为0,得到G1。同理,为G1上的节点进行随机编号,利用Graclus算法将节点2,3进行合并,将节点4,5进行合并,节点0没有与之匹配的节点,为了满足平衡二叉树的规则,因此添加一个假节点1得到G2。此时G2就是最为粗化的图。
根据三个粗化版本构造平衡二叉树。从二叉树的父节点开始进行池化,此处用最大池化作为示例。从节点0开始,依次向第二层子节点映射,对应子节点0和节点1,第二层的节点0是一个单节点,对应叶节点的节点0,1;第二层的节点1,是一个假节点,它对应的子节点都是假节点,他们的值都为0,不会对池化结果有影响。因此对父节点0做最大池化相当于对原图结构中节点0和节点1做最大池化。依次类推,对父节点1做最大池化,相当于对原图结构中节点4和节点5和节点6做最大池化。对父节点2做最大池化,相当于对原图结构中节点8和节点9和节点10做最大池化。因此,整个图的池化结果则是z={max{0,1},max{4,5,6},max{8,9,10}}。
结构四:全连接层
全连接层,顾名思义,就是全连接层的每一个结点都与上一层的每一个结点相连,如图4所示。在本发明中,上一层为池化层,全连接层即为输出层。此外,本发明为了避免全连接层的权重参数太多,难以计算,且容易导致过拟合情况等不利因素,采用dropout策略。所谓dropout,即在训练过程中,每一次迭代都会以概率p随机地选取某些结点不参与实际运算,如图5所示,输入层的第二个结点暂时不参与运算。
如此,在获取全连接层输出y之后,对其使用softmax函数即可获取对应的类别。其中,softmax函数如下,
公式中,l表示类别数,yi表示输出层的第i个值。不难看出,公式的计算结果是一个概率值。而我们对输出层的所有值计算softmax函数值,并选取最大值作为本发明的类别。
结构四:损失函数及训练方法完全
在模型确定完毕之后,下一步也是最后一步就是确定损失函数及训练方法。
损失函数是用来估量模型的预测值。它是一个非负实值函数,通常用函数L(y,f(x))来表示。损失函数越小,模型的鲁棒性就越好,即在训练过程中通过训练方法调整参数使得损失函数的值减小。交叉熵损失函数通常在较多网络中的实验效果要优于其他损失函数,它很好地反映了期望输出与当前实际输出间的差异。因此本发明采用常用的交叉熵作为损失函数,其公式如下。
这里,N表示样本数,x表示输入向量,f表示模型计算函数,y是真实数据标签表示。在损失函数确定之后,接下来的步骤就是确定训练方法。在神经网络中,参数的调整优化是通过梯度下降完成的。
本发明方案采用小批量梯度下降法和动量优化法学习参数,后者能计算每个参数的自适应学习率。
过程五预测
最终,在模型训练完毕之后,本发明将使用图卷积神经网络模型,在数据集上对多轮对话进行分类。
基于上述方案设计,在此说明本发明所提出方法产生的积极效果。本方案在中国移动客服数据集对话数据集上进行实验。中国移动客服数据集来自于CCL2018中移在线客服领域用户意图分类比赛。该任务假设客户服务人员接听来自不同客户的电话。目的是在给定整个对话历史的情况下确定哪个业务是用户来电的准确请求。对话数据集的样本是通过语音识别技术(ASR)将用户与客服的对话语音转换成文本得到的。其中,样本的标签是中国移动公司预定义的业务类型,如缴费业务、开通业务和补换卡业务等。当然,为了防止泄露用户隐私,对话内容中涉及到用户的个人数据都在后期被注释过滤。
为了验证本方案提出的模型的有效性和正确性,本发明选择了四种经典的多轮对话文本分类方法作为基线方法进行对比:
(1)朴素贝叶斯分类器NBC
朴素贝叶斯分类器NBC(NaiveBayesClassifier)是一种假设特征之间强独立下运用贝叶斯定理为基础的简单概率分类器。本发明假设特征的先验概率为多项式分布,即:
其中,P(Xj=xjl|Y=Ck)是第k个类别的第j维特征第l个取值条件的概率,mk是训练集输出为第k类的样本个数,λ是拉普拉斯平滑项。本发明添加拉普拉斯平滑,即λ=1。
(2)支持向量机SVM
支持向量机SVM(SupportVectorMachine)是一种二分类模型,其基本模型是定义在特征空间上的间隔最大的线性分类器。本发明设置惩罚参数C=1.0,核函数为多项式函数且多项式的维度为3,停止训练的误差值大小为1×10-3。
(3)TextCNN
Kim于2014年提出TextCNN,将CNN应用到文本分类任务,从而使CNN能够更好地捕捉文本局部语义特征。本发明设置词向量维度为128、滤波器数量为128、模型迭代次数为200、每批次训练数据量为64、学习率为1×10-3。
(4)BERT
BERT是谷歌AI团队于2018年发布的模型,在包括文本分类任务的多项自然语言处理任务中创造了当时最佳成绩,BERT具有强大的学习能力,在已经预训练的参数去在领域内微调可以有效的学些语义信息。本发明设置BERT预训练模型的堆叠层数L=12,词向量维度为768,Multi-headSelf-attention机制的头数H=12,经多次实验后确定对于该任务,BERT模型的最佳训练参数为:Dropout随机失活率=0.1,模型迭代次数=4,每批次训练数据量=12,学习率=5×10-5。
根据本发明的数据集特点及图卷积神经网络超参数的常规设置方案,图卷积层的层数(num_GCN)为2、初始学习率(learning_rate)为0.0001、dropout比率(dropout_keep_prob)为0.5、批量大小(batch_size)为128、训练轮数(num_epochs)为50、输出层输出维度(output_dim)为512。申请提案将使用word2vec工具中的skip-gram方法生成词向量,选取ReLU函数做为激活函数,选择交叉熵损失函数作为模型的损失函数,采用小批量梯度下降法和动量优化法作为模型的训练方法,并设置初始学习率为0.0001。实验结果如表1所示
表1多轮对话分类实验结果
实验结果说明,与现有的其他模型对比,本发明中提出的模型效果总体上更优,F1值达到最高的70.7%,取得所有模型中最好的结果。
Claims (10)
1.一种基于图卷积神经网络的多轮对话分类方法,它包括:
步骤1、对原始数据集进行数据预处理;
步骤2、构建图结构;
步骤3、对图结构进行预处理;
步骤4、构建和训练图卷积神经网络模型;
步骤5、在模型训练完毕之后,使用图卷积神经网络模型在数据集上对多轮对话进行分类。
2.根据权利要求1所述的一种基于图卷积神经网络的多轮对话分类方法,其特征在于:所述对原始数据集进行数据预处理的方法为:对原始数据集采取去除停用词、去除标点符号和不可见字符处理,将原始数据集表示成文本词语的TF-IDF矩阵形式。
3.根据权利要求1所述的一种基于图卷积神经网络的多轮对话分类方法,其特征在于:构建图结构的方法为:针对图结构,图的节点将采用每一个词的词向量,邻居节点是与其相似度最高的若干词向量;邻居节点数目设置为8。
4.根据权利要求3所述的一种基于图卷积神经网络的多轮对话分类方法,其特征在于:所述词向量,称为词嵌入,是以向量的形式表示语料库或者词汇表中的词语,即xi∈Rk;xi表示语料库或者词汇表中第i个词的词向量,Rk表示k维实数空间;原语料库或者词汇表中的词语被映射成向量空间中的点,从而作为输入用于图卷积神经网络模型的训练。
5.根据权利要求1所述的一种基于图卷积神经网络的多轮对话分类方法,其特征在于:所述图结构进行预处理的方法包括:
计算图的拉普拉斯矩阵,同时进行图傅立叶变换;具体包括:
图拉普拉斯矩阵,组合定义为L=D-W∈Rn*n,其中D∈Rn*n是对角度矩阵Dii=∑jWij,归一化定义为 其中In是单位矩阵;先计算由词向量构造的图矩阵,计算得到该图矩阵的度矩阵,再判断是否需要正则化;如果不需要正则化,则该图的拉普拉斯矩阵由L=D-W得到;反之,如果需要正则化,则对应的拉普拉斯矩阵计算公式为
6.根据权利要求1所述的一种基于图卷积神经网络的多轮对话分类方法,其特征在于:构建的图卷积神经网络模型包括:图卷积层、激活函数层、池化层和全连接层网络结构;所述图卷积层对图结构完成卷积操作,提取用于分类的特征;所述图卷积层的构建方法为:
经过图的傅里叶变换,将图数据从空域转化到了谱域,在图的谱域实现滤波操作;
图在傅里叶域,即谱域的卷积操作定义为:x*Gy=U((UTx)⊙(UTy)),式中:⊙是逐个元素的Hadamard乘积,U为傅立叶基矩阵,x为输入信号,y为卷积核的处理后的输出值;信号x由卷积核滤波器gθ过滤y=gθ(L)x=gθ(UΛUT)x=Ugθ(Λ)UTx;非参数滤波器即参数全部空域的滤波器定义为gθ(Λ)=diag(θ);参数θ∈Rn是傅立叶系数的矢量;
在图经过傅里叶变换到谱域之后能够实现滤波操作,但这样的滤波器是没有参数的,无法实现捕捉到局部特征,学习复杂度与图数目成正比,当图数据过大时,学习成本代价高,使得效率低;用多项式滤波器进行解决:参数θ∈Rn是多项式系数向量,k是多项式的阶数;在顶点j的值,以顶点i为中心的过滤器gθ由(gθ(L)δi)j=(gθ(L))i,j=∑kθk(Lk)i,j实现,内核通过克罗内克函数δi∈R进行卷积来定位;dG(i,j)>K,(LK)i,j=0,其中dG是最短路径距离,即连接图上两个顶点的最少数量的边;通过使用上述K个参数,学习局部过滤器,过滤信号x的操作,x有y=Ugθ(Λ)UTx,因为傅立叶基U的乘法操作,使得代价仍然高O(n2);因此参数化gθ(L),把它看作一个多项式函数,从L递归地计算出来,因为K乘以稀疏矩阵L,代价为O(k|E|)小于O(n2),E为边数;这个多项式就是切比雪夫展开式;
8.根据权利要求1所述的一种基于图卷积神经网络的多轮对话分类方法,其特征在于:所述池化层是将图结构进行粗化之后,对图上的节点随机编号,构造一个平衡二叉树;每一个粗化版本的节点对应于平衡二叉树的一层;最为粗化的图上的节点是平衡二叉树的父节点,次为粗化的图上的节点对应于平衡二叉树的第二层,依次类推,最原始的图上的节点,是该平衡二叉树上的叶节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111029893.9A CN113642674A (zh) | 2021-09-03 | 2021-09-03 | 一种基于图卷积神经网络的多轮对话分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111029893.9A CN113642674A (zh) | 2021-09-03 | 2021-09-03 | 一种基于图卷积神经网络的多轮对话分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113642674A true CN113642674A (zh) | 2021-11-12 |
Family
ID=78424981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111029893.9A Pending CN113642674A (zh) | 2021-09-03 | 2021-09-03 | 一种基于图卷积神经网络的多轮对话分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113642674A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114169504A (zh) * | 2021-12-10 | 2022-03-11 | 河北工业大学 | 基于自适应滤波的图卷积神经网络池化方法 |
CN114418119A (zh) * | 2022-01-21 | 2022-04-29 | 深圳市神州云海智能科技有限公司 | 一种基于结构深度嵌入的对话策略优化方法及系统 |
CN118230722A (zh) * | 2024-05-22 | 2024-06-21 | 陕西拓方信息技术有限公司 | 基于ai的智能语音识别方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110929029A (zh) * | 2019-11-04 | 2020-03-27 | 中国科学院信息工程研究所 | 一种基于图卷积神经网络的文本分类方法及系统 |
CN112182191A (zh) * | 2020-10-16 | 2021-01-05 | 西北师范大学 | 多轮口语理解的结构化记忆图网络模型 |
CN112529068A (zh) * | 2020-12-08 | 2021-03-19 | 广州大学华软软件学院 | 一种多视图图像分类方法、系统、计算机设备和存储介质 |
CN112765352A (zh) * | 2021-01-21 | 2021-05-07 | 东北大学秦皇岛分校 | 基于具有自注意力机制的图卷积神经网络文本分类方法 |
-
2021
- 2021-09-03 CN CN202111029893.9A patent/CN113642674A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110929029A (zh) * | 2019-11-04 | 2020-03-27 | 中国科学院信息工程研究所 | 一种基于图卷积神经网络的文本分类方法及系统 |
CN112182191A (zh) * | 2020-10-16 | 2021-01-05 | 西北师范大学 | 多轮口语理解的结构化记忆图网络模型 |
CN112529068A (zh) * | 2020-12-08 | 2021-03-19 | 广州大学华软软件学院 | 一种多视图图像分类方法、系统、计算机设备和存储介质 |
CN112765352A (zh) * | 2021-01-21 | 2021-05-07 | 东北大学秦皇岛分校 | 基于具有自注意力机制的图卷积神经网络文本分类方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114169504A (zh) * | 2021-12-10 | 2022-03-11 | 河北工业大学 | 基于自适应滤波的图卷积神经网络池化方法 |
CN114169504B (zh) * | 2021-12-10 | 2024-04-16 | 河北工业大学 | 基于自适应滤波的图卷积神经网络池化方法 |
CN114418119A (zh) * | 2022-01-21 | 2022-04-29 | 深圳市神州云海智能科技有限公司 | 一种基于结构深度嵌入的对话策略优化方法及系统 |
CN118230722A (zh) * | 2024-05-22 | 2024-06-21 | 陕西拓方信息技术有限公司 | 基于ai的智能语音识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110929029A (zh) | 一种基于图卷积神经网络的文本分类方法及系统 | |
CN109189925B (zh) | 基于点互信息的词向量模型和基于cnn的文本分类方法 | |
WO2021232589A1 (zh) | 基于注意力机制的意图识别方法、装置、设备及存储介质 | |
CN107526785B (zh) | 文本分类方法及装置 | |
CN113642674A (zh) | 一种基于图卷积神经网络的多轮对话分类方法 | |
WO2017206936A1 (zh) | 基于机器学习的网络模型构造方法及装置 | |
CN111340186B (zh) | 基于张量分解的压缩表示学习方法 | |
CN114119979A (zh) | 基于分割掩码和自注意神经网络的细粒度图像分类方法 | |
CN109063719B (zh) | 一种联合结构相似性和类信息的图像分类方法 | |
CN109255381B (zh) | 一种基于二阶vlad稀疏自适应深度网络的图像分类方法 | |
CN108170848B (zh) | 一种面向中国移动智能客服的对话场景分类方法 | |
CN113220886A (zh) | 文本分类方法、文本分类模型训练方法及相关设备 | |
CN106503672A (zh) | 一种老年人异常行为的识别方法 | |
CN110321805B (zh) | 一种基于时序关系推理的动态表情识别方法 | |
CN112699899A (zh) | 一种基于生成对抗网络的高光谱图像特征提取方法 | |
CN112529638B (zh) | 基于用户分类和深度学习的服务需求动态预测方法及系统 | |
CN111581379B (zh) | 一种基于作文扣题度的自动作文评分计算方法 | |
CN113672726A (zh) | 一种基于重采样的多轮对话分类方法 | |
CN112988970A (zh) | 一种服务于智能问答系统的文本匹配算法 | |
Yang et al. | Classification of medical images with synergic graph convolutional networks | |
CN114896392A (zh) | 工单数据的聚类方法、装置、电子设备及存储介质 | |
CN117435982A (zh) | 一种多维度快速识别网络水军的方法 | |
CN113377901B (zh) | 一种基于多尺寸cnn和lstm模型的蒙古语文本情感分析方法 | |
Zhao et al. | Iterative activation-based structured pruning | |
CN114842425A (zh) | 用于石油化工工艺的异常行为识别方法及电子设备 |
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 |