英文邮件文本数据处理方法、装置、设备及可存储介质

文档序号:907628 发布日期:2021-02-26 浏览:5次 >En<

阅读说明:本技术 英文邮件文本数据处理方法、装置、设备及可存储介质 (English mail text data processing method, device, equipment and storage medium ) 是由 祁俊辉 于 2020-09-25 设计创作,主要内容包括:本发明适用数据处理技术领域,提供英文邮件文本数据处理方法、装置、设备及可存储介质,获取英文邮件文本数据中的标点符号的类型及对应数量,确定逗号占比;当逗号占比不小于预设比例阈值时,则根据N-Gram语言模型对逗号进行纠正处理,进而对经逗号纠正处理后的英文邮件文本数据进行句子切分处理;当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据N-Gram语言模型对英文邮件文本数据进行长句处理,得到处理后的英文邮件文本数据。本发明解决了因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,可以达到正确地对邮件文本进行句子划分的目的,为邮件数据的后续挖掘作技术支持。(The invention is suitable for the technical field of data processing, provides an English mail text data processing method, a device, equipment and a storage medium, obtains the types and the corresponding number of punctuations in the English mail text data, and determines the comma ratio; when the comma proportion is not less than a preset proportion threshold, carrying out correction processing on the comma according to the N-Gram language model, and further carrying out sentence segmentation processing on the English mail text data subjected to comma correction processing; and when the long sentences with commas larger than a preset number threshold exist in the English mail text data after sentence segmentation processing, performing long sentence processing on the English mail text data according to the N-Gram language model to obtain the processed English mail text data. The invention solves the problem of irregular sentence division of the regular expression caused by different habits of different people on writing mails, can achieve the aim of correctly dividing sentences of the mail text, and provides technical support for the subsequent mining of mail data.)

英文邮件文本数据处理方法、装置、设备及可存储介质

技术领域

本发明属于数据处理技术领域,尤其涉及一种英文邮件文本数据处理方法、装置、设备及可存储介质。

背景技术

在邮件数据处理中,为了自动获取邮件摘要等服务,需要首先对邮件文本进行句子切分。然而每个人书写邮件的方式不同,以英文邮件为例,有的人会用多个空格来表示标点符号,有的人会以回车符替代标点符号以表示不同句子,还有的人会一直打逗号,其中没有句号结尾,非常的不规范。

现有技术只支持规范文本的句子切割,其本质还是通过正则表达式等方式匹配标点符号来切割句子,但这种方法对不规范的邮件文本数据来讲极其不适用。

由此可见,现有的文本句子切割方法无法适用于因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,使用受限的问题。

发明内容

本发明实施例的目的在于提供一种英文邮件文本数据处理方法,旨在解决现有的文本句子切割方法无法适用于因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,使用受限的问题。

本发明实施例是这样实现的,一种英文邮件文本数据处理方法,包括:

获取待处理的英文邮件文本数据;

获取所述英文邮件文本数据中的标点符号的类型以及对应数量;

根据所述标点符号的类型以及对应数量,确定逗号占比;

当所述逗号占比不小于预设比例阈值时,则根据预设的N-Gram语言模型对逗号进行纠正处理;

根据所述预设的N-Gram语言模型,对经逗号纠正处理后的英文邮件文本数据进行分句处理;

当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据所述预设的N-Gram语言模型对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。

本发明实施例的另一目的在于一种英文邮件文本数据处理装置,包括:

文本数据获取单元,用于获取待处理的英文邮件文本数据;

标点符号类型及数量获取单元,用于获取所述英文邮件文本数据中的标点符号的类型以及对应数量;

逗号占比确定单元,用于根据所述标点符号的类型以及对应数量,确定逗号占比;

逗号纠正单元,用于当所述逗号占比不小于预设比例阈值时,则根据预设的N-Gram语言模型对逗号进行纠正处理;

分句处理单元,用于根据所述预设的N-Gram语言模型,对经逗号纠正处理后的英文邮件文本数据进行分句处理;以及

长句处理单元,用于当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据所述预设的N-Gram语言模型对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。

本发明实施例的另一目的在于一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述英文邮件文本数据处理方法的步骤。

本发明实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述英文邮件文本数据处理方法的步骤。

本发明实施例提供的一种英文邮件文本数据处理方法,通过对待处理英文邮件文本数据中的标点符号的类型以及对应数量,确定逗号占比,当逗号占比不小于预设比例阈值时,则对逗号进行纠正处理,进而对经逗号纠正处理后的英文邮件文本数据进行句子切分处理,当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。本发明与现有技术相比,解决了因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,可以达到正确地对邮件文本进行句子划分的目的,为邮件数据的后续挖掘作技术支持。

