文本内容校验方法、装置、电子设备及存储介质与流程

文档序号:29034282发布日期:2022-02-25 17:10阅读:112来源:国知局
文本内容校验方法、装置、电子设备及存储介质与流程

1.本发明实施例涉及计算机技术领域,尤其涉及一种文本内容校验方法、装置、电子设备及存储介质。


背景技术:

2.目前,对文本的管理是互联网风险管控中的重要手段。文本的风险管控主要是检测文本中是否包括敏感词汇,从而根据敏感词汇确定文本的文本风险。
3.目前,检测文本中是否存在敏感词汇的方式为:先对文本中各个句子进行分词处理,得到至少一个待匹配词汇;再将各待匹配词汇与黑白名单词汇进行一一匹配,最后根据匹配结果来确定为黑名单词汇还是白名单词汇。为了进一步提高确定敏感词汇的准确性,可以对分词的分词器进行特殊设置,如将黑名单词汇的权重值设置的高一点,以在分词器分词的过程中,可以尽可能的将黑名单词汇划分在一起,从而保证从句子中查找出黑名单词汇。。
4.监测文本中是否存在敏感词汇的方式还可以是:将文本中的各句子划分为至少一个待匹配词汇后,分别去匹配白名单词汇和黑名单词汇,即需要将句子中的各个待匹配词汇分别遍历依次黑名单词汇和白名单词汇,即识别两次。
5.发明人在基于上述方式实施本技术方案时,发现存在如下问题:
6.在设置分词器中黑名单词汇的权重值后,存在将句子成的词汇不准确性,导致确定出的黑名单词汇也不准确的技术问题;进一步的,在将待匹配词汇分别输入至黑白名单中进行校验时,存在效率较低以及资源浪费的技术问题。


技术实现要素:

7.本发明提供一种文本内容校验方法、装置、电子设备及存储介质,以实现在准确对文本内容进行校验的同时,提高文本校验效率和资源利用率的技术效果。
8.第一方面,本发明实施例提供了一种文本内容校验方法,该方法包括:
9.获取目标文本的首字,并将所述首字作为当前文字;
10.基于预先构建的黑名单状态转移树和白名单状态转移树,确定与所述当前文字相对应的根节点命中结果;
11.基于所述根节点命中结果,确定当前文字的下一文字的目标处理方式,并基于所述目标处理方式确定所述下一文字的命中结果;
12.根据所述目标文本中各文字的命中结果,确定所述目标文本的校验结果。
13.第二方面,本发明实施例还提供了一种文本内容校验装置,该装置包括:
14.文字提取模块,用于获取目标文本的首字,并将所述首字作为当前文字;
15.根节点匹配模块,用于基于预先构建的黑名单状态转移树和白名单状态转移树,确定与所述当前文字相对应的根节点命中结果;
16.目标处理方式确定模块,用于基于所述根节点命中结果,确定当前文字的下一文
字的目标处理方式,并基于所述目标处理方式确定所述下一文字的命中结果;
17.校验结果确定模块,用于根据所述目标文本中各文字的命中结果,确定所述目标文本的校验结果。
18.第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
19.一个或多个处理器;
20.存储装置,用于存储一个或多个程序,
21.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例任一所述的文本内容校验方法。
22.第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明实施例任一所述的文本内容校验方法。
23.本发明实施例的技术方案,通过在获取到目标文本后,依次将目标文本的每个文字输入至预先训练得到的黑白名单状态转移树中,得到与当前文字相对应的节点命中结果,并根据节点命中结果,确定与下一文字处理的目标处理方式,进而根据各文字的节点命中结果,确定目标文本中存在黑白名单词汇,在提高对目标文本检测准确性的同时,提高文本校验效率和资源利用率的技术效果。
附图说明
24.为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
25.图1为本发明实施例一所提供的一种文本内容校验方法流程示意图;
26.图2为本发明实施例一所提供的构建出的状态转移树示意图;
27.图3为本发明实施例二所提供的一种文本内容校验方法流程示意图;
28.图4为本发明实施例三所提供的执行文本内容校验方法的系统结构示意图;
29.图5为本发明实施例三所提供的一种匹配示意图;
30.图6为本发明实施例三所提供的一种匹配示意图;
31.图7为本发明实施例四所提供的一种文本内容校验装置结构示意图;
32.图8为本发明实施例五所提供的一种电子设备结构示意图。
具体实施方式
33.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
34.实施例一
35.图1为本发明实施例一所提供的一种文本内容校验方法流程示意图,本实施例可适用于确定文本内容中是否包括白名单词汇和黑名单词汇的情况,该方法可以由文本内容校验装置来执行,该装置可以通过软件和/或硬件的形式实现,该硬件可以是电子设备,电
子设备可以是移动终端、pc端等。该技术方案的执行可以由服务器执行、也可以由终端设备来执行、还可以由服务器和终端设备配合执行。
36.在介绍本实施例技术方案之前,先对应用场景进行示例性说明。在互联网领域中,通常需要文字沟通,在文本沟通的过程中,可以基于本发明公开的技术方案来确定发送的文本中是否包括敏感词汇,从而确定是否可以将其发送至相应终端设备。
37.如图1所述,本实施例的方法包括:
38.s110、获取目标文本的首字,并将所述首字作为当前文字。
39.其中,目标文本可以是从当前终端发送至其它服务器或者其它终端的文字构成的文本;或者是,将要接收其它终端设备或者服务器发送的文本。文本中包括至少一个文字。例如,在某平台上用户在内容编辑控件中编辑了相应内容,并触发“发送”控件,以将内容编辑控件中编辑的内容发送至其他终端,则可以将内容编辑控件中编辑的文字作为目标文本。在将目标文本发送至其他终端时,服务器可以先获取目标文本,并对目标文本的内容进行文本检测,以确定目标文本中是否包括黑名单词汇和/或白名单词汇。黑名单词汇主要是一些敏感词汇,例如,敏感词汇可以是转账、校园贷等。白名单词汇主要是正常的词汇。首字为目标文本中的第一个文字,并将当前正在处理的文字作为当前文字。如,当前正在对第一个文字进行处理,则首字为当前文字;若当前正在对文本的倒数第三个字处理,则倒数第三个字为当前文字
40.具体的,在获取到目标文本后,为了确定目标文本中是否包括黑名单词汇和/或白名单词汇,则可以先获取目标文本中第一个文字(首字)作为当前文字,以对第一个文字校验处理。
41.s120、基于预先构建的黑名单状态转移树和白名单状态转移树,确定与所述当前文字相对应的根节点命中结果。
42.其中,黑名单状态转移树是根据预先确定的黑名单词汇建立的树状图,相应的,白名单状态转移树是根据预先确定的白名单词汇建立的树状图。树状图中包括至少一个根节点和与各根节点相关联的至少一个叶子节点。树状图中包括至少一个树枝,每个树枝上包括至少一个叶子节点,所有叶子节点的数量表征该树枝的深度值。由于树状图是基于黑名单词汇或白名单词汇创建的,因此每个节点对应相应的文字。若黑名单状态转移树和/或白名单状态转移树的根节点中包括当前文字,则与当前文本相对应的为根节点命中;若黑名单状态转移树和/或白名单状态转移树的根节点中不包括当前文字,则与当前文本相对应的为未命中根节点。即,根节点命中结果包括命中根节点和未命中根节点。如,当前文字为“日”,黑名单名状态转移树和/或白名单状态转移树的至少一个根节点中包括“日”,则当前文字为根节点命中。
43.具体的,在获取到第一个文字后,可以确定黑名单状态转移树和白名单状态转移树的各根节点所对应的文字是否与当前文字相一致,若是,则说明命中根节点,反之,则说明没有命中根节点。
44.需要说明的是,在初始状态下,状态转移树中各节点所对应的状态为空闲状态。其中,可以将每获取一次文本,需要确定文本中是否包括黑白名单词汇的情形作为初始状态。
45.在本实施例中,所述基于预先构建的黑名单状态转移树和白名单状态转移树,确定与所述当前文字相对应的根节点命中结果,包括:根据黑名单状态转移树和白名单状态
转移树中的根节点所对应的目标文字,确定与所述当前文字相匹配的目标根节点,并将所述目标根节点作为所述当前文字的根节点命中结果。
46.其中,在获取到当前文字后,若当前文字为首字或者当前文字之前的文字未命中根节点,则可以继续确定当前文字与状态转移树的各根节点对应的目标文字是否相匹配,若是,则将与当前文字相同的目标文字对应的根节点作为当前文字的根节点命中结果。同时,可以将目标文本的根节点由空闲状态标记为已匹配状态,以在处理下一文字时,可以从已匹配状态的节点开始下行匹配。s130、基于所述根节点命中结果,确定当前文字的下一文字的目标处理方式,并基于所述目标处理方式确定所述下一文字的命中结果。
47.需要说明的,若目标文本中文字的数量为两个或者两个以上,则当前文字的处理结果决定下一文字的处理方式;若目标文本中文字的数量为一个,则当前文字不管是否命中黑白名单状态转移树的根节点,目标文本中的文字均可以是正常文字。
48.其中,目标处理方式是根据当前文字的命中结果来确定的。如,若当前文字命中黑名单状态转移树的根节点,则与当前文字的下一文字的目标处理方式为对黑名单状态转移树进行匹配处理,对白名单状态转移树的根节点进行搜索处理,即从与根节点相关联的叶子节点中匹配与下一文字相同的叶子节点,同时,搜索白名单状态转移树的根节点是否存在与下一文字相同的文字;若当前文字命中的为白名单状态转移树的根节点,则与当前文字的下一文本的目标处理方式为对白名单状态转移树进行匹配处理,对黑名单状态转移树的根节点搜索处理,即从与根节点相关联的叶子节点中匹配与下一文字相同的叶子节点,同时,搜索黑名单状态转移树的根节点中是否存在与下一文字相同的文字;若当前文本同时命中黑名单状态转移树和白名单状态转移树的根节点,则目标处理方式为对黑名单状态转移树和白名单状态转移树进行匹配处理,即从与该根节点相关联的叶子节点中匹配与下一文字相同的叶子节点。
49.具体的,可以根据当前文字的根节点命中结果,确定对当前文字的下一文字进行处理时的具体处理方式,进而基于具体的处理方式对下一文字以及下一文字之后的各文字进行处理,以确定连续文字是否命中黑名单状态转移树同一分支上的各节点,和/或,连续文字是否命中白名单状态转移树同一分支上的各节点,进而根据命中结果来确定是黑名单词汇还是白名单词汇。
50.需要说明的是,若当前文字仅命中黑名单状态转移树的根节点1,则将根节点1由空闲状态标记为已匹配状态;获取下一文字,确定下一文字是否命中白名单根节点,同时确定下一文字是否与根节点1关联的叶子节点对应的文字相匹配。也就是说,在获取到下一文字时,若两个状态树中均存在已匹配状态的节点,则从已匹配状态节点开始下行查找,若不存在已匹配状态的节点,则从根节点开始匹配。
51.s140、根据所述目标文本中各文字的命中结果,确定所述目标文本的校验结果。
52.其中,校验结果可以是目标文本中是否包括白名单词汇,是否包括黑名单词汇、白名单词汇的具体内容和/或黑名单词汇具体内容。
53.具体的,根据目标文本中各文字的命中结果,可以确定目标文本中是否包括白名单词汇和/或黑名单词汇,同时可以将黑白名单词汇输出,或者将目标文本发送至其他终端设备,将黑白名单词汇隐藏显示。
54.还需要说明的是,若目标文本中包括黑名单词汇和/或白名单词汇,则可以输出目
标文本中的黑名单词汇和/或白名单词汇并对用户进行提醒。
55.本发明实施例的技术方案,通过在获取到目标文本后,依次将目标文本的每个文字输入至预先训练得到的黑白名单状态转移树中,得到与当前文字相对应的节点命中结果,并根据节点命中结果,确定与下一文字处理的目标处理方式,进而根据各文字的节点命中结果,确定目标文本中存在黑白名单词汇,在提高对目标文本检测准确性的同时,提高文本校验效率和资源利用率的技术效果。
56.在上述技术方案的基础上,所述方法还包括:若所述黑名单状态转移树和所述白名单状态转移树中的根节点中不包括所述当前文字,则获取当前文字的下一文字,并将所述下一文字作为所述当前文字。
57.具体的,若当前文字既没有命中黑名单状态转移树的根节点,也没有命中白名单状态转移树的根节点,则说明当前文字不影响与其关联的文字的属性,此时可以获取当前文字的下一文字,并将下一文字作为当前文字,重新执行s110至s140,即确定当前文字是否命中黑白名单状态转移树的根节点,进而确定当前文字下一文字的具体处理方式。
58.在上述各技术方案的基础上,所述方法还包括:分别创建黑名单状态转移树与白名单状态转移树。
59.具体的,根据黑名单词汇库中的黑名单词汇创建黑名单状态转移树,同时,可以根据白名单词汇库中的白名单词汇创建白名单状态转移树。
60.在本实施例中,根据黑名单词汇库中的黑名单词汇创建的黑名单状态转移树可以参见图2。针对黑名单词汇库中的各个黑名单词汇,将首字相同的词汇进行归类,并将归类后的首字作为黑名单状态转移树的根节点,例如,首次相同的类别包括两个,则在黑名单状态转移树中根节点可以标记为a1和a2。针对每一个类别对应的词汇,可以从与a1相关联的词汇中,确定出第二个字相同的词汇并作为与a1相关联的叶子节点b1、b2…bn
。进一步的,确定与各叶子节点b
x
相关联的叶子节点c
x
,以此类推来确定黑名单状态转移树的各节点。也就是说,状态转移树中的各个节点所共用的上一层级的节点所对应的文字相同。
61.需要说明的,黑名单状态转移树的深度与黑白名单词汇库中各词汇的长度相一致。例如,若黑名单词汇的长度为5个字符,则与该黑名单词汇相对应的状态转移树中的与该分支对应的深度值为5。
62.在本实施例中,构建黑白名单状态转移树的好处在于,在获取到当前文字后,可以基于黑白名单状态转移树对当前文字进行相互校验,从而提高黑名单词汇和白名单词汇校验效率和准确率的技术效果。
63.本技术方案,确定目标文本中是否包括黑名单词汇和白名单词汇,是基于预先创建的黑白名单状态转移树来确定的。因此在获取到相应文字后,可以通过黑白名单相互校验的方式,确定目标文本中是否包括白名单词汇和/或黑名单词汇,从而提高了确定文本校验的高效性和准确性的技术效果。
64.实施例二
65.图3为本发明实施例二所提供一种文本内容校验方法的流程示意图。在前述实施例的基础上,可以根据根节点命中结果,确定当前文字的下一文字的目标处理方式,并基于目标处理方式确定对下一文字的命中结果进行进一步优化,其具体的实施方式可参见本实施例技术方案。其中,与上述实施例相同或者相应的技术术语在此不再赘述。
66.如图3所示,所述方法包括:
67.s210、获取目标文本的首字,并将首字作为当前文字。
68.需要说明的是,目标文本通常为连续为本,第一个文字即可能为敏感词汇中首字,因此为了提高对目标文本进行校验的全面性,可以从目标文本的第一文字开始处理,从而提高校验结果的准确性和全面性的技术效果。
69.s220、基于预先构建的黑名单状态转移树和白名单状态转移树,确定与所述当前文字相对应的根节点命中结果。
70.其中,状态转移树的各节点为相应的文字,即根据黑名单词汇库中的词汇建立的状态转移树,和根据白名单词汇库中的词汇建立的状态转移树,每个节点为词汇中的相应文字。
71.具体的,可以根据黑名单状态转移树和白名单状态转移树中各根节点对应的文字,确定是否存在与当前文字相一致的目标文字。若存在与当前文字相同的目标文字,则说明该目标文字所对应的根节点可以作为根节点命中结果,反之,则根节点命中结果为未命中。若为命中的情况,可以将命中的根节点标记为已匹配状态,未命中的根节点仍然为空闲状态
72.s230、若根节点命中结果为黑名单状态转移树或白名单状态转移树中的任一目标根节点,则获取当前文字的下一文字,并将目标根节点标记为已匹配状态。
73.其中,目标根节点为与当前文字相匹配的根节点。根节点可以是白名单状态转移树的根节点或黑名单状态转移树的根节点。具体的,若当前文字命中黑名单状态转移树和/或白名单状态转移树中的任一目标根节点时,则可以获取当前文字的下一文字。同时,可以将此目标根节点标记为已匹配状态,以在获取到下一文字时,可以从已匹配状态的根节点开始查找与其相关联的下一层级的叶子节点中能否匹配到相应的叶子节点。若状态转移树中不包括已匹配状态的节点,则在获取下一文字时,可以从根节点开始搜索。
74.s240、若从目标根节点所属的状态转移树相对应的另一状态转移树中匹配到与下一文字对应的待标记根节点,且从已匹配状态的目标根节点相关联的下一层级中匹配到待标记叶子节点,则将待标记根节点和待标记叶子节点作为下一文字的命中结果,并将待标记根节点和待标记叶子节点标记为已匹配状态,以在获取到下一文字的下一文字时,从各状态转移树中节点标记为已匹配状态且深度值最大的节点开始确定下一文字的命中结果。
75.其中,目标根节点可以是黑名单状态转移树的根节点,也可以是白名单状态转移树的根节点,相应的,若目标根节点属于白名单状态转移树,则另一状态转移树是指黑名单状态转移树;若目标根节点属于黑名单状态转移树,则另一状态转移树是指白名单状态转移树。待标记根节点可以理解为从另一状态转移树的根节点中匹配到与下一文字所对应的目标根节点,并将该根节点记为待标记根节点。待标记叶子叶节点为从目标根节点相关联的下一层级的叶子节点中与下一文字相对应的节点。可以将匹配到的节点标记为已匹配状态,以在获取到下一文字的下一文字时,即第三个文字时,可以从各节点状态标记为已匹配状态的节点,且深度值最大的节点开始下行查找与其相关联的叶子节点中是否包括第三个文字,可以按照此种黑白名单相互校验的方式,确定各节点的状态。
76.在本实施例中,在若根节点命中结果为黑名单状态转移树或白名单状态转移树中的任一目标根节点,则获取当前文字的下一文字,并将目标根节点标记为已匹配状态之后,
还包括:若从目标根节点所属的状态转移树相对应的另一状态转移树中未匹配到与下一文字对应的待标记根节点,或未从已匹配状态的目标根节点相关联的下一层级中匹配到待标记叶子节点,则下一文字的命中结果为未命中,将目标根节点的状态从已匹配状态更新为空闲状态,以在获取下一文字的下一文字时,从各状态转移树的根节点开始匹配。
77.在实际应用过程中,存在首字匹配到状态转移树的目标根节点,第二个文字未匹配到与目标根节点相关联的叶子节点,或者未从目标根节点所属的状态转移树相对的另一状态转移树中搜索到与第二个文字相对应的根节点,则第二个文字的命中结果为未命中。若未命中与目标根节点相关联的叶子节点,则可以将目标根节点的状态由已匹配状态更新为空闲状态。
78.可以理解为,若深度值最大且处于已匹配状态的叶子节点相关联的下一层级中包括与下一文字相对应的文字,则可以将与下一文字对应的节点标记为已匹配状态;若检测到深度值最大且处于已匹配状态的叶子节点相关联的下一层级中未包括与下一文字相对应的文字,则可以将处于已匹配状态且位于同一分支上的各节点的状态由已匹配状态更新为空闲状态。
79.需要说明的是,状态转移树的各个节点在初始状态的标记均可以是空闲状态。
80.还需要说明的是,在获取到第三个文字时,由于各状态转移树的各节点均为空闲状态,则可以再次从根节点开始确定与各文字对应的命中结果。也就是说,若状态转移树中存在已匹配状态的已匹配节点,则可以从已匹配节点相关联的下一层的节点中确定与下一文字相同的节点,若状态转移树中不存在已匹配状态的节点,在获取到下一文字时,从根节点开始匹配。由于在获取到文字后,文字均需要输入到黑白名单状态转移树中,因此可以依据上述原则来确定目标文本中的黑白名单词汇。
81.在上述各技术方案的基础上,在获取到下一文字的下一文字时,所述方法还包括:针对各状态转移树,若存在节点的标记为已匹配状态,则从所述已匹配状态且深度值最大的目标叶子节点处开始确定与所述目标叶子节点相关联的下一层级中是否包括所述下一文字;若是,则将与所述下一文字相同的待标记叶子节点标记为已匹配状态;若否,则将所述目标叶子节点的上一层级直至所述目标根节点的已匹配状态更新为空闲状态。
82.可以理解为,在获取到下一文字时,若各状态转移树中存在节点标记为已匹配状态,则可以从已匹配状态且深度值最大的目标叶子节点处开始,确定与目标叶子节点相关联的下一层级中是否包括与下一文字相应的目标文本,即待标记叶子节点,若是存在,则可以将待标记叶子节点的状态标记为已匹配状态,反之,则可以从目标叶子节点开始上行查找处于已匹配状态的节点,并将各节点由已匹配状态标记为未匹配状态。相应的,若状态转移树中不存在处于已匹配状态的叶子节点或根节点,则可以从根节点开始确定与文字相匹配的目标根节点。
83.在本实施例中,在获取所述下一文字的下一文字时,所述方法还包括:若检测到各节点的标记均为空闲状态,则确定所述黑名单状态转移树和所述白名单状态转移树中是否包括所述下一文字,并将与所述下一文字相同的目标根节点标记为已匹配状态。
84.可以理解为,前两个字、前几个字或者在匹配的过程中出现断字,即某个字未匹配上节点的情况下,可能各节点的标记为空闲状态,此时若获取到下一文字时,则可以重复执行s120至s130,即确定各状态转移树的根节点中是否存在与下一文字相对应的目标文字,
若是存在,则可以将目标文字所对应根节点标记为空闲状态,反之,则所有节点的状态还均为空闲状态,可以继续获取下一个文字。
85.s250、根据目标文本中各文字的命中结果,确定目标文本的校验结果。
86.在本实施例中,根据目标文本中各文字的命中结果,确定目标文本的校验结果可以是:若检测到当前文字所对应的叶子节点为黑名单状态转移树的最后一个叶子节点且为白名单状态转移树的待标记叶子节点,则获取当前文字的下一文字,并将待标记叶子节点标记为已匹配状态;若白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中,存在与下一文字相对应的目标文字时,则目标文本中与白名单状态转移树命中的连续字符为白名单文本。
87.需要说明的是,为了提高文本校验效果,本实施例主要是结合黑白名名单状态转移树相互校验的方式来确定的。
88.具体的,若检测到当前文字所对应的叶子节点为黑名单状态转移树的最后一个叶子节点,且当前文字为白名单状态转移树的待标记叶子节点,即待标记叶子节点的下一层级还包括相应的叶子节点,则可以获取当前文字的下一文字,并将待标记叶子节点标记为已匹配状态。在获取到下一文字后,可以确定白名单状态转移树中深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中存在与下一文字相应的目标文字时,则目标文本中与白名单状态转移树的节点命中的连续字符为白名单文本。
89.在本实施例中,所述根据所述目标文本中各文字的命中结果,确定所述目标文本的校验结果,包括:若检测到当前文字所对应的叶子节点为所述白名单状态转移树的最后一个叶子节点且为所述白名单状态转移树的待标记叶子节点,则获取所述当前文字的下一文字,并将所述待标记叶子节点标记为已匹配状态;若所述黑名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中存在与所述下一文字相对应的目标文字时,则所述目标文本中与所述黑名单状态转移树命中的连续字符为黑名单文本。
90.也就是说,若当前文字所对应的叶子节点为白名单状态转移树的最后一个叶子节点,但当前文字在黑名单状态转移树在所对应的待标记节点不为最后一个层级的叶子节点,则获取当前文字的下一文字,并确定状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中存在与下一文字相应的目标文字时,则可以将目标文本中与黑名单状态转移树命中的连续字符作为黑名单文本。
91.在本实施例中,根据目标文本中各文字的命中结果,确定目标文本的校验结果,包括:若检测到当前文字所对应的叶子节点为黑名单状态转移树的最后一个叶子节点且为白名单状态转移树的待标记叶子节点,则获取当前文字的下一文字,并将待标记叶子节点标记为已匹配状态;若白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中不存在与下一文字相对应的目标文字时,则目标文本中与黑名单状态转移树命中的连续字符为黑名单文本,并将白名单状态转移树中各节点标记为已匹配状态更新为空闲状态;或,若检测到当前文字所对应的叶子节点为白名单状态转移树的最后一个叶子节点且为黑名单状态转移树的待标记叶子节点,则获取当前文字的下一文字,并将待标记叶子节点标记为已匹配状态;若白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中不存在与下一文字相对应的目标
文字时,则目标文本中与白名单状态转移树命中的连续字符为白名单文本,并将黑名单状态转移树中各标记为已匹配状态更新为空闲状态。
92.可以理解为,在检测到当前文字所对应的叶子节点为黑名单状态转移树的最后一个叶子节点,但不为白名单状态转移树的最后一个叶子节点,则获取当前文本的下一叶子节点,同时,将白名单状态转移树所匹配到的叶子节点标记为已匹配状态。若白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级叶子节点中不存在文字,则目标文本中与黑名单状态转移树命中的连续字符为黑名单文本,并将黑白名单状态转移树中各节点标记为已匹配状态更新为空闲状态。或者是,在检测到当前文字所对应的叶子节点为白名单状态转移树的最后一个叶子节点,但不为黑名单状态转移树的最后一个叶子节点,则获取当前文本的下一叶子节点,同时,将黑名单状态转移树所匹配到的叶子节点标记为已匹配状态。若黑名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级叶子节点中,不存在该文字,则目标文本中与白名单状态转移树命中的连续字符为白名单文本,并将黑白名单状态转移树中各节点的标记由已匹配状态更新为空闲状态。
93.在本实施例中,若当前文字所对应的叶子节点为黑名单状态转移树的最后一个叶子节点,同时也为白名单状态转移树的最后一个叶子节点,则确定首次名中黑白名单状态转移树中的根节点,若首次命中白名单状态转移树的根节点,则确定与白名单命状态转移树命中的各个节点所对应的连续文本为白名单文本;若首次命中黑名单状态转移树的根节点,则确定与黑名单状态转移树命中的各个节点所对应的连续文本为黑名单文本。
94.本发明实施例的技术方案,通过黑白名单状态转移树对当前文字进行相互阿校验的方式,确定目标文本中的白名单词汇和黑名单词汇,避免了现有技术中需要对文本进行分词后,并根据分词结果去匹配黑白名单词汇库中各个词汇,存在分词不准确,导致校验结果不准确的问题,以及需要分别校验黑白名单存在资源浪费的技术问题,实现了高效、便捷以及准确的确定目标文本中敏感词汇的技术效果。
95.实施例三
96.作为上述实施例的一可选实施例,执行本实施例文本内容校验方法可以由文本内容校验系统来执行,即敏感词汇检测系统来执行。其中,与上述在本实施例中,敏感词汇检测系统包括:文本风控系统后台、轮询检索器、结果输出模块、状态转移树以及检测控制器,参见图4。
97.其中,文本风控系统后台,用于从文本信息系统后台中拦截目标文本。如在发送文本的过程中,文本信息系统后台获取目标文本,可以通过风控系统进行敏感词检测后再下发(即文本内容校验)。轮询检索器,用于对目标文本中的每个句子进行检索,在检索控制器的命令下,将文本中每个字依次输入至检索控制器。检索控制器,用于记录当前黑白名单状态转移树中各节点的状态(已匹配状态或空闲状态),并依据各节点的状态执行下一步操作。状态转移树是根据词汇库中的词汇构建的,其构建出的示意图可参见图2。具体的构建方式可以参见实施例一种的相似描述。如,对词库中的词汇以起始字为根节点,遍历每个词汇中的每个字,插入到状态树中的相应节点中构建出状态转移树。结果输出模块,依据最终输出的黑白名单检索结果判断当前文本的风控结果,或者是,将黑白名单词汇输出或者不仅输出黑白名单词汇还输出相应的提示信息。
98.在基于上述文本内容校验系统的基础上,文本内容校验方法的具体实施方式,可以是:
99.轮询检索器获取目标文本中的第一个文字,并将第一个目标文字输入至检索控制器;检索控制器中包括状态转移树,可以确定状态转移树的根节点中是否包括第一个文字。
100.如果黑名单状态转移树和白名单状态转移树的根节点,都不包括第一个文字,则轮询系统获取下一个文字继续进行匹配,如果全部的文字都没有匹配上相应的根节点,则说明目标文本中不存在白名单词汇和黑名单词汇。
101.如果第一个文字命中了黑名单状态转移树的根节点,则启动黑名单状态转移树匹配流程,同时,确定第一个文字是否命中白名单状态转移树的根节点,若也匹配到了白名单状态转移树的根节点,则同时开启白名单状态转移树匹配流程。同时,将命中的根节点由空闲状态更新为已匹配状态。
102.如果第一个文字仅命中了白名单状态转移树的根结点,参见图5,则再依次获取到第二个字、第三个字、直至最后一个字时,需要判断该词汇是否触发了黑名单根结点,如果未触发则根据最终是否完全匹配白名单词进行输出,即如果目标文本中连续字符与白名单状态转移树同一分支上的各节点相对应,则为白名单词汇,反之不为白名单词汇。
103.如果在获取到第二个字直至最后一个字的过程中触发了黑名单根结点,则同步启动黑名单匹配流程,并将已匹配上的节点标记为已匹配状态,以在获取到下一文字时,可以从深度最深且处于已匹配状态的节点开始下行查找下一文字是否命中相关联的节点,当然,若未匹配上,从该节点开始将上行各标记为已匹配状态的节点的已匹配状态取消,或者更新为空闲状态。需要说明的是,如果第一个文字仅命中了黑名单状态转移树的根结点,其具体的实施方式与上述相同,仅是将白名单词汇修改为黑名单词汇即可。
104.如果第一个文字同时命中黑白名单状态转移树的根结点参见图6,或者先命中黑名单状态转移树的根结点,并在后续依次对各个文字进行匹配过程中,某字触发了白名单的根结点命中,则需要判断是在黑名单状态转移树中当前节点的下一节点是否匹配上,如果黑名单词匹配上,但是白名单词能够继续匹配,则暂时保留该黑名单词。如果最终是白名单词被命中,则舍弃暂存的黑名单词,输出白名单词,否则输出刚刚暂存的黑名单词。
105.在对各个文字进行匹配处理后,可以确定最终输出的结果,输出的结果中可以包括相应的黑名单词汇、白名单词汇等信息。
106.本发明实施例的技术方案,通过在获取到目标文本后,依次将目标文本的每个文字输入至预先训练得到的黑白名单状态转移树中,得到与当前文字相对应的节点命中结果,并根据节点命中结果,确定与下一文字处理的目标处理方式,进而根据各文字的节点命中结果,确定目标文本中存在黑白名单词汇,在提高对目标文本检测准确性的同时,提高文本校验效率和资源利用率的技术效果。
107.实施例四
108.图7为本发明实施例五提供的一种文本内容校验装置的结构示意图,该装置包括:文字提取模块310、根节点匹配模块320、目标处理方式确定模块330以及校验结果确定模块340。
109.其中,文字提取模块310,用于获取目标文本的首字,并将所述首字作为当前文字;根节点匹配模块320,用于基于预先构建的黑名单状态转移树和白名单状态转移树,确定与
所述当前文字相对应的根节点命中结果;目标处理方式确定模块330,用于基于所述根节点命中结果,确定当前文字的下一文字的目标处理方式,并基于所述目标处理方式确定所述下一文字的命中结果;校验结果确定模块340,用于根据所述目标文本中各文字的命中结果,确定所述目标文本的校验结果。
110.在上述技术方案的基础上,所述根节点匹配模块,还用于根据黑名单状态转移树和白名单状态转移树中的根节点所对应的目标文字,确定与所述当前文字相匹配的目标根节点,并将所述目标根节点作为所述当前文字的根节点命中结果。
111.在上述各技术方案的基础上,所述装置还包括:文字获取模块,还用于:若所述黑名单状态转移树和所述白名单状态转移树中的根节点中不包括所述当前文字,则获取当前文字的下一文字,并将所述下一文字作为所述当前文字。
112.在上述各技术方案的基础上,所述目标处理方式确定模块包括:
113.状态标记单元,用于若所述根节点命中结果为黑名单状态转移树或白名单状态转移树中的任一目标根节点,则获取所述当前文字的下一文字,并将所述目标根节点标记为已匹配状态;
114.子节点确定单元,用于若从所述目标根节点所属的状态转移树相对应的另一状态转移树中匹配到与所述下一文字对应的待标记根节点,且从所述已匹配状态的目标根节点相关联的下一层级中匹配到待标记叶子节点,则将所述待标记根节点和所述待标记叶子节点作为所述下一文字的命中结果,并将所述待标记根节点和所述待标记叶子节点标记为已匹配状态,以在获取到所述下一文字的下一文字时,从各状态转移树中节点标记为已匹配状态且深度值最大的节点开始确定所述下一文字的命中结果。
115.在上述各技术方案的基础上,所述状态标记单元,在用于若所述根节点命中结果为黑名单状态转移树或白名单状态转移树中的任一目标根节点,则获取所述当前文字的下一文字,并将所述目标根节点标记为已匹配状态之后,还用于:若从所述目标根节点所属的状态转移树相对应的另一状态转移树中未匹配到与所述下一文字对应的待标记根节点,或未从所述已匹配状态的目标根节点相关联的下一层级中匹配到待标记叶子节点,则所述下一文字的命中结果为未命中,将所述目标根节点的状态从已匹配状态更新为空闲状态,以在获取所述下一文字的下一文字时,从各状态转移树的根节点开始匹配。
116.在上述各技术方案的基础上,在获取所述下一文字的下一文字时,所述装置还包括:
117.节点判断模块,用于针对各状态转移树,若存在节点的标记为已匹配状态,则从所述已匹配状态且深度值最大的目标叶子节点处开始确定与所述目标叶子节点相关联的下一层级中是否包括所述下一文字;
118.若是,则将与所述下一文字相同的待标记叶子节点标记为已匹配状态;若否,则将所述目标叶子节点的上一层级直至所述目标根节点的已匹配状态更新为空闲状态。
119.在上述各技术方案的基础上,所述装置还包括:匹配模块,用于若检测到各节点的标记均为空闲状态,则确定所述黑名单状态转移树和所述白名单状态转移树中是否包括所述下一文字,并将与所述下一文字相同的目标根节点标记为已匹配状态。
120.在上述各技术方案的基础上,所述校验结果确定模块,包括:
121.子叶子节点确定单元,用于若检测到当前文字所对应的叶子节点为所述黑名单状
态转移树的最后一个叶子节点且为所述白名单状态转移树的待标记叶子节点,则获取所述当前文字的下一文字,并将所述待标记叶子节点标记为已匹配状态;
122.白名单确定单元,用于若所述白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中存在与所述下一文字相对应的目标文字时,则所述目标文本中与所述白名单状态转移树命中的连续字符为白名单文本。
123.在上述各技术方案的基础上,所述校验结果确定模块,包括:
124.若检测到当前文字所对应的叶子节点为所述白名单状态转移树的最后一个叶子节点且为所述白名单状态转移树的待标记叶子节点,则获取所述当前文字的下一文字,并将所述待标记叶子节点标记为已匹配状态;若所述黑名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中存在与所述下一文字相对应的目标文字时,则所述目标文本中与所述黑名单状态转移树命中的连续字符为黑名单文本。
125.在上述各技术方案的基础上,所述校验结果确定模块,包括:
126.若检测到当前文字所对应的叶子节点为所述黑名单状态转移树的最后一个叶子节点且为所述白名单状态转移树的待标记叶子节点,则获取所述当前文字的下一文字,并将所述待标记叶子节点标记为已匹配状态;若所述白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中不存在与所述下一文字相对应的目标文字时,则所述目标文本中与所述黑名单状态转移树命中的连续字符为黑名单文本,并将所述白名单状态转移树中各标记为已匹配状态更新为空闲状态;或,
127.若检测到当前文字所对应的叶子节点为所述白名单状态转移树的最后一个叶子节点且为所述黑名单状态转移树的待标记叶子节点,则获取所述当前文字的下一文字,并将所述待标记叶子节点标记为已匹配状态;
128.若所述白名单状态转移树中,与深度值最大且处于已匹配状态的叶子节点相关联的下一层级的叶子节点中不存在与所述下一文字相对应的目标文字时,则所述目标文本中与所述白名单状态转移树命中的连续字符为白名单文本,并将所述黑名单状态转移树中各标记为已匹配状态更新为空闲状态。
129.本发明实施例的技术方案,通过在获取到目标文本后,依次将目标文本的每个文字输入至预先训练得到的黑白名单状态转移树中,得到与当前文字相对应的节点命中结果,并根据节点命中结果,确定与下一文字处理的目标处理方式,进而根据各文字的节点命中结果,确定目标文本中存在黑白名单词汇,在提高对目标文本检测准确性的同时,提高文本校验效率和资源利用率的技术效果。
130.本发明实施例所提供的文本内容校验装置可执行本发明任意实施例所提供的文本内容校验方法,具备执行方法相应的功能模块和有益效果。
131.值得注意的是,上述装置所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。
132.实施例五
133.图8为本发明实施例四提供的一种电子设备的结构示意图。图8示出了适于用来实现本发明实施例实施方式的示例性电子设备40的框图。图8显示的电子设备40仅仅是一个
示例,不应对本发明实施例的功能和使用范围带来任何限制。
134.如图8所示,电子设备40以通用计算设备的形式表现。电子设备40的组件可以包括但不限于:一个或者多个处理器或者处理单元401,系统存储器402,连接不同系统组件(包括系统存储器402和处理单元401)的总线403。
135.总线403表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
136.电子设备40典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备40访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
137.系统存储器402可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)404和/或高速缓存存储器405。电子设备40可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统406可以用于读写不可移动的、非易失性磁介质(图8未显示,通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线403相连。存储器402可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
138.具有一组(至少一个)程序模块407的程序/实用工具408,可以存储在例如存储器402中,这样的程序模块407包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块407通常执行本发明所描述的实施例中的功能和/或方法。
139.电子设备40也可以与一个或多个外部设备409(例如键盘、指向设备、显示器410等)通信,还可与一个或者多个使得用户能与该电子设备40交互的设备通信,和/或与使得该电子设备40能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口411进行。并且,电子设备40还可以通过网络适配器412与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器412通过总线403与电子设备40的其它模块通信。应当明白,尽管图8中未示出,可以结合电子设备40使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
140.处理单元401通过运行存储在系统存储器402中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的文本内容校验方法。
141.实施例六
142.本发明实施例六还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行文本内容校验方法。
143.该方法包括:
144.获取目标文本的首字,并将所述首字作为当前文字;
145.基于预先构建的黑名单状态转移树和白名单状态转移树,确定与所述当前文字相对应的根节点命中结果;
146.基于所述根节点命中结果,确定当前文字的下一文字的目标处理方式,并基于所述目标处理方式确定所述下一文字的命中结果;
147.根据所述目标文本中各文字的命中结果,确定所述目标文本的校验结果。
148.本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
149.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
150.计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
151.可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
152.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1