CN115221326A - 一种基于深度学习和梯度反转的外卖评价文本分类方法 - Google Patents

一种基于深度学习和梯度反转的外卖评价文本分类方法 Download PDF

Info

Publication number
CN115221326A
CN115221326A CN202210921888.7A CN202210921888A CN115221326A CN 115221326 A CN115221326 A CN 115221326A CN 202210921888 A CN202210921888 A CN 202210921888A CN 115221326 A CN115221326 A CN 115221326A
Authority
CN
China
Prior art keywords
model
layer
net
classification
evaluation
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
CN202210921888.7A
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.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi 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 Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN202210921888.7A priority Critical patent/CN115221326A/zh
Publication of CN115221326A publication Critical patent/CN115221326A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • 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
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Computational Linguistics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于深度学习和梯度反转的外卖评价文本分类方法,包括以下步骤:外卖评价数据获取和预处理;构建并初始化卷积神经网络;构建并初始化Bert类网络;反向传播;外卖评价文本分类;外卖评价文本分类效果评估。本发明通过Transformers搭建数据预处理至端到端的训练的完整流程,并通过嵌入层来得到文本最初的表征空间,将其表征空间向量送入模型。在原始模型提取出的特征向量上,本发明进一步利用梯度翻转层来获取未收敛数据的表征空间,并将未收敛数据的表征空间投影到原始模型提取的特征向量空间中,获取到可以利用的抽象数据,最终结合两种特征向量进行分类达到更好的泛化能力,提升文本分类的准确性。

Description