附图说明

图1为本发明实施例提供的一种英文邮件文本数据处理方法的实现流程图;

图2为本发明实施例提供的另一种英文邮件文本数据处理方法的实现流程图;

图3为本发明实施例提供的又一种英文邮件文本数据处理方法的实现流程图;

图4为本发明实施例提供的再一种英文邮件文本数据处理方法的实现流程图;

图5为本发明实施例提供的还一种英文邮件文本数据处理方法的实现流程图;

图6为本发明实施例提供的一种英文邮件文本数据处理装置的结构框图;

图7为本发明实施例提供的另一种英文邮件文本数据处理装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本发明实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。

本发明实施例为了解决现有的文本句子切割方法无法适用于因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,使用受限的问题,提供的一种英文邮件文本数据处理方法,通过对待处理英文邮件文本数据中的标点符号的类型以及对应数量,确定逗号占比,当逗号占比不小于预设比例阈值时,则对逗号进行纠正处理,进而对经逗号纠正处理后的英文邮件文本数据进行句子切分处理,当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据,可以达到正确地对因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的邮件文本进行句子划分的目的,为邮件数据的后续挖掘作技术支持。

为了进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如下。

如图1所示,在一个实施例中,提出了一种英文邮件文本数据处理方法,为了便于说明,仅示出与本发明实施例相关的部分,详述如下:

步骤S101,获取待处理的英文邮件文本数据。

在本发明实施例中,英文邮件文本数据即英文邮件文本内容,其格式可以为ASCII、MIME、*.txt等,具体不做限制;另外,该邮件文本数据可以是从电子邮箱应用软件如谷歌邮箱、QQ邮箱、163邮箱、新浪邮箱、搜狐邮箱、126邮箱等中获取,具体不做限制。

在本发明一个优选的实施例中,如图2所示,在所述步骤S101之后,还包括:

步骤S201,根据预设标准格式规则,对所述英文邮件文本数据中的不规则字符进行去除。

