一种对文本进行同义修改、确定文本创作者的方法
技术领域
本说明书实施例涉及信息技术领域,尤其涉及一种对文本进行同义修改、确定文本创作者的方法。
背景技术
对于文本的创作者而言,如何有效保护其版权,是至关重要的课题。
为了防止创作者的文本被抄袭,通常采取的思路是,在文本的字里行间加入若干干扰字符作为创作者标记。抄袭者如果不知道文本中的哪些字符是干扰字符,则即便对文本的表述进行调整(俗称洗稿),洗稿后的文本也往往会保留创作者标记。
然而,上述这种向文本中加入干扰字符的方式往往会影响文本的可读性,容易给读者造成一定的阅读理解障碍。
发明内容
为了解决现有的向文本中加入干扰字符的方式存在的降低文本可读性的问题,本说明书实施例提供一种对文本进行同义修改、确定文本创作者的方法,技术方案如下:
根据本说明书实施例的第1方面,提供一种对文本进行同义修改的方法,包括:
获取待修改文本,并提取所述待修改文本的关键词集合;
针对每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;
针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;
获取创作所述待修改文本的用户的数字编号;以及,根据所述数字编号的第i位Ni,将第i个备选词集合中的第Ni个词添加到命中词集合;i=(1,2,…,S),S为数字编号位数;
针对每个关键词,若该关键词不属于所述命中词集合,则将所述待修改文本中的该关键词替换成与该关键词同义的命中词。
根据本说明书实施例的第2方面,提供一种确定文本创作者的方法,包括:
获取待确定文本,并提取所述待确定文本的关键词集合;
针对每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;
针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;
针对第i个备选词集合,确定该备选词集合中关键词的序位Ni;i=(1,2,…,S),S为数字编号位数;
确定数字编号;其中,所述数字编号的第i位数字为Ni;
将确定的数字编号对应的用户认定为所述待确定文本的创作者。
根据本说明书实施例的第3方面,提供另一种对文本进行同义修改的方法,包括:
获取待修改文本,并提取所述待修改文本的关键词集合;
从所述待修改文本中确定出关键段落集合;所述关键段落集合包含的关键词的数量大于指定数量;
针对每个关键段落,执行以下步骤:
针对该关键段落中的每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;
针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;
获取创作所述待修改文本的用户的数字编号;以及,根据所述数字编号的第i位Ni,将第i个备选词集合中的第Ni个词添加到命中词集合;i=(1,2,…,S),S为数字编号位数;
针对该关键段落中的每个关键词,若该关键词不属于所述命中词集合,则将该关键段落中的该关键词替换成与该关键词同义的命中词。
根据本说明书实施例的第4方面,提供另一种确定文本创作者的方法,包括:
获取待确定文本,并提取所述待确定文本的关键词集合;
从所述待确定文本中确定出包含的关键词的数量大于指定数量的段落,得到关键段落集合;
针对每个关键段落,执行以下步骤:
针对该关键段落中的每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;
针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;
确定数字编号;其中,所述数字编号的第i位数字为Ni;i=(1,2,…,S),S为数字编号位数;
在针对每个关键段落执行步骤完毕后,根据基于每个关键段落确定的数字编号,确定所述待确定文本的创作者。
本说明书实施例所提供的技术方案,针对创作者创作的原始文本,根据创作者的数字编号(起到身份标识作用)与固定替换规则对该原始文本中的至少部分关键词进行替换,得到修改文本并公开。如此,针对洗稿者根据公开的修改文本制作的抄袭文本,可以根据该抄袭文本中的关键词与固定替换规则还原出数字编号,证明该抄袭文本对应的原始文本的创作者身份。
通过本说明书实施例,对关键词进行同义词替换的方式不会影响文本的可读性,同时,采用固定替换规则可以使得在分析抄袭文本时,无需与原始文本进行比对就可以还原出创作者的数字编号,更为便利。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本说明书实施例提供的一种对文本进行同义修改的方法的流程示意图;
图2是本说明书实施例提供的一种确定文本创作者的方法的流程示意图;
图3是本说明书实施例提供的另一种对文本进行同义词修改的方法的流程示意图;
图4是本说明书实施例提供的另一种确定文本创作者的方法的流程示意图;
图5是本说明书实施例提供的一种对文本进行同义修改的装置的结构示意图;
图6是本说明书实施例提供的一种确定文本创作者的装置的结构示意图;
图7是本说明书实施例提供的一种对文本进行同义修改的装置的结构示意图;
图8是本说明书实施例提供的一种确定文本创作者的装置的结构示意图;
图9是用于配置本说明书实施例方法的一种设备的结构示意图。
具体实施方式
一般而言,对创作者的原始文本进行同义修改(即对原始文本中的一些词进行同义替换),得到修改文本并公开,可以在一定程度防止创作者的文本被抄袭。抄袭者在抄袭公开修改文本时,只要得到的抄袭文本中没有丢失那些替换的同义词,就可以以此为线索证明抄袭文本侵犯了原始文本的版权。
然而,上述这种方式也存在一定弊端。具体而言,一方面,如果抄袭者在理解修改文本的主旨之后,对修改文本进行了大幅度修改(如删除大段内容、增加大段内容、对表述修改较大),则得到的抄袭文本中很容易丢失替换的同义词,导致无法证明抄袭文本侵犯了原始文本的版权;另一方面,当发现抄袭文本时,需要将抄袭文本与原始文本进行比对,才能发现抄袭文本中的哪些词是替换过的,这比较麻烦。
为此,在本说明书实施例中,一方面,仅对原始文本中的部分或全部关键词进行同义词替换得到修改文本,如此,由于原始文本的关键词往往与原始文本的主旨紧密相关,因此即便抄袭者对修改文本进行大幅度修改,得到的抄袭文本中也不太可能丢失原始文本关键词的同义词。另一方面,根据原始文本的创作者的数字编号(其作用是唯一标识创作者的身份)与固定替换规则来对原始文本中的至少部分关键词进行同义词替换,如此,当发现抄袭文本时,不需要原始文本的情况下,也能根据固定规则与抄袭文本中的关键词还原出数字编号,以证明抄袭文本侵犯了原始文本的版权。
此外需要说明的是,在后文中,“集合”通常包含至少一个对象。
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1是本说明书实施例提供的一种对文本进行同义修改的方法的流程示意图,包括以下步骤:
S100:获取待修改文本,并提取所述待修改文本的关键词集合。
所述待修改文本是指创作者创作的原始文本。为了保护创作者的原始文本的版权,可以基于图1所示的方法对原始文本进行同义修改。
在本说明书实施例中,可以采用词频-逆文本频率指数(Term Frequency–InverseDocument Frequency,TF-IDF)算法,从所述待修改文本中提取关键词集合。在TF-IDF算法中。词频TF关注某个词在文本中的出现频次,文本的关键词往往是文本中高频出现的词;而逆文本频率指数IDF关注某个词是否是常见词,如果是常见词,即便在文本中高频出现,也不是关键词,因此常见词的权重较低,而不常见词权重较高,如果不常见词在文本中高频出现,则是关键词。
此外,也可以基于bm25算法(一种用于衡量词与文本相关性的算法)来提取待修改文本中的关键词集合,与待修改文本相关性越高的词,就越有可能被确定为关键词。
S102:针对每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合。
在本说明书实施例中,可以通过查询同义词表,确定每个关键词对应的同义词集合;也可以基于word2vec算法确定每个关键词的词向量,然后针对每个关键词,将该关键词的词向量与语料库中每个词的词向量进行距离计算,将距离小于指定距离的语料库中的词确定为该关键词的同义词。
S104:针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序。
在本说明书实施例中,第一排序规则是指对每个备选词集合内部的各词进行排序的规则,第二排序规则是指对各备选词集合间进行排序的规则。
值得强调的是,在若干备选词集合已经固定的情况下,根据第一排序规则对每个备选词集合内部各词进行排序的排序结果也是固定的,根据第二排序规则对各备选词集合间进行排序的排序结果也是固定的。
S106:获取创作所述待修改文本的用户的数字编号;以及,根据所述数字编号的第i位Ni,将第i个备选词集合中的第Ni个词添加到命中词集合。
S108:针对每个关键词,若该关键词不属于所述命中词集合,则将所述待修改文本中的该关键词替换成与该关键词同义的命中词。
在本说明书实施例中,用户的数字编号是指唯一标识用户身份的编号。可以将用户的身份证号、手机号或者用户在某个业务系统中注册账户后获得的唯一编号作为用户的数字编号,也可以根据一定的映射规则,将用户在业务系统中注册的唯一账户名映射为数字编号。
本文将数字编号的位数记为S,并且,数字编号通常是十进制的。可以理解,在图1所示的方法中,可以从待修改文本中确定出至少S个关键词组成关键词集合。
此外需要说明的是,实际应用中还需要考虑数字编号每个位的取值范围来设置每个备选词集合中词的数量。
例如,如果数字编号有S位,每个位的取值范围是(1,9),意味着每个位上有9个取值,那么可以设置每个备选词集合中词的数量为9,这就意味着,需要为每个关键词确定8个同义词才能满足需求。
当然,在确定每个关键词的同义词时,也可以根据系统内存储的所有用户的数字编号情况来确定。例如,系统中规定,数字编号有S位,每个位的取值范围是(1,5),那么,意味着每个位上有5个取值,那么可以设置每个备选词集合中词的数量为5,这就意味着,需要为每个关键词确定至少4个同义词才能满足需求。
在本说明书实施例中,定义i=(1,2,…,S),数字编号的第i位数字为Ni。
命中词集合是指修改后的文本中,每个关键词位置上最终应该出现的词的集合。此处值得强调,对于某个待修改文本来说,其关键词是固定的,第一排序规则与第二排序规则也是固定的,创作者的数字编号是固定的,因此最终得到的命中词也是固定的。根据固定的命中词集合对待修改文本中的关键词进行替换(有的关键词就是命中词本身,无需替换)后,得到修改文本。修改文本被抄袭者洗稿后,得到抄袭文本。抄袭文本通常不会丢失待修改文本中的关键词,因此,根据抄袭文本中的关键词与固定的替换规则,可以还原出数字编号。
通过图1所示的方法,针对创作者创作的原始文本,根据创作者的数字编号(起到身份标识作用)与固定替换规则对该原始文本中的至少部分关键词进行替换,得到修改文本并公开。如此,针对洗稿者根据公开的修改文本制作的抄袭文本,可以根据该抄袭文本中的关键词与固定替换规则还原出数字编号,证明该抄袭文本对应的原始文本的创作者身份。对关键词进行同义词替换的方式不会影响文本的可读性,同时,采用固定替换规则可以使得在分析抄袭文本时,无需与原始文本进行比对就可以还原出创作者的数字编号,更为便利。
图1所示的方法中,可以对待修改文本中出现的所有关键词位置都进行同义词替换,如此,由于关键词有时并不会仅分布在一个或少数几个段落,因此,即便抄袭者将修改文本的一些段落删除,也不一定可以在抄袭文本中彻底去除关键词。
此外,在本说明书实施例中,可以灵活设置第一排序规则与第二排序规则,只要能够起到固定排序的作用即可。例如,第一排序规则可以是:若所述待修改文本为汉字文本,则以该备选词集合中每个词的首字为基准,按照拼音首字母由前到后的顺序,将该备选词集合中的词进行排序;第二排序规则可以是:若所述待修改文本为汉字文本,则以每个备选词集合中第一个词的首字为基准,按照拼音首字母由前到后的顺序,将各备选词集合进行排序。
需要说明的是,如果两个备选词的首字一样或首字的拼音首字母一样,则按照第二个字的拼音首字符由前到后的顺序区分这两个备选词的先后顺序。
当然,还可以根据汉字的笔画等其他规则来排序。此外,如果待修改文本为英文文本,则可以该备选词集合中每个词的首字母为基准,按照首字母由前到后的顺序,将该备选词集合中的词进行排序。
在本说明书实施例中,可以将修改后的文本提交至区块链进行存证,利用区块链中数据不可篡改的特性,可以作为“所述数字编号的用户是修改文本的创作者”的可信证明。当然,也可以将修改后的文本提交给高安全级别的存储设备中进行存储。
图2是本说明书实施例提供的一种确定文本创作者的方法的流程示意图,包括如下步骤:
S200:获取待确定文本,并提取所述待确定文本的关键词集合。
所述待确定文本是指疑似抄袭文本。在实际应用中,创作者发现某个文本有可能是对其公开的修改文本进行抄袭得到的抄袭文本,可以通过图2所示的方法进行证明。
S202:针对每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合。
S204:针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序。
关于步骤S206之前的步骤实现,可以参考前文。
S206:针对第i个备选词集合,确定该备选词集合中关键词的序位Ni。
S208:确定数字编号。
在本说明书实施例中,可以将第1个备选词集合至第S个备选词集合中的关键词的序位数依次组合成数字编号,其中,数字编号的第i位数字为Ni。
S210:将确定的数字编号对应的用户认定为所述待确定文本的创作者。
如果待确定文本是抄袭文本,其本身一般不会丢失修改文本中的关键词(否则会丢失文本的关键信息,影响文本主旨的表达),因此,还原出的数字编号对应的用户就是修改文本的创作者。
图3是本说明书实施例提供的另一种对文本进行同义词修改的方法的流程示意图,包括如下步骤:
S300:获取待修改文本,并提取所述待修改文本的关键词集合。
S302:从所述待修改文本中确定出关键段落集合;所述关键段落集合包含的关键词的数量大于指定数量。
S304:针对每个关键段落,执行步骤S3041-S3044。
S3041:针对该关键段落中的每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合。
S3042:针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序。
S3043:获取创作所述待修改文本的用户的数字编号;以及,根据所述数字编号的第i位Ni,将第i个备选词集合中的第Ni个词添加到命中词集合。
S3044:针对该关键段落中的每个关键词,若该关键词不属于所述命中词集合,则将该关键段落中的该关键词替换成与该关键词同义的命中词。
图3所示方法是在图1所示方法基础上改动得到的。考虑到在实践中,将文本中的所有关键词位置都进行同义词替换,修改幅度过大,因此,可以选择仅针对文本中的关键段落进行关键词的同义词替换。
图4是本说明书实施例提供的另一种确定文本创作者的方法的流程示意图,包括如下步骤:
S400:获取待确定文本,并提取所述待确定文本的关键词集合。
S402:从所述待确定文本中确定出包含的关键词的数量大于指定数量的段落,得到关键段落集合。
S404:针对每个关键段落,执行以下步骤S4041-S4044。
S4041:针对该关键段落中的每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合。
S4042:针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序。
S4043:确定数字编号。
S406:在针对每个关键段落执行步骤完毕后,根据基于每个关键段落确定的数字编号,确定所述待确定文本的创作者。
图4所示的方法基于图3所示的方法。
在实际应用中,抄袭者可能会删除修改文本中的一些关键段落,得到抄袭文本。
倘若所述待确定文本是抄袭文本,且抄袭文本仅保留了修改文本中的一个关键段落,那么,可以将基于该关键段落确定出的数字编号对应的用户确定为所述待确定文本的创作者。
倘若所述待确定文本是抄袭文本,且抄袭文本保留了修改文本中的不止一个关键段落,那么,有可能存在基于不同的关键段落确定的数字编号不一致的问题。为此,在图3所示的方法中,可以根据所述数字编号与预设计算规则,计算得到校验数字P,然后将第S+1个备选词集合中的第P个词添加到命中词集合。这相当于,除了在待修改文本中加入创作者标记之外,还加入了校验标记,用于校验创作者标记是否损坏或者是否被篡改。其中,备选词集合的数量至少为S+1。
其中,预设计算规则可以根据实际需要设定,只要可以将所述数字编号稳定地映射成一个校验数字即可。
例如,预设计算规则可以是,计算
,将
作为校验数字P。
又如,预设计算规则可以是,计算
,将转换成二进制,取得到的二进制数的最
后一位,如果最后一位是0,则P为1,如果最后一位是1,则P为2。
在图4所示的方法中,可以针对待确定文本(可能丢失了修改文本中的某些关键段落)中的每个关键段落,根据确定的数字编号与预设计算规则,计算得到校验数字Q;判断第S+1个备选词集合中的第Q个词是否为该关键段落中的关键词;若是,则将确定的数字编号加入到该关键段落对应的编号集合;若否,则对确定的数字编号进行修正,得到至少一个修正后的数字编号并加入到该关键段落对应的编号集合;根据各关键段落分别对应的编号集合,将出现频次最高的数字编号对应的用户确定为所述待确定文本的创作者。
针对修正后的每个数字编号,基于该数字编号进行重新计算得到的Q满足:第S+1个备选词集合中的第Q个词为该关键段落中的关键词。进一步地,针对修正后的每个数字编号,还满足:用于表征“由确定的数字编号修正为该修改后的数字编号的改动程度”的改动程度表征值小于指定值。改动程度与改动程度表征值正相关。可以理解,此处是假设抄袭者即便对修改文本进行较大幅度改动,也会尽可能坚持修改文本的主旨,因此,某个修正后的数字编号在能够通过校验的情况下,改动程度越小,越有可能是实际创作者的数字编号。
为了更好的阐明本方案,以下进行举例。
假设用户的数字编号有3位(S=3),每位的取值范围是(1,2)。因此,需要针对每个关键段落,提取S+1个(即4个)关键词,并且,为每个关键词确定至少一个同义词。
假设待修改文本(原始文本)的一个关键段落为:
红海早过了,船在印度洋面上开驶着。但是太阳依然不饶人地迟落早起,侵占去大部分的夜。夜仿佛纸浸了油,变成半透明体;它给太阳拥抱住了,分不出身来,也许是给太阳陶醉了,所以夕阳霞隐褪后的夜色也带着酡红。到红消醉醒,船舱里的睡人也一身腻汗地醒来,洗了澡赶到甲板上吹海风,又是一天开始。这是七月下旬,合中国旧历的三伏,一年最热的时候。在中国热得更比常年利害,事后大家都说是兵戈之象,因为这就是民国二十六年。
上述的关键段落中的关键词包括:侵占、赶到、利害、兵戈。
对于这四个关键词,可以分别确定同义词:
(1)侵占的同义词:侵夺、侵蚀、侵吞;
(2)赶到的同义词:赶往、赶去;
(3)利害的同义词:严重;
(4)兵戈的同义词:战乱。
如此,得到以下4个备选词集合:
(1)侵占、侵夺、侵蚀、侵吞;
(2)赶到、赶往、赶去;
(3)利害、严重;
(4)兵戈、战乱。
采用第一规则与第二规则进行排序(集合内与集合间皆根据首字符由前到后排序),得到:
(1)兵戈、战乱;
(2)赶到、赶去、赶往;
(3)利害、严重;
(4)侵夺、侵蚀、侵吞、侵占。
假设待修改文本的创作者的数字编号为121,对于前三个备选词集合,依次命中第
1个词(兵戈)、第2个词(赶去)、第1个词(利害)。对
转换成二进制取最后一位,最后一位
是0,则校验数P为1。将第四个备选词集合中的第1个词(侵夺)也加入到命中词集合。
通过以上,可以得到上述关键段落对应的命中词集合为:兵戈、赶去、利害、侵夺。根据该命中词集合,对该关键段落中的关键词进行替换(如果关键词本身就是命中词,则无需替换),修改后得到的修改文本中的该关键段落为:
红海早过了,船在印度洋面上开驶着。但是太阳依然不饶人地迟落早起,“侵夺”去大部分的夜。夜仿佛纸浸了油,变成半透明体;它给太阳拥抱住了,分不出身来,也许是给太阳陶醉了,所以夕阳霞隐褪后的夜色也带着酡红。到红消醉醒,船舱里的睡人也一身腻汗地醒来,洗了澡“赶去”甲板上吹海风,又是一天开始。这是七月下旬,合中国旧历的三伏,一年最热的时候。在中国热得更比常年“利害”,事后大家都说是“兵戈”之象,因为这就是民国二十六年。
在实际应用中,针对待修改文本的每个关键段落都会执行上述操作。
抄袭者对公开的抄袭文本进行抄袭时,得到的抄袭文本往往会保留该关键段落的主旨,但是表述会发生改变,可以如下:
在印度洋上行使的船已经开过红海。然而太阳仍然不依不饶地迟迟落下、早早升起,“侵夺”了美好的夜。夜呈现半透明,将太阳拥抱住了,太阳也许陶醉了。船舱里的人们醒来后“赶去”甲板上吹海风,开始新的一天。这是中国旧历的三伏,一年最热的时候。中国热得比往年更“利害”,有“兵戈”的感觉,毕竟是民国二十六年。
对于上述抄袭文本的段落,虽然表述变动较大,但是依然可以确定该段落是关键段落,且确定出关键词依次为:侵夺、赶去、利害、兵戈。
可以基于抄袭文本的该关键段落的关键词,确定4个备选词集合,并完成排序,得到与修改阶段一致的排序后的4个备选词集合,如下:
(1)兵戈、战乱;
(2)赶到、赶去、赶往;
(3)利害、严重;
(4)侵夺、侵蚀、侵吞、侵占。
其中,抄袭文本中出现的兵戈是第1个备选词集合中的第1个词,所以数字编号的第1位是1;抄袭文本中出现的赶去是第2个备选词集合中的第2个词,所以数字编号的第2为是2;抄袭文本中出现的利害是第3个备选词集合中的第1个词,所以数字编号的第3位2是1。抄袭文本中出现的侵夺是第4个备选词集合中的第1个词,所以校验数P为1,说明数字编号的三位之和的二进制形式最后一位应该是0,实际上,数字编号121的三位之和为4,二进制形式为100,最后一位是0,通过校验。
然而,在实际应用中,抄袭文本可能将某些修改文本中的某些关键词删除或者修改,例如如下:
在印度洋上行使的船已经开过红海。然而太阳仍然不依不饶地迟迟落下、早早升起,“侵夺”了美好的夜。夜呈现半透明,将太阳拥抱住了,太阳也许陶醉了。船舱里的人们醒来后“赶去”甲板上吹海风,开始新的一天。这是中国旧历的三伏,一年最热的时候。中国热得比往年更“严重”,有“兵戈”的感觉,毕竟是民国二十六年。
根据此抄袭文本的关键段落,还原出的数字编号可能为122,数字编号的三位之和为5,二进制形式为101,最后一位是1,对应的校验数应当为2。而根据此抄袭文本,确定的校验数为1,校验不通过。
事实上,抄袭文本中往往有不止一个关键段落,基于每个关键段落确定的数字编号可能不尽一致,并且有的关键段落对应的数字编号可能通过校验,有的关键段落对应的数字编号可能未通过校验。
对于这种情况,以上述举例中抄袭文本的这个关键段落为例,确定的数字编号未通过校验,则对数字编号进行最小改动程度的修正,以便通过校验。显然,将122修正为121可以通过校验,如此,将修正后的数字编号121加入到该关键段落对应的编号集合。
从抄袭文本全篇来看,对于任一关键段落,该关键段落对应的编号集合中的至少一个数字编号都是可以通过校验的数字编号。那么,在各关键段落分别对应的编号集合中统计出出现频次最高的数字编号,大概率就是实际创作者的数字编号,可以将出现频次最高的数字编号对应的用户确定为创作者。
图5是本说明书实施例提供的一种对文本进行同义修改的装置的结构示意图,包括:
获取模块501,获取待修改文本,并提取所述待修改文本的关键词集合;
确定模块502,针对每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;
排序模块503,针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;
添加模块504,获取创作所述待修改文本的用户的数字编号;以及,根据所述数字编号的第i位Ni,将第i个备选词集合中的第Ni个词添加到命中词集合;i=(1,2,…,S),S为数字编号位数;
修改模块505,针对每个关键词,若该关键词不属于所述命中词集合,则将所述待修改文本中的该关键词替换成与该关键词同义的命中词。
所述排序模块503,若所述待修改文本为汉字文本,则以该备选词集合中每个词的首字为基准,按照拼音首字母由前到后的顺序,将该备选词集合中的词进行排序。
所述排序模块503,若所述待修改文本为汉字文本,则以每个备选词集合中第一个词的首字为基准,按照拼音首字母由前到后的顺序,将各备选词集合进行排序。
所述装置还包括:存证模块506,将修改后的文本提交至区块链进行存证。
图6是本说明书实施例提供的一种确定文本创作者的装置的结构示意图,包括:
获取模块601,获取待确定文本,并提取所述待确定文本的关键词集合;
第一确定模块602,针对每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;
排序模块603,针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;
第二确定模块604,针对第i个备选词集合,确定该备选词集合中关键词的序位Ni;i=(1,2,…,S),S为数字编号位数;
第三确定模块605,确定数字编号;其中,所述数字编号的第i位数字为Ni;
第四确定模块606,将确定的数字编号对应的用户认定为所述待确定文本的创作者。
图7是本说明书实施例提供的一种对文本进行同义修改的装置的结构示意图,包括:
获取模块701,获取待修改文本,并提取所述待修改文本的关键词集合;
确定模块702,从所述待修改文本中确定出关键段落集合;所述关键段落集合包含的关键词的数量大于指定数量;
执行模块703,针对每个关键段落,执行以下步骤:针对该关键段落中的每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;获取创作所述待修改文本的用户的数字编号;以及,根据所述数字编号的第i位Ni,将第i个备选词集合中的第Ni个词添加到命中词集合;i=(1,2,…,S),S为数字编号位数;针对该关键段落中的每个关键词,若该关键词不属于所述命中词集合,则将该关键段落中的该关键词替换成与该关键词同义的命中词。
所述执行模块703,根据所述数字编号与预设计算规则,计算得到校验数字P;将第S+1个备选词集合中的第P个词添加到命中词集合。
图8是本说明书实施例提供的一种确定文本创作者的装置的结构示意图,包括:
获取模块801,获取待确定文本,并提取所述待确定文本的关键词集合;
第一确定模块802,从所述待确定文本中确定出包含的关键词的数量大于指定数量的段落,得到关键段落集合;
执行模块803,针对每个关键段落,执行以下步骤:针对该关键段落中的每个关键词,确定该关键词对应的同义词集合,并将该关键词与对应的同义词集合组成备选词集合;针对每个备选词集合,根据第一排序规则,将该备选词集合中的词进行排序;以及,根据第二排序规则,将各备选词集合进行排序;确定数字编号;其中,所述数字编号的第i位数字为Ni;i=(1,2,…,S),S为数字编号位数;
第二确定模块804,在针对每个关键段落执行步骤完毕后,根据基于每个关键段落确定的数字编号,确定所述待确定文本的创作者。
所述第二确定模块804,针对每个关键段落,根据确定的数字编号与预设计算规则,计算得到校验数字Q;判断第S+1个备选词集合中的第Q个词是否为该关键段落中的关键词;若是,则将确定的数字编号加入到该关键段落对应的编号集合;若否,则对确定的数字编号进行修正,得到至少一个修正后的数字编号并加入到该关键段落对应的编号集合;针对修正后的每个数字编号,基于该数字编号进行重新计算得到的Q满足:第S+1个备选词集合中的第Q个词为该关键段落中的关键词;根据各关键段落分别对应的编号集合,将出现频次最高的数字编号对应的用户确定为所述待确定文本的创作者。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现本说明书中的客户端设备或服务端设备执行的方法。
图9示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本说明书中的客户端设备或服务端设备执行的方法。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务设备,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、方法、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。