CN111143551A - 文本预处理方法、分类方法、装置及设备 - Google Patents
文本预处理方法、分类方法、装置及设备 Download PDFInfo
- Publication number
- CN111143551A CN111143551A CN201911228510.3A CN201911228510A CN111143551A CN 111143551 A CN111143551 A CN 111143551A CN 201911228510 A CN201911228510 A CN 201911228510A CN 111143551 A CN111143551 A CN 111143551A
- Authority
- CN
- China
- Prior art keywords
- text
- length
- characters
- processed
- specified
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000007781 pre-processing Methods 0.000 title claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 6
- 238000005520 cutting process Methods 0.000 claims description 4
- 238000003860 storage Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000009826 distribution Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 238000003892 spreading Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种文本预处理方法、分类方法、装置及设备。在获取待处理文本后,可以判断待处理文本的长度是否大于指定长度,如果大于,则以待处理文本中至少一个指定字符作为位置参考,从文本中截取出多个字符,并将截取的字符拼接,得到长度等于指定长度的新文本,然后用新文本对预设的语言模型进行训练。通过对长文本进行截断拼接,可以从长文本中截取表示核心内容的关键字符,拼接得到长度满足语言模型要求的新文本,再通过新文本对语言模型进行训练,使得长文本可以得到模型的支持,且通过模型对长文本中的核心内容的学习,提升了模型的性能,使得训练得到的语言模型在对文本进行分类时具有更高的准确率。
Description
技术领域
本说明书涉及人工智能技术领域,尤其涉及一种文本预处理方法、分类方法、装置及设备。
背景技术
文本分类应用在很多领域当中,举个例子,由于互联网的开放性及传播特性,一个小小的负面舆情很可能就是破坏企业形象的一把利剑,因此,网络舆情监测,获取网络舆情分析报告非常有必要,很多舆情分析平台可以从网络中获取各种评论、文章、新闻等,然后,对这些评论、文章等文本进分类,区分出负面评论和正面评论。由于网络的各种文本很多都是长文本,字数较多,而当前机器学习算法由于受机器内存和硬件配置的限制,无法对长文本的全部内容进行训练,以得到分类模型。因而,在将长文本输入到语言模型进行训练和分类时,往往需要对长文本进行预处理,使其满足语言模型的要求。相关技术中,采用长文本对语言模型进行训练时,要么人工维护成本较高,要么训练得到的语言模型性能还够理想,对文本进行分类时准确度较低。因而,有必要对长文本的预处理方法和文本分类方法加以改进,使其适用于一些效果较好的语言模型,并且提升分类的准确性。
发明内容
基于此,本说明书提供了一种文本预处理方法、分类方法、装置及设备。
根据本说明书实施例的第一方面,提供一种文本预处理方法,所述方法包括:
获取待处理文本;
判断所述待处理文本的长度是否大于指定长度;
如果大于,则以所述待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
将所截取的字符拼接成新文本,以通过所述新文本对预设的语言模型进行训练,其中,所述新文本的长度等于所述指定长度,所述指定长度基于所述语言模型支持的文本长度确定。
根据本说明书实施例的第二方面,提供一种文本分类方法,所述方法包括:
获取待分类文本;
判断所述待分类文本的长度是否大于指定长度;
如果大于,则以所述待分类文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
将所截取的字符拼接成新文本,其中,所述新文本的长度等于所述指定长度,所述指定长度基于预设的语言模型支持的文本长度确定;
通过所述语言模型对所述新文本分类。
根据本说明书实施例的第三方面,提供一种文本预处理装置,所述装置包括:
获取模块,用于获取待处理文本;
判断模块,用于判断所述待处理文本的长度是否大于指定长度;
截取模块,用于如果大于,则以所述待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
拼接模块,用于将所截取的字符拼接成新文本,以通过所述新文本对预设的语言模型进行训练,其中,所述新文本的长度等于所述指定长度,所述指定长度基于所述语言模型支持的文本长度确定。
根据本说明书实施例的第四方面,提供一种文本分类装置,所述装置包括:
获取模块,用于获取待分类文本;
判断模块,用于判断所述待分类文本的长度是否大于指定长度;
截取模块,如果大于,则以所述待分类文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
拼接模块,将所截取的字符拼接成新文本,其中,所述新文本的长度等于所述指定长度,所述指定长度基于预设的语言模型支持的文本长度确定;
分类模块,用于通过所述语言模型对所述新文本分类。
根据本说明书实施例的第五方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一实施例所述的文本预处理方法和文本分类方法。
应用本说明书实施例方案,在获取待处理文本后,可以判断待处理文本的长度是否大于指定长度,如果大于,则以待处理文本中至少一个指定字符作为参考,从文本中截取出多个字符,并将截取的字符拼接,得到长度等于指定长度的新文本,然后用新文本对预设的语言模型进行训练。通过对长文本进行截断拼接,可以从长文本中截取表示核心内容的关键字符,拼接得到长度满足语言模型要求的新文本,再通过新文本对语言模型进行训练,这样既解决了长文本字数不符合语言模型要求的问题,又可以从长文本中截取表示文本核心内容的关键字符对模型训练,从而提升了模型的性能,使得训练得到的语言模型在对文本进行分类时具有更高的准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1是本说明书一个实施例的一种文本预处理方法的流程图。
图2是本说明书一个实施例的一种文本进行截断拼接的示意图。
图3是本说明书一个实施例的一种文本分类方法流程图。
图4是本说明书一个实施例的一种文本长度分布统计表。
图5是本说明书一个实施例的一种文本预处理装置的逻辑结构框图。
图6是本说明书一个实施例的一种文本分类装置的逻辑结构框图。
图7是本说明书一个实施例的用于实施本说明书方法的计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
文本分类应用在很多领域当中,比如,由于互联网的开放性及传播特性,一个小小的负面舆情很可能就是破坏企业或产品形象的一把利剑,因此,对网络舆情进行监测,获取网络舆情分析报告非常有必要。很多舆情分析平台可以从网络中获取各种评论、文章、新闻等文本,然后对这些文本进分类,区分出负面评论和正面评论。由于网络的各种文本很多都是长文本,字数较多,比如微博,很多超过3000多个字符,而当前机器学习算法由于受机器内存和硬件配置的限制,很多算法模型都对文本的字数有限制,因而无法对长文本的全部内容进行学习,导致无法学习到一些重要的信息。比如,BERT(Bidirectional EncoderRepresentation from Transformers)模型就是目前效果比较好的一种语言理解模型,但其对文本字数有限制,最多只能支持512个字符,所以在训练长文本上无法发挥出BERT模型的优势。
目前,对于长文本的分类,有的技术将长文本先做分词,去除高频词和低频词,对剩余的词以人工的方式做类别区分,这种方式虽然可以处理长文本的学习问题,但当训练数据变更时,则需要重新做基于人工的调整,后期人工维护成本很高,并且人工所带来的错误率也较高。还有的技术将长文本先做分词,然后通过TF-IDF(Term Frequency–InverseDocument Frequency)计算并生成特征向量,将特征向量输入到XGBoost算法中进行分类训练,这种方式忽略了字和词之间的顺序关联,并且长文本中会掺杂大量的非重要特征形成噪音干扰核心特征,影响最终结果的准确率。基于此,首先,本说明书实施例提供一种文本预处理方法,通过从长文本中截取出比较核心的内容,拼接成新文本后,再对语言模型进行训练,可以有效地解决由于语言模型对字数的限制,导致无法对长文本进行训练的问题,且根据文本的结构特点和人们的逻辑表达习惯截取出文本核心内容,可以提升训练效果。
具体的,如图1所示,所述方法可包括以下步骤:
S102、获取待处理文本;
S104、判断所述待处理文本的长度是否大于指定长度;
S106、如果大于,则以所述待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
S108、将所截取的字符拼接成新文本,以通过所述新文本对预设的语言模型进行训练,其中,所述新文本的长度等于所述指定长度,所述指定长度基于所述语言模型支持的文本长度确定。
本说明书实施例提供的文本预处理方法可以用于各种可以对文本进行预处理的设备,比如手机、平板电脑、笔记本电脑、台式电脑或者云端服务器等。
目前,对文本进行分析分类等可以通过一些训练好的语言模型来实现,由于机器学习算法受到目前硬件设备的内存和其他硬件配置的限制,导致各种用于对文本进行分析和分类的语言模型对输入的文本有一定的字数限制,不能对长文本进行学习。而实际的应用场景中,需要通过语言模型分类的文本往往是字数较多的长文本。为了对有字数限制的语言模型也是对长文本进行学习,本说明书实施例可以先对长文本进行截断拼接处理,得到符合语言模型要求且包含文本核心思想的新文本。
本说明书实施例的待处理文本可以是有各种用于对语言模型进行训练的文本,比如网络中的各种评论、文章、新闻等,该文本可以是中文文本、英文文本等各种语言的文本。
在获取到待处理的文本,可以先判断待处理的文本的长度是否大于指定长度。其中,指定长度是基于预设的语言模型所支持的文本长度确定的。由于,指定长度为对待处理文本进行截断拼接后生成的新文本的参考长度,因而,指定长度可以小于或等于预设的语言模型所支持的文本长度。比如说,语言模型支持的文本长度为512个字符长度,则指定长度可以小于或等于512个字符长度,比如可以取512,也可以取256,具体可以实际使用场景设定,取训练效果较佳的一个数值。
如果待处理文本大于指定长度,可以对该待处理文本做截断拼接处理,生成符合语言模型要求的新文本。具体的,可以以待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符,然后将截取的字符拼接成新文本,新文本的长度等于该指定长度。为了训练的语言模型可以到达较好的效果,截断拼接得到的新文本可以是表示该待处理文本核心思想的文本,即为待处理文本中比较关键的内容,这样语言模型才能学习到文本的关键信息。
其中,指定字符用于确定待处理文本核心内容在文本中所处的位置,指定字符可以是一个字符或者多个字符,可以根据文本结构分布特点以及人们的表达逻辑习惯来确定。比如,对于中文而言,人们在写文章时习惯的表达方式是采用“总-分-总”,“总-分”、“分-总”的文章结构来撰写。因而,对于一篇文章,其核心思想和主要论点很大可能集中在文章开头,或者文章结尾,因而可以截取文本开头部分的一段文字、或者文本结尾部分的一段文本,或者是开头部分和截位各截取一段文字,输入到语言模型中对模型进行训练。因此,在某些实施例中,指定字符可以是文本的首个字符、文本的最后一个字符中的一个或多个。当然,在某些时候,人们在文章中表达自己的观点时,习惯用一些总结性或概括性的词语,例如,“整体而言”、“综上所述”、“总之”、“最后”等等,因而这些词后面的一段文字,也很有可能是代表文章核心思想的内容,所以,在某些实施例中,也可以这些文字字符作为位置参考,从待处理文本截取这个字符之前或者之后的一段文字。当然,指定字符可以有一个,也可以多个,截取的多个字符可以是待处理文本中的一段文字,也可以是多段文字。
在根据指定字符截取出多个字符后,可以将多个字符拼接成新文本。其中,如果所述多个字符为以一个指定字符为位置参考截取出来的一段字符,则可以将这个多个字符直接构成新文本,如果所述多个字符为通过多个指定字符为位置参考分别截取的多段字符,则以将这多段字符拼接后组成新文本。其中,拼接的顺序可以按照各段字符在文本出现的先后顺序确定,比如最先出现的置于最前面,最后出现的置于最后,当然,也可以按相反的顺序,或者按照随机的顺序,本申请不作限制。
由于多数情况,文章的核心观点都集中在在开头或者结尾,因而,在某些实施例中,如图2所示,可以以文本的首个字符作为起始位置,沿着首个字符的后一个字符的方向向后截取第一数量个字符,得到一段文本A,然后以文本的最后一个字符作为终止位置,沿着最后一个字符的前一个字符的方向向前截取第二数量个字符,得到一段文本B,然后将文本A和B拼接,得到新文本A+B,或者B+A,新文本的长度等于指定长度,再利用得到的新文本对语言模型进行训练。其中,在某些实施例中,第一数量与第二数量可以相等,比如,从文本开头和结尾截取的两段文字数量可以相等。在某些实施例中,第一数量与第二数量也可以不相等,比如,文本开头截取的字符数量多一些,文本结尾截取的字符数量短一些,或者文本开头截取的字符数量少一些,文本结尾截取的字符数量多一些。举个例子,假设指定长度为512个字符长度,则第一数量和第二数量可以均为256个字符长度,也可以一个为200个字符长度,另一个为312个字符长度。
在采用文本对语言模型进行训练的过程中,为了将文本转化为机器可以识别的语言,可以将文本向量化表示。由于针对长文本,可以通过截断拼接处理,得到包含文本核心思想且长度等于指定长度的新文本,再用新文本对语言模型进行训练。而对于短文本,其长度可能远小于该指定长度,因此,在将文本向量化表示时,由于长文本和短文本的向量维度一致,短文本的向量由于字符较少,因而其向量中很多维度都是用0去填补,即没有实际含义,导致语言模型最终效果不太理想。所以,在某些实施例中,如果判断待处理的文本长度小于指定长度,则可以从待处理文本中复制多个字符对待处理文本进行拼接,直至拼接后的文本的长度等于指定长度,其中,多个字符可以是待处理文本的部分字符,也可以是待处理文本的全部字符。举个例子,假设指定长度为256个字符长度,而待处理文本A只有128个字符长度,因而可以复制待处理文本A,得到文本A’,将文本A’拼接到待处理文本A中,得到256个字符长度的新文本,然后再输入到语言模型中,对模型进行训练。当然,如果指定长度为256个字符长度,而待处理文本A只有200个字符长度,则可以复制待处理文本的开头56个字符或者复制待处理文本的最后56个字符,或者从待处理文本中间复制56个字符,拼接到待处理文本中。当然,在某些实施例中,拼接后的文本字符长度也可以是接近指定长度,比如,如果指定长度为256个字符长度,而待处理文本A有250个字符长度,则可以无需再对待处理字符进行复制拼接处理。当然,在某些实施例中,也可以只对长度小于一定长度的的短文本进行复制拼接操作,比如指定长度为256,当文本长度小于128个字符长度,则进行拼接复制操作,如果大于则不进行复制拼接操作。通过对待处理的短文文本进行复制拼接,可以使得最后短文本向量化表示后不会出现过多的无用的信息,提升了模型的训练效果,使得模型具有更高的准确率。
由于文本中通常会包含一些数字、字母、标点符号等字符,这些字符既会加大文本长度,但其实对文本的含义没有太大的影响,因而在某些实施例中,在获取待处理文本后,可以先删除待处理文本中的指定字符,这些指定字符可以是没有实质含义或者对文本含义没有太大影响的字符。在某些实施例中,指定字符可以是字母、数字、标点符号、表情符号以及空格键。可以删除这些字符后,再对待处理文本进行截断拼接处理,以减少待处理文本中的冗余信息。
在某些实施例中,所述预设的语言模型可以是BERT模型,所述指定长度小于512个字符长度,BERT模型是谷歌开发的一个预训练模型,是通过***里面的大量语料训练得到,预训练的BERT表征可以仅用一个额外的输出层进行微调,在不对模型架构做出修改条件下,在不对模型架构做出修改条件下,就可以为很多任务创建当前最优模型。BERT模型是效果较好的一种语言模型,但由于其对文本字数有限制,支持文本长度最长为512个字符。因此,BERT模型在长文本的应用上受到限制。而本说明书实施例通过对长文本进行截断拼接处理,得到长度小于512个字符长度的新文本,可以得到符合BERT模型对文本字数的要求,且新文本包含待处理文本的核心内容,使得BERT模型可以学习到待处理文本的关键信息。在某些实施例中,如果所述语言模型为BERT模型,则所述指定长度可以是256个字符长度。经过大量试验发现,可以以待处理文本首个字符作为起始位置,向后一个字符的方向截取连续的128个字符,以及以待处理文本最后一个字符作为终止位置,向前一个字符的方向截取连续的128个字符。通过这种方式对待处理文本进行截断拼接后,再对BERT模型进行训练,可以大幅度提升模型的性能,训练后的模型对文本进行分类的准确率也大大提高。
另外,本说明书实施例还提供了一种文本分类方法,如图3所示,所述方法包括:
S302、获取待分类文本;
S304、判断所述待分类文本的长度是否大于指定长度;
S306、如果大于,则以所述待分类文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
S308、将所截取的字符拼接成新文本,其中,所述新文本的长度等于所述指定长度,所述指定长度基于预设的语言模型支持的文本长度确定;
S3010、通过所述语言模型对所述新文本分类。
在获取待分类文本后,可以先判断待分类文本的字符长度是否大于指定字符,如果大于,则可以以待分类成本中的指定字符作为位置参考从待分类文本中截取多个字符,并将截取的多个字符拼接成新文本,然后再将拼接得到的新文本输入到预先训练好的语言模型中进行分类。其中,指定字符用于确定待处理文本核心内容所处的位置,指定字符可以是一个字符或者多个字符,可以根据文本结构分布特点以及人们的表达逻辑习惯来确定。比如,对于中文而言,人们在写文章时习惯的表达方式是采用“总-分-总”,“总-分”、“分-总”的文章结构来撰写。因而,对于一篇文章,其核心思想和主要论点很大可能集中在文章开头,或者文章结尾,因而可以截取文本开头部分的一段文字、或者文本结尾部分的一段文本,或者是开头部分和截位各截取一段文字,输入到语言模型中对模型进行训练。因此,在某些实施例中,指定字符可以是文本的首个字符、文本的最后一个字符中的一个或多个。当然,在某些时候,人们在文章中表达自己的观点时,习惯用一些总结性或概括性的词语,例如,“整体而言”、“综上所述”、“总之”、“最后”等等,因而这些词后面的一段文字,也很有可能是代表文章核心思想的内容,所以,在某些实施例中,也可以这些文字字符作为位置参考,从待处理文本截取这个字符后面的一段文字。当然,指定字符可以有一个,也可以多个,截取的多个字符可以是待处理文本中的一段文字,也可以是多段文字。
在某些实施例中,所述指定字符包括所述待分类文本的首个字符和/或所述待处理文本的最后一个字符。
在某些实施例中,如果所述待分类文本的长度小于所述指定长度,则从所述待分类文本中复制多个字符对所述待分类文本进行拼接,直至拼接后的文本长度等于所述指定长度。
在某些实施例中,以所述待分类文本至少一个指定字符作为位置参考从所述分类文本截取多个字符包括:
以所述待分类文本首个字符作为起始位置,向后一个字符的方向截取第一数量的字符;
以及以所述待分类文本最后一个字符作为终止位置,向前一个字符的方向截取第二数量的字符。
在某些实施例中,所述第一数量等于所述第二数量。
在某些实施例中,所述语言模型为BERT模型,所述指定长度小于512个字符长度。
在某些实施例中,所述指定长度为256个字符长度,则以所述待分类文本至少一个指定的字符作为位置参考从所述待分类文本截取多个字符包括:
以所述待分类文本首个字符作为起始位置,向后一个字符的方向截取128个字符;
以及以所述待分类文本最后一个字符作为终止位置,向前一个字符的方向截取128个字符。
在某些实施例中,判断所述待分类文本的长度是否大于指定长度之前,还包括:
删除所述待分类文本中的指定字符。
在某些实施例中,所述指定字符包括以下一种或多种:字母、数字、标点符号、表情符号以及空格键。
为了进一步解释本说明书实施例提供文本预处理方法和文本分类方法,以下以一个具体的实施例加以解释。
为了进行舆情监控,可以对网络中的各种文章、评论和新闻等文本进行分析和分类,从中筛选出负面评论和正面评论的一些文本。
BERT模型是目前主流的预训练模型,该模型具有很好的语言理解效果。但是,由于机器内存和硬件配置的限制,BERT模型对输入的文本长度有字数的限制,仅支持长度小于512个字符长度的文本。而经过对网络中的各种文章、新闻、评论、微博等文本进行统计,发现这些文本的字数分布如图4所示,其中,左侧“range”表示网络中各种文本的字数分布区间,右侧“count”表示各个字数分布区间中的文本数量。从图中可知,绝大多数文本的字数还是大于512个字符的,且小于128个字符的短文本数量也比较多。
为了提高模型的分类效果,可以对文本进行预处理后再进行该模型的训练和文本的分类。
BERT模型的训练过程包括以下步骤:
(1)获取训练文本,去除训练文本中的字母、数字、标点符号、表情符号、以及各种空格键。
(2)统计去除上述字符之后的训练文本的长度,按字级别做统计。
(3)判断训练文本的长度是否大于256个字符长度,如果大于,则获取该文本开头的128个字符和结尾128个字符,然后将该文本开头的128个字符和结尾128个字符拼接成新文本,将截断拼接后的新文本输入到BERT模型,对BERT模型进行训练。如果训练文本的长度小于256个字符长度,则复制训练文本A成为文本A’,这时就有2条文本A和A’,将文本A和A’头尾相连组成新的文本,如果新文本仍小于256个字符长度,则继续循环复制操作,直至等于256个字符长度。将复制拼接后的新文本输入到BERT模型,对BERT模型进行训练。
采用训练好的BERT模型对文本分类过程:
(1)获取待分类文本,去除待分类文本中的字母、数字、标点符号、表情符号、以及各种空格键。
(2)统计去除上述字符之后的待分类文本的长度,按字级别做统计。
(3)判断待分类文本的长度是否大于256个字符长度,如果大于,则获取该文本开头的128个字符和结尾128个字符,然后将该文本开头的128个字符和结尾128个字符拼接成新文本,将截断拼接后的新文本输入到BERT模型,以对文本进行分类。如果待分类文本的长度小于256个字符长度,则复制待分类文本B成为文本B’,这时就有2条文本B和B’,将文本B和B’头尾相连组成新的文本,如果新文本仍小于256个字符长度,则继续循环复制操作,直至等于256个字符长度。将复制拼接后的新文本输入到BERT模型,以对文本进行分类。
通过上述方法,可以大幅度提升模型的性能,使得训练得到的BERT模型在进行文本分类时具有更高的准确率。
以上实施例中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本说明书公开的范围。
如图5所示,是本说明书一个实施例的一种文本预处理装置,所述装置可包括:
获取模块51,用于获取待处理文本;
判断模块52,用于判断所述待处理文本的长度是否大于指定长度;
截取模块53,用于如果大于,则以所述待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
拼接模块54,用于将所截取的字符拼接成新文本,以通过所述新文本对预设的语言模型进行训练,其中,所述新文本的长度等于所述指定长度,所述指定长度基于所述语言模型支持的文本长度确定。
在某些实施例中,所述指定字符包括所述待处理文本的首个字符和/或所述待处理文本的最后一个字符
在某些实施例中,如果所述待处理文本的长度小于所述指定长度,则从所述待处理文本中复制多个字符对所述待处理文本进行拼接,直至拼接后的文本长度等于所述指定长度。
在某些实施例中,以所述待处理文本至少一个指定字符作为位置参考从所述待处理文本截取多个字符包括:
以所述待处理文本首个字符作为起始位置,向后一个字符的方向截取第一数量的字符;
以及以所述待处理文本最后一个字符作为终止位置,向前一个字符的方向截取第二数量的字符。
在某些实施例中,所述第一数量等于所述第二数量。
在某些实施例中,所述语言模型为BERT模型,所述指定长度小于512个字符长度。
在某些实施例中,所述指定长度为256个字符长度,则以所述待处理文本至少一个指定的字符作为位置参考从所述待处理文本截取多个字符包括:
以所述待处理文本首个字符作为起始位置,向后一个字符的方向截取128个字符;
以及以所述待处理文本最后一个字符作为终止位置,向前一个字符的方向截取128个字符。
在某些实施例中,判断所述待处理文本的长度是否大于指定长度之前,还包括:
删除所述待处理文本中的指定字符。
在某些实施例中,所述指定字符包括以下一种或多种:字母、数字、标点符号、表情符号以及空格键。
如图6所示,是本说明书一个实施例的一种文本分类装置,所述装置可包括:
获取模块61,用于获取待分类文本;
判断模块62,用于判断所述待分类文本的长度是否大于指定长度;
截取模块63,如果大于,则以所述待分类文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
拼接模块64,将所截取的字符拼接成新文本,其中,所述新文本的长度等于所述指定长度,所述指定长度基于预设的语言模型支持的文本长度确定;
分类模块65,用于通过所述语言模型对所述新文本分类。
在某些实施例中,所述指定字符包括所述待分类文本的首个字符和/或所述待处理文本的最后一个字符
在某些实施例中,如果所述待分类文本的长度小于所述指定长度,则从所述待分类文本中复制多个字符对所述待分类文本进行拼接,直至拼接后的文本长度等于所述指定长度。
在某些实施例中,以所述待分类文本至少一个指定字符作为位置参考从所述分类文本截取多个字符包括:
以所述待分类文本首个字符作为起始位置,向后一个字符的方向截取第一数量的字符;
以及以所述待分类文本最后一个字符作为终止位置,向前一个字符的方向截取第二数量的字符。
在某些实施例中,所述第一数量等于所述第二数量。
在某些实施例中,所述语言模型为BERT模型,所述指定长度小于512个字符长度。
在某些实施例中,所述指定长度为256个字符长度,则以所述待分类文本至少一个指定的字符作为位置参考从所述待分类文本截取多个字符包括:
以所述待分类文本首个字符作为起始位置,向后一个字符的方向截取128个字符;
以及以所述待分类文本最后一个字符作为终止位置,向前一个字符的方向截取128个字符。
在某些实施例中,判断所述待分类文本的长度是否大于指定长度之前,还包括:
删除所述待分类文本中的指定字符。
在某些实施例中,所述指定字符包括以下一种或多种:字母、数字、标点符号、表情符号以及空格键。
上述装置中各个模块的功能和作用的实现过程具体详情见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书装置的实施例可以应用在计算机设备上,例如服务器或智能终端。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在文件处理的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本说明书装置所在计算机设备的一种硬件结构图,除了图7所示的处理器702、内存704、网络接口706、以及非易失性存储器708之外,实施例中装置所在的服务器或电子设备,通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。其中,所述非易失性存储器708上存储有计算机程序,所述处理器702执行所述计算器程序时实现上述任一项文本预处理方法和文本分类方法。
相应地,本说明书实施例还提供一种计算机存储介质,所述存储介质中存储有程序,所述程序被处理器执行时实现上述任一实施例中的方法。
本说明书实施例可采用在一个或多个其中包含有程序代码的存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机可用存储介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括但不限于:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本领域技术人员在考虑说明书及实践这里公开的说明书后,将容易想到本说明书实施例的其它实施方案。本说明书实施例旨在涵盖本说明书实施例的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书实施例的一般性原理并包括本说明书实施例未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书实施例的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书实施例并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书实施例的范围仅由所附的权利要求来限制。
以上所述仅为本说明书实施例的较佳实施例而已,并不用以限制本说明书实施例,凡在本说明书实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书实施例保护的范围之内。
Claims (13)
1.一种文本预处理方法,所述方法包括:
获取待处理文本;
判断所述待处理文本的长度是否大于指定长度;
如果大于,则以所述待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
将所截取的字符拼接成新文本,以通过所述新文本对预设的语言模型进行训练,其中,所述新文本的长度等于所述指定长度,所述指定长度基于所述语言模型支持的文本长度确定。
2.根据权利要求1所述的文本预处理方法,如果所述待处理文本的长度小于所述指定长度,则从所述待处理文本中复制多个字符对所述待处理文本进行拼接,直至拼接后的文本长度等于所述指定长度。
3.根据权利要求1-2任一项所述的文本预处理方法,所述指定字符包括所述待处理文本的首个字符和/或所述待处理文本的最后一个字符。
4.根据权利要求3所述的文本预处理方法,以所述待处理文本至少一个指定字符作为位置参考从所述待处理文本截取多个字符包括:
以所述待处理文本首个字符作为起始位置,向后一个字符的方向截取第一数量的字符;
以及以所述待处理文本最后一个字符作为终止位置,向前一个字符的方向截取第二数量的字符。
5.根据权利要求4所述的文本预处理方法,所述第一数量等于所述第二数量。
6.根据权利要求1所述的文本预处理方法,所述语言模型为BERT模型,所述指定长度小于512个字符长度。
7.根据权利要求6所述的文本预处理方法,所述指定长度为256个字符长度,则以所述待处理文本至少一个指定的字符作为位置参考从所述待处理文本截取多个字符包括:
以所述待处理文本首个字符作为起始位置,向后一个字符的方向截取128个字符;
以及以所述待处理文本最后一个字符作为终止位置,向前一个字符的方向截取128个字符。
8.根据权利要求1所述的文本预处理方法,判断所述待处理文本的长度是否大于指定长度之前,还包括:
删除所述待处理文本中的指定字符。
9.根据权利要求8所述的文本预处理方法,所述指定字符包括以下一种或多种:字母、数字、标点符号、表情符号以及空格键。
10.一种文本分类方法,所述方法包括:
获取待分类文本;
判断所述待分类文本的长度是否大于指定长度;
如果大于,则以所述待分类文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
将所截取的字符拼接成新文本,其中,所述新文本的长度等于所述指定长度,所述指定长度基于预设的语言模型支持的文本长度确定;
通过所述语言模型对所述新文本分类。
11.一种文本预处理装置,所述装置包括:
获取模块,用于获取待处理文本;
判断模块,用于判断所述待处理文本的长度是否大于指定长度;
截取模块,用于如果大于,则以所述待处理文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
拼接模块,用于将所截取的字符拼接成新文本,以通过所述新文本对预设的语言模型进行训练,其中,所述新文本的长度等于所述指定长度,所述指定长度基于所述语言模型支持的文本长度确定。
12.一种文本分类装置,所述装置包括:
获取模块,用于获取待分类文本;
判断模块,用于判断所述待分类文本的长度是否大于指定长度;
截取模块,如果大于,则以所述待分类文本的至少一个指定字符作为位置参考从所述待处理文本截取多个字符;
拼接模块,将所截取的字符拼接成新文本,其中,所述新文本的长度等于所述指定长度,所述指定长度基于预设的语言模型支持的文本长度确定;
分类模块,用于通过所述语言模型对所述新文本分类。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至10任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911228510.3A CN111143551A (zh) | 2019-12-04 | 2019-12-04 | 文本预处理方法、分类方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911228510.3A CN111143551A (zh) | 2019-12-04 | 2019-12-04 | 文本预处理方法、分类方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111143551A true CN111143551A (zh) | 2020-05-12 |
Family
ID=70517555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911228510.3A Pending CN111143551A (zh) | 2019-12-04 | 2019-12-04 | 文本预处理方法、分类方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111143551A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111738437A (zh) * | 2020-07-17 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 一种训练方法、文本生成方法、装置及电子设备 |
CN112328674A (zh) * | 2020-11-17 | 2021-02-05 | 深圳力维智联技术有限公司 | 跨数据格式的模型转化加速方法及装置 |
CN112861045A (zh) * | 2021-02-20 | 2021-05-28 | 北京金山云网络技术有限公司 | 文案的显示方法和装置、存储介质、电子装置 |
CN114510911A (zh) * | 2022-02-16 | 2022-05-17 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、计算机设备及存储介质 |
CN115033678A (zh) * | 2022-08-09 | 2022-09-09 | 北京聆心智能科技有限公司 | 一种对话模型训练方法、装置及设备 |
CN116541527A (zh) * | 2023-07-05 | 2023-08-04 | 国网北京市电力公司 | 一种基于模型集成和数据扩充的公文分类方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6279018B1 (en) * | 1998-12-21 | 2001-08-21 | Kudrollis Software Inventions Pvt. Ltd. | Abbreviating and compacting text to cope with display space constraint in computer software |
US20040122979A1 (en) * | 2002-12-19 | 2004-06-24 | International Business Machines Corporation | Compression and abbreviation for fixed length messaging |
CN106484810A (zh) * | 2016-09-23 | 2017-03-08 | 广州视源电子科技股份有限公司 | 一种多媒体节目的推荐方法及*** |
CN108038107A (zh) * | 2017-12-22 | 2018-05-15 | 东软集团股份有限公司 | 基于卷积神经网络的语句情感分类方法、装置及其设备 |
CN108091323A (zh) * | 2017-12-19 | 2018-05-29 | 想象科技(北京)有限公司 | 用于自语音中识别情感的方法与装置 |
CN108632896A (zh) * | 2017-03-15 | 2018-10-09 | 华为技术有限公司 | 一种数据传输方法及相关设备 |
CN109508448A (zh) * | 2018-07-17 | 2019-03-22 | 网易传媒科技(北京)有限公司 | 基于长篇文章生成短资讯方法、介质、装置和计算设备 |
CN109918497A (zh) * | 2018-12-21 | 2019-06-21 | 厦门市美亚柏科信息股份有限公司 | 一种基于改进textCNN模型的文本分类方法、装置及存储介质 |
CN110032733A (zh) * | 2019-03-12 | 2019-07-19 | 中国科学院计算技术研究所 | 一种针对新闻长文本的谣言检测方法及*** |
CN110096591A (zh) * | 2019-04-04 | 2019-08-06 | 平安科技(深圳)有限公司 | 基于词袋模型的长文本分类方法、装置、计算机设备及存储介质 |
CN110209819A (zh) * | 2019-06-05 | 2019-09-06 | 江苏满运软件科技有限公司 | 文本分类方法、装置、设备和介质 |
CN110427482A (zh) * | 2019-07-31 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 一种目标内容的抽取方法及相关设备 |
CN110532563A (zh) * | 2019-09-02 | 2019-12-03 | 苏州美能华智能科技有限公司 | 文本中关键段落的检测方法及装置 |
-
2019
- 2019-12-04 CN CN201911228510.3A patent/CN111143551A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6279018B1 (en) * | 1998-12-21 | 2001-08-21 | Kudrollis Software Inventions Pvt. Ltd. | Abbreviating and compacting text to cope with display space constraint in computer software |
US20040122979A1 (en) * | 2002-12-19 | 2004-06-24 | International Business Machines Corporation | Compression and abbreviation for fixed length messaging |
CN106484810A (zh) * | 2016-09-23 | 2017-03-08 | 广州视源电子科技股份有限公司 | 一种多媒体节目的推荐方法及*** |
CN108632896A (zh) * | 2017-03-15 | 2018-10-09 | 华为技术有限公司 | 一种数据传输方法及相关设备 |
CN108091323A (zh) * | 2017-12-19 | 2018-05-29 | 想象科技(北京)有限公司 | 用于自语音中识别情感的方法与装置 |
CN108038107A (zh) * | 2017-12-22 | 2018-05-15 | 东软集团股份有限公司 | 基于卷积神经网络的语句情感分类方法、装置及其设备 |
CN109508448A (zh) * | 2018-07-17 | 2019-03-22 | 网易传媒科技(北京)有限公司 | 基于长篇文章生成短资讯方法、介质、装置和计算设备 |
CN109918497A (zh) * | 2018-12-21 | 2019-06-21 | 厦门市美亚柏科信息股份有限公司 | 一种基于改进textCNN模型的文本分类方法、装置及存储介质 |
CN110032733A (zh) * | 2019-03-12 | 2019-07-19 | 中国科学院计算技术研究所 | 一种针对新闻长文本的谣言检测方法及*** |
CN110096591A (zh) * | 2019-04-04 | 2019-08-06 | 平安科技(深圳)有限公司 | 基于词袋模型的长文本分类方法、装置、计算机设备及存储介质 |
CN110209819A (zh) * | 2019-06-05 | 2019-09-06 | 江苏满运软件科技有限公司 | 文本分类方法、装置、设备和介质 |
CN110427482A (zh) * | 2019-07-31 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 一种目标内容的抽取方法及相关设备 |
CN110532563A (zh) * | 2019-09-02 | 2019-12-03 | 苏州美能华智能科技有限公司 | 文本中关键段落的检测方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111738437A (zh) * | 2020-07-17 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 一种训练方法、文本生成方法、装置及电子设备 |
CN111738437B (zh) * | 2020-07-17 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 一种训练方法、文本生成方法、装置及电子设备 |
CN112328674A (zh) * | 2020-11-17 | 2021-02-05 | 深圳力维智联技术有限公司 | 跨数据格式的模型转化加速方法及装置 |
CN112328674B (zh) * | 2020-11-17 | 2024-05-14 | 深圳力维智联技术有限公司 | 跨数据格式的模型转化加速方法及装置 |
CN112861045A (zh) * | 2021-02-20 | 2021-05-28 | 北京金山云网络技术有限公司 | 文案的显示方法和装置、存储介质、电子装置 |
CN114510911A (zh) * | 2022-02-16 | 2022-05-17 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、计算机设备及存储介质 |
CN115033678A (zh) * | 2022-08-09 | 2022-09-09 | 北京聆心智能科技有限公司 | 一种对话模型训练方法、装置及设备 |
CN116541527A (zh) * | 2023-07-05 | 2023-08-04 | 国网北京市电力公司 | 一种基于模型集成和数据扩充的公文分类方法 |
CN116541527B (zh) * | 2023-07-05 | 2023-09-29 | 国网北京市电力公司 | 一种基于模型集成和数据扩充的公文分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111143551A (zh) | 文本预处理方法、分类方法、装置及设备 | |
US20180157636A1 (en) | Methods and systems for language-agnostic machine learning in natural language processing using feature extraction | |
US10437912B2 (en) | Sorting and displaying documents according to sentiment level in an online community | |
CN110046637B (zh) | 一种合同段落标注模型的训练方法、装置及设备 | |
US20210397639A1 (en) | Clustering topics for data visualization | |
CN109978139B (zh) | 图片自动生成描述的方法、***、电子装置及存储介质 | |
CN111310464A (zh) | 词向量获取模型生成方法、装置及词向量获取方法、装置 | |
CN112364664B (zh) | 意图识别模型的训练及意图识别方法、装置、存储介质 | |
CN111767394A (zh) | 一种基于人工智能专家***的摘要提取方法及装置 | |
CN109918658A (zh) | 一种从文本中获取目标词汇的方法及*** | |
CN110489559A (zh) | 一种文本分类方法、装置及存储介质 | |
CN116150327A (zh) | 文本处理方法和装置 | |
CN112765976A (zh) | 文本相似度计算方法、装置、设备及存储介质 | |
CN110879832A (zh) | 目标文本检测方法、模型训练方法、装置及设备 | |
EP4322066A1 (en) | Method and apparatus for generating training data | |
CN109522921A (zh) | 语句相似度判别方法及设备 | |
CN111783453B (zh) | 文本的情感信息处理方法及装置 | |
US11120204B2 (en) | Comment-based article augmentation | |
CN110879868A (zh) | 顾问方案生成方法、装置、***、电子设备及介质 | |
CN111522903A (zh) | 一种深度哈希检索方法、设备及介质 | |
CN112446206A (zh) | 一种菜谱标题的生成方法及装置 | |
CN111625579A (zh) | 一种信息处理方法、装置及*** | |
CN114239590B (zh) | 一种数据处理方法及装置 | |
CN108804603B (zh) | 人机书面对话方法及***、服务器、介质 | |
US20240126791A1 (en) | Method and system for long-form answer extraction based on combination of sentence index generation techniques |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200512 |