一种文本数据集清洗方法、装置及介质与流程

文档序号:30494669发布日期:2022-06-22 03:38阅读:146来源:国知局
一种文本数据集清洗方法、装置及介质与流程

1.本发明涉及计算机数据技术领域,特别涉及一种文本数据集清洗方法、装置及介质。


背景技术:

2.近年来,互联网上面的新闻、博客、论坛、电子书等各类文本数据集越来越多,如何利用这些海量文本数据集集来生成高质量的文本数据集,以用于人工智能模型的训练和推理已成为热门的研究方向。为了对海量的文本数据集进行数据清洗以生成高质量的文本数据集,很多数据清洗框架出现再我们的视野中,例如开源软件框架(hadoop)的mapreduce计算框架、spark框架等。
3.开源软件框架(hadoop)是一款支持数据密集型分布式应用程序的开源软件框架。是支持在商用硬件构建的大型集群上运行的应用程序。hadoop是根据谷歌公司发表的计算框架mapreduce和谷歌文件系统的论文自行实现而成。
4.spark框架是一款开源集群运算框架,spark使用了存储器内运算技术,能够在数据资料尚未写入硬盘时在存储器内分析运算。
5.然而,由于数据量巨大,很多数据清洗方案并不高效,虽然这些数据清洗方案采用了mapreduce、spark等并行计算框架,但是由于数据清洗系统的整体设计以及各个模块采用的清洗算法效率比较低,所以这些清洗系统并不能在短时间内完成tb(10
12
)级别的数据的清洗。


技术实现要素:

6.为了克服上述技术缺陷,本发明的目的在于提供一种文本数据集清洗方法、装置及介质,可以在短时间内完成tb(10
12
)级别的数据的清洗。在这里清洗的数据来源为电子网盘或电子书网站下载的各类中英文电子书。这里对4tb大小的互联网电子书数据进行数据清洗,选用6台服务器,所述服务器具体配置为:128cpu核心、512gb内存、1.8tb nvme ssd硬盘,最终生成大小为655gb的高质量中文电子书数据集。通过以上方法能够实现基于bash脚本和spark开源集群运算框架的高效的数据分类清洗方案,能够在短时间内处理tb级别的互联网文本数据集,提高了清洗效率。
7.本发明实施例提供的具体技术方案如下:
8.第一方面,提供了一种文本数据集清洗方法,所述方法包括:
9.接收待清洗的文本数据集;
10.基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集;
11.对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集;
12.将所述第二格式第一文本数据集转换为第一格式第二文本数据集;
13.将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集;
14.对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。
15.进一步地,所述对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集,包括:
16.根据所述第一格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留;和/或根据所述第一格式文本数据集中各文本数据的前一百行是否包括中文字符来判断所述文本数据是否为中文文本数据,若是,则保留;若否,则删除,以形成第一格式第一文本数据集;
17.根据所述第二格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留,以形成第二格式第一文本数据集。
18.进一步地,所述将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集,包括:
19.将所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第二编码格式的文本数据转换为第一编码格式的文本数据,以形成第一格式第三文本数据集。
20.进一步地,所述通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作之前,还包括:
21.通过bert base模型将所述第一格式第三文本数据集分成第一质量文本数据集和第二质量文本数据集;
22.删除所述第二质量文本数据集。
23.进一步地,所述对所述第一格式第三文本数据集进行数据清洗操作,还包括:
24.判断所述第一格式第三文本数据集中各文本数据的中文字符数是否大于或等于第一阈值且文本数据的中文字符占比是否大于或等于第二阈值;
25.若是,则保留此文本数据;若否,则删除。
26.进一步地,所述对所述第一格式第三文本数据集进行数据清洗操作,还包括:
27.将收集到的敏感词汇分为第一类敏感词汇和第二类敏感词汇;
28.遍历所述第一格式第三文本数据集;
29.若所述第一格式第三文本数据集中的文本数据包括所述第一类敏感词汇,则将其删除;
30.若所述第一格式第三文本数据集中的文本数据包括所述第二类敏感词汇,则将包括所述第二类敏感词汇的段落删除,保留此文本数据的其他部分。
31.进一步地,所述对所述第一格式第三文本数据集进行数据清洗操作,还包括:
32.将所述第一格式第三文本数据集中各文本数据的特殊字符去除;
33.将所述第一格式第三文本数据集中各文本数据的繁体字符转换为简体字符。
34.进一步地,所述文本数据集清洗方法包括:
35.对清洗后的所述第一格式第三文本数据集进行抽样校验;
36.将检验合格的所述第一格式第三文本数据集进行存储。
37.第二方面,提供了一种文本数据集清洗装置,所述装置包括:
38.存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现如第一方面任一所述的文本数据集清洗方法的步骤。
39.第三方面,提供了一种计算机存储介质,所述介质包括:
40.其上存储有计算机程序,该计算机程序被存储器执行时实现第一方面任一所述的文本数据集清洗方法的步骤。
41.与现有技术相比,本发明实施例提供的技术方案通过接收待清洗的文本数据集;基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集;对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集;将所述第二格式第一文本数据集转换为第一格式第二文本数据集;将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集;对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。本发明实现了基于bash脚本和spark开源集群运算框架的高效的数据分类清洗方案,能够在短时间内处理tb级别的互联网文本数据集,提高了清洗效率。
42.本发明实施例提供的技术方案可以采用bash脚本对互联网文本数据集进行分类,采用spark开源集群运算框架作为计算框架对所述文本数据集进行数据清洗;由于spark开源集群运算框架支持python、java、scala等编程语言,其中scala编程语言是一门多范式的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性,兼具性能高效、简洁等特性,所述scala编程语言性能为python的10倍。这里选择scala语言来编写数据清洗模块,提高了清洗的性能。
43.同时,本发明实施例提供的技术方案采用bert base模型对所述文本数据集进行文本质量分类,进一步保障了文本数据集的高质量要求。
附图说明
44.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1为本发明实施例一提供的文本数据集清洗方法的流程图;
46.图2为本发明实施例一提供的文本数据集清洗架构设计图;
47.图3为本发明实施例二提供的文本数据集清洗装置结构图;
48.图4为本发明实施例三提供的可被用于实施本技术中所述的各个实施例的示例性系统。
具体实施方式
49.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附
图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.需要说明的是,除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
51.此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
52.实施例一
53.本发明实施例提供了一种文本数据集清洗方法,如图1所示,该方法可以包括:
54.步骤s1,接收待清洗的文本数据集。
55.具体地,这里从电子网盘或电子书网站下载接收待清洗的文本数据集,这里所述待清洗的文本数据集为互联网电子书。
56.其中,数据清洗的目的可以理解为删除或更正有集中错误、不完整、格式有误或多余的数据。所述数据清洗不仅可以更正错误,同样可以加强来自各个单独信息系统不同数据之间的一致性。专门的数据清洗软件能够自动检测数据文件,更正错误数据,并用全企业一致的格式集成数据。
57.步骤s2,基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集。
58.具体地,由于从网络上面下载的文本数据集(多本电子书)存在各种格式,比如txt格式、epub格式、mobi格式、pdf格式、word格式、以及azw3格式等,而这里最终要得到的格式是txt格式。
59.首先对文件格式进行了分类统计。从统计结果可以看出,占最大比例的为txt格式和epub格式,因此这里将下载的电子书集分类为三种格式,即txt格式、epub格式和其它格式。这里将其它格式的电子书丢弃,只保留txt格式和epub格式的电子书。
60.其中,这里所述第一格式文本数据集为txt格式的电子书;所述第二格式文本数据集为epub格式的电子书。
61.步骤s3,对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集。
62.具体地,这里从网上下载的文本数据集即电子书目录嵌套复杂并且只包含中文或者英文的电子书。最终需要只保留中文电子书,删除英文电子书。
63.步骤s3还包括:
64.步骤s31,根据所述第一格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留;和/或根据所述第一格式文本数据集中各文本数据的前一百行是否包括中文字符来判断所述文本数据是否为中文文本数据,若是,则保留;若否,则删除,以形成第一格式第一文本数据集。
65.具体地,这里从两个维度来判断所述txt格式的电子书是否为中文电子书。第一个维度从所述电子书的全路径判断所述txt格式的电子书是否为中文电子书:根据所述电子书的全路径中是否包含“english”或“英语”这两个词汇来判断是否为英文电子书,若是,删除此电子书;若否,保留此电子书,形成第一格式第一文本数据集。
66.其中,所述第一预设词汇为“english”或“英语”等词汇,所述“english”词汇不区分大小写。
67.第二个维度是判断所述txt格式的电子书文件的前一百行是否包括中文字符,若所述电子书文件前一百行不包括中文字符,则删除此电子书;若所述电子书文件前一百行包括中文字符,则保留此电子书,形成第一格式第一文本数据集。
68.其中,所述第一格式第一文本数据集为中文过滤后的中文的txt格式的电子书。
69.步骤s32,根据所述第二格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留,以形成第二格式第一文本数据集。
70.具体地,这里采用从所述电子书的全路径来判断epub格式的电子书是否为中文电子书:根据所述电子书的全路径中是否包含“english”或“英语”这两个词来判断是否为英文电子书,若是,删除此电子书;若否,保留此电子书,形成第二格式第一文本数据集。
71.其中,所述第二格式第一文本数据集为中文过滤后的中文的epub格式的电子书。
72.步骤s4,将所述第二格式第一文本数据集转换为第一格式第二文本数据集。
73.具体地,这里对应将中文的epub格式的电子书转换为中文的txt格式的电子书。
74.其中,所述第一格式第二文本数据集为从中文过滤后的中文的epub格式的电子书转换后的中文的txt格式的电子书。
75.步骤s5,将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集。
76.具体地,中文的所述txt格式的电子书编码格式可以分为utf-8格式、gb18030格式、gbk格式、gb2312格式。而gb18030格式兼容gbk格式和gb2312格式,所以这里设定将所有的中文的所述txt格式的电子书编码格式分为utf-8和gb18030这两种格式。
77.其中,这里中文的第一格式文本数据集为中文的txt格式的电子书;中文的第二格式文本数据集为中文的epub格式的电子书;第一格式第三文本数据集为中文的utf-8格式的txt电子书。
78.可以理解的是,这里经过上述分类处理之后,得到五类电子书:中文的epub电子书、中文的utf-8编码格式txt电子书、中文的gb18030编码格式txt电子书、英文epub电子书、英文txt电子书。由于只保留中文电子书,所以最后的英文epub电子书、英文txt电子书被删除。
79.步骤s5还包括:
80.步骤s51,将所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第二编码格式的文本数据转换为第一编码格式的文本数据,以形成第一格式第三文本数据集。
81.具体地,将中文的gb18030格式的txt电子书转换为中文的utf-8格式的txt电子书。所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第一编码格式的文本数据不变,包括在所述第一格式第三文本数据集里面。
82.其中,这里所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第二编码格式的文本数据为中文的gb18030格式的txt电子书;所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第一编码格式的文本数据为中文的
utf-8格式的txt电子书,即第一格式第三文本数据集。
83.步骤s6,对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。
84.具体地,由于从互联网下载的文本数据集即多本电子书可能存在重复的情况,这里对所述中文的utf-8格式的txt电子书进行消息摘要算法(md5)计算,并利用md5摘要算法进行内容去重操作。
85.其中,消息摘要算法md5(message-digestalgorithm)是一种被广泛使用的密码散列函数,可以产生出一个128位(16个字符(bytes))的散列值(hash value),用于确保信息传输完整一致。md5用以取代md4算法。这套算法的程序在rfc 1321中被加以规范。
86.步骤s6还包括:
87.步骤s61,判断所述第一格式第三文本数据集中各文本数据的中文字符数是否大于或等于第一阈值且文本数据的中文字符占比是否大于或等于第二阈值;
88.若是,则保留此文本数据;若否,则删除。
89.具体地,判断所述中文的utf-8编码格式txt电子书中的中文字符数是否大于或等于150个字符,并且中文字符占比是否大于或等于60%来进行非中文过滤,若中文的utf-8编码格式txt电子书中的中文字符数大于或等于150个字符,并且中文字符占比大于或等于60%,则保留此电子书;若中文的utf-8编码格式txt电子书中的中文字符数小于150个字符,或者中文字符占比小于60%,则删除此电子书,进行非中文或乱码过滤。
90.其中,这里第一阈值为150,第二阈值为60%。
91.步骤s62,将收集到的敏感词汇分为第一类敏感词汇和第二类敏感词汇;
92.遍历所述第一格式第三文本数据集;
93.若所述第一格式第三文本数据集中的文本数据包括所述第一类敏感词汇,则将其删除;
94.若所述第一格式第三文本数据集中的文本数据包括所述第二类敏感词汇,则将包括所述第二类敏感词汇的段落删除,保留此文本数据的其他部分。
95.具体地,对收集到的9759个敏感词汇进行了分类,第一类敏感词汇包括色情敏感词,第二类敏感词汇包括政治、暴力、或广告敏感词;在算法上,这里采用确定穷自动机(dfa)算法构建敏感词汇树结构,对所述中文的utf-8编码格式txt电子书进行遍历,判断所述电子书是否包含任一类敏感词汇;若所述电子书匹配上第一类敏感词汇,则将所述电子书删除;若所述电子书匹配上第二类敏感词汇,则将匹配上第二类敏感词汇对应的段落删除,保留所述电子书的其他部分。
96.步骤s63,通过bert base模型将所述第一格式第三文本数据集分成第一质量文本数据集和第二质量文本数据集;
97.删除所述第二质量文本数据集。
98.具体地,基于变换器的双向编码器表示技术bert(bidirectional encoder representations from transformers)是用于自然语言处理(nlp)的预训练技术,由google提出。bert的模型架构基于了transformer,实现了多层双向的transformer编码器。架构包括两种类型的预训练模型,如表1所示:(1)bert base模型,包括12层,768维,12个自
注意头(selfattention head),110m参数的神经网络结构;(2)bert large模型,包括24层,1024维,16个自注意头,340m参数的神经网络结构。这里采用bert base模型来对所述中文的utf-8编码格式txt电子书完成文本质量分类。
99.modeltransformer层数(l)hiddenunits(h)self-attentionheads(a)总参数bert(base)12768121.1亿bert(large)241024163.4亿
100.表1
101.其中,nlp(natural language processing)为自然语言处理,是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;所述自然语言处理包括多方面的步骤,包括认知、理解、生成等部分。
102.可以理解的是,通过所述bert base模型,基于transformer的双向编码器,第一个token对应的输出层接全连接层,将所述中文的utf-8编码格式txt电子书分为两类:高质量的中文的utf-8编码格式txt电子书、低质量的中文的utf-8编码格式txt电子书,最终只保留高质量的中文的utf-8编码格式txt电子书。
103.这里,所述第一质量文本数据集为高质量电子书,高质量电子书为语句连贯,内容表达清楚的电子书;所述第二质量文本数据集为低质量电子书,低质量电子书为语句不通顺,内容表达不清楚的电子书。
104.步骤s64,将所述第一格式第三文本数据集中各文本数据的特殊字符去除;
105.将所述第一格式第三文本数据集中各文本数据的繁体字符转换为简体字符。
106.具体地,采用java编程语言实现将所述中文的utf-8编码格式txt电子书中的繁体字符转换为简体字符的转换程序,有效的提高了转换性能;
107.将所述中文的utf-8编码格式txt电子书中的特殊字符去除,所述特殊字符包括表情符号、乱码、不可见字符等。
108.步骤s7,对清洗后的所述第一格式第三文本数据集进行抽样校验;
109.将检验合格的所述第一格式第三文本数据集进行存储。
110.具体地,在经过文本数据集分类、转换、以及清洗步骤之后,为了保障文本数据集清洗后产出的文本数据集在符合要求的检测数据范围内,这里进行人工抽样校验。通过多位人数的人工抽样校验之后,检测所述文本数据集清洗后产出的文本数据集是否在符合要求的检测数据范围内。
111.为了提高性能,这里不采用分布式数据库进行存储,而是采用服务器本地文件存储的方式来存储清洗后的高质量中文的utf-8编码格式txt电子书数据。
112.可以理解的是,如图2所示是基于bash脚本和spark计算框架的高效互联网文本数据集清洗架构设计图;包括:数据下载模块、数据分类及转换模块、数据清洗模块、校验模块、数据存储模块。其中所述数据分类及转换模块为基于bash脚本的分类及转换模块;所述数据清洗模块是基于spark计算框架的数据清洗模块;在数据清洗后采用服务器本地文件存储的方式来存储清洗后的高质量中文电子书数据。这里采用bash脚本对互联网电子书进行分类,采用spark框架作为计算框架进行数据清洗,能够在短时间内处理tb级别的互联网文本数据集,提高了清洗效率。后续会将数据清洗与深度学习进行融合,完善文本数据集清洗方法,从而更精确的得到高质量的中文电子书数据集。
113.本发明实施例提供的文本数据集清洗方法在不脱离本发明技术方案的前提下,还可以做出若干改进以及优化,这些改进与优化也应当视为本发明的保护范围。
114.本发明实施例提供一种文本数据集清洗方法,本发明实施例提供的技术方案通过接收待清洗的文本数据集;基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集;对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集;将所述第二格式第一文本数据集转换为第一格式第二文本数据集;将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集;对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。本发明实现了基于bash脚本和spark开源集群运算框架的高效的数据分类清洗方案,能够在短时间内处理tb级别的互联网文本数据集,提高了清洗效率。
115.实施例二
116.本发明提供了一种文本数据集清洗装置,如图3所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时可以实现文本数据集清洗方法,处理器包括接收模块、处理模块、检测模块、存储模块。
117.在本实施例中,接收模块用于接收待清洗的文本数据集;处理模块用于基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集;检测模块用于对清洗后的所述第一格式第三文本数据集进行抽样校验;存储模块用于将检验合格的所述第一格式第三文本数据集进行存储。
118.进一步地,处理模块用于对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集。
119.进一步地,处理模块还可用于将所述第二格式第一文本数据集转换为第一格式第二文本数据集。
120.进一步地,处理模块可用于将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集。
121.进一步地,处理模块用于对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。
122.进一步地,处理模块还可用于根据所述第一格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留;和/或根据所述第一格式文本数据集中各文本数据的前一百行是否包括中文字符来判断所述文本数据是否为中文文本数据,若是,则保留;若否,则删除,以形成第一格式第一文本数据集;
123.根据所述第二格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留,以形成第二格式第一文本数据集。
124.进一步地,处理模块用于将所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第二编码格式的文本数据转换为第一编码格式的文本数据,以形成第
一格式第三文本数据集。
125.进一步地,处理模块还可用于判断所述第一格式第三文本数据集中各文本数据的中文字符数是否大于或等于第一阈值且文本数据的中文字符占比是否大于或等于第二阈值;
126.若是,则保留此文本数据;若否,则删除。
127.进一步地,处理模块还可用于将收集到的敏感词汇分为第一类敏感词汇和第二类敏感词汇;
128.遍历所述第一格式第三文本数据集;
129.若所述第一格式第三文本数据集中的文本数据包括所述第一类敏感词汇,则将其删除;
130.若所述第一格式第三文本数据集中的文本数据包括所述第二类敏感词汇,则将包括所述第二类敏感词汇的段落删除,保留此文本数据的其他部分。
131.进一步地,处理模可用于通过bert base模型将所述第一格式第三文本数据集分成第一质量文本数据集和第二质量文本数据集;
132.删除所述第二质量文本数据集。
133.进一步地,处理模可用于将所述第一格式第三文本数据集中各文本数据的特殊字符去除;
134.将所述第一格式第三文本数据集中各文本数据的繁体字符转换为简体字符。
135.本发明实施例提供的技术方案带来的有益效果是:
136.本发明实施例提供的技术方案通过接收待清洗的文本数据集;基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集;对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集;将所述第二格式第一文本数据集转换为第一格式第二文本数据集;将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集;对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。本发明实现了基于bash脚本和spark开源集群运算框架的高效的数据分类清洗方案,能够在短时间内处理tb级别的互联网文本数据集,提高了清洗效率。
137.实施例三
138.本发明提供了一种计算机存储介质,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
139.接收待清洗的文本数据集;
140.基于bash脚本将所述待清洗的文本数据集分类成第一格式文本数据集和第二格式文本数据集;
141.对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集;
142.将所述第二格式第一文本数据集转换为第一格式第二文本数据集;
143.将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格
式转换,以形成第一格式第三文本数据集;
144.对所述第一格式第三文本数据集进行数据清洗操作,其中所述数据清洗操作包括:通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作。
145.进一步地,所述对所述第一格式文本数据集和第二格式文本数据集进行中文过滤操作,以分别形成第一格式第一文本数据集和第二格式第一文本数据集,包括:
146.根据所述第一格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留;和/或根据所述第一格式文本数据集中各文本数据的前一百行是否包括中文字符来判断所述文本数据是否为中文文本数据,若是,则保留;若否,则删除,以形成第一格式第一文本数据集;
147.根据所述第二格式文本数据集中各文本数据的全路径中是否包括第一预设词汇来判断所述文本数据是否为中文文本数据,若是,则删除;若否,则保留,以形成第二格式第一文本数据集。
148.进一步地,所述将所述第一格式第一文本数据集以及所述第一格式第二文本数据集进行编码格式转换,以形成第一格式第三文本数据集,包括:
149.将所述第一格式第一文本数据集以及第一格式第二文本数据集中编码格式为第二编码格式的文本数据转换为第一编码格式的文本数据,以形成第一格式第三文本数据集。
150.进一步地,所述通过消息摘要算法对所述第一格式第三文本数据集进行计算并进行内容去重操作之前,还包括:
151.通过bert base模型将所述第一格式第三文本数据集分成第一质量文本数据集和第二质量文本数据集;
152.删除所述第二质量文本数据集。
153.进一步地,所述对所述第一格式第三文本数据集进行数据清洗操作,还包括:
154.判断所述第一格式第三文本数据集中各文本数据的中文字符数是否大于或等于第一阈值且文本数据的中文字符占比是否大于或等于第二阈值;
155.若是,则保留此文本数据;若否,则删除。
156.进一步地,所述对所述第一格式第三文本数据集进行数据清洗操作,还包括:
157.将收集到的敏感词汇分为第一类敏感词汇和第二类敏感词汇;
158.遍历所述第一格式第三文本数据集;
159.若所述第一格式第三文本数据集中的文本数据包括所述第一类敏感词汇,则将其删除;
160.若所述第一格式第三文本数据集中的文本数据包括所述第二类敏感词汇,则将包括所述第二类敏感词汇的段落删除,保留此文本数据的其他部分。
161.进一步地,所述对所述第一格式第三文本数据集进行数据清洗操作,还包括:
162.将所述第一格式第三文本数据集中各文本数据的特殊字符去除;
163.将所述第一格式第三文本数据集中各文本数据的繁体字符转换为简体字符。
164.进一步地,所述文本数据集清洗方法包括:
165.对清洗后的所述第一格式第三文本数据集进行抽样校验;
166.将检验合格的所述第一格式第三文本数据集进行存储。
167.图4为本发明实施例三提供的可被用于实施本技术中所述的各个实施例的示例性系统;
168.如图4所示,在一些实施例中,系统能够作为各所述实施例中的任意一个用于文本数据集清洗的上述设备。在一些实施例中,系统可包括具有结果的一个或多个计算机可读介质(例如,系统存储器或nvm/存储设备)以及与该一个或多个计算机可读介质耦合并被配置为执行结果以实现模块从而执行本技术中所述的动作的一个或多个处理器(例如,(一个或多个)处理器)。
169.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来结果相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
170.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
171.以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1