一种基于深度学习和梯度反转的外卖评价文本分类方法
技术领域
本发明涉及外卖评价文本分类领域,具体涉及一种基于深度学习和梯度反转的外卖评价文本分类方法。
背景技术
外卖系统在我国已经是普遍存在的,时效性强的、有强大经济效应和社会效应的用餐系统之一。它对我国的餐饮行业产生了巨大的影响,让人足不出户就可以尝到方圆数十里内存在的美食。在外卖系统中,用户对平台内店铺最直观的想法大多数来自于店铺评价,各大平台为了提高用户对软件的第一印象,也会选用口碑较好的店铺来构成自己的首页。因此在各大外卖平台内部都是会对店铺的评价文本进行分析,将分析后的数据作为平台推荐系统的可靠输入,进而影响整个外卖平台的推荐系统,比如各大外卖软件首页的店铺都是口碑较好的店铺,这种自动更新方式大多数是通过分析用户对各个店铺的好感度、用户的兴趣点来实现的。
但随着外卖系统的发展,各个外卖平台内用户对店铺的评价也变得参差不齐,有些评价隐藏了文本的实际情感,有些评价根本没有有用的信息,或者有些评价只带表情,有些评价过于简短等。此类评价对文本分类模型提出了较高的要求。
现存的,对文本进行分析的方法大多数集中于深度学习上,在情感识别中,当外卖订单评价文本在经过预处理输入给模型之后,网络会输出这条文本是属于正向情感的还是反向情感的,网络判断失误时,会通过预先设定好的损失函数来求得网络预测和真实标签之间的差距,再通过损失函数的值推导出特征向量的梯度,最终通过梯度和学习率更新模型的参数,不断迭代,使得模型能够拟合以后将要预测的评价文本。
但上述深度学习中的一些模型会由于训练数据不充足等原因而无法准确预测实际文本。比如CNN类和Bert类模型在分析外卖评价文本时捕获的上下文有限而限制了模型对外卖评价文本的分类能力。
发明内容
针对上述问题,本发明提供了一种基于深度学习和梯度反转的外卖评价文本分类方法,包括以下步骤:
S1外卖评价数据获取和预处理:
获取外卖平台的订单评价数据D={(xi,yi)|i∈0,1,…,N-1},其中N代表训练样本个数,xi代表一个中文语料训练样本,yi代表对应单个样本的标签,其值为0或1;
在训练数据集中不放回的抽取训练数据xi,并使用通用函数Tokenizer和预训练的嵌入层Embedding处理中文短句,将单个字或词语映射成整数,再将对应的整数映射成E维的向量;
对每个句子进行截断和扩充处理:当句子超出某个长度L,就截断超出L的信息,如果整个句子长度小于L,则全部填充0至长度L;
经过了Tokenizer和Embedding处理后,得到:
xi=[e0,e1,e3,…,eL-1]
其中,Xi是经过处理的矩阵,e0代表一个1×E的向量;
S2构建外卖评价文本分类网络模型
S2-1构建并初始化卷积神经网络
在F-Net卷积网络中定义三个卷积核,在A-Net卷积网络中定义一个卷积核;
A-Net卷积网络还需要在卷积网络层上堆叠一个梯度反转层用于修改特征向量的梯度推导方程;
在F-Net卷积网络与A-Net卷积网络中,池化层是和卷积核配对的,
使用最大池化来获取卷积核提取的最显著的特征用于外卖评价分类;
在卷积神经网络中,文本卷积有两层,第一层用嵌入层来获取文本的抽象表征Xi,第二层使用不同尺寸的卷积核和最大池化层来提取文本的特征向量,预测步骤公式化形式如下:
Figure BDA0003778062240000021
Figure BDA0003778062240000031
c=max{ci} (6)
其中,Xi是嵌入层的输出,W是卷积核权重,b是卷积核偏移量,h是卷积核大小,max则是最大值池化操作;
由公式(4)得出来的
Figure BDA0003778062240000032
是一个单独的数值;公式(4)产生的ci则是众多
Figure BDA0003778062240000033
组成的一个1×(L-h)特征向量;公式(6)用于提取ci中数值最大的元素c;
一种尺寸的卷积核会提取100种不同的c,最后将100个不同的c合并成一个1×100的向量,成为一个尺寸卷积核下的特征向量;
F-Net的三种不同尺寸的卷积核会得到1×300的特征向量vf,而A-Net的一种尺寸的卷积核会得到1×100的特征向量va
通过公式(3)将va投影到对应位置的vf中得到
Figure BDA0003778062240000034
并将
Figure BDA0003778062240000035
和vf合并成一个1×400的向量
Figure BDA0003778062240000036
Figure BDA0003778062240000037
作为分类层的输入,得出分类层最后的1×2的分类向量Yf,得出模型的预测结果。
S2-2构建并初始化Bert类网络
选用Bert类网络中的Bert模型和RoBERTA模型;
选取一层Encoder的副本作为A-Net的子网络;;
使用两层全连接层作为模型(现有的开源网络名)的分类层,通过概率大小和预测分类来通知推荐系统此条评价有正向情感的还是有负向情感;
F-Net具有12层Encoder,A-Net的Encoder是从F-Net的第12个Encoder复制而来的,且A-Net的输入是F-Net第11层Encoder的输出;
Bert类模型的初始化需要导入预训练模型;其中,预训练模型是Bert类模型在无监督外卖评价语料中学习而来的
Bert类模型的Encoder个数、Encoder输出维度、Embedding输出维度都是被固定的,
其中,Embedding层的参数E为768,Encoder的输出的维度为768
Xi在经过Embedding和每个Encoder的输出均为如下结构:hi=[e0,e1,e3,...,eL-1]其中,{ej|j∈0,1,…,L-1}是1×768维度的向量,{hi|i∈1,2,…,12}是每一层Encoder的输出,而每一层Encoder的输入都是上一层Encoder的输出,Xi在经过12层Encoder后生成一个L×768的特征向量vf;在A-Net中生成一个L×768的特征向量va在特征投影层中的操作只针对ff和va的e0;将投影后的特征
Figure BDA0003778062240000041
和h12的e0合并起来变成1×1536的特征向量
Figure BDA0003778062240000042
最后将
Figure BDA0003778062240000043
送入分类层得到Bert类模型的分类结果ff
S3反向传播
将S2-2中得出的Yf和交叉熵计算模型的Loss,通过Loss更新整个Embedding层的参数、卷积核参数、Encoder的参数和分类层的参数,在更新过程中,A-Net所使用的学习率比F-Net的学习率大;F-Net使用Adam优化策略,A-Net使用SGD优化策略;
S4外卖评价文本分类
将训练完成的模型部署在服务器上执行预测过程;当用户写入一条评论后,数据会发送至外卖平台服务器,且调用对应的预测接口后,训练好的模型就会读取一条文本数据;模型会调用内部的Tokenizer函数对中文预料做处理,使之映射成L维的整数向量,随后将向量送入特征提取层卷积神经网络和Bert类网络获得该句子的特征向量,最后将特征向量送入分类层得到模型预测该句子为正向评价或负向评价的概率。
进一步地,所述步骤2-2中,通过概率大小和预测分类来通知推荐系统此条评价有正向情感还是有负向情感的方法如下;
在所述Bert模型和RoBERTA模型计算出的1×2的向量中,下标0的数值代表模型预测此条外卖评价属于正向情感的概率值,下标1的数值表明此条外卖评价属于负向情感的概率值;上述两种概率值的和为1,当下标0的数值超过0.5时,则认为模型预测此条外卖评价的情感是正向情感,反之则为负向情感。
进一步地,在所述S4步骤之后,还包括以下步骤:
S5外卖评价文本分类效果评估:
读取测试数据,使用外卖评价文本分类网络模型对测试数据进行分类,对测试数据的分类过程不执行向后传播
对读取的所有测试数据进行分类,使用标准准确度计算方法,得到模型在测试数据上的准确度,以此来评估模型的预测能力。
本发明引入的梯度反转和特征投影的方法可以在模型的预测和训练过程生成更多的特征向量,进而提高模型捕获信息的能力,使得模型在外卖评价这类短文本中得到更高的分类准确度。
本发明借助现有通用框架来编写一种能够完整执行预测功能的深度学习模型以实现对外卖评价文本数据的分类。在正常网络中,模型依据损失函数推导出来的梯度更新自身参数,此类梯度有助于让模型拟合更多外卖评价数据,从而达到模型泛化的目的,但数据是有多样性的,整体的训练数据并不能代表外卖领域内的所有数据,所以本发明在模型中结合反向梯度来降低模型在训练数据时的拟合程度,以此提高模型泛化能力。在本发明中,梯度反转层提供反转梯度的函数操作,而特征投影则利用向量之间的操作来降低反向梯度特征向量对模型的直接影响,让模型的分类能力尽量不被反向梯度的特征向量破坏。同时,为了达到使用梯度反转层和特征投影层的目的,本发明设计了一种菱形结构,其中,菱形结构中的原始模型部分称为F-Net,而从原始模型拷贝而来的网络层称作A-Net。菱形结构的主要目的是抽取反向梯度的特征向量,让模型在一次更新中能够获取两部分的文本抽象信息,使得模型在更新自身参数的过程中能够兼顾被梯度反转层所影响的网络层。
由于本发明涉及多个原始模型,比如CNN和Bert,因此本发明的菱形结构的内部元素是对称的。简而言之,Bert类的子网络和本发明设计的菱形结构子网络是同样的Encoder,而CNN类的菱形结构的子网络层是卷积神经网络层。也就是说,菱形结构内部的元素是随着原始模型的改变而改变的。此外,鉴于反向梯度产生的特征向量不能直接用作分类,因此本发明额外设计了特征投影层来剔除反向梯度特征向量的有害信息,保留有效信息。最终,处理后的特征向量和原始模型的特征向量拼接起来,再送入分类层得出模型的预测结果。为了更好的展现本发明,其梯度反转层的具体公式如下:
Figure BDA0003778062240000061
Figure BDA0003778062240000062
在公式(1)中,GRL表示梯度反转层,x表示A-Net的输出,
Figure BDA0003778062240000063
表示经过了梯度反转层的输出。其中x和
Figure BDA0003778062240000064
是同一个特征向量,其内部的值并没有被梯度反转层改变,而是修改了其梯度推导方程,其效果如公式(2)。在公式(2)中,I表示LOSS对原始x的偏导数,λ则是控制梯度反转的程度,一般设置在0-1之间。在本发明中,λ的初始值为0,且是随着模型迭代动态改变的,迭代轮数越高,λ越接近1。结合两个公式得知,梯度反转层的作用仅仅在于更改梯度推导的方程,而不修改特征向量原有的值。因此为了剔除通过反向梯度提取的特征向量的冗余数据,还需要设计专门的特征投影层来配合。
特征投影层的公式如下:
Figure BDA0003778062240000065
在公式(3)中,va代表A-Net提取的特征向量,vf代表F-Net提取的特征向量,
Figure BDA0003778062240000066
则是特征投影层的输出。从公式可以看出,特征投影层将va投影至vf的特征空间,其本质是通过va来得到vf的子集,这个子集是和va具有高度相关性的。
附图说明
图1:本发明涉及的方法的整体原理图
图2:网络架构图
图3:网络流程图
图4:特征投影层执行图
图5:本发明Bert类网络最后一层Encoder提取的注意力分析图
图6:原始模型最后一层Encoder提取的注意力分析图
具体实施方式
为了更好的理解本发明的做法,下面将结合附图来对本发明做更详细的说明,以此来明确本发明的所属范围和降低本发明的理解难度。
图1表明了整个外卖评价分类模型的训练流程,图2展现了整个外卖评价分类模型的架构,其中,原始模型代表上文提到过的F-Net,原始模型子网络和梯度反转层共同构成A-Net。图3则说明了模型训练和更新时段的流向,黑色箭头代表预测过程,蓝色箭头代表更新模型参数的过程。由于本发明涉及多个模型,所以简单在CNN上阐述模型的具体实施步骤。
在具体训练之前,需要获取外卖平台的订单评价数据D={(xi,yi)|i∈0,1,…,N-1},其中N代表训练样本个数,xi代表一个中文语料训练样本,yi代表对应单个样本的标签,其值为0或1。
训练CNN模型之前,需要定义好模型的参数。本发明在解决外卖评价文本分类这一问题中,F-Net中使用了三种不同尺寸的卷积核,每个卷积核有100中不同初始化的参数,A-Net中使用了一种尺寸的卷积核,每个卷积核也是有100中不同初始化的参数。同时,中文字样的评价数据不能直接输入CNN网络中,需要为中文数据定义好预处理函数。由于本发明并不涉及预处理的修改,因此直接调用通用接口处理中文数据即可。
模型各部分详细执行步骤如下:
1.数据预处理
在训练数据集中不放回的抽取训练数据xi,并使用通用函数Tokenizer和预训练的嵌入层Embedding处理中文短句,这个过程会将单个字或词语映射成整数,再将对应的整数映射成E维的向量。同时为了对其模型的需要,需要对每个句子进行截断和扩充处理。当句子超出某个长度L,就截断超出L的信息,如果整个句子长度小于L,则全部填充0至长度L。经过了Tokenizer和Embedding处理xi形如:
Xi=[e0,e1,e3,…,eL-1]
其中,Xi是经过处理的矩阵,e0代表一个1×E的向量。这种Tokenizer和Embedding的编码方式通过大量无标注文本训练出更具有表达能力的特征向量,让文本编码更加便捷和高效。
2.定义网络和初始化
a)初始化卷积神经网络
根据上文提到过的参数设定,在F-Net中定义三个卷积核,而在A-Net中定义一个卷积核。与此同时,A-Net还需要在卷积网络层上堆叠一个梯度反转层用于修改特征向量的梯度推导方程。在卷积网络中,池化层是和卷积核配对的,在外卖评价分类中,本发明使用最大池化来获取卷积核提取的最显著的特征。
b)初始化Bert类网络
由于Bert类网络已经具有开源的预训练模型,且预训练模型的参数是无法更改的,因此只需直接导入预训练模型,不需要对原始模型做出更改。在Bert类模型中,由于原始模型F-Net具有众多的Encoder,而且每个Encoder的分类能力都不一样,因此选取哪一层Encoder的副本作为A-Net的子网络也是本模型中超参数的一种。其中,模型的超参数表示人为为模型提前设定的参数,这类参数在模型训练过程中不会被模型所修改。(所以本发明需要人为的选定A-Net应当复制1至2个Encocder作为A-Net的子网络层。)
虽然不同模型的A-Net有区别,但每个模型的分类层相差无几,CNN中使用一层全连接层,Bert中使用两层全连接层作为分类层,其作用是通过概率大小和预测分类来通知推荐系统此条评价是有正向情感的还是有负向情感的。
3.执行网络的预测和向后传播
a)卷积神经网络
网络的预测需要经过一系列的矩阵运算得出文本数据的特征向量。在卷积神经网络中,文本卷积只有两层操作,第一层用嵌入层来获取文本的抽象表征Xi,第二层则是使用不同的卷积核和最大池化层来提取文本的特征向量,预测步骤公式化形式如下:
Figure BDA0003778062240000081
Figure BDA0003778062240000082
c=max{ci} (6)
其中,Xa是嵌入层的输出,W是卷积核权重,b是卷积核偏移量,h是卷积核大小,max则是最大值池化操作。其中,由公式(4)得出来的
Figure BDA0003778062240000091
是一个单独的数值;公式(4)产生的ci则是众多
Figure BDA0003778062240000092
组成的一个1×(L-h)特征向量;公式(6)则用作提取ci中数值最大的元素。值得注意的是每个不同尺寸的卷积核都会初始化100种不同参数的卷积核。即一种尺寸的卷积核会提取100种不同的c,最后将100个不同的c合并成一个1×100的向量,则为一个尺寸卷积核下的特征向量。由此可知,F-Net的三种不同尺寸的卷积核会得到1×300的特征向量vf,而A-Net的一种尺寸的卷积核会得到1×100的特征向量va
然后,通过公式(3)将va投影到对应位置的vf中得到
Figure BDA0003778062240000093
并将
Figure BDA0003778062240000094
和vf合并成一个1×400的向量
Figure BDA0003778062240000095
再将
Figure BDA0003778062240000096
作为分类层的输入,得出分类层最后的1×2的分类向量Yf,得出模型的预测。
b)Transformer类网络
基本的Bert类模型是由12层Encoder堆叠而成。在本发明的Bert类模型中,F-Net具有12层Encoder,但A-Net只有1或2层Encoder,因为A-Net的Encoder少于F-Net,因此需要人为的来选择复制F-Net中第几层的Encoder作为A-Net中的Encoder,且会人为的选择A-Net的输入来自哪一层F-Net中的Encoder。在本发明中,A-Net的Encoder是从F-Net的第12个Encoder复制而来的,且A-Net的输入是F-Net第11层Encoder的输出。
鉴于Bert类模型具有成熟的三方库和预训练模型,因此本发明的Bert类模型的初始化都会导入预训练模型。其中,预训练模型是Bert类模型在庞大的无监督预料中学习而来的,具有较高的泛化能力。在外卖评价的语料中,只需要后续微调Bert类模型即可获得较高的准确率。其中,Bert类模型的微调相当于模型的训练,这是由于Bert类模型在预训练过程就经历了相当长时间的模型训练,使得预训练模型在导入在特定的,如外卖语料环境下时,只需要训练很少的轮数就可以达到满意的效果。
因为在训练过程中会导入预训练的模型,因此模型的大小和参数都是被固定的,比如Embedding层的参数E被固定成768,Encoder的输出的维度也被固定成768。所以Xi在经过Embedding和每个Encoder的输出都是形如:
hi=[e0,e1,e3,…,eL-1]
其中,{ej|j∈0,1,…,L-1}是1×768维度的向量,{hi|i∈1,2,…,12}是每一层Encoder的输出,而每一层Encoder的输入都是上一层Encoder的输出,可以看出Xi在经过12层Encoder后会生成一个L×768的特征向量vf;同样的,在A-Net中也会生成一个L×768的特征向量va。但在特征投影层中,由于Bert类模型有特殊的分类特征,也就是e0,所以本发明在特征投影层中的操作只会针对vf和va的e0。随后将投影后的特征
Figure BDA0003778062240000101
和h12的e0合并起来变成1×1536的特征向量
Figure BDA0003778062240000102
最后将
Figure BDA0003778062240000103
送入分类层得到Bert类模型的分类结果Yf
反向传播过程:通过模型得出的Yf和交叉熵计算模型的Loss,在通过Loss更新整个模型的参数,在更新过程中,A-Net所使用的学习率会比F-Net的学习率大,虽然会在同一时间更新,但使用的是不同的更新策略,F-Net使用Adam优化策略,而A-Net使用SGD优化策略。值得注意的是,因为之前已经介绍到GRL会修改向量的梯度推导公式,因此在反向传播的时候不需要考虑是否要进行额外的操作,只需要调用第三方库的方法即可。
对外卖平台的实时评价进行预测:
当训练完所有的训练数据和保存模型后,模型就可以部署在服务器上执行预测过程。当用户写入一条评论后,数据会发送至外卖平台服务器,且调用对应的预测接口后,训练好的模型就会读取一条文本数据,例如:“相当好吃的香锅,分量够足,味道也没的说。”随后,模型会调用内部的Tokenizer函数对中文预料做处理,使之映射成L维的整数向量,随后将向量送入特征提取层,也就是CNN模块和Bert模块获得该句子的特征向量,最后将特征向量送入分类层得到模型预测该句子的概率。例如模型预测该句子有0.98的概率为正向评价,那么结果为正,反之为负。
4.评估结果
当模型训练完所有的训练数据后,会保存模型的权重。在评估阶段,模型会导入保存好的权重,并读取测试数据,对测试数据进行分类,这个过程将不会再执行向后传播。在预测完所有测试数据之后,观察模型在测试数据上的准确度,以此来评估模型的预测能力。其中,准确度计算方法是出自机器学习的评估方法,也是分类模型中普遍适用的计算方法,它计算了模型正确预验证集中样本个数占验证集总体样本个数的比重。除了使用标准的准确度来度量模型的预测能力之外,为了更好的表达本发明的效果,本发明抽象了提取了预测阶段模型对某句英文的处理过程,并和原始模型作对比,分别输出了两个模型对计算同一个句子中词与词之间注意力的结果。从图5可以看出,在分类正确的情况下,本发明设计的模型能够更好的关注句中具有消极情感的词语(“superficial”)。而原始模型中词与词之间的注意力变得分散凌乱,没有很好关注到文本的重点。
注意力热图的横纵坐标都是一句话中的词,其中颜色的亮暗代表词对词的关注程度,越亮代表词之间的关联度越强。
从图5中可看出,模型更关注“superficial”符合普通人分析文本情感的逻辑,而图6是原始模型最后一层Encoder提取的注意力分析图,从图中可看出词与词之间的注意力都被分散了,没有很好地学习到词之间的联系。
经过实践得知,本发明具有提高模型泛化能力的效果,提高了原有模型的分类能力。

Claims (3)

1.一种基于深度学习和梯度反转的外卖评价文本分类方法,其特征在于,包括以下步骤:
S1外卖评价数据获取和预处理:
获取外卖平台的订单评价数据D={(xi,yi)|i∈0,1,…,N-1},其中N代表训练样本个数,xi代表一个中文语料训练样本,yi代表对应单个样本的标签,其值为0或1;
在训练数据集中不放回的抽取训练数据xi,并使用通用函数Tokenizer和预训练的嵌入层Embedding处理中文短句,将单个字或词语映射成整数,再将对应的整数映射成E维的向量;
对每个句子进行截断和扩充处理:当句子超出某个长度L,就截断超出L的信息,如果整个句子长度小于L,则全部填充0至长度L;
经过了Tokenizer和Embedding处理后,得到:
Xi=[e0,e1,e3,…,eL-1]
其中,Xi是经过处理的矩阵,e0代表一个1×E的向量;
S2构建外卖评价文本分类网络模型
S2-1构建并初始化卷积神经网络
在F-Net卷积网络中定义三个卷积核,在A-Net卷积网络中定义一个卷积核;
A-Net卷积网络还需要在卷积网络层上堆叠一个梯度反转层用于修改特征向量的梯度推导方程;
在F-Net卷积网络与A-Net卷积网络中,池化层是和卷积核配对的,
使用最大池化来获取卷积核提取的最显著的特征用于外卖评价分类;
在卷积神经网络中,文本卷积有两层,第一层用嵌入层来获取文本的抽象表征Xi,第二层使用不同尺寸的卷积核和最大池化层来提取文本的特征向量,预测步骤公式化形式如下:
Figure FDA0003778062230000011
Figure FDA0003778062230000012
c=max{ci} (6)
其中,Xi是嵌入层的输出,W是卷积核权重,b是卷积核偏移量,h是卷积核大小,max则是最大值池化操作;
由公式(4)得出来的
Figure FDA0003778062230000013
是一个单独的数值;公式(4)产生的ci则是众多
Figure FDA0003778062230000014
组成的一个1×(L-h)特征向量;公式(6)用于提取ci中数值最大的元素c;
一种尺寸的卷积核会提取100种不同的c,最后将100个不同的c合并成一个1×100的向量,成为一个尺寸卷积核下的特征向量;
F-Net的三种不同尺寸的卷积核会得到1×300的特征向量vf,而A-Net的一种尺寸的卷积核会得到1×100的特征向量va
通过公式(3)将va投影到对应位置的vf中得到
Figure FDA0003778062230000021
并将
Figure FDA0003778062230000022
和vf合并成一个1×400的向量
Figure FDA0003778062230000023
Figure FDA0003778062230000024
作为分类层的输入,得出分类层最后的1×2的分类向量Yf,得出模型的预测结果;
S2-2构建并初始化Bert类网络
选用Bert类网络中的Bert模型和RoBERTA模型;
选取一层Encoder的副本作为A-Net的子网络;;
使用两层全连接层作为模型的分类层,通过概率大小和预测分类来通知推荐系统此条评价有正向情感的还是有负向情感;
F-Net具有12层Encoder,A-Net的Encoder是从F-Net的第12个Encoder复制而来的,且A-Net的输入是F-Net第11层Encoder的输出;
Bert类模型的初始化需要导入预训练模型;其中,预训练模型是Bert类模型在无监督外卖评价语料中学习而来的Bert类模型的Encoder个数、Encoder输出维度、Embedding输出维度都是被固定的,
其中,Embedding层的参数E为768,Encoder的输出的维度为768
Xi在经过Embedding和每个Encoder的输出均为如下结构:
hi=[e0,e1,e3,...,eL-1]
其中,{ej|j∈0,1,…,L-1}是1×768维度的向量,{hi|i∈1,2,…,12}是每一层Encoder的输出,而每一层Encoder的输入都是上一层Encoder的输出,Xi在经过12层Encoder后生成一个L×768的特征向量vf;在A-Net中生成一个L×768的特征向量va在特征投影层中的操作只针对vf和va的e0;将投影后的特征
Figure FDA0003778062230000025
和h12的e0合并起来变成1×1536的特征向量
Figure FDA0003778062230000026
最后将
Figure FDA0003778062230000027
送入分类层得到Bert类模型的分类结果Yf
S3反向传播
将S2-2中得出的Yf和交叉熵计算模型的Loss,通过Loss更新整个Embedding层的参数、卷积核参数、Encoder的参数和分类层的参数,在更新过程中,A-Net所使用的学习率比F-Net的学习率大;F-Net使用Adam优化策略,A-Net使用SGD优化策略;
S4外卖评价文本分类
将训练完成的模型部署在服务器上执行预测过程;当用户写入一条评论后,数据会发送至外卖平台服务器,且调用对应的预测接口后,训练好的模型就会读取一条文本数据;模型会调用内部的Tokenizer函数对中文预料做处理,使之映射成L维的整数向量,随后将向量送入特征提取层卷积神经网络和Bert类网络获得该句子的特征向量,最后将特征向量送入分类层得到模型预测该句子为正向评价或负向评价的概率。
2.如权利要求1所述的一种基于深度学习和梯度反转的外卖评价文本分类方法,其特征在于,所述步骤2-2中,通过概率大小和预测分类来通知推荐系统此条评价有正向情感还是有负向情感的方法如下;
在所述Bert模型和RoBERTA模型计算出的1×2的向量中,下标0的数值代表模型预测此条外卖评价属于正向情感的概率值,下标1的数值表明此条外卖评价属于负向情感的概率值;上述两种概率值的和为1,当下标0的数值超过0.5时,则认为模型预测此条外卖评价的情感是正向情感,反之则为负向情感。
3.如权利要求2所述的一种基于深度学习和梯度反转的外卖评价文本分类方法,其特征在于,在所述S4步骤之后,还包括以下步骤:
S5外卖评价文本分类效果评估:
读取测试数据,使用外卖评价文本分类网络模型对测试数据进行分类,对测试数据的分类过程不执行向后传播
对读取的所有测试数据进行分类,使用标准准确度计算方法,得到模型在测试数据上的准确度,以此来评估模型的预测能力。
CN202210921888.7A 2022-08-02 2022-08-02 一种基于深度学习和梯度反转的外卖评价文本分类方法 Pending CN115221326A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210921888.7A CN115221326A (zh) 2022-08-02 2022-08-02 一种基于深度学习和梯度反转的外卖评价文本分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210921888.7A CN115221326A (zh) 2022-08-02 2022-08-02 一种基于深度学习和梯度反转的外卖评价文本分类方法

