CN113297374B - 一种基于bert和字词特征融合的文本分类方法 - Google Patents
一种基于bert和字词特征融合的文本分类方法 Download PDFInfo
- Publication number
- CN113297374B CN113297374B CN202110473890.8A CN202110473890A CN113297374B CN 113297374 B CN113297374 B CN 113297374B CN 202110473890 A CN202110473890 A CN 202110473890A CN 113297374 B CN113297374 B CN 113297374B
- Authority
- CN
- China
- Prior art keywords
- text
- word
- bert
- vector
- character
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000004927 fusion Effects 0.000 title claims abstract description 7
- 239000013598 vector Substances 0.000 claims abstract description 131
- 238000011176 pooling Methods 0.000 claims abstract description 47
- 230000011218 segmentation Effects 0.000 claims abstract description 27
- 238000007781 pre-processing Methods 0.000 claims abstract description 8
- 239000011159 matrix material Substances 0.000 claims description 41
- 230000002457 bidirectional effect Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000000295 complement effect Effects 0.000 claims description 3
- 229940088594 vitamin Drugs 0.000 claims description 3
- 229930003231 vitamin Natural products 0.000 claims description 3
- 235000013343 vitamin Nutrition 0.000 claims description 3
- 239000011782 vitamin Substances 0.000 claims description 3
- 150000003722 vitamin derivatives Chemical class 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于BERT和字词特征融合的文本分类方法、文本分类平台及计算机可读存储介质。本发明的文本分类方法的步骤主要包括预处理、字符向量编码、分词、词向量编码、词向量再编码、池化、全连接和分类。本发明通过BERT获取了每个字符对应的向量,该向量中包含了文本全局的字符信息;通过GRU对每个词中包含的字符进行再编码,在字向量的基础上融入局部的词汇特征,最终每个词的词向量中既包含了全局的字符信息,又包含了局部的词汇信息,具有更丰富的表达能力。本发明的方法基于BERT将字符特征和词汇特征结合,丰富了文本的语义表示,进一步提升文本分类的准确率。
Description
技术领域
本发明属于自然语言处理技术领域,特别是一种基于BERT和字词特征融合的文本分类方法、文本分类平台及计算机可读存储介质。
背景技术
目前文本分类通常采用基于深度学习的方法,通过神经网络自动捕获文本特征,避免传统机器学习中繁琐的特征工程。随着BERT的出现,越来越多的人将BERT替代word2vec应用于文本分类中。
BERT是一个预训练语言模型,基础版的BERT包含12层,每一层包括多头自注意力和前馈计算两个子块,其整体结构如图1所示。BERT通过预训练,提前获取各个下游任务中低层的、共性的部分特征,然后再利用下游任务中各自的样本数据来训练各自的模型,可以极大地加快收敛速度。如图2所示, BERT的输入是由三个向量相加得到的,分别为每个字符对应的字符编码、位置编码和段编码,字符编码通过单词表来实现,表示字符对应的语义信息,位置编码则代表句子中各个单词的相对位置。由于BERT使用自注意力机制,没有像RNN那样对文本进行序列建模,因此需要使用位置编码来获取他们之间的相对位置。
经过嵌入编码(embedding),每个字符得到了一个初始向量,然后进行多头自注意力计算。在计算多头注意力时,每个字符都会计算该字符和其他字符之间的联系,得到该字符在所有字符上的注意力分布,并加权求和。注意力计算公式如下:
经过12层的计算,BERT最终为每个字符生成了一个768维的向量。
对于特定领域,词汇往往包含了比字符更丰富的语义信息。然而BERT的输入以字符为最小单位,忽略了文本中的词汇特征。
发明内容
本发明的目的在于基于BERT将字符特征和词汇特征结合,丰富文本的语义表示,进一步提升文本分类的准确率。
为实现上述目的,本发明提供了一种基于BERT和字词特征融合的文本分类方法,包括:
对待分类文本进行预处理,获得长度和字符归一化的第一文本的步骤,在该步骤中,先是去除文本中不能进行后续处理的特殊字符;然后进行全半角转换,将文本的全角字符转换为相应的半角字符;最后统一文本长度,将待分类文本的长度与文本长度阈值LT比较,如果超过了,则去掉待分类文本超过文本长度阈值的部分,如果不足,则在待分类文本的末尾添加占位字符补齐;
基于BERT预训练语言模型对所述第一文本进行字符向量编码的步骤,在该步骤中,将所述第一文本按字符切分,然后将长度为LT的字符序列输入到 BERT预训练语言模型中进行维度为NBERT的BERT编码,为每个字符生成一个 1×NBERT维的字符向量,LT个字符经过BERT编码后得到LT个1×NBERT维的字符向量,它们组成的LT×NBERT维的矩阵,记为第一矩阵;
基于jieba分词库对所述第一文本进行分词的步骤,在该步骤中,使用 jieba分词库对所述第一文本进行分词,得到所述第一文本的词序列Ci, i=1,2,…,m,m为词序列中词的个数;
根据得到的字符向量和分词结果拼接得到词向量编码的步骤,设词Ci中有ni个字符,在该步骤中,将词Ci的ni个字符对应的字符向量按字符在词中的顺序进行拼接,得到每个词Ci的ni×NBERT维的第一词向量编码Ccode1-i;
基于双向GRU网络对第一词向量编码Ccode1-i进行词向量再编码的步骤,在该步骤中,将词Ci的c×NBERT维的第一词向量编码Ccode1-i输入到双向GRU网络中,针对每个词Ci的c×NBERT维的第一词向量编码Ccode1-i,使用双向GRU网络进行再编码,双向GRU网络中隐藏NGRU个节点,再编码后双向GRU网络输出该词Ci的1×2NGRU维的第二词向量编码Ccode2-i,所述第一文本的个数为m的词序列 Ci,经双向GRU网络再编码后得到所述第一文本对应的m个1×2NGRU维第二词向量编码Ccode2-i,它们组成的m×2NGRU维矩阵,记为第二矩阵;
对第二词向量编码Ccode2-i进行池化的步骤,在该步骤中,对第二矩阵中的每个1×2NGRU维的第二词向量编码Ccode2-i按行分别进行最大池化和平均池化,得到m×1维的最大池化矩阵和m×1维的平均池化矩阵;
将最大池化矩阵和平均池化矩阵全连接得到待分类文本的全连接特征向量的步骤,在该步骤中,将m×1维的最大池化矩阵和m×1维的平均池化矩阵进行拼接,得到2m×1维向量,即为待分类文本的特征向量,然后将该特征向量进行全连接,得到待分类文本的全连接特征向量,使待分类文本的全连接特征向量的维度和文本类别数量相同;
根据待分类文本的全连接特征向量进行softmax分类的步骤,在该步骤中,用softmax函数对待分类文本的全连接特征向量进行数值处理,计算对待分类文本的全连接特征向量每一个元素Vi的Softmax函数值Si,其中,
Vi是第i个元素的输出值,其中1≤i≤C;总的文本类别个数是C;Si表示的是第i个元素的指数与所有元素指数之和的比值,{Si,1≤i≤C}中最大值对应的文本类别,即为待分类文本的文本类别。
进一步的,在所述基于jieba分词库对所述第一文本进行分词的步骤中,针对不同领域的文本,添加去除停用词的领域词典,得到每条文本的词序列。
进一步的,在所述基于jieba分词库对所述第一文本进行分词的步骤中,还添加自定义词典,确保领域专有词汇不会被切开。
进一步的,所述文本长度阈值LT为256个字符。
进一步的,所述BERT编码的NBERT为768。
进一步的,所述GRU网络中隐藏的节点数NGRU为128个。
本发明还提供了一种文本分类平台,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6中任一项所述的文本分类方法。
本发明还提供了一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的文本分类方法。
有益效果
本发明通过BERT获取了每个字符对应的向量,该向量中包含了文本全局的字符信息;通过GRU对每个词中包含的字符进行再编码,在字向量的基础上融入局部的词汇特征,最终每个词的词向量中既包含了全局的字符信息,又包含了局部的词汇信息,具有更丰富的表达能力。本发明的方法基于BERT将字符特征和词汇特征结合,丰富了文本的语义表示,进一步提升文本分类的准确率。
附图说明
图1为基础版的BERT结构示意图。
图2为BERT的嵌入编码原理图。
图3为本发明文本分类方法的流程图。
图4为本发明实施例1的双向GRU网络的结构示意图。
图5为本发明实施例1的GRU的网络结构原理图。
图6为本发明实施例1的文本预处理步骤流程图。
图7为池化原理示意图。
图8为本发明实施例1的全连接原理示意图。
图9为本发明实施例1的处理过程示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行详细的说明。
本发明公开的基于BERT和字词特征融合的文本分类方法,将字符特征和词汇特征结合,丰富文本的语义表示,进一步提升了文本分类的准确率。
本发明的文本分类方法的步骤主要包括预处理、字符向量编码、分词、词向量编码、词向量再编码、池化、全连接和分类,参照图3,具体处理过程如下:
S1.对待分类文本进行预处理,获得长度和字符归一化的第一文本的步骤,
文本通常包含一些特殊字符,为了便于模型进行统一处理,需要去除特殊字符,同时进行全半角转换,即将文本中的全角全部转换成半角。由于不同文本的长度都不一样,还需要统一输入文本的长度。对于过长的文本,去掉超出最大长度的部分,对于不足的文本,添加占位字符符号补齐。因此,在将文本输入到模型前,需要对文本进行预处理,进行规范化。
在该步骤中,先是去除文本中不能进行后续处理的特殊字符;然后进行全半角转换,将文本的全角字符转换为相应的半角字符;最后统一文本长度,将待分类文本的长度与文本长度阈值LT比较,如果超过了,则去掉待分类文本超过文本长度阈值的部分,如果不足,则在待分类文本的末尾添加占位字符补齐。
S2.基于BERT预训练语言模型对所述第一文本进行字符向量编码的步骤,
在该步骤中,将所述第一文本按字符切分,然后将长度为LT的字符序列输入到BERT预训练语言模型中进行维度为NBERT的BERT编码,为每个字符生成一个1×NBERT维的字符向量,LT个字符经过BERT编码后得到LT个1×NBERT维的字符向量,它们组成的LT×NBERT维的矩阵,记为第一矩阵。本阶段的输入是字符序列,输出是字符向量。
S3.基于jieba分词库对所述第一文本进行分词的步骤,
在该步骤中,使用jieba分词库对所述第一文本进行分词,得到所述第一文本的词序列Ci,i=1,2,…,m,m为词序列中词的个数。jieba分词是一个公开的分词工具。针对不同领域的文本,还可以添加领域词典,在去除停用词之后,得到每条文本的词序列。通过添加自定义词典,确保领域专有词汇不会被切开。
S4.根据得到的字符向量和分词结果拼接得到词向量编码的步骤,
设词Ci中有ni个字符,将词Ci的ni个字符对应的字符向量按字符在词中的顺序进行拼接,得到词Ci的ni×NBERT维的第一词向量编码Ccode1-i。
对于文本中的每个词,通常由多个字符组成,也存在单字符构成的词。通过BERT获取了每个字符对应的向量,该向量中包含了文本全局的字符信息;通过GRU对每个词中包含的字符进行再编码,在字向量的基础上融入局部的词汇特征,最终每个词的词向量中既包含了全局的字符信息,又包含了局部的词汇信息,具有更丰富的表达能力。
S5.基于双向GRU网络对第一词向量编码Ccode1-i进行词向量再编码的步骤,
在该步骤中,将词Ci的c×NBERT维的第一词向量编码Ccode1-i输入到双向GRU 网络中,针对每个词Ci的c×NBERT维的第一词向量编码Ccode1-i,使用双向GRU网络进行再编码,双向GRU网络中隐藏NGRU个节点,再编码后双向GRU网络输出该词Ci的1×2NGRU维的第二词向量编码Ccode2-i,所述第一文本的个数为m的词序列Ci,经双向GRU网络再编码后得到所述第一文本对应的m个1×2NGRU维第二词向量编码Ccode2-i,它们组成的m×2NGRU维矩阵,记为第二矩阵。
通过GRU对每个词中包含的字符进行再编码,在字向量的基础上融入局部的词汇特征,最终每个词的词向量中既包含了全局的字符信息,又包含了局部的词汇信息,具有更丰富的表达能力。
S6.对第二词向量编码Ccode2-i进行池化的步骤,
经过以上步骤,将每条文本表示成了一个词序列,其中每个词都对应一个同时融入了字特征和词特征的向量。将该文本中所有词的向量组成一个二维矩阵,分别进行最大池化和平均池化。池化是对矩阵降维和特征提取的过程,池化的作用是使得特征减少,参数减少,同时能保持某种不变性(旋转、平移、伸缩等)。如图7所示,池化核在词向量组成的二维矩阵上滑动,平均池化取窗口内的平均值作为池化结果,而最大池化则取窗口内的最大值作为池化结果。通过两种不同的池化操作,分别将词向量组成的矩阵转换成了两个特征向量。
具体来讲,在该步骤中,对第二矩阵中的每个1×2NGRU维的第二词向量编码Ccode2-i按行分别进行最大池化和平均池化,得到m×1维的最大池化矩阵和 m×1维的平均池化矩阵。
S7.将最大池化矩阵和平均池化矩阵全连接得到待分类文本的全连接特征向量的步骤,
将两种池化得到的向量拼接起来,即得到该文本最终的特征向量。该特征向量包含了丰富的语义信息,可以直接用来分类。向量拼接是直接将两个特征向量并排得到一个新的向量,两个向量各自的数据和位置都不用变。假设有P 个文本类别,全连接层设置P个神经元,也就是P个1维参数。将上一层和全连接层交叉相乘得到P维向量,就是全连接层的输出。
在该步骤中,将m×1维的最大池化矩阵和m×1维的平均池化矩阵进行拼接,得到2m×1维向量,即为待分类文本的特征向量,然后将该特征向量进行全连接,得到待分类文本的全连接特征向量,使待分类文本的全连接特征向量的维度和文本类别数量相同。
S8.根据待分类文本的全连接特征向量进行softmax分类的步骤,
Softmax在机器学习和深度学习中有着非常广泛的应用,分类器最后的输出单元需要用softmax进行数值处理。Softmax将多分类器的输出值转化为相对概率。最大概率对应的索引即为最终输出的类别。
在该步骤中,用softmax函数对待分类文本的全连接特征向量进行数值处理,计算对待分类文本的全连接特征向量每一个元素Vi的Softmax函数值 Si,其中,
Vi是待分类文本的全连接特征向量的第i个元素,1≤i≤C,总的文本类别个数是C,Si表示的是第i个元素的指数与所有元素指数之和的比值, {Si,1≤i≤C}中最大值对应的文本类别,即为待分类文本的文本类别。
实施例1
S1.预处理
预处理时,特殊字符定义为按照Unicode编码方案在[\u4e00-\u9fa5]区间范围外的字符。文本长度阈值为256字符,对个字符于不足的文本,在文本末尾,使用javascript的pad方法在添加占位符号补全,可以在头部补全,也可以在尾部补全。本实施例的文本预处理流程如附图4所示。
本阶段的输入为不定长的文本,输出为256字符长度的字符序列。文本中的每个字符组成的序列为字符序列,如:文本“今天天气真好啊”的字符序列为‘今’‘天’‘天’‘气’‘真’‘好’‘啊’。
S2.基于Bert的字向量编码
将预处理之后的文本按字符切分,然后将字符序列输入到基础版的BERT 中,经过embedding,再依次进行12层的自注意力计算和前馈计算,最终为每个字符生成一个768维的向量。
对于每个字符经过BERT编码后得到一个768维的向量,这个向量就是字符向量。因此长度为256的字符序列编码后输出为256个768维的向量,即 256*768的矩阵。
S3.分词
使用jieba对预处理之后的文本进行分词,如输入文本是“北京天气真好啊”,分词后得到的词序列是“北京”、“天气”、“真好”、“啊”。
S4.拼接得到词向量编码
在该步骤中,针对S2和S3的处理结果,得到每个词向量的编码。词向量的编码是字符向量编码的拼接,即单词包括c个字符,每个字符为1*768向量,则单词编码是c*768矩阵。
S5.基于GRU网络的词向量再编码
将词向量编码输入到双向GRU网络中,如图5所示,假设分词数量为m,双向GRU网络中隐藏128个节点,则本阶段的输出张量为m×256维。因为每个方向的GRU网络输出128维,双向GRU网络输出拼接在一起得到256维。
GRU网络是循环神经网络的一种,其每输入一个字符向量,可以计算得到一个神经元的状态,对于每个神经元的状态称为一个时刻。GRU网络中只有两个门,分别是更新门zt和重置门rt;更新门用于控制前一时刻的状态信息被带入到状态中的程度,其值越大说明前一时刻的状态信息带入越多,重置门控制前一状态有多少信息被写入到当前的候选集上,重置们越小,前一状态的信息被写入的越少。GRU的网络结构如图6所示。
GRU的前向传播公式如下:
rt=σ(wr·[ht-1,xt])
zt=σ(wz·[ht-1,xt])
yt=σ(wo·ht)
其中;σ(·)为sigmoid激活函数,σ(·)的作用是使门输出的数值趋向于0或者1;wr和wz分别是重置门和更新门的权重;ht-1是上一时刻隐藏状态;是当前时刻候选隐藏状态;/>是候选隐藏状态的权重;ht是当前适合的隐藏状态;wo是隐藏状态的权重;xt是当前时刻网络输入;[]表示两个向量相连;·表示卷积操作;*表示矩阵的乘积。
S6.池化
图7所示给出了最大池化和平均池化的原理示意图,图中表示了用2×2的池化核对4×4的矩阵进行了池化。在本实施例中,将m×256的二维矩阵按行对 256个数值取最大值,保留其相对位置不变,得到的m×1维特征向量即为最大池化结果。同理对每列的256个数值求平均值,得到的m×1维的特征向量即为平均池化结果。即采用1×256的的池化核进行池化。
S7.全连接
先将两种池化得到的向量拼接起来,再将拼接后的特征向量进行全连接,使全连接后的向量的维度和文本类别数量相同。本实施例全连接层的处理流程如图8所示。全连接层有3个神经元,每个神经元是3维向量,全连接得到的3维输出分别为:[x1,x2,x3]*a1,[x1,x2,x3]*a2,[x1,x2,x3]*a3,a1、 a2和a3是权值,由训练数据训练得到。
S8.Softmax分类
根据Softmax的定义公式计算函数值Si,Si最大值对应的文本类别,即为待分类文本的文本类别。
整个处理过程的示意图如图9所示。
本发明第二实施方式涉及一种文本分类平台,包括:
至少一个处理器;以及,
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述文本分类方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本发明第三实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor) 执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括: U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为发明的优选实施例而已,并不用以限制本发明,凡在本发明的思想原则内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于BERT和字词特征融合的文本分类方法,其特征在于包括:
对待分类文本进行预处理,获得长度和字符归一化的第一文本的步骤,
在该步骤中,先是去除文本中不能进行后续处理的特殊字符;然后进行全半角转换,将文本的全角字符转换为相应的半角字符;最后统一文本长度,将待分类文本的长度与文本长度阈值LT比较,如果超过了,则去掉待分类文本超过文本长度阈值的部分,如果不足,则在待分类文本的末尾添加占位字符补齐;
基于BERT预训练语言模型对所述第一文本进行字符向量编码的步骤,
在该步骤中,将所述第一文本按字符切分,然后将长度为LT的字符序列输入到BERT预训练语言模型中进行维度为NBERT的BERT编码,为每个字符生成一个1×NBERT维的字符向量,LT个字符经过BERT编码后得到LT个1×NBERT维的字符向量,它们组成的LT×NBERT维的矩阵,记为第一矩阵;
基于jieba分词库对所述第一文本进行分词的步骤,
在该步骤中,使用jieba分词库对所述第一文本进行分词,得到所述第一文本的词序列Ci,i=1,2,…,m,m为词序列中词的个数;
根据得到的字符向量和分词结果拼接得到词向量编码的步骤,
设词Ci中有ni个字符,将词Ci的ni个字符对应的字符向量按字符在词中的顺序进行拼接,得到每个词Ci的ni×NBERT维的第一词向量编码Ccode1-i;
基于双向GRU网络对第一词向量编码Ccode1-i进行词向量再编码的步骤,
在该步骤中,将词Ci的ni×NBERT维的第一词向量编码Ccode1-i输入到双向GRU网络中,针对每个词Ci的ni×NBERT维的第一词向量编码Ccode1-i,使用双向GRU网络进行再编码,双向GRU网络中隐藏NGRU个节点,再编码后双向GRU网络输出该词Ci的1×2NGRU维的第二词向量编码Ccode2-i,所述第一文本的个数为m的词序列Ci,经双向GRU网络再编码后得到所述第一文本对应的m个1×2NGRU维第二词向量编码Ccode2-i,它们组成的m×2NGRU维矩阵,记为第二矩阵;
对第二词向量编码Ccode2-i进行池化的步骤,
在该步骤中,对第二矩阵中的每个1×2NGRU维的第二词向量编码Ccode2-i按行分别进行最大池化和平均池化,得到m×1维的最大池化矩阵和m×1维的平均池化矩阵;
将最大池化矩阵和平均池化矩阵全连接得到待分类文本的全连接特征向量的步骤,
在该步骤中,将m×1维的最大池化矩阵和m×1维的平均池化矩阵进行拼接,得到2m×1维向量,即为待分类文本的特征向量,然后将该特征向量进行全连接,得到待分类文本的全连接特征向量,使待分类文本的全连接特征向量的维度和文本类别数量相同;
根据待分类文本的全连接特征向量进行softmax分类的步骤,
在该步骤中,用softmax函数对待分类文本的全连接特征向量进行数值处理,计算对待分类文本的全连接特征向量每一个元素Vi的Softmax函数值Si,其中,
Vi是第i个元素的输出值,其中1≤i≤C;总的文本类别个数是C;Si表示的是第i个元素的指数与所有元素指数之和的比值,{Si,1≤i≤C}中最大值对应的文本类别,即为待分类文本的文本类别。
2.如权利要求1所述的文本分类方法,其特征在于,在所述基于jieba分词库对所述第一文本进行分词的步骤中,针对不同领域的文本,添加去除停用词的领域词典,得到每条文本的词序列。
3.如权利要求2所述的文本分类方法,其特征在于,在所述基于jieba分词库对所述第一文本进行分词的步骤中,还添加自定义词典,确保领域专有词汇不会被切开。
4.如权利要求1所述的文本分类方法,其特征在于,所述文本长度阈值LT为256。
5.如权利要求1所述的文本分类方法,其特征在于,所述BERT编码的NBERT为768。
6.如权利要求1所述的文本分类方法,其特征在于,所述GRU网络中隐藏的节点数NGRU为128。
7.一种文本分类装置,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6中任一项所述的文本分类方法。
8.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的文本分类方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110473890.8A CN113297374B (zh) | 2021-04-29 | 2021-04-29 | 一种基于bert和字词特征融合的文本分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110473890.8A CN113297374B (zh) | 2021-04-29 | 2021-04-29 | 一种基于bert和字词特征融合的文本分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113297374A CN113297374A (zh) | 2021-08-24 |
CN113297374B true CN113297374B (zh) | 2023-09-12 |
Family
ID=77320552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110473890.8A Active CN113297374B (zh) | 2021-04-29 | 2021-04-29 | 一种基于bert和字词特征融合的文本分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113297374B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115858772A (zh) * | 2022-01-13 | 2023-03-28 | 北京中关村科金技术有限公司 | 对文本进行分类的方法、装置以及存储介质 |
CN114154493B (zh) * | 2022-01-28 | 2022-06-28 | 北京芯盾时代科技有限公司 | 一种短信类别的识别方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110825845A (zh) * | 2019-10-23 | 2020-02-21 | 中南大学 | 一种基于字符与自注意力机制的层次文本分类方法及中文文本分类方法 |
CN110928997A (zh) * | 2019-12-04 | 2020-03-27 | 北京文思海辉金信软件有限公司 | 意图识别方法、装置、电子设备及可读存储介质 |
CN111325036A (zh) * | 2020-02-19 | 2020-06-23 | 毛彬 | 一种面向新兴技术预测的佐证事实的抽取方法及系统 |
CN111488455A (zh) * | 2020-04-03 | 2020-08-04 | 上海携旅信息技术有限公司 | 模型训练的方法、文本分类的方法、系统、设备及介质 |
CN112100389A (zh) * | 2020-11-18 | 2020-12-18 | 智者四海(北京)技术有限公司 | 一种长文本分类方法及装置 |
CN112115702A (zh) * | 2020-09-15 | 2020-12-22 | 北京明略昭辉科技有限公司 | 意图识别方法、装置、对话机器人和计算机可读存储介质 |
CN112417859A (zh) * | 2020-11-24 | 2021-02-26 | 北京明略昭辉科技有限公司 | 意图识别方法、系统、计算机设备及计算机可读存储介质 |
CN112528668A (zh) * | 2020-11-27 | 2021-03-19 | 湖北大学 | 深层情感语义识别方法、系统、介质、计算机设备及终端 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10868785B2 (en) * | 2019-04-29 | 2020-12-15 | Microsoft Technology Licensing, Llc | Purpose detection in communications using machine learning |
CN110619123B (zh) * | 2019-09-19 | 2021-01-26 | 电子科技大学 | 一种机器阅读理解方法 |
-
2021
- 2021-04-29 CN CN202110473890.8A patent/CN113297374B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110825845A (zh) * | 2019-10-23 | 2020-02-21 | 中南大学 | 一种基于字符与自注意力机制的层次文本分类方法及中文文本分类方法 |
CN110928997A (zh) * | 2019-12-04 | 2020-03-27 | 北京文思海辉金信软件有限公司 | 意图识别方法、装置、电子设备及可读存储介质 |
CN111325036A (zh) * | 2020-02-19 | 2020-06-23 | 毛彬 | 一种面向新兴技术预测的佐证事实的抽取方法及系统 |
CN111488455A (zh) * | 2020-04-03 | 2020-08-04 | 上海携旅信息技术有限公司 | 模型训练的方法、文本分类的方法、系统、设备及介质 |
CN112115702A (zh) * | 2020-09-15 | 2020-12-22 | 北京明略昭辉科技有限公司 | 意图识别方法、装置、对话机器人和计算机可读存储介质 |
CN112100389A (zh) * | 2020-11-18 | 2020-12-18 | 智者四海(北京)技术有限公司 | 一种长文本分类方法及装置 |
CN112417859A (zh) * | 2020-11-24 | 2021-02-26 | 北京明略昭辉科技有限公司 | 意图识别方法、系统、计算机设备及计算机可读存储介质 |
CN112528668A (zh) * | 2020-11-27 | 2021-03-19 | 湖北大学 | 深层情感语义识别方法、系统、介质、计算机设备及终端 |
Non-Patent Citations (1)
Title |
---|
基于特征表示及密集门控循环卷积网络的短文本分类研究;薛满意;《中国优秀硕士学位论文全文数据库信息科技辑》(第7期);第I138-1559页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113297374A (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107220506A (zh) | 基于深度卷积神经网络的乳腺癌风险评估分析系统 | |
CN112069831B (zh) | 基于bert模型和增强混合神经网络的不实信息检测方法 | |
CN109684449B (zh) | 一种基于注意力机制的自然语言语义表征方法 | |
CN111143563A (zh) | 基于bert与lstm及cnn融合的文本分类方法 | |
CN113297374B (zh) | 一种基于bert和字词特征融合的文本分类方法 | |
CN113128232B (zh) | 一种基于albert与多重词信息嵌入的命名实体识别方法 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN110276396B (zh) | 基于物体显著性和跨模态融合特征的图片描述生成方法 | |
CN112084336A (zh) | 一种高速公路突发事件的实体提取和事件分类方法及装置 | |
CN107463928A (zh) | 基于ocr和双向lstm的文字序列纠错算法、系统及其设备 | |
CN113705196A (zh) | 基于图神经网络的中文开放信息抽取方法和装置 | |
CN112070139A (zh) | 基于bert与改进lstm的文本分类方法 | |
CN111651973A (zh) | 一种基于句法感知的文本匹配方法 | |
CN112307179A (zh) | 文本匹配方法、装置、设备及存储介质 | |
CN114387537A (zh) | 一种基于描述文本的视频问答方法 | |
CN117034950A (zh) | 一种引入条件掩码对比学习的长句子嵌入方法和系统 | |
CN114692624A (zh) | 一种基于多任务迁移的信息抽取方法、装置及电子设备 | |
CN113743095A (zh) | 基于词格和相对位置嵌入的中文问题生成统一预训练方法 | |
CN109446334A (zh) | 一种实现英文文本分类的方法及相关设备 | |
CN112131879A (zh) | 一种关系抽取系统、方法和装置 | |
CN116662924A (zh) | 基于双通道与注意力机制的方面级多模态情感分析方法 | |
CN116628174A (zh) | 一种融合实体和关系信息的端到端关系抽取方法以及系统 | |
CN113434698B (zh) | 基于全层级注意力的关系抽取模型建立方法及其应用 | |
CN112733526B (zh) | 一种自动识别财税文件中征税对象的抽取方法 | |
CN113077785B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |