CN112560435B - 文本语料处理方法、装置、设备及存储介质 - Google Patents
文本语料处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112560435B CN112560435B CN202011504668.1A CN202011504668A CN112560435B CN 112560435 B CN112560435 B CN 112560435B CN 202011504668 A CN202011504668 A CN 202011504668A CN 112560435 B CN112560435 B CN 112560435B
- Authority
- CN
- China
- Prior art keywords
- text
- corpus
- corpora
- text corpus
- maximum reserved
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- 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
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种文本语料处理方法、装置、设备及存储介质,属于数据处理技术领域。所述方法包括:获取多条文本语料;按照重复语料的最大保留数量,将所述多条文本语料划分为所述最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,所述最大保留数量为大于1的整数;对划分得到的多个文本语料分组分别进行去重处理;将去重处理后的所述多个文本语料分组进行合并。上述方法能够处理得到符合语言模型训练要求的文本语料。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种文本语料处理方法、装置、设备及存储介质。
背景技术
语言模型是根据语言客观事实而进行的语言抽象数学建模,语言模型由大量文本语料训练而来,这些文本语料一般是采用网络爬虫技术从网页上爬取得到。然而,爬取的文本语料中包括大量重复的文本语料,这些大量重复的文本语料会大大影响语言模型的训练效果,因此需要对文本语料进行去重处理。
相关技术中,一般通过Linux uniq(一种去重命令)来删除重复的文本语料,Linuxuniq会将所有重复的文本语料全部删除,对于相同的多条文本语料,只保留其中一条,然而如此得到的文本语料不能反映文本语料真实的分布情况,不符合语言模型的训练要求。
发明内容
本申请实施例提供了一种文本语料处理方法、装置、设备及存储介质,能够处理得到符合语言模型训练要求的文本语料。所述技术方案如下:
一方面,提供了一种文本语料处理方法,所述方法包括:
获取多条文本语料;
按照重复语料的最大保留数量,将所述多条文本语料随机划分为所述最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,所述最大保留数量为大于1的整数;
对划分得到的多个文本语料分组分别进行去重处理;
将去重处理后的所述多个文本语料分组进行合并。
在一种可能的实现方式中,所述按照重复语料的最大保留数量,将所述多条文本语料随机划分为所述最大保留数量个文本语料分组,包括:
按照所述重复语料的最大保留数量,建立所述最大保留数量个语料文件;
将所述多条文本语料随机写入所述最大保留数量个语料文件中。
在另一种可能的实现方式中,所述将所述多条文本语料随机写入所述最大保留数量个语料文件中,包括:
对于每一条文本语料,随机生成不大于所述最大保留数量的正整数;
将所述一条文本语料写入编号为所述正整数的语料文件中。
在另一种可能的实现方式中,所述对划分得到的多个文本语料分组分别进行去重处理,包括:
逐行读取每一个文本语料分组中的每一条文本语料,若与所述一个文本语料分组对应的参考集合中不存在与所述一条文本语料相同的文本语料,则将所述一条文本语料保存至所述参考集合。
在另一种可能的实现方式中,所述多个文本语料分组中的每一个文本语料分组包括多行,每行中包括一条文本语料,所述对划分得到的多个文本语料分组分别进行去重处理,包括:
对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
将所述每一个文本语料分组中重复的行删除。
在另一种可能的实现方式中,所述对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行,包括:
通过排序命令Linux sort对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
所述将所述每一个文本语料分组中重复的行删除,包括:
通过去重命令Linux uniq,将所述每一个文本语料分组中重复的行删除。
另一方面,提供了一种文本语料处理装置,所述装置包括:
语料获取模块,被配置为获取多条文本语料;
语料分组模块,被配置为按照重复语料的最大保留数量,将所述多条文本语料随机划分为所述最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,所述最大保留数量为大于1的整数;
去重处理模块,被配置为对划分得到的多个文本语料分组分别进行去重处理;
语料合并模块,被配置为将去重处理后的所述多个文本语料分组进行合并。
在一种可能的实现方式中,所述语料分组模块,包括:
文件建立单元,被配置为按照所述重复语料的最大保留数量,建立所述最大保留数量个语料文件;
语料写入单元,被配置为将所述多条文本语料随机写入所述最大保留数量个语料文件中。
在另一种可能的实现方式中,所述语料写入单元,被配置为对于每一条文本语料,随机生成不大于所述最大保留数量的正整数;将所述一条文本语料写入编号为所述正整数的语料文件中。
在另一种可能的实现方式中,所述去重处理模块,被配置为逐行读取每一个文本语料分组中的每一条文本语料,若与所述一个文本语料分组对应的参考集合中不存在与所述一条文本语料相同的文本语料,则将所述一条文本语料保存至所述参考集合。
在另一种可能的实现方式中,所述多个文本语料分组中的每一个文本语料分组包括多行,每行中包括一条文本语料,所述去重处理模块,包括:
语料排序单元,被配置为对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
行删除单元,被配置为将所述每一个文本语料分组中重复的行删除。
在另一种可能的实现方式中,所述语料排序单元,被配置为通过排序命令Linuxsort对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
所述行删除单元,被配置为通过去重命令Linux uniq,将所述每一个文本语料分组中重复的行删除。
另一方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述程序代码由所述处理器加载并执行以实现上述任一种可能实现方式中的文本语料处理方法中执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现上述任一种可能实现方式中的文本语料处理方法中执行的操作。
另一方面,提供了一种计算机程序产品,所述计算机程序产品中包括至少一条程序代码,所述程序代码由处理器加载并执行以实现上述任一种可能实现方式中的文本语料处理方法中执行的操作。
本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例提供的技术方案,不是直接对多条文本语料进行去重处理,而是划分多个分组并分别进行去重处理,以使每个分组中的同一文本语料只有一条,因此,剩余的文本语料的最大重复数量不会大于分组的数量,从而达到了指定重复语料的最大保留数量的效果,能够避免大量重复语料对语言模型的训练影响。并且,由于多条文本语料是随机划分为多个分组的,则重复数量较多的文本语料会分布到较多的分组中,且由于包括该文本语料的各个分组分别进行去重处理后都会保留一条该文本语料,则去重处理后剩余的该文本语料的重复数量依旧较多,同理,重复数量较少的文本语料则会分布到较少的分组中,从而去重处理后剩余的该文本语料的重复数量也较少,因此,经过分组去重处理再合并的方式,使得处理前后各种文本语料的重复数量之间的比例关系大致不变,仍然能够反映文本语料真实的分布情况,符合语言模型的训练要求。
并且,本申请实施例提供的技术方案,在内存较小的情况下,能够对多个分组依次进行去重处理,每次只处理其中一个分组,因此每次只需要将其中一个分组中的文本语料加载到内存即可,而不是像Linux uniq那样,需要将所有文本语料全部加载到内存进行统一的去重处理,因此,本申请提供的技术方案不仅实现了在使用较小内存的情况下完成语料的去重处理,并且,处理速度明显快于Linux uniq。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种文本语料处理方法的流程图;
图3是本申请实施例提供的一种文本语料处理过程的示意图;
图4是本申请实施例提供的一种文本语料处理过程的示意图;
图5是本申请实施例提供的一种文本语料处理装置的框图;
图6是本申请实施例提供的一种终端的结构示意图;
图7是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请所使用的术语“至少一个”、“多个”、“每个”、“任一”,至少一个包括一个、两个或两个以上,多个包括两个或两个以上,而每个是指对应的多个中的每一个,任一是指多个中的任意一个。举例来说,多个语料分组包括3个语料分组,而每个是指这3个语料分组中的每一个语料分组,任一是指这3个语料分组中的任意一个,可以是第一个,可以是第二个、也可以是第三个。
图1是本申请实施例提供的一种实施环境的示意图。参见图1,该实施环境包括终端101和服务器102。终端101和服务器102之间通过无线或者有线网络连接。可选地,终端101为电脑、手机、平板电脑或者其他终端。可选地,服务器102为应用的后台服务器或者为提供云计算以及云存储等服务的云服务器。
可选地,终端101上安装由服务器102提供服务的目标应用,终端101能够通过该目标应用实现例如数据传输、消息交互等功能。可选地,目标应用为终端101操作系统中的目标应用,或者为第三方提供的目标应用。该目标应用具有文本语料处理功能,即能够对多条文本语料进行处理,得到符合语言模型训练要求的文本语料。当然,该目标应用还能够具有其他功能,例如,训练语言模型的功能,本申请对此不做限制。
本申请实施例中,服务器102用于采用网络爬虫技术从网页上爬取大量的文本语料,向终端101发送爬取的文本语料,而终端101用于对文本语料进行去重处理,得到符合语言模型训练要求的文本语料。
本申请提供的文本语料处理方法能够应用于对任何文本语料进行去重处理的场景下,例如,应用在对训练语言模型的文本语料进行去重处理的场景下,或者应用在对训练语音识别模型、语音转换模型的文本语料进行去重处理的场景下,本申请对此不做限制。
图2是本申请实施例提供的一种文本语料处理方法的流程图。参见图2,该方法包括:
201:终端获取多条文本语料。
语料,即语言材料。语料具有多个格式,例如语音格式,文本格式等,文本语料则是指文本格式的语料。
在一种可能的实现方式中,终端获取文本语料包括:终端采用网络爬虫技术从网页上爬取文本语料。或者,在获取到用户授权后,终端录制用户平时的语音,将该语音转换为文本,得到多条文本语料。或者,终端接收服务器或者其他终端发送的多条文本语料,其中,服务器或者其他终端获取多条文本语料的方式与该终端获取多条文本语料的方式同理。由于网页上的文本语料是用户发布在网页上的,且录制的语音也是用户在语言交流过程中产生的,因此,上述文本语料为在语言的使用中真实出现过的语言材料。
获取的多条文本语料能够用于对语言模型进行训练,考虑到该多条文本语料中可能包括大量重复的文本语料,这些大量重复的文本语料会影响语言模型的训练效果,因此,获取到多条文本语料后,终端通过下述步骤来对该多条文本语料进行去重处理,以得到符合语言模型训练要求的文本语料。
202:终端按照重复语料的最大保留数量,将多条文本语料随机划分为最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,最大保留数量为大于1的整数。
最大保留数量是指经过去重处理后,相同的文本语料最多能够保留的数量,即文本语料最大的重复数量。例如,最大保留数量为100,则经过去重处理后,任一文本语料的重复数量都不会大于100,但是不同的文本语料的重复数量可能不同。在本申请实施例中,最大保留数量为大于1的整数,能够避免经过去重处理后每种文本语料的数量都相同而无法反映文本语料真实的分布情况,影响语言模型的训练效果。
终端获取到多条文本语料后,对多条文本语料随机进行划分,得到最大保留数量个文本语料分组,其中,每个文本语料分组包括至少一条文本语料,并且每个语料分组中的文本语料的条数相同或者不同,本申请实施例对此不做限制。
在一种可能的实现方式中,终端按照重复语料的最大保留数量,将多条文本语料划分为最大保留数量个文本语料分组,包括:终端按照重复语料的最大保留数量,建立最大保留数量个语料文件;将多条文本语料随机写入最大保留数量个语料文件中。
可选地,所建立的语料文件为空文件。或者,所建立的语料文件中包括除了文本语料外的其他数据,例如,文本语料的来源、用途、获取时间等。
可选地,该多条文本语料位于原始文件中,该原始文件包括多行,每行包括一条文本语料,则终端逐行读取原始文件中的每一条文本语料,将该一条文本语料随机写入最大保留数量个语料文件中的其中一个语料文件中。
在一种可能的实现方式中,终端将多条文本语料随机写入最大保留数量个语料文件中,包括:对于每一条文本语料,终端随机生成不大于最大保留数量的正整数;将该一条文本语料写入编号为该正整数的语料文件中。
可选地,终端先建立编号分别为1至最大保留数量的多个语料文件,之后对于每一条文本语料,随机生成不大于最大保留数量的正整数,将该一条文本语料写入编号为该正整数的语料文件中。例如,最大保留数量为100,则终端建立编号分别为1-100的100个语料文件,对于每一条文本语料,随机生成不大于100的正整数,若该正整数为40,则将该一条文本语料写入编号为40的语料文件中。
或者,对于每一条文本语料,终端随机生成不大于最大保留数量的正整数,若终端还未建立编号为该正整数的语料文件,则终端建立编号为该正整数的语料文件,将该一条文本语料写入该语料文件中,若终端已经建立有编号为该正整数的语料文件,则直接将该一条文本语料写入该语料文件中。
可选地,终端随机生成不大于最大保留数量的正整数的实现方式为:终端通过随机函数随机生成不大于最大保留数量的正整数。
203:终端对划分得到的多个文本语料分组分别进行去重处理。
终端对划分得到的多个文本语料分组分别进行去重处理,则去重处理后每个文本语料分组中都不会包括重复的文本语料。
在一种可能的实现方式中,多个文本语料分组中的每一个文本语料分组包括多行,每行中包括一条文本语料,相应的,终端对划分得到的多个文本语料分组分别进行去重处理,包括:终端对每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;将每一个文本语料分组中重复的行删除。图3为终端进行去重处理的过程示意图,参考图3,未进行排序前相同的文本语料可能不位于相邻的行,进行排序后,凡是相同的文本语料均位于相邻的行,对排序后的文本语料分组进行去重处理后,重复的行被删除,文本语料分组中不存在重复的文本语料。
可选地,终端对每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行,包括:终端通过Linux sort(一种排序命令)对每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行。
可选地,终端将每一个文本语料分组中重复的行删除,包括:终端通过Linux uniq(一种去重命令),将每一个文本语料分组中重复的行删除。
在一种可能的实现方式中,终端对划分得到的多个文本语料分组分别进行去重处理,包括:终端逐行读取每一个文本语料分组中的每一条文本语料,若与该一个文本语料分组对应的参考集合中不存在与该一条文本语料相同的文本语料,则将该一条文本语料保存至该参考集合。如此,得到的每个参考集合中均不会包括重复的文本语料,达到了去重效果。并且,在进行去重处理的过程中,无需对每个文本语料分组中的文本语料进行排序,由于文本语料的数量庞大,因此不进行排序能够极大提高去重处理的效率。图4为终端进行去重处理的过程示意图,参考图4,对于文本语料分组中的每一条文本语料,例如,对于位于第一行的文本语料A,判断参考集合中是否存在文本语料A,由于判断结果为不存在,则将文本语料A保存在该参考集合。又如,对于位于第三行的文本语料A,由于判断参考集合中已经存在文本语料A,则不会将第三行的文本语料A重新保存在参考集合中。
需要说明的一点是,每个文本语料分组都对应一个参考集合,该参考集合为一个无序的不重复元素序列。在本申请实施例中,该参考集合中的元素即为文本语料。
在一种可能的实现方式中,终端对划分得到的多个文本语料分组分别进行去重处理,包括:终端通过文本处理程序依次对每个文本语料分组进行去重处理。由于对文本语料进行去重处理时,需要将当前处理的多条文本语料全部加载进内存当中,因此,将文本语料划分为多个分组,每次仅对其中一个分组进行去重处理,能够保证在内存有限的情况下,文本处理程序能够正常运行,以对文本语料进行去重处理。
204:终端将去重处理后的多个文本语料分组进行合并。
示例性的,终端将去重处理后的多个文本语料分组进行合并的实现方式为:终端将多个文本语料分组中的文本语料保存至同一语料文件中。
在本申请实施例中,由于多条文本语料是随机划分为最大保留数量个文本语料分组的,因此,多条文本语料中重复数量较多的文本语料会分布到较多的分组中,且由于包括该文本语料的各个分组分别进行去重处理后都会保留一条该文本语料,则将去重处理后的多个文本语料分组进行合并后,得到的该文本语料的重复数量依旧较多,同理,重复数量较少的文本语料则会分布到较少的分组中,从而合并后的文本语料分组中该文本语料的重复数量也较少,因此,经过分组去重处理再合并的方式,使得处理前后各种文本语料的重复数量之间的比例关系大致不变,仍然能够反映文本语料真实的分布情况,符合语言模型的训练要求。
需要说明的一点是,上述实施例仅以执行主体为终端为例进行说明,实际上,执行主体能够为除终端以外的其他电子设备,例如服务器,本申请对此不做限制。
本申请实施例提供的技术方案,不是直接对多条文本语料进行去重处理,而是划分多个分组并分别进行去重处理,以使每个分组中的同一文本语料只有一条,因此,剩余的文本语料的最大重复数量不会大于分组的数量,从而达到了指定重复语料的最大保留数量的效果,能够避免大量重复语料对语言模型的训练影响。并且,由于多条文本语料是随机划分为多个分组的,则重复数量较多的文本语料会分布到较多的分组中,且由于包括该文本语料的各个分组分别进行去重处理后都会保留一条该文本语料,则去重处理后剩余的该文本语料的重复数量依旧较多,同理,重复数量较少的文本语料则会分布到较少的分组中,从而去重处理后剩余的该文本语料的重复数量也较少,因此,经过分组去重处理再合并的方式,使得处理前后各种文本语料的重复数量之间的比例关系大致不变,仍然能够反映文本语料真实的分布情况,符合语言模型的训练要求。
并且,本申请实施例提供的技术方案,在内存较小的情况下,能够对多个分组依次进行去重处理,每次只处理其中一个分组,因此每次只需要将其中一个分组中的文本语料加载到内存即可,而不是像Linux uniq那样,需要将所有文本语料全部加载到内存进行统一的去重处理,因此,本申请提供的技术方案不仅实现了在使用较小内存的情况下完成语料的去重处理,并且,处理速度明显快于Linux uniq。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
图5是本申请实施例提供的一种文本语料处理装置的框图。参见图5,该装置包括:
语料获取模块501,被配置为获取多条文本语料;
语料分组模块502,被配置为按照重复语料的最大保留数量,将多条文本语料随机划分为最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,最大保留数量为大于1的整数;
去重处理模块503,被配置为对划分得到的多个文本语料分组分别进行去重处理;
语料合并模块504,被配置为将去重处理后的多个文本语料分组进行合并。
在一种可能的实现方式中,语料分组模块502,包括:
文件建立单元,被配置为按照重复语料的最大保留数量,建立最大保留数量个语料文件;
语料写入单元,被配置为将多条文本语料随机写入最大保留数量个语料文件中。
在另一种可能的实现方式中,语料写入单元,被配置为对于每一条文本语料,随机生成不大于最大保留数量的正整数;将一条文本语料写入编号为正整数的语料文件中。
在另一种可能的实现方式中,去重处理模块503,被配置为逐行读取每一个文本语料分组中的每一条文本语料,若与一个文本语料分组对应的参考集合中不存在与一条文本语料相同的文本语料,则将一条文本语料保存至参考集合。
在另一种可能的实现方式中,多个文本语料分组中的每一个文本语料分组包括多行,每行中包括一条文本语料,去重处理模块503,包括:
语料排序单元,被配置为对每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
行删除单元,被配置为将每一个文本语料分组中重复的行删除。
在另一种可能的实现方式中,语料排序单元,被配置为通过排序命令Linux sort对每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
行删除单元,被配置为通过去重命令Linux uniq,将每一个文本语料分组中重复的行删除。
本申请实施例提供的技术方案,不是直接对多条文本语料进行去重处理,而是划分多个分组并分别进行去重处理,以使每个分组中的同一文本语料只有一条,因此,剩余的文本语料的最大重复数量不会大于分组的数量,从而达到了指定重复语料的最大保留数量的效果,能够避免大量重复语料对语言模型的训练影响。并且,由于多条文本语料是随机划分为多个分组的,则重复数量较多的文本语料会分布到较多的分组中,且由于包括该文本语料的各个分组分别进行去重处理后都会保留一条该文本语料,则去重处理后剩余的该文本语料的重复数量依旧较多,同理,重复数量较少的文本语料则会分布到较少的分组中,从而去重处理后剩余的该文本语料的重复数量也较少,因此,经过分组去重处理再合并的方式,使得处理前后各种文本语料的重复数量之间的比例关系大致不变,仍然能够反映文本语料真实的分布情况,符合语言模型的训练要求。
并且,本申请实施例提供的技术方案,在内存较小的情况下,能够对多个分组依次进行去重处理,每次只处理其中一个分组,因此每次只需要将其中一个分组中的文本语料加载到内存即可,而不是像Linux uniq那样,需要将所有文本语料全部加载到内存进行统一的去重处理,因此,本申请提供的技术方案不仅实现了在使用较小内存的情况下完成语料的去重处理,并且,处理速度明显快于Linux uniq。
需要说明的是:上述实施例提供的文本语料处理装置在进行文本语料的处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将电子设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的文本语料处理装置与文本语料处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种电子设备,该电子设备包括处理器和存储器,存储器中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的文本语料处理方法中执行的操作。
可选地,该电子设备提供为终端。图6示出了本申请一个示例性实施例提供的终端600的结构框图。该终端600可以是:智能手机、平板电脑、MP3播放器(Moving PictureExperts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPicture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端600还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
终端600包括有:处理器601和存储器602。
处理器601可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器601可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器601也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器601可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器601还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器602可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器602还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器602中的非暂态的计算机可读存储介质用于存储至少一个程序代码,该至少一个程序代码用于被处理器601所执行以实现本申请中方法实施例提供的文本语料处理方法。
在一些实施例中,终端600还可选包括有:外围设备接口603和至少一个外围设备。处理器601、存储器602和外围设备接口603之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口603相连。具体地,外围设备包括:射频电路604、显示屏605、摄像头组件606、音频电路607、定位组件608和电源609中的至少一种。
外围设备接口603可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器601和存储器602。在一些实施例中,处理器601、存储器602和外围设备接口603被集成在同一芯片或电路板上;在一些其他实施例中,处理器601、存储器602和外围设备接口603中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路604用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路604通过电磁信号与通信网络以及其他通信设备进行通信。射频电路604将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路604包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路604可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路604还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏605用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏605是触摸显示屏时,显示屏605还具有采集在显示屏605的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器601进行处理。此时,显示屏605还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏605可以为一个,设置终端600的前面板;在另一些实施例中,显示屏605可以为至少两个,分别设置在终端600的不同表面或呈折叠设计;在另一些实施例中,显示屏605可以是柔性显示屏,设置在终端600的弯曲表面上或折叠面上。甚至,显示屏605还可以设置成非矩形的不规则图形,也即异形屏。显示屏605可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件606用于采集图像或视频。可选地,摄像头组件606包括前置摄像头和后置摄像头。前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件606还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路607可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器601进行处理,或者输入至射频电路604以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端600的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器601或射频电路604的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路607还可以包括耳机插孔。
定位组件608用于定位终端600的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件608可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源609用于为终端600中的各个组件进行供电。电源609可以是交流电、直流电、一次性电池或可充电电池。当电源609包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端600还包括有一个或多个传感器610。该一个或多个传感器610包括但不限于:加速度传感器611、陀螺仪传感器612、压力传感器613、指纹传感器614、光学传感器615以及接近传感器616。
加速度传感器611可以检测以终端600建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器611可以用于检测重力加速度在三个坐标轴上的分量。处理器601可以根据加速度传感器611采集的重力加速度信号,控制显示屏605以横向视图或纵向视图进行用户界面的显示。加速度传感器611还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器612可以检测终端600的机体方向及转动角度,陀螺仪传感器612可以与加速度传感器611协同采集用户对终端600的3D动作。处理器601根据陀螺仪传感器612采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器613可以设置在终端600的侧边框和/或显示屏605的下层。当压力传感器613设置在终端600的侧边框时,可以检测用户对终端600的握持信号,由处理器601根据压力传感器613采集的握持信号进行左右手识别或快捷操作。当压力传感器613设置在显示屏605的下层时,由处理器601根据用户对显示屏605的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器614用于采集用户的指纹,由处理器601根据指纹传感器614采集到的指纹识别用户的身份,或者,由指纹传感器614根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器601授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器614可以被设置终端600的正面、背面或侧面。当终端600上设置有物理按键或厂商Logo时,指纹传感器614可以与物理按键或厂商Logo集成在一起。
光学传感器615用于采集环境光强度。在一个实施例中,处理器601可以根据光学传感器615采集的环境光强度,控制显示屏605的显示亮度。具体地,当环境光强度较高时,调高显示屏605的显示亮度;当环境光强度较低时,调低显示屏605的显示亮度。在另一个实施例中,处理器601还可以根据光学传感器615采集的环境光强度,动态调整摄像头组件606的拍摄参数。
接近传感器616,也称距离传感器,设置在终端600的前面板。接近传感器616用于采集用户与终端600的正面之间的距离。在一个实施例中,当接近传感器616检测到用户与终端600的正面之间的距离逐渐变小时,由处理器601控制显示屏605从亮屏状态切换为息屏状态;当接近传感器616检测到用户与终端600的正面之间的距离逐渐变大时,由处理器601控制显示屏605从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图6中示出的结构并不构成对终端600的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
可选地,该电子设备提供为服务器。图7是本申请实施例提供的一种服务器的结构示意图,该服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)701和一个或一个以上的存储器702,其中,所述存储器702中存储有至少一条程序代码,所述至少一条程序代码由所述处理器701加载并执行以实现上述各个方法实施例提供的文本语料处理方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的文本语料处理方法中执行的操作。
本申请实施例还提供了一种计算机程序,该计算机程序中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的文本语料处理方法中执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种文本语料处理方法,其特征在于,所述方法包括:
获取多条文本语料;
按照重复语料的最大保留数量,将所述多条文本语料随机划分为所述最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,所述最大保留数量为大于1的整数;
对划分得到的多个文本语料分组分别进行去重处理;
将去重处理后的所述多个文本语料分组进行合并。
2.根据权利要求1所述的方法,其特征在于,所述按照重复语料的最大保留数量,将所述多条文本语料随机划分为所述最大保留数量个文本语料分组,包括:
按照所述重复语料的最大保留数量,建立所述最大保留数量个语料文件;
将所述多条文本语料随机写入所述最大保留数量个语料文件中。
3.根据权利要求2所述的方法,其特征在于,所述将所述多条文本语料随机写入所述最大保留数量个语料文件中,包括:
对于每一条文本语料,随机生成不大于所述最大保留数量的正整数;
将所述一条文本语料写入编号为所述正整数的语料文件中。
4.根据权利要求1所述的方法,其特征在于,所述对划分得到的多个文本语料分组分别进行去重处理,包括:
逐行读取每一个文本语料分组中的每一条文本语料,若与所述一个文本语料分组对应的参考集合中不存在与所述一条文本语料相同的文本语料,则将所述一条文本语料保存至所述参考集合。
5.根据权利要求1所述的方法,其特征在于,所述多个文本语料分组中的每一个文本语料分组包括多行,每行中包括一条文本语料,所述对划分得到的多个文本语料分组分别进行去重处理,包括:
对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
将所述每一个文本语料分组中重复的行删除。
6.根据权利要求5所述的方法,其特征在于,所述对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行,包括:
通过排序命令Linux sort对所述每一个文本语料分组中的多条文本语料进行排序,以使相同的文本语料位于相邻的行;
所述将所述每一个文本语料分组中重复的行删除,包括:
通过去重命令Linux uniq,将所述每一个文本语料分组中重复的行删除。
7.一种文本语料处理装置,其特征在于,所述装置包括:
语料获取模块,被配置为获取多条文本语料;
语料分组模块,被配置为按照重复语料的最大保留数量,将所述多条文本语料随机划分为所述最大保留数量个文本语料分组,每个文本语料分组包括至少一条文本语料,所述最大保留数量为大于1的整数;
去重处理模块,被配置为对划分得到的多个文本语料分组分别进行去重处理;
语料合并模块,被配置为将去重处理后的所述多个文本语料分组进行合并。
8.根据权利要求7所述的装置,其特征在于,所述语料分组模块,包括:
文件建立单元,被配置为按照所述重复语料的最大保留数量,建立所述最大保留数量个语料文件;
语料写入单元,被配置为将所述多条文本语料随机写入所述最大保留数量个语料文件中。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述程序代码由所述处理器加载并执行以实现如权利要求1至权利要求6任一项所述的文本语料处理方法所执行的操作。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如权利要求1至权利要求6任一项所述的文本语料处理方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011504668.1A CN112560435B (zh) | 2020-12-18 | 2020-12-18 | 文本语料处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011504668.1A CN112560435B (zh) | 2020-12-18 | 2020-12-18 | 文本语料处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112560435A CN112560435A (zh) | 2021-03-26 |
CN112560435B true CN112560435B (zh) | 2022-03-11 |
Family
ID=75063635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011504668.1A Active CN112560435B (zh) | 2020-12-18 | 2020-12-18 | 文本语料处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112560435B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996261B (zh) * | 2022-08-05 | 2022-10-28 | 深圳市深蓝信息科技开发有限公司 | 基于ais数据的去重方法、装置、终端设备及存储介质 |
CN116167455B (zh) * | 2022-12-27 | 2023-12-22 | 北京百度网讯科技有限公司 | 模型训练及数据去重方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388503A (zh) * | 2018-09-20 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 一种事件处理方法及装置 |
CN110750980A (zh) * | 2019-12-25 | 2020-02-04 | 北京海天瑞声科技股份有限公司 | 短语语料获取方法及短语语料获取装置 |
CN111753299A (zh) * | 2020-06-22 | 2020-10-09 | 重庆文理学院 | 一种基于分组集成的不平衡恶意软件检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10341206B1 (en) * | 2017-12-27 | 2019-07-02 | Extrahop Networks, Inc. | Network packet de-duplication |
-
2020
- 2020-12-18 CN CN202011504668.1A patent/CN112560435B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388503A (zh) * | 2018-09-20 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 一种事件处理方法及装置 |
CN110750980A (zh) * | 2019-12-25 | 2020-02-04 | 北京海天瑞声科技股份有限公司 | 短语语料获取方法及短语语料获取装置 |
CN111753299A (zh) * | 2020-06-22 | 2020-10-09 | 重庆文理学院 | 一种基于分组集成的不平衡恶意软件检测方法 |
Non-Patent Citations (1)
Title |
---|
Shell学习笔记:awk实现group by分组统计功能;Hider1214;《https://www.cnblogs.com/hider/p/11834706.html》;20191111;第1-4页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112560435A (zh) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110674022B (zh) | 行为数据获取方法、装置及存储介质 | |
CN108536463B (zh) | 获取资源包的方法、装置、设备及计算机可读存储介质 | |
CN108965757B (zh) | 视频录制方法、装置、终端及存储介质 | |
CN110569220B (zh) | 游戏资源文件的展示方法、装置、终端及存储介质 | |
CN110147380B (zh) | 数据更新方法、装置、服务器以及存储介质 | |
CN110147503B (zh) | 信息发布方法、装置、计算机设备和存储介质 | |
CN111949680A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN112560435B (zh) | 文本语料处理方法、装置、设备及存储介质 | |
CN110705614A (zh) | 模型训练方法、装置、电子设备及存储介质 | |
CN110647881A (zh) | 确定图像对应的卡片类型的方法、装置、设备及存储介质 | |
CN110677713B (zh) | 视频图像处理方法及装置、存储介质 | |
CN110191236B (zh) | 歌曲播放队列管理方法、装置、终端设备及存储介质 | |
CN111241451A (zh) | 网页处理方法、装置、计算机设备及存储介质 | |
CN113407741B (zh) | 素材管理方法、装置、电子设备及存储介质 | |
CN111711841B (zh) | 图像帧播放方法、装置、终端及存储介质 | |
CN114817709A (zh) | 排序方法、装置、设备及计算机可读存储介质 | |
CN111464829B (zh) | 切换媒体数据的方法、装置、设备及存储介质 | |
CN114595019A (zh) | 应用程序的主题设置方法、装置、设备及存储介质 | |
CN114594885A (zh) | 应用图标的管理方法、装置、设备及计算机可读存储介质 | |
CN109189525B (zh) | 加载子页面的方法、装置、设备及计算机可读存储介质 | |
CN113301422A (zh) | 获取视频封面的方法、终端及存储介质 | |
CN113076286A (zh) | 获取多媒体文件的方法、装置、设备和可读存储介质 | |
CN111064782B (zh) | 传输数据的方法、装置、电子设备及存储介质 | |
CN113052408B (zh) | 一种社区聚合的方法及装置 | |
CN114579942B (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 |