基于字距词链的字符分组方法、存储介质及电子设备技术

技术编号:35894861 阅读:14 留言:0更新日期:2022-12-10 10:28
本发明专利技术特别涉及一种基于字距词链的字符分组方法、存储介质及电子设备,其中该字符分组方法包括如下步骤:遍历语料库,统计待分组的N个字符的频次,对语料库中的所有文本进行分词,根据N个字符所组成词语的频次计算各词语概率;按照字频从高到低,重复执行以下步骤直到所有字符完成分组;计算待分配字符c到第k组中已分组字符c

【技术实现步骤摘要】
基于字距词链的字符分组方法、存储介质及电子设备


[0001]本专利技术涉及字库隐形水印
,特别涉及一种基于字距词链的字符分组方法、存储介质及电子设备。

技术介绍

[0002]在现有的文本水印技术中,为了提高水印算法抵抗打印扫描、屏幕截屏和屏幕拍照等恶意攻击的鲁棒性能,基于字符拓扑结构修改的文本数字水印技术成为主流。即通过将特定字符进行不同形式的变形后对应不同的水印信息位串,字符变形数据会保存在特定的水印字库中,并在电子文本文档打印输出和屏幕显示的过程中,通过字体替换来实现水印信息的嵌入。当我们针对不同的用户使用不同的字符变形数据,对于该用户来说,该特定的水印字库即构成其安全字库。
[0003]现有的安全字库存在很多缺陷,为了实现在不改变用户任何使用习惯的前提下,用以解决现有技术中水印加载通用性差、系统稳定性差、实现过程复杂以及水印算法鲁棒性能低等问题,北京国隐科技有限公司申请的专利《一种通用的文本水印方法和装置》(公布号:CN114708133A)中公开了如下方案:一种通用的文本水印方法,包括以下步骤:根据特定策略对选定字库中一定数目的字符进行分组;根据特定规则对每个分组中的所有字符进行变形设计,并生成水印字符数据临时文件;生成用户终端水印编码数据,用以标识用户终端的身份认证信息;依据水印编码数据,并结合水印字符数据临时文件和分组的字符,动态生成并实时加载水印字库文件;运行电子格式的文本文件,在文件打印输出和屏幕显示的文档内容数据中利用水印字库文件实时嵌入水印信息。
[0004]该方案中需要对字符进行分组。在对字符进行分组时,理论上来说,字频较高的字符,应该分别位于不同组;常出现在一起的字符,应该分别位于不同组。满足这两个要求所生成的安全字库,在进行安全码的提取时,所需要的文字内容更少,因此,提取效果、准确率也更佳。该方案中的字符分组方法存在诸多不足:其一,每组中的字符数基本相等,这与上述的要求有所冲突;其二,分组时只考虑了字频,并没有对词频进行充分考虑,理论上,经常出现的词语中对应的字符,应该分在不同组别中,这样可以在更短的内容中出现更多分组,在进行安全码的提取时所需的内容更少;其三,该方案中对分组进行优化时的计算过程太复杂,需消耗大量的时间和算力。

技术实现思路

[0005]本专利技术的目的在于提供一种基于字距词链的字符分组方法,能够更加合理的对字符进行分组。
[0006]为实现以上目的,本专利技术采用的技术方案为:一种基于字距词链的字符分组方法,包括如下步骤:遍历语料库,统计待分组的N个字符的频次,对语料库中的所有文本进行分词,根据N个字符所组成词语的频次计算各词语概率;按照字频从高到低,重复执行
以下步骤直到所有字符完成分组;根据如下公式计算待分配字符c到第k组中已分组字符c
i
的词链和:式中,为包含字符c和字符c
i
的所有词语;对所有组的词链和进行归一化处理得到;以归一化的词链和为权重,将待分配字符c添加到权重最小的组。
[0007]与现有技术相比,本专利技术存在以下技术效果:词链和反映的是待分配字符c和组内其他字符之间作为词语出现在一起的关系,这个值越大,就说明它们出现在一起的情况越多,应当分配到不同组;根据词链和计算得到的权重正好反映了上述关系;通过将字符的分组问题转换成具体的权重大小比较,使得分组更加有理有据,且更加精准。
附图说明
[0008]图1是本专利技术的流程示意图;图2是本专利技术中实施例一的流程示意图;图3是本专利技术中实施例二的流程示意图;图4是本专利技术中实施例三的流程示意图。
具体实施方式
[0009]下面结合图1至图4,对本专利技术做进一步详细叙述。
[0010]参阅图1,本专利技术公开了一种基于字距词链的字符分组方法,包括如下步骤:遍历语料库,统计待分组的N个字符的频次,N的最优取值范围为1000~3000,如果已经指定了待分组的N个字符,那么直接对其进行统计即可,如果只给出N个数值,则可以按照字频从高到低对字符进行排序,挑选字频较高的N个字符。分词模型有很多,我们选用较为成熟的分词模型,对语料库中的所有文本进行分词,根据N个字符所组成词语的出现频数计算各词语概率;这里的字频和词频可以利用已有的语料库和模型去计算,也可以直接采用之前已经计算好的结果。语料库的选择也可以根据用户的需求去选择,即可以选择通用的语料库,也可以选择某个企业或组织的内部语料库,针对不同的语料库,所得到的字符分组也是不同的。
[0011]按照字频从高到低,重复执行以下步骤直到所有字符完成分组,后续根据公式计算待分配字符c分到每个分组中的词链和直到将字符c添加到权重最小的组是针对字符c的完整分组流程,我们只需要按照字频从高到低的顺序,对每个字符执行这样的分组流程即可完成N个字符的分组。
[0012]根据如下公式计算待分配字符c到第k组中已分组字符c
i
的词链和:式中,为包含字符c和字符c
i
的所有词语,这里对字符c和c
i
是否相邻、前后顺序
都不做限制,所有包含这两个字符的词语都属于词语。词链和反映的是这两个字符作为词语出现在一起的权重,是为了在之后的分组中,尽量出现在一起的两个字符放在不同组。
[0013]对所有组的词链和进行归一化处理得到;以归一化的词链和为权重,将待分配字符c添加到权重最小的组。通过将字符的分组问题转换成具体的权重大小比较,使得分组更加有理有据,且更加精准。
[0014]上述权重的计算只和词链和相关,为了引入字频相关的信息,本专利技术中提供了三种较为优选的实施方式以供参考。
[0015]参阅图2,实施例一,权重的计算公式中引入字距离和。具体地,本专利技术还包括如下步骤:根据字频对字符进行排序,计算排序后待分配字符c到第k组中已分组字符c
i
的字距离和:式中,为字符c和字符c
i
的距离;这里说的字距离,指的是按照字频排序后,他们的下标差,比如第1个字和第2个字,他们的距离就是1,字频最高的字和字频最低的字之间的字距离为最大,为N

1,字距离直接反映字频。
[0016]为了简便计算,对所有组的字距离和进行归一化处理得到;然后根据如下公式计算待分配字符c分配到第k组的权重:式中,为预设的权重系数且大于等于0,当时,就是以词链和为权重,当时,就是同时以词链和以及字距离和共同计算结果为权重。通过预设参数可以调节所计算权重中,词链和以及字距离和所占的比例。最后,将待分配字符c添加到权重最小的组即可。
[0017]上述公式中,C为已分组字符集合,为已分组字符的频次归一化后的标准差,其具体计算过程如下:首先,对已分组的所有字符的频次进行归一化,比如已分组字符的频次记为Q1、Q2、Q3、

,归一化操作即用每个字符的频次除以总的频次之和;其次,再求解归一化后所得到的数值的标准差即为。
[0018]词链和反映的是待分配字符c和组内其他字符之间作为词语出现在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于字距词链的字符分组方法,其特征在于:包括如下步骤:遍历语料库,统计待分组的N个字符的频次,对语料库中的所有文本进行分词,根据N个字符所组成词语的频次计算各词语概率;按照字频从高到低,重复执行以下步骤直到所有字符完成分组;根据如下公式计算待分配字符c到第k组中已分组字符c
i
的词链和:式中,为包含字符c和字符c
i
的所有词语;对所有组的词链和进行归一化处理得到;以归一化的词链和为权重,将待分配字符c添加到权重最小的组。2.如权利要求1所述的基于字距词链的字符分组方法,其特征在于:还包括如下步骤:根据字频对字符进行排序,计算排序后待分配字符c到第k组中已分组字符c
i
的字距离和:式中,为字符c和字符c
i
的距离;对所有组的字距离和进行归一化处理得到;根据如下公式计算待分配字符c分配到第k组的权重:式中,为预设的权重系数且大于等于0,C为已分组字符集合,为已分组字符的频次归一化后的标准差。3.如权利要求1所述的基于字距词链的字符分组方法,其特征在于:还包括如下步骤:根据字频对字符进行排序,计算排序后待分配字符c到第k组中已分组字符c
i
的频次差值和:式中,为字符c和字符c
i
的频次差值;对所有组的频次差值和进行归一化处理得到;根据如下公式计算待分...

【专利技术属性】
技术研发人员:田辉鲁国峰朱鹏远郭玉刚张志翔
申请(专利权)人:合肥高维数据技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1