一种基于教辅书籍出版的排版文档内容自查重方法与流程

文档序号:21932134发布日期:2020-08-21 14:58阅读:425来源:国知局
一种基于教辅书籍出版的排版文档内容自查重方法与流程

本发明属于书籍出版文档处理和自然语言处理领域,具体涉及一种基于教辅书籍出版的排版文档内容自查重方法。



背景技术:

书籍作为信息的载体,在社会生活中占有着十分重要的地位,特别是在科教文化领域,教辅书籍出版的质量尤为重要。在教辅书籍编辑过程中,往往是多名编辑共同完成,不免会出现重复的内容或者题目等信息,如果不对这些重复信息进行后期查重,必然会对书籍出版质量产生影响。因此,充分利用自然语言处理手段和计算机数据处理能力,实现书籍中重复信息准确查重,在保证书籍出版质量方面具有重要意义。

目前,用于文档内容查重的方法主要分为两种:一种是根据关键字先手动查找后人工查重;另一种是根据句子通过关键词、余弦相似度等模糊算法进行查重。根据关键字先手动查找后人工查重在实际应用中浪费大量人力,工作效率低,这种方法已经逐渐衰弱。根据句子通过关键词、余弦相似度等模糊算法进行查重,其主要用于论文查重,最突出的算法是知网的模糊查重算法,其通过忽略两句话中无意义的词,计算有意义词的重复数量,重复数量在超过所规定的阈值时,判定两句话为重复。但是,由于教辅书籍比较常见的重复内容为辅导题目或科普文章,使用类似模糊算法的方法进行自查重会导致大量误报和漏报,并且后期人工排查重复内容也需要花费大量时间。因此,目前文档查重的方法用于书籍出版的编排文档内容自查重效果不佳。



技术实现要素:

本发明的目的是提供一种基于教辅书籍出版的排版文档内容自查重方法,通过对书籍文档分割出的题目、表格、公式等单元进行相似度比较,实现文档自查重的目的。此方法可有效的克服现有技术存在的缺点,解决工作效率低、存在大量误报和漏报等问题。

本发明解决其技术问题所采用的技术方案是:

一种基于教辅书籍出版的排版文档内容自查重方法,其特征在于,包括如下步骤:

步骤(1):以二进制方式读入排版文档,按顺序读取排版文档每行内容组成二进制行序列其中n表示文档行数,表示第n行二进制序列;

步骤(2):对步骤(1)中得到的二进制行序列wrb进行预处理,以新的标识字符替换不能通过gbk标准解码的字符,并删除每行末尾的换行符,通过gbk标准解码得到解码后的行序列w={w1,w2,…,wn},然后通过字符全角转半角算法进行转换,在每行前加上标识序号,即w′={[1]+w1,[2]+w2,…,[n]+wn},其中[n]仅是一种行号表达方式,与排版文档中内容不冲突,然后拼接每行得到字符串s=[1]+w1+[2]+w2+…+[n]+wn

步骤(3):对步骤(2)中得到的字符串s进行处理,根据排版文档中的书版命令〖bp〗(表示指定内容不参与排版)设计正则表达式,利用正则表达式删除不参与排版的内容;

步骤(4):分别根据排版文档中的书版命令〖bg〗(表示排表格)和〖fc〗(表示排方程式)、〖fy〗(表示排化学方程式)、〖jg〗(表示排化学结构式)等命令利用正则表达式分别提取字符串s中表格字符串t={t1,t2,…,ti}和公式字符串f={f1,f2,…,fj},其中i和j分别表示表格和公式的序号;

步骤(5):步骤(4)中表格和公式提取完成后剩余的字符串为题目字符串s′,其中s′=s-t-f,根据章节、题号、答案、解析、栏目等内容将字符串s′分割为多个题目,得到集合q={q1,q2,…,qk},其中k表示题目序号;

步骤(6):对步骤(4)和步骤(5)中得到的表格字符串集合t、公式字符串集合f和题目字符串集合q分别利用改进的编辑距离相似度算法进行查重;

步骤(7):步骤(6)中得到的重复表格及其对应行号、重复公式及其对应行号、重复题目及其对应行号即为输出的查重结果。

本发明和现有技术相比,其优点在于:本发明通过对书籍文档分割出的题目、表格、公式等单元进行相似度比较,实现文档自查重的目的。此方法可有效的克服现有技术存在的缺点,解决工作效率低、存在大量误报和漏报等问题。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的表格、公式和题目分割提取流程示意图。

具体实施方式