Publications (1)

Publication Number Publication Date
CN115221326A true CN115221326A (zh) 2022-10-21

Family

ID=83615570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210921888.7A Pending CN115221326A (zh) 2022-08-02 2022-08-02 一种基于深度学习和梯度反转的外卖评价文本分类方法

Country Status (1)

Country Link
CN (1) CN115221326A (zh)

Similar Documents

Publication Publication Date Title
CN107516110B (zh) 一种基于集成卷积编码的医疗问答语义聚类方法
CN108363753B (zh) 评论文本情感分类模型训练与情感分类方法、装置及设备
CN109544524B (zh) 一种基于注意力机制的多属性图像美学评价系统
CN109492662B (zh) 一种基于对抗自编码器模型的零样本图像分类方法
CN108416065B (zh) 基于层级神经网络的图像-句子描述生成系统及方法
CN105975573B (zh) 一种基于knn的文本分类方法
CN111242841B (zh) 一种基于语义分割和深度学习的图片背景风格迁移方法
CN108563755A (zh) 一种基于双向循环神经网络的个性化推荐系统及方法
CN109614611B (zh) 一种融合生成非对抗网络与卷积神经网络的情感分析方法
CN113806564B (zh) 多模态信息性推文检测方法及系统
CN113657380A (zh) 融合多模态注意力机制的图像美学质量评价方法
CN111008570B (zh) 一种基于压缩-激励伪三维网络的视频理解方法
CN113409157B (zh) 一种跨社交网络用户对齐方法以及装置
WO2022063076A1 (zh) 对抗样本的识别方法及装置
CN117934463A (zh) 一种基于光学测试的肉牛胴体质量评级方法
Qayyum et al. Ios mobile application for food and location image prediction using convolutional neural networks
CN113627550A (zh) 一种基于多模态融合的图文情感分析方法
CN113297387A (zh) 一种基于nkd-gnn的图文不匹配新闻检测方法
WO2020216286A1 (zh) 教师风格预测模型的训练方法及计算机存储介质
CN115221326A (zh) 一种基于深度学习和梯度反转的外卖评价文本分类方法
CN115908923A (zh) 基于注意力引导3d神经网络的脑部磁共振图像分类系统
CN115457015A (zh) 一种基于视觉交互感知双流网络的图像无参考质量评估方法及装置
CN111078854B (zh) 问答预测模型的训练方法及装置、问答预测方法及装置
JP2019133563A (ja) 情報処理装置および情報処理システム
CN109800804B (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