在本发明实施例中,当英文邮件文本数据的格式为ASCII时,则应当先将该英文邮件文本数据中存在的不在ASCII码表中的字符进行去除;其中,ASCII(American StandardCode for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其为最通用的信息交换标准,并等同于国际标准ISO/IEC 646。

步骤S102,获取所述英文邮件文本数据中的标点符号的类型以及对应数量。

在本发明实施例中,英文邮件文本数据中的标点符号的类型包括但不限于逗号、句号、感叹号、问号等,通过获取每个标点符号的类型及其对应的数量可以进一步计算获得某一标点符号在整个英文邮件文本数据中占所有标点符号总数的比例。

步骤S103,根据所述标点符号的类型以及对应数量,确定逗号占比。

在本发明实施例中,根据大数据显示,逗号是大部分人在书写邮件时最常用的标点符号,往往本应该是句号、感叹号、问号等典型断句符号时也被使用成了逗号,因此本发明根据上述获得的逗号与各断句符号对应数量,来进一步确定逗号占比;然而,一般在英文文本中,往往只根据句号、感叹号、问号进行句子的切分,故在本发明实施例中只需统计这几种标点符号,而对于其他冒号、分号、省略号等只需当做一般字符处理即可。如计算得到的邮件文本数据中的逗号个数num1、句号个数num2、感叹号个数num3以及问号个数num4,则根据公式(1)计算逗号占比ratio1

步骤S104,当所述逗号占比不小于预设比例阈值时,则根据预设的N-Gram语言模型对逗号进行纠正处理。

在本发明实施例中,预设比例阈值可以在具体实现时,根据终端性能和/或实现需求等自行设定,本发明实施例对上述预设比例阈值的大小不作具体限定,比如举例来说,上述预设比例阈值可以为0.3、0.5、0.7等。本发明在此将预设比例阈值优选为0.7,即若逗号占比ratio1大于或等于0.7则进行逗号纠正;否则,跳过此环节。在发明实施例中,将预设比例阈值设定为0.7为本发明经多次试验得出的最佳数值,比如一句话中一共有上述四种标点符号10个,其中逗号有9个,句号有1个,则该句子显然与常规句子不相符,可以认为这句话存在语病,可能在该写句号的时候写错为了逗号。

在本发明实施例中,如英文邮件文本数据为“I have a good friend,and hername is Li Hua,We have become friends for about two years,She is very kind,When I step into the classroom for the first time,she helps me to getfamiliar with the strange environment,The most important thing is that weshare the same interest,so we have a lot in common,i cherish our friendshipso much.”,则根据公式(1),计算得到ratio=8/9=0.89,大于阈值0.7,故进行逗号纠正。

在本发明实施例中,对于该预设的N-Gram语言模型的训练,可以以多语言维基百科语料库作为训练语料集,使用多语言分词工具进行词切割,之后通过N-Gram语言模型训练工具进行N-Gram语言模型的训练;另外,由于N值较大时,对N-Gram语言模型的训练则需要庞大的训练语料且数据稀疏严重,时间复杂度也将大大提高,因此,本发明实施例中令N-Gram语言模型中的N=3;对于长尾词(即出现总次数小于10次的词)统一将其记为LongTailWord;对于数字统一将其记为NUMERAL。其中,N-Gram语言模型训练工具可以使用SRILM、IRSTLM、BerkeleyLM和KenLM等开源工具中的其中一种。

在本发明一个优选的实施例中,如图3所示,所述步骤S104包括:

步骤S301,当所述逗号占比不小于预设比例阈值时,则对所述英文邮件文本数据进行分句处理,得到初级句子列表。

在本发明实施例中,对所述英文邮件文本数据进行分句处理的方式是根据正则表达式进行分句处理的,可以为识别出该英文邮件文本数据中的各标点符号所在位置,进而以句号、感叹号、问号、回车符为间隔进行初级句子切割,得到初级句子列表;在切割时忽略句子中出现的公司后缀(如Inc.、Corp.)、称呼(如Mr.Wang)、URL(如www.baidu.com)、邮箱地址(如[email protected])、数字、序号、缩略语等其中出现的点[.]。

在本发明实施例中,通过对英文邮件文本数据进行初级句子划分,得到初级句子列表lst=[s1,s2,…,sn],其中n为初级句子个数。

在本发明实施例中,如英文邮件文本数据为“The weather is fine today.iwill fly a kite.My mother cooked.”,其中,i will fly a kite的首字母是小写i,理应跟The weather is fine today是同一句话,但是它们中间却是句号分割,说明是语病。进行初级句子划分,lst=[“The weather is fine today.”,“i will fly a kite.”,“Mymother cooked.”]。

在本发明实施例中,如英文邮件文本数据为“I have a good friend,and hername is Li Hua,We have become friends for about two years,She is very kind,When I step into the classroom for the first time,she helps me to getfamiliar with the strange environment,The most important thing is that weshare the same interest,so we have a lot in common,i cherish our friendshipso much.”,对应初级句子列表lst=[“I have a good friend”,“and her name is LiHua”,“We have become friends for about two years”,“She is very kind”,“When Istep into the classroom for the first time”,“she helps me to get familiarwith the strange environment”,“The most important thing is that we share thesame interest”,“so we have a lot in common”,“i cherish our friendship somuch”],其中初级句子个数n=9。

步骤S302,根据预设的初级首句条件,从所述初级句子列表中提取初级首句。

在本发明实施例中,设置初始下标i=0,结束下标j=1,若句子lst[j]的首字符为小写、或首字符为数字、或首字符为&、-连接符、或首单词全为大写,则使结束下标j+1,直至不满足此条件;否则取出下标为i~j的句子lst[i:j]作为初级首句(不包括句子lst[j])。

在本发明实施例中,如lst=[“The weather is fine today.”,“i will fly akite.”,“My mother cooked.”]。设初始下标i=0,结束下标j=1,此时句子lst[1]=“iwill fly a kite.”,其首字母为小写,满足条件,使其结束下标j+1,故此时j=2,这时句子lst[2]=“My mother cooked.”,不满足条件,所以取出下标为0~2的句子lst[0]、lst[1]“The weather is fine today.i will fly a kite.”作为首句。在本发明实施例中,如lst=[“I have a good friend”,“and her name is Li Hua”,“We have become friendsfor about two years”,“She is very kind”,“When I step into the classroom forthe first time”,“she helps me to get familiar with the strange environment”,“The most important thing is that we share the same interest”,“so we have alot in common”,“i cherish our friendship so much”]。具体的,初始下标i=0,结束下标j=1,此时lst[0]=“I have a good friend”,lst[1]=“and her name is Li Hua”,满足首字符为小写的条件,故结束下标j=j+1=2,lst[2]=“We have become friends forabout two years”,不满足上述所有条件,故取出下标为0~2的句子lst[0:2]=[“I havea good friend”,“and her name is Li Hua”]=“I have a good friend,and her nameis Li Hua”作为首句。

步骤S303,当判断所述初级首句的句尾字符不是标点符号时,则根据预设的N-Gram语言模型确定所述初级首句的句尾对应的常规标点符号类型。

在本发明实施例中,当判断所述初级首句的句尾字符不是标点符号时,则依次在所述初级首句的句尾添加各种常规标点符号类型,并根据预设的N-Gram语言模型依次计算出所述各种常规标点符号类型对应的得分;将得分最高的常规标点符号类型确定为所述初级首句的句尾对应的常规标点符号类型。具体地,若初级首句lst[i:j]的句尾字符不是标点符号,则在该初级首句后分别添加逗号、句号、感叹号、问号,并根据预设的N-Gram语言模型计算其N-Gram得分,使用得分最高的那个标点符号;即将得分最高的标点符号类型确定为该初级首句的句尾应添加的标点符号类型。

在本发明实施例中,如现有初级首句为“The weather is fine today”,其句尾无标点符号,则在其句尾分别添加逗号、句号、感叹号、问号,进而分别计算“The weather isfine today,”、“The weather is fine today.”、“The weather is fine today!”、“Theweather is fine today?”的N-Gram得分;如现有首句为“I have a good friend,and hername is Li Hua”,其句尾无标点符号,则在其句尾分别添加逗号、句号、感叹号、问号,进而分别计算“I have a good friend,and her name is Li Hua,”、“I have a good friend,and her name is Li Hua.”、“I have a good friend,and her name is Li Hua!”、“Ihave a good friend,and her name is Li Hua?”的N-Gram得分,N-Gram得分可通过现有的N-Gram语言模型工具进行计算,该计算方式为常规方式,在此不做具体赘述,假设此时句尾添加句号的N-Gram得分最高,则在句尾添加句号。

步骤S304,将所述去除初级首句的初级句子列表确定为新一代的初级句子列表,并判断所述新一代的初级句子列表是否为空;若否,则返回至所述步骤S302;若是,则进入步骤S305中。

在本发明实施例中,将初级首句lst[i:j]返回,剩余的句子列表lst=[sj,sj+1,…,sn]也返回,即lst=[sj,sj+1,…,sn]为去除了初级首句lst[i:j]的新一代的初级句子列表,当判断该初级句子列表中还存在句子或者句子个数不为0时,则执行返回至所述根据预设的初级首句条件,从所述初级句子列表中提取初级首句的步骤;当判断该初级句子列表中不存在句子或者句子个数为0时,则说明该邮件文本数据的逗号纠正完成。具体的,如上述例子中将lst[0:2]=“I have a good friend,and her name is Li Hua.”作为首句返回,剩余的句子列表lst=[“We have become friends for about two years”,“Sheis very kind”,“When I step into the classroom for the first time”,“she helpsme to get familiar with the strange environment”,“The most important thing isthat we share the same interest”,“so we have a lot in common”,“i cherish ourfriendship so much”]也返回。

步骤S305,逗号纠正完成,结束逗号纠正处理过程。

步骤S105,根据所述预设的N-Gram语言模型,对经逗号纠正处理后的英文邮件文本数据进行句子切分处理。

在本发明一个优选的实施例中,如图4所示,所述步骤S105包括:

步骤S401,对经逗号纠正处理后的英文邮件文本数据进行分句处理,得到一级句子列表。

在本发明实施例中,对经逗号纠正处理后的英文邮件文本数据进行分句处理的方法可参照上述分句处理方式,在此不再具体赘述。

在本发明实施例中,通过对经逗号纠正处理后的英文邮件文本数据进行句子划分,得到一级句子列表lst=[s1,s2,…,sn],其中n为一级句子个数。

在本发明实施例中,如上述例子中,逗号纠正结束后所得逗号纠正后的英文邮件文本数据为:“I have a good friend,and her name is Li Hua.We have becomefriends for about two years.She is very kind.When I step into the classroomfor the first time,she helps me to get familiar with the strangeenvironment.The most important thing is that we share the same interest,so wehave a lot in common,i cherish our friendship so much.”具体的,初级句子列表lst=[“I have a good friend,and her name is Li Hua.”,“We have become friends forabout two years.”,“She is very kind.”,“When I step into the classroom for thefirst time,she helps me to get familiar with the strange environment.”,“Themost important thing is that we share the same interest,so we have a lot incommon,i cherish our friendship so much.”],其中初级句子个数n=5。

步骤S402,根据预设的一级首句条件,从所述一级句子列表中提取一级首句。

在本发明实施例中,设置初始下标i=0,结束下标j=1,若句子lst[i]的最后一个字符为标点符号,则取出下标为i~j的句子lst[i:j]作为首句;否则,若句子lst[j]的首字符为小写、或首字符为数字、或首字符为&、-连接符、或首单词全为大写,则使结束下标j+1,直至不满足此条件。

在本发明实施例中,如现有句子“The weather is fine today.i will fly akite.My mother cooked.”,(注意,i will fly a kite的首字母是小写i,理应跟Theweather is fine today是同一句话,但是他们中间却是句号分割,说明是语病。)进行初级句子划分,lst=[“The weather is fine today.”,“i will fly a kite.”,“My mothercooked.”]。设初始下标i=0,结束下标j=1,此时句子lst[1]=“i will fly a kite.”,其首字母为小写,满足条件,使其结束下标j+1,故此时j=2,这时句子lst[2]=“My mothercooked.”,不满足条件,所以取出下标为0~2的句子lst[0]、lst[1]“The weather is finetoday.i will fly a kite.”作为一级首句。

在本发明实施例中,如初级句子列表lst=[“I have a good friend,and hername is Li Hua.”,“We have become friends for about two years.”,“She is verykind.”,“When I step into the classroom for the first time,she helps me to getfamiliar with the strange environment.”,“The most important thing is that weshare the same interest,so we have a lot in common,i cherish our friendshipso much.”]具体的,初始下标i=0,结束下标j=1,此时lst[0]=“I have a good friend,and her name is Li Hua.”,lst[1]=“We have become friends for about twoyears.”,不满足上述所有条件,故取出下标为0~2的句子lst[0:1]=[“I have a goodfriend,and her name is Li Hua.”]=“I have a good friend,and her name is LiHua.”作为一级首句。

步骤S403,当判断所述一级首句的句尾字符不是标点符号时,则根据预设的N-Gram模型确定所述一级首句的句尾对应的结束标点符号类型。

在本发明实施例中,当判断所述一级首句的句尾字符不是标点符号时,则依次在所述一级首句的句尾添加各种常规标点符号类型,并根据预设的N-Gram语言模型依次计算出所述各种常规标点符号类型对应的得分;将得分最高的常规标点符号类型确定为所述一级首句的句尾对应的常规标点符号类型。具体地,若首句lst[i:j]的句尾字符不是标点符号,则在该句子后分别添加句号、感叹号、问号计算其N-Gram得分,使用得分最高的那个标点符号。

在本发明实施例中,如现有首句为“I have a good friend,and her name is LiHua.”,其句尾有标点符号,则跳过此步骤。

步骤S404,将所述去除一级首句的一级句子列表确定为新一代的一级句子列表,并判断所述新一代的一级句子列表是否为空;若否,则返回至所述步骤S402;若是,则进入步骤S405中。

在本发明实施例中,将初级首句lst[i:j]返回,剩余的句子列表lst=[sj,sj+1,…,sn]也返回,即lst=[sj,sj+1,…,sn]为去除了一级首句lst[i:j]的新一代的一级句子列表,当判断该初级句子列表中还存在句子或者句子个数不为0时,则执行返回至所述根据预设的一级首句条件,从所述一级句子列表中提取一级首句的步骤;当判断该一级句子列表中不存在句子或者句子个数为0时,则说明该邮件文本数据的句子切分完成。具体的,如上述例子中将lst[0:1]=“I have a good friend,and her name is Li Hua.”作为首句返回,剩余的句子列表lst=[“We have become friends for about two years.”,“Sheis very kind.”,“When I step into the classroom for the first time,she helpsme to get familiar with the strange environment.”,“The most important thingis that we share the same interest,so we have a lot in common,i cherish ourfriendship so much.”]也返回。

步骤S405,句子切分处理完成,结束句子切分处理过程。

步骤S106,当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据所述预设的N-Gram语言模型对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。

在本发明一个优选的实施例中,如图5所示,所述步骤S105包括:

步骤S501,当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据逗号位置对所述长句进行切割,得到逗号切割列表。

在本发明实施例中,根据逗号进行句子切割,得到逗号切割列表lst=[s1,s2,…,sn],其中n为逗号切割个数。

在本发明实施例中,如上述例子中,经句子切分处理后的英文邮件文本数据对应的句子列表为:句子1=“I have a good friend,and her name is Li Hua.”,句子2=“Wehave become friends for about two years.”,句子3=“She is very kind.”,句子4=“When I step into the classroom for the first time,she helps me to getfamiliar with the strange environment.”,句子5=“The most important thing isthat we share the same interest,so we have a lot in common,i cherish ourfriendship so much.”具体的,以句子5为例,得到逗号切割列表lst=[“The mostimportant thing is that we share the same interest”,“so we have a lot incommon”,“i cherish our friendship so much.”],逗号切割个数n=3。步骤S502,根据预设的二级首句条件,从所述逗号切割列表中提取二级首句。

在本发明实施例中,设置初始下标i=0,结束下标j=1,若当前句子lst[i:j]的逗号大于等于2个,且句子lst[j]的首单词出现在首单词统计列表中,则取出下标为i~j的句子lst[i:j]作为首句;若句子lst[j]的首字母为小写,则使用逗号连接上一句子,直至不满足此条件。

在本发明实施例中,如逗号切割列表lst=[“The most important thing isthat we share the same interest”,“so we have a lot in common”,“i cherish ourfriendship so much.”]具体的,初始下标i=0,结束下标j=1,此时lst[0]=“The mostimportant thing is that we share the same interest”,lst[1]=“so we have a lotin common”;当前句子lst[0:1]逗号小于2,且句子lst[1]的首字母为小写,使用逗号连接,且使j=j+1=2,这时句子lst[0:2]的逗号刚好等于2,且句子lst[2]的首字母“i”出现在首单词统计列表中,故取出句子lst[0:2]=“The most important thing is that we sharethe same interest,so we have a lot in common”作为二级首句。

步骤S503,当判断所述二级首句的句尾字符不是标点符号时,则根据预设的N-Gram语言模型确定所述二级首句的句尾对应的常规标点符号类型。

在本发明实施例中,若二级首句lst[i:j]的句尾字符不是标点符号,则在该句子后分别添加逗号、句号、感叹号、问号计算其N-Gram得分,使用得分最高的那个标点符号。如现有首句为“The most important thing is that we share the same interest,so wehave a lot in common”,其句尾无标点符号,则在其句尾分别添加逗号、句号、感叹号、问号,进而分别计算“The most important thing is that we share the same interest,so we have a lot in common,”、“The most important thing is that we share thesame interest,so we have a lot in common.”、“The most important thing is thatwe share the same interest,so we have a lot in common!”、“The most importantthing is that we share the same interest,so we have a lot in common?”的N-Gram得分。

步骤S504,将所述去除二级首句的一级句子列表确定为新一代的逗号切割列表,并判断所述新一代的逗号切割列表是否为空;若否,则返回至所述步骤S502;若是,则进入步骤S505。

在本发明实施例中,将二级首句lst[i:j]返回,剩余的逗号切割列表lst=[sj,sj+1,…,sn]也返回,即lst=[sj,sj+1,…,sn]为去除了二级首句lst[i:j]的新一代的逗号切割列表,当判断该逗号切割列表中还存在句子或者句子个数不为0时,则执行返回至所述根据预设的二级首句条件,从所述逗号切割列表中提取二级首句的步骤;当判断该逗号切割列表中不存在句子或者句子个数为0时,则说明该邮件文本数据的长句处理完成。具体的,如上述例子中将lst[0:2]=“The most important thing is that we share the sameinterest,so we have a lot in common.”作为首句返回,剩余的句子列表lst=[“icherish our friendship so much.”]也返回。

步骤S505,结束长句处理过程,得到处理后的英文邮件文本数据。

在本发明实施例中,如上述例子,在长句处理结束后,最终的句子列表为:句子1=“I have a good friend,and her name is Li Hua.”,句子2=“We have become friendsfor about two years.”,句子3=“She is very kind.”,句子4=“When I step into theclassroom for the first time,she helps me to get familiar with the strangeenvironment.”,句子5=“The most important thing is that we share the sameinterest,so we have a lot in common.”,句子6=“i cherish our friendship somuch.”。

本发明实施例提供的一种英文邮件文本数据处理方法,通过对待处理英文邮件文本数据中的标点符号的类型以及对应数量,确定逗号占比,当逗号占比不小于预设比例阈值时,则对逗号进行纠正处理,进而对经逗号纠正处理后的英文邮件文本数据进行句子切分处理,当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。本发明与现有技术相比,解决了因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,可以达到能正确地对邮件文本进行句子划分的目的,为邮件数据的后续挖掘作技术支持。

如图6所示,在一个实施例中,提供了一种英文邮件文本数据处理装置,具体可以包括文本数据获取单元610、标点符号类型及数量获取单元620、逗号占比确定单元630、逗号纠正单元640、分句处理单元650以及长句处理单元660。

文本数据获取单元610,用于获取待处理的英文邮件文本数据。

在本发明实施例中,英文邮件文本数据即英文邮件文本内容,其格式可以为ASCII、MIME、*.txt等,具体不做限制;另外,该邮件文本数据可以是从电子邮箱应用软件如谷歌邮箱、QQ邮箱、163邮箱、新浪邮箱、搜狐邮箱、126邮箱等中获取,具体不做限制。

标点符号类型及数量获取单元620,用于获取所述英文邮件文本数据中的标点符号的类型以及对应数量。

在本发明实施例中,英文邮件文本数据中的标点符号的类型包括但不限于逗号、句号、感叹号、问号等,通过获取每个标点符号的类型及其对应的数量可以进一步计算获得某一标点符号在整个英文邮件文本数据中占所有标点符号总数的比例。

逗号占比确定单元630,用于根据所述标点符号的类型以及对应数量,确定逗号占比。

在本发明实施例中,根据大数据显示,逗号是大部分人在书写邮件时最常用的标点符号,往往本应该是句号、感叹号、问号等典型断句符号时也被使用成了逗号,因此本发明根据上述获得的逗号与各断句符号对应数量,来进一步确定逗号占比;然而,一般在英文文本中,往往只根据句号、感叹号、问号进行句子的切分,故在本发明实施例中只需统计这几种标点符号,而对于其他冒号、分号、省略号等只需当做一般字符处理即可。如计算得到的邮件文本数据中的逗号个数num1、句号个数num2、感叹号个数num3以及问号个数num4,则根据公式(1)计算逗号占比ratio1

逗号纠正单元640,用于当所述逗号占比不小于预设比例阈值时,则根据预设的N-Gram语言模型对逗号进行纠正处理。

在本发明实施例中,预设比例阈值可以在具体实现时,根据终端性能和/或实现需求等自行设定,本发明实施例对上述预设比例阈值的大小不作具体限定,比如举例来说,上述预设比例阈值可以为0.3、0.5、0.7等。本发明在此将预设比例阈值优选为0.7,即若逗号占比ratio1大于或等于0.7则进行逗号纠正;否则,跳过此环节。

在本发明实施例中,对于该预设的N-Gram语言模型的训练,可以以多语言维基百科语料库作为训练语料集,使用多语言分词工具进行词切割,之后通过N-Gram语言模型训练工具进行N-Gram语言模型的训练;另外,由于N值较大时,对N-Gram语言模型的训练则需要庞大的训练语料且数据稀疏严重,时间复杂度也将大大提高,因此,本发明实施例中令N-Gram语言模型中的N=3;对于长尾词(即出现总次数小于10次的词)统一将其记为LongTailWord;对于数字统一将其记为NUMERAL。其中,N-Gram语言模型训练工具可以使用SRILM、IRSTLM、BerkeleyLM和KenLM等开源工具中的其中一种。

具体地,在本发明实施例中,通过对英文邮件文本数据进行初级句子划分,得到初级句子列表lst=[s1,s2,…,sn],其中n为初级句子个数。设置初始下标i=0,结束下标j=1,若句子lst[j]的首字符为小写、或首字符为数字、或首字符为&、-连接符、或首单词全为大写,则使结束下标j+1,直至不满足此条件;否则取出下标为i~j的句子lst[i:j]作为初级首句(不包括句子lst[j])。若初级首句lst[i:j]的句尾字符不是标点符号,则在该初级首句后分别添加逗号、句号、感叹号、问号,并根据预设的N-Gram语言模型计算其N-Gram得分,使用得分最高的那个标点符号;进而将初级首句lst[i:j]返回,剩余的句子列表lst=[sj,sj+1,…,sn]也返回,即lst=[sj,sj+1,…,sn]为去除了初级首句lst[i:j]的新一代的初级句子列表,当判断该初级句子列表中还存在句子或者句子个数不为0时,则执行返回至所述根据预设的初级首句条件,从所述初级句子列表中提取初级首句的步骤;当判断该初级句子列表中不存在句子或者句子个数为0时,则说明该邮件文本数据的逗号纠正完成。

分句处理单元650,用于根据所述预设的N-Gram语言模型,对经逗号纠正处理后的英文邮件文本数据进行分句处理。

在本发明实施例中,通过对经逗号纠正处理后的英文邮件文本数据进行句子划分,得到一级句子列表lst=[s1,s2,…,sn],其中n为一级句子个数。设置初始下标i=0,结束下标j=1,若句子lst[i]的最后一个字符为标点符号,则取出下标为i~j的句子lst[i:j]作为首句;否则,若句子lst[j]的首字符为小写、或首字符为数字、或首字符为&、-连接符、或首单词全为大写,则使结束下标j+1,直至不满足此条件。若首句lst[i:j]的句尾字符不是标点符号,则在该句子后分别添加句号、感叹号、问号计算其N-Gram得分,使用得分最高的那个标点符号。将初级首句lst[i:j]返回,剩余的句子列表lst=[sj,sj+1,…,sn]也返回,即lst=[sj,sj+1,…,sn]为去除了一级首句lst[i:j]的新一代的一级句子列表,当判断该初级句子列表中还存在句子或者句子个数不为0时,则执行返回至所述根据预设的一级首句条件,从所述一级句子列表中提取一级首句的步骤;当判断该一级句子列表中不存在句子或者句子个数为0时,则说明该邮件文本数据的句子切分完成。

长句处理单元660,用于当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据所述预设的N-Gram语言模型对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。

在本发明实施例中,根据逗号进行句子切割,得到逗号切割列表lst=[s1,s2,…,sn],其中n为逗号切割个数。设置初始下标i=0,结束下标j=1,若当前句子lst[i:j]的逗号大于等于2个,且句子lst[j]的首单词出现在首单词统计列表中,则取出下标为i~j的句子lst[i:j]作为首句;若句子lst[j]的首字母为小写,则使用逗号连接上一句子,直至不满足此条件。若二级首句lst[i:j]的句尾字符不是标点符号,则在该句子后分别添加逗号、句号、感叹号、问号计算其N-Gram得分,使用得分最高的那个标点符号。将二级首句lst[i:j]返回,剩余的逗号切割列表lst=[sj,sj+1,…,sn]也返回,即lst=[sj,sj+1,…,sn]为去除了二级首句lst[i:j]的新一代的逗号切割列表,当判断该逗号切割列表中还存在句子或者句子个数不为0时,则执行返回至所述根据预设的二级首句条件,从所述逗号切割列表中提取二级首句的步骤;当判断该逗号切割列表中不存在句子或者句子个数为0时,则说明该邮件文本数据的长句处理完成。

本发明实施例提供的一种英文邮件文本数据处理装置,通过对待处理英文邮件文本数据中的标点符号的类型以及对应数量,确定逗号占比,当逗号占比不小于预设比例阈值时,则对逗号进行纠正处理,进而对经逗号纠正处理后的英文邮件文本数据进行句子切分处理,当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。本发明与现有技术相比,解决了因不同人书写邮件的习惯不同而导致的正则表达式分句不规范的现象,可以达到能正确地对邮件文本进行句子划分的目的,为邮件数据的后续挖掘作技术支持。

如图7所示,在一个实施例中,提供了一种英文邮件文本数据处理装置,其与图6所示的装置的区别在于,还包括字符去除单元710,用于根据预设标准格式规则,对所述英文邮件文本数据中的不规则字符进行去除。

在本发明实施例中,当英文邮件文本数据的格式为ASCII时,则应当先将该英文邮件文本数据中存在的不在ASCII码表中的字符进行去除;其中,ASCII(American StandardCode for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其为最通用的信息交换标准,并等同于国际标准ISO/IEC 646。

在一个实施例中,提出了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取待处理的英文邮件文本数据;

分别获取所述英文邮件文本数据中的标点符号的类型以及对应数量;

根据所述标点符号的类型以及对应数量,确定逗号占比;

当所述逗号占比不小于预设比例阈值时,则根据预设的N-Gram语言模型对逗号进行纠正处理;

根据所述预设的N-Gram语言模型,对经逗号纠正处理后的英文邮件文本数据进行句子切分处理;

当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据所述预设的N-Gram语言模型对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。

在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:

获取待处理的英文邮件文本数据;

分别获取所述英文邮件文本数据中的标点符号的类型以及对应数量;

根据所述标点符号的类型以及对应数量,确定逗号占比;

当所述逗号占比不小于预设比例阈值时,则根据预设的N-Gram语言模型对逗号进行纠正处理;

根据所述预设的N-Gram语言模型,对经逗号纠正处理后的英文邮件文本数据进行句子切分处理;

当判断经句子切分处理后的英文邮件文本数据中存在逗号数量大于预设数量阈值的长句时,则根据所述预设的N-Gram语言模型对所述英文邮件文本数据进行长句处理,以得到处理后的英文邮件文本数据。

应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:音频标注的检错方法和装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!