下面将参照附图更详细地描述本发明公开的示例性实施例,这些实施例是为了能够更透彻地理解本发明,并且能够将本发明公开的范围完整的传达给本领域的技术人员。虽然附图中显示了本发明公开的示例性实施例,然而应当理解,本发明而不应被这里阐述的实施例所限制。

实施例1

一种基于教辅书籍出版的排版文档内容自查重方法,包括如下步骤:

步骤(1):以二进制方式读入排版文档,按顺序读取排版文档每行内容组成二进制行序列其中n表示文档行数,表示第n行二进制序列;

步骤(2):对步骤(1)中得到的二进制行序列wrb进行预处理,以新的标识字符替换不能通过gbk标准解码的字符,并删除每行末尾的换行符,通过gbk标准解码得到解码后的行序列w={w1,w2,…,wn},然后通过字符全角转半角算法进行转换,在每行前加上标识序号,即w′={[1]+w1,[2]+w2,…,[n]+wn},其中[n]仅是一种行号表达方式,与排版文档中内容不冲突,然后拼接每行得到字符串s=[1]+w1+[2]+w2+…+[n]+wn

步骤(3):对步骤(2)中得到的字符串s进行处理,根据排版文档中的书版命令〖bp〗(表示指定内容不参与排版)设计正则表达式,利用正则表达式删除不参与排版的内容;

步骤(4):分别根据排版文档中的书版命令〖bg〗(表示排表格)和〖fc〗(表示排方程式)、〖fy〗(表示排化学方程式)、〖jg〗(表示排化学结构式)等命令利用正则表达式分别提取字符串s中表格字符串t={t1,t2,…,ti}和公式字符串f={f1,f2,…,fj},其中i和j分别表示表格和公式的序号;

步骤(5):步骤(4)中表格和公式提取完成后剩余的字符串为题目字符串s′,其中s′=s-t-f,根据章节、题号、答案、解析、栏目等内容将字符串s′分割为多个题目,得到集合q={q1,q2,…,qk},其中k表示题目序号;

步骤(6):对步骤(4)和步骤(5)中得到的表格字符串集合t、公式字符串集合f和题目字符串集合q分别利用改进的编辑距离相似度算法进行查重,分为以下三个步骤:

步骤(6.1):对表格字符串集合t={t1,t2,…,ti}进行查重,设置表格内容相似度阈值yt,首先提取表格字符串ti中的行号[n],然后利用正则表达式删除行号[n]和书版命令,通过循环比较两个表格字符串的相似度,对大于阈值yt的两个表格字符串判定为重复;

步骤(6.2):对公式字符串集合f={f1,f2,…,fj}进行查重,设置公式内容相似度阈值yf,首先提取公式字符串fi中的行号[n],然后利用正则表达式删除行号[n]和书版命令,通过循环比较两个公式字符串的相似度,对大于阈值yf的两个公式字符串判定为重复;

步骤(6.3):对题目字符串集合q={q1,q2,…,qk}进行查重,设置题目内容相似度阈值yq,首先提取题目字符串qi中的行号[n],然后利用正则表达式删除行号[n]和书版命令,通过循环比较两个题目字符串的相似度,对大于阈值yq的两个题目字符串判定为重复;

步骤(7):步骤(6)中得到的重复表格及其对应行号、重复公式及其对应行号、重复题目及其对应行号即为输出的查重结果。

其中:步骤(1)、步骤(2)、步骤(3)、步骤(4)、步骤(5)中,表格、公式和题目分割提取流程如图1所示。

其中:步骤(6)中,分别在进行相似度比较前对表格字符串、公式字符串、题目字符串进行预处理:表格字符串通过书版命令〖bh和bg〗实现表格内容细分;公式字符串通过把公式字符串看作一个整体单位进行比较;题目字符串通过分别对英文类型书籍和中文类型书籍进行中英文分词处理,实现中文汉字与英文单词分离,英文单词视为一个整体单位,通过改进的编辑距离算法进行相似度比较。

编辑距离指的是在两个单词之间,由其中一个单位转换为另一个单位所需要的最少单位编辑操作次数,编辑距离一般适用于字符串之间的相似度比较,针对书籍排版文档,改进的编辑距离相似度算法能够处理以英文单词、公式、中文词语为单位的列表相似度计算,其公式如下:

其中,a和b表示两个经过处理后的字符列表,i和j表示英文单词、公式或中文词语单位,通过两个字符列表中相同单位的变换操作次数实现字符列表相似度比较。

实施例2

一种基于教辅书籍出版的排版文档内容自查重方法,包括如下步骤:

步骤(1):分别以二进制方式读入两个1000行的英语教书书籍和化学教辅书籍排版文档,设置标识flag分别为0和1,分别按行顺序读取排版文档每行内容组成二进制行序列其中n=1000表示排版文档行数,表示第n行二进制序列;

步骤(2):对步骤(1)中得到的二进制行序列wrb进行预处理,以新的标识字符替换不能通过gbk标准解码的字符,并删除每行末尾的换行符,通过gbk标准解码得到解码后的行序列w={w1,w2,…,wn},然后通过字符全角转半角算法进行转换,在每行前加上标识序号,即w′={[1]+w1,[2]+w2,…,[n]+wn},其中[n]仅是一种行号表达方式,与排版文档中内容不冲突,然后拼接每行得到字符串s=[1]+w1+[2]+w2+…+[n]+wn

步骤(3):对步骤(2)中得到的字符串s进行处理,根据排版文档中的书版命令〖bp〗(表示指定内容不参与排版)设计正则表达式,利用正则表达式删除不参与排版的内容;

步骤(4):根据排版文档中的书版命令〖bg〗(表示排表格)和〖fc〗(表示排方程式)、〖fy〗(表示排化学方程式)、〖jg〗(表示排化学结构式)等命令利用正则表达式分别提取字符串s中表格字符串t={t1,t2,…,ti}和公式字符串f={f1,f2,…,fj},其中i和j分别表示表格和公式的序号;

步骤(5):步骤(4)中表格和公式提取完成后剩余的字符串为题目字符串s′,其中s′=s-t-f,根据章节、题号、答案、解析、栏目等内容将字符串s′分割为多个题目,得到集合q={q1,q2,…,qk},其中k表示题目序号;

步骤(6):对步骤(4)和步骤(5)中得到的表格字符串集合t、公式字符串集合f和题目字符串集合q分别利用改进的编辑距离相似度算法进行查重,分为以下三个步骤:

步骤(6.1):若标识flag为0,即对英文表格字符串集合t={t1,t2,…,ti}进行查重,设置表格内容相似度阈值yt,首先提取表格字符串ti中的行号[n],然后利用正则表达式删除行号[n]和书版命令,对两个处理后的表格字符串进行中英文分词生成两个字符列表,中文词语和英文单词分别视为一个整体单位,通过比较两个表格字符列表的相似度,对大于阈值yt的两个表格字符列表判定为重复;若标识flag为1,即对中文表格字符串集合t={t1,t2,…,ti}进行查重,设置表格内容相似度阈值yt,首先提取表格字符串ti中的行号[n],然后利用正则表达式删除行号[n]和书版命令,对两个处理后的表格字符串进行中文分词生成两个字符列表,中文词语视为一个整体单位,通过比较两个表格字符串列表的相似度,对大于阈值yt的两个表格字符串判定为重复;

步骤(6.2):对公式字符串集合f={f1,f2,…,fj}进行查重,设置公式内容相似度阈值yf,首先提取公式字符串fi中的行号[n],然后利用正则表达式删除行号[n]和书版命令,把公式字符串看作整体单位,通过比较两个公式的相似度,对大于阈值yf的两个公式字符串判定为重复;

步骤(6.3):若标识flag为0,即对英文题目字符串集合q={q1,q2,…,qk}进行查重,设置题目内容相似度阈值yq,首先提取题目字符串qi中的行号[n],然后利用正则表达式删除行号[n]和书版命令,对两个处理后的题目字符串进行中英文分词生成两个字符列表,中文词语和英文单词分别视为一个整体单位,通过比较两个题目字符列表的相似度,对大于阈值yq的两个题目字符串判定为重复;若标识flag为1,即对中文题目字符串集合q={q1,q2,…,qk}进行查重,设置题目内容相似度阈值yq,首先提取题目字符串qi中的行号[n],然后利用正则表达式删除行号[n]和书版命令,对两个处理后的题目字符串进行中文分词生成两个字符列表,中文词语视为一个整体单位,通过比较两个题目字符列表的相似度,对大于阈值yq的两个题目字符串判定为重复;

步骤(7):步骤(6)中得到的重复表格及其对应行号、重复公式及其对应行号、重复题目及其对应行号即为输出的查重结果。

为使本发明实施例的目的、技术方案和优点更加清楚,上面结合本发明实施例中的附图,对本发明实施例中的技术方案进行了清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以上对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1