著录项信息
专利名称 | 敏感文本检测方法及装置 |
申请号 | CN201410064854.6 | 申请日期 | 2014-02-25 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2015-08-26 | 公开/公告号 | CN104866465A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/22 | IPC分类号 | G;0;6;F;1;7;/;2;2;;;G;0;6;F;1;7;/;3;0查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东403室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司,腾讯云计算(北京)有限责任公司 | 当前权利人 | 腾讯科技(深圳)有限公司,腾讯云计算(北京)有限责任公司 |
发明人 | 张红林 |
代理机构 | 北京三高永信知识产权代理有限责任公司 | 代理人 | 罗振安 |
摘要
本发明公开了一种敏感文本检测方法及装置,属于信息处理技术领域。方法包括:获取当前检测文本的特征文本字符串;根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重;当至少一个关键词类别的权重大于预设阈值时,确定文本为敏感文本。本发明根据预先建立的有限自动状态机对特征文本字符串进行检测时,仅需进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度;且在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度。
敏感文本检测方法及装置\n技术领域\n[0001] 本发明涉及信息处理技术领域,特别涉及一种敏感文本检测方法及装置。\n背景技术\n[0002] 随着互联网的兴起,网络文学以其方便阅读且涵盖海量数据等特点,得到了快速的发展。而在网络文学迅速普及且内容快速增长的同时,也伴随着大量内容涉及情色、暴力等有害青少年身心健康的敏感文本的出现,敏感文本给阅读者造成了阅读障碍。因此,为了给阅读者创造一个良好的阅读环境,如何检测敏感文本,以将检测出来的敏感文本及时进行隔离,成为了一个关键问题。\n[0003] 现有技术预先配置一个关键词列表,所述关键词列表中包含多个关键词。当检测到一个新文本后,首先从关键词列表中选取一个关键词,然后对该文本进行从头至尾的扫描,统计该关键词在该文本中的出现频率;以此类推,直至遍历关键词列表中的所有关键词,得到关键词列表中每个关键词在该文本中的出现频率。最后,根据关键词列表中每个关键词在该文本中的出现频率检测该文本是否为敏感文本;如果至少一个关键词在该文本中的出现频率大于预设阈值,则确定该文本为敏感文本。\n[0004] 在实现本发明的过程中,发明人发现现有技术至少存在以下问题:\n[0005] 由于在根据关键词列表中的关键词对文本进行检测时,需根据每一个关键词对文本进行多次从头至尾的扫描,所以消耗了大量的时间,导致文本检测的效率低下。\n发明内容\n[0006] 为了解决现有技术的问题,本发明实施例提供了一种敏感文本检测方法及装置。\n所述技术方案如下:\n[0007] 一方面,提供了一种敏感文本检测方法,所述方法包括:\n[0008] 获取当前检测文本的特征文本字符串;\n[0009] 根据预先建立的有限自动状态机对所述特征文本字符串进行检测,得到每个关键词在所述特征文本字符串中的出现频率,所述有限自动状态机中包括多个关键词;\n[0010] 对于多个关键词类别中的每个关键词类别,基于所述关键词类别对应的每个关键词的出现频率及所述每个关键词的预设权重,计算所述关键词类别在所述文本中的权重;\n[0011] 当至少一个关键词类别的权重大于预设阈值时,确定所述文本为敏感文本。\n[0012] 另一方面,提供了一种敏感文本检测装置,所述装置包括:\n[0013] 字符串获取模块,用于获取当前检测文本的特征文本字符串;\n[0014] 关键词检测模块,用于根据预先建立的有限自动状态机对所述特征文本字符串进行检测,得到每个关键词在所述特征文本字符串中的出现频率,所述有限自动状态机中包括多个关键词;\n[0015] 权重计算模块,用于对于多个关键词类别中的每个关键词类别,基于所述关键词类别对应的每个关键词的出现频率及所述每个关键词的预设权重,计算所述关键词类别在所述文本中的权重;\n[0016] 敏感文本确定模块,用于当至少一个关键词类别的权重大于预设阈值时,确定所述文本为敏感文本。\n[0017] 本发明实施例提供的技术方案带来的有益效果是:\n[0018] 在获取当前检测文本的特征文本字符串后,根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;由于基于预先建立的有限自动状态机对特征文本字符串进行检测,所以在检测过程中,只需对特征文本字符串进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度,降低了资源占用率;且对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重,并根据关键词类别的权重确定当前检测文本是否为敏感文本,由于在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度,提高了检测精准率,可净化网络阅读环境。\n附图说明\n[0019] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0020] 图1是本发明实施例一提供的一种敏感文本检测方法流程图;\n[0021] 图2是本发明实施例二提供的一种敏感文本检测方法流程图;\n[0022] 图3是本发明实施例二提供的一种有限自动状态机的结构示意图;\n[0023] 图4是本发明实施例二提供的一种字符匹配之前的特征文本字符串的检测示意图;\n[0024] 图5是本发明实施例二提供的一种字符匹配之后的特征文本字符串的检测示意图;\n[0025] 图6是本发明实施例三提供的一种敏感文本检测装置的结构示意图;\n[0026] 图7是本发明实施例四提供的一种服务器的结构示意图。\n具体实施方式\n[0027] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。\n[0028] 实施例一\n[0029] 本发明实施例提供了一种敏感文本检测方法,参见图1,本实施例提供的方法流程包括:\n[0030] 101、获取当前检测文本的特征文本字符串。\n[0031] 102、根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率,有限自动状态机中包括多个关键词。\n[0032] 103、对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重。\n[0033] 104、当至少一个关键词类别的权重大于预设阈值时,确定文本为敏感文本。\n[0034] 本实施例提供的方法,在获取当前检测文本的特征文本字符串后,根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;由于基于预先建立的有限自动状态机对特征文本字符串进行检测,所以在检测过程中,只需对特征文本字符串进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度,降低了资源占用率;且对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重,并根据关键词类别的权重确定当前检测文本是否为敏感文本,由于在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度,提高了检测精准率,可净化网络阅读环境。\n[0035] 进一步地,根据预先建立的有限自动状态机对特征文本字符串进行检测之前,该方法还包括:\n[0036] 配置关键词列表,关键词列表中至少包括多个关键词、每个关键词的关键词类别及每个关键词的预设权重;\n[0037] 确定关键词列表中全部关键词具有的公共前缀;\n[0038] 将公共前缀作为根节点,建立树状有限自动状态机,树状有限自动状态机的每一个分支中至少包含一个关键词。\n[0039] 进一步地,根据预先建立的有限自动状态机对特征文本字符串进行检测,包括:\n[0040] 从特征文本字符串的尾部开始,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测。\n[0041] 进一步地,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测,包括:\n[0042] 步骤a、确定有限自动状态机中最小长度字符串,将有限自动状态机由特征文本字符串的尾部向前移动,直至最小长度字符串的尾字符与特征文本字符串的尾字符对齐;\n[0043] 步骤b、判断公共前缀的首字符是否与公共前缀对齐的特征文本字符串的第一字符相匹配;\n[0044] 步骤c、如果匹配,则从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0045] 步骤d、如果不匹配,则判断有限自动状态机中是否存在与第一字符相匹配的字符;如果存在与第一字符相匹配的字符,则将有限自动状态机向前移动,直至有限自动状态机中与第一字符相匹配的字符同第一字符对齐,从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0046] 步骤e、以此类推,重复执行步骤b至步骤d,直至公共前缀到达特征文本字符串的首部。\n[0047] 进一步地,计算关键词类别在文本中的权重之前,该方法还包括:\n[0048] 确定关键词类别对应的每个关键词在文本中的位置权重;\n[0049] 计算关键词类别在文本中的权重,包括:\n[0050] 基于关键词类别对应的每个关键词的出现频率、每个关键词的预设权重及每个关键词的位置权重,计算关键词类别在文本中的权重。\n[0051] 进一步地,确定文本为敏感文本之后,该方法还包括:\n[0052] 当至少一个关键词类别的权重大于预设阈值时,根据权重最大的关键词类别确定文本的类别;\n[0053] 根据权重最大的关键词类别的权重与预设阈值的大小关系,确定文本的敏感程度;\n[0054] 输出文本的敏感程度。\n[0055] 上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。\n[0056] 实施例二\n[0057] 本发明实施例提供了一种敏感文本检测方法,现结合上述实施例一的内容,对本发明实施例提供的敏感文本检测方式进行详细地解释说明。参见图2,本实施例提供的方法流程包括:\n[0058] 201、配置关键词列表,关键词列表中至少包括多个关键词、每个关键词的关键词类别及每个关键词的预设权重。\n[0059] 在本实施例中,配置关键词列表时,可由后台服务器的管理者或程序开发人员进行预先配置。其中,关键词列表中包括多个关键词类别,且每个关键词类别具有一个或多个关键词。比如,关键词类别可分为政治类别、暴力类别及色情类别等;比如,暴力类别可包括打架、斗殴、群架等多个关键词。本实施例对关键词类别及每个关键词类别具有的关键词个数均不进行具体限定。\n[0060] 此外,关键词列表中的每个关键词除对应一个关键词类别外,还对应一个预设权重,而预设权重的大小可反应出该关键词的敏感程度。假设预设权重为0-1之间的小数,则当某个关键词的预设权重为0.5以上的值,则说明该关键词敏感程度较高;而当某个关键词的预设权重为0.5以下的值,则说明该关键词敏感程度较低。通过对关键词设置预设权重,可在后续过程中对当前检测文本是否为敏感文本进行精确检测。\n[0061] 202、确定关键词列表中全部关键词具有的公共前缀;将公共前缀作为根节点,建立树状有限自动状态机,树状有限自动状态机的每一个分支中至少包含一个关键词。\n[0062] 其中,公共前缀指代每个关键词所具有的相同字符部分。比如,字符串in,inn和int所具有的公共前缀便是“in”;字符串ethernetmovesme,ethernetisking,ethernetisdead和ethernetforever所具有的公共前缀便是“ethernet”。有限自动状态机是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。在建立树状有限自动状态机时,以关键词为ethernetmovesme,ethernetisking,ethernetisdead和ethernetforever为例,则先将公共前缀“ethernet”作为根节点,之后,以根节点为起始基于各个关键词的字符建立各个分支,且从根节点开始直至某一分支的底部至少包含一个关键词,建立好的树状有限自动状态机可如图3所示。在图3中,4个关键词分别占据一个分支。\n[0063] 此外,若关键词列表中的各个关键词不具有一个统一的公共前缀,则还可为各个关键词设置一个统一的公共前缀,以便建立树状有限自动状态机。\n[0064] 需要说明的是,在执行本实施例提供的方法时,上述步骤201和步骤202无需每次均执行,仅在初次对敏感文本进行检测时执行即可。且当配置好了关键词列表及建立好了基于公共前缀的有限自动状态机后,当后台服务器检测到一个新文本后,便可通过下述步骤203至步骤210对该新文本进行检测,以确定该文本是否为敏感文本。\n[0065] 203、获取当前检测文本的特征文本字符串。\n[0066] 其中,当前检测文本通常为最新检测到的文本,也即,网络用户终端新上传的文本。当检测到新文本后,可触发生成包含该文本标识的文本检测请求,并将该文本检测请求发送至敏感文本检测装置,从而敏感文本检测装置便可根据该文件检测请求从存储设备中将该文本的内容加载至内存,进而对该文本进行敏感文本检测。\n[0067] 可选地,检测新文本时,可采取周期性检测方式,即每隔预设时间检测一次网络用户终端是否上传新文本;当检测到新文本后,触发生成文本检测请求,而文本检测请求也是周期性的生成。此外,在检测新文本时,还可采取实时检测方式,即实时监测网络用户终端是否上传了新文本;当检测到一个新文本后,立即触发生成文本检测请求。在执行本实施例提供的方法时,具体采取何种检测方式,本实施例对此不作具体限定。\n[0068] 在获取当前检测文本的特征文本字符串时,可将当前检测文本的正文字符和标题字符进行拼接,得到包含当前检测文本正文和标题的特征文本字符串。\n[0069] 204、根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率,有限自动状态机中包括多个关键词。\n[0070] 在本实施例中,根据预先建立的有限自动状态机对特征文本字符串进行检测,包括:\n[0071] 从特征文本字符串的尾部开始,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测。\n[0072] 可选地,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测,具体包括如下步骤:\n[0073] 步骤a、确定有限自动状态机中最小长度字符串,将有限自动状态机由特征文本字符串的尾部向前移动,直至最小长度字符串的尾字符与特征文本字符串的尾字符对齐;\n[0074] 其中,最小长度字符串指代具有最少字符个数的关键词。特征文本字符串的尾部指代特征文本字符串的最后一个字符所在位置。\n[0075] 步骤b、判断公共前缀的首字符是否与公共前缀对齐的特征文本字符串的第一字符相匹配;\n[0076] 其中,判断公共前缀的首字符与第一字符是否相匹配,也即,判断公共前缀的首字符与第一字符是否相同;如果公共前缀的首字符与第一字符相同,则二者匹配;如果公共前缀的首字符与第一字符不相同,则二者不匹配。\n[0077] 步骤c、如果匹配,则从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0078] 此外,如果不存关键词,则直接将有限自动状态机向前移动最大长度字符串对应的长度;其中,最大长度字符串指代具有最多字符个数的关键词。\n[0079] 步骤d、如果不匹配,则判断有限自动状态机中是否存在与第一字符相匹配的字符;如果存在与第一字符相匹配的字符,则将有限自动状态机向前移动,直至有限自动状态机中与第一字符相匹配的字符同第一字符对齐,从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0080] 此外,如果不存在与第一字符相匹配的字符,则直接将有限自动状态机向前移动最大长度字符串对应的长度。如果不存关键词,则也直接将有限自动状态机向前移动最大长度字符串对应的长度。\n[0081] 步骤e、以此类推,重复执行步骤b至步骤d,直至公共前缀到达特征文本字符串的首部。\n[0082] 下面以一个具体的例子对基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测的过程进行详细地解释说明。\n[0083] 如图4所示,当前待检测文本为最底下一行“n o t h i n g t o w o r r y a b o u t i n t h i s”,上边为树状有限自动状态机。在该有限自动状态中最小长度字符串为关键词“ethernetisdead”对应的字符串,其长度为14个字符,则在第一次匹配时,将有限自动状态机由特征文本字符串的尾字符“s”开始向前移动,直至最小长度字符串ethernetisdead”的尾字符“d”与特征文本字符串的尾字符“s”对齐;此时,公共前缀的首字符“e”与特征文本字符串中“worry”的第一次出现的“r”字符对齐,由于公共前缀的首字符“e”与特征文本字符串中“worry”的第一次出现的“r”字符不匹配,所以第一次匹配失败,有限自动状态机需向前移动。由于有限自动状态机的公共前缀中的第5个字符与特征文本字符串中“worry”的第一次出现的“r”字符一致,所以将有限自动状态机向前移动,直至有限自动状态机中第5个字符“r”与特征文本字符串中“worry”的第一次出现的“r”字符对齐,详见图5。在图5中,从与公共前缀的首字符“e”对齐的字符“t”开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;由于从与公共前缀的首字符“e”对齐的字符“t”开始,特征文本字符串中不存在关键词,所以将有限自动状态机继续向前移动,且此时移动的位移为最大长度字符串“ethernetforever”对应的长度,也即向前移动15个字符。由于向前移动15个字符后,有限自动状态机已到达特征文本字符串的首部,所以至此完成对特征文本字符串的检测。\n[0084] 需要说明的是,通过上述步骤203至步骤204便可完成对特征文本字符串的检测,得到每个关键词在特征文本字符串中的出现频率。进一步地,为了得到更加精确的敏感文本检测结果,本实施例提供的方法还包括如下步骤205。\n[0085] 205、确定各个关键词类别对应的每个关键词在文本中的位置权重。\n[0086] 其中,在确定关键词类别对应的每个关键词在文本中的位置权重时,需先确定关键词类别对应的每个关键词在文本中的出现位置。而每个关键词在文本中的出现位置,在上述步骤204对特征文本字符串进行检测时,便可确定。在确定每个关键词在文本中的出现位置后,根据预先设置的不同位置对应的位置权重便可确定各个关键词类别对应的每个关键词在文本中的位置权重。而在进行位置权重的设置时,可将文本的开头部分和结尾部分对应的位置权重设置的大一些,而将文本的中间部分对应的位置权重设置的小一些。比如,将文本的前三分之一部分和后三分之一部分对应的位置权重设置为0.8,而将文本的中间三分之一部分对应的位置权重设置为0.2,本实施例对位置权重设置的方式不进行具体限定。进一步地,之所以将文本的开头部分和结尾部分对应的位置权重设置的大一些,而将文本的中间部分对应的位置权重设置的小一些,是由于文本的开头部分和结尾部分通常包含结论性内容,而这些结论性内容通常能反应文本的主旨所在。此外,如果某一关键词在文本开头或结尾部分、文本中间部分均出现,则进一步比较该关键词在文本开头或结尾部分的出现频率同该关键词在文本中间部分的出现频率的大小关系,出现频率高的部分即为该关键词的出现位置。此外,如果某一关键词在文本中未出现,则其对应的位置权重为0。\n[0087] 206、基于关键词类别对应的每个关键词的出现频率、每个关键词的预设权重及每个关键词的位置权重,计算关键词类别在文本中的权重。\n[0088] 其中,在计算关键词类别在文本中的权重时,针对该关键词类别对应的多个关键词中的每一个关键词,可将其出现频率、预设权重及位置权重进行相乘,得到每个关键词的权重;进而将每个关键词的权重进行相加,得到该关键词类别在文本中的权重。\n[0089] 此外,也可仅根据关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重。具体采用哪种计算关键词类别在文本中的权重的方式,本实施例对此不作具体限定。本实施例仅以基于关键词类别对应的每个关键词的出现频率、每个关键词的预设权重及每个关键词的位置权重,计算关键词类别在文本中的权重为例进行说明。\n[0090] 下面以一个具体的例子对计算关键词类别在文本中的权重的过程进行详细地解释说明。\n[0091] 以关键词类别为类别S,其所对应的关键词分别为关键词A、关键词B和关键词C,关键词A的出现频率为a1、预设权重为b1、位置权重为c1,关键词B的出现频率为a2、预设权重为b2、位置权重为c2,关键词C的出现频率为0、预设权重为b3、位置权重为0为例,则首选分别计算关键词A、关键词B和关键词C各自的权重。关键词A的权重=a1*b1*c1,关键词B的权重=a2*b2*c2,关键词C的权重=0*b1*0=0。所以类别S在文本中的权重=a1*b1*c1+a2*b2*c2。\n[0092] 207、当至少一个关键词类别的权重大于预设阈值时,根据权重最大的关键词类别确定文本的类别。\n[0093] 当一个关键词类别的权重大于预设阈值时,则根据该关键词类别可直接确定文本的类别;比如,关键词类别为政治类别,则敏感文本的类别为政治类别。\n[0094] 当至少一个关键词类别的权重大于预设阈值时,根据权重最大的关键词类别确定文本的类别。比如,关键词类别分别为政治类别和暴力类别,且暴力类别的权重大于政治类别的权重,则敏感文本的类别为暴力类别。\n[0095] 208、根据权重最大的关键词类别的权重与预设阈值的大小关系,确定文本的敏感程度。\n[0096] 在根据权重最大的关键词类别的权重与预设阈值的大小关系,确定文本的敏感程度时,具体可采用如下方式:\n[0097] 当关键词类别的权重大于预设阈值0%-20%时,可将该文本的敏感程度确定为一星级;当关键词类别的权重大于预设阈值20%-40%时,可将该文本的敏感程度确定为二星级;当关键词类别的权重大于预设阈值40%-60%时,可将该文本的敏感程度确定为三星级;当关键词类别的权重大于预设阈值60%-80%时,可将该文本的敏感程度确定为四星级;当关键词类别的权重大于预设阈值80%-100%时,可将该文本的敏感程度确定为五星级。\n[0098] 上述仅给出确定文本的敏感程度的一种可能的实施方式,本实施例对确定文本的敏感程度的实现方式不进行具体限定。\n[0099] 209、输出文本的敏感程度。\n[0100] 为了给后续的敏感文本审核人员提供参考数据,可将确定的敏感程度进行输出,以便敏感文本审核人员确定是否发布文本。在输出文本的敏感程度时,可将文本的敏感程度通过特定显示界面进行输出,本实施例对此不作具体限定。\n[0101] 需要说明的是,在执行本实施例提供的方法时,也可不执行上述步骤207至步骤\n209,也即,不确定敏感文本所对应的类别及敏感文本的敏感程度;而直接执行步骤210。步骤210具体包括如下内容:当至少一个关键词类别的权重大于预设阈值时,确定文本为敏感文本。\n[0102] 其中,预设阈值的大小可为10或20等等,本实施例对预设阈值的大小不进行具体限定,可视具体情况而定。\n[0103] 针对一个文本而言,在对其进行检测时,有可能存在多个关键词类别的权重均大于预设阈值的情况。针对该种情况,无论是那几个关键词类别对应的权重大于预设阈值,都直接将该文本确定为敏感文本。也即,该文本可能涉及色情或严重暴力等不适合披露的内容,需将该文本进行隔离,并在后续过程中进行人工审核,以确定该文本是否发布。\n[0104] 此外,在执行完上述步骤201至步骤206,且直接执行步骤210后,若当前检测文本为敏感文本,则也可确定并输出该敏感文本的敏感程度,以便能够明确该敏感文本的敏感程度,方便后续进行发布决策。\n[0105] 本实施例提供的方法,在获取当前检测文本的特征文本字符串后,根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;由于基于预先建立的有限自动状态机对特征文本字符串进行检测,所以在检测过程中,只需对特征文本字符串进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度,降低了资源占用率;且对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重,并根据关键词类别的权重确定当前检测文本是否为敏感文本,由于在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度,提高了检测精准率,可净化网络阅读环境。此外,由于设置了关键词类别,所以根据关键词类别确定敏感文本的类别,可实现对敏感文本的有效区分。且基于敏感文本的敏感程度,可以显式的方式直观地反应敏感文本是否适合发布,为审核人员的对敏感文本的审核提供了便利。\n[0106] 实施例三\n[0107] 本发明实施例提供了一种敏感文本检测装置,用于执行上述实施例一或实施例二所提供的方法。参见图6,该装置包括:字符串获取模块601、关键词检测模块602、权重计算模块603及敏感文本确定模块604。\n[0108] 其中,字符串获取模块601,用于获取当前检测文本的特征文本字符串;关键词检测模块602与字符串获取模块601连接,用于根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率,有限自动状态机中包括多个关键词;权重计算模块603与关键词检测模块602连接,用于对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重;敏感文本确定模块604与权重计算模块603连接,用于当至少一个关键词类别的权重大于预设阈值时,确定文本为敏感文本。\n[0109] 可选地,该装置还包括:\n[0110] 配置模块,用于配置关键词列表,关键词列表中至少包括多个关键词、每个关键词的关键词类别及每个关键词的预设权重;\n[0111] 公共前缀确定模块,用于确定关键词列表中全部关键词具有的公共前缀;\n[0112] 状态机建立模块,用于将公共前缀作为根节点,建立树状有限自动状态机,树状有限自动状态机的每一个分支中至少包含一个关键词。\n[0113] 可选地,关键词检测模块,用于从特征文本字符串的尾部开始,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测。\n[0114] 可选地,关键词检测模块,包括:\n[0115] 确定单元,用于确定有限自动状态机中最小长度字符串,将有限自动状态机由特征文本字符串的尾部向前移动,直至最小长度字符串的尾字符与特征文本字符串的尾字符对齐;\n[0116] 判断单元,用于判断公共前缀的首字符是否与公共前缀对齐的特征文本字符串的第一字符相匹配;如果匹配,则从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;如果不匹配,则判断有限自动状态机中是否存在与第一字符相匹配的字符;如果存在与第一字符相匹配的字符,则将有限自动状态机向前移动,直至有限自动状态机中与第一字符相匹配的字符同第一字符对齐,从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;以此类推,直至公共前缀到达特征文本字符串的首部。\n[0117] 可选地,该装置还包括:\n[0118] 位置权重确定模块,用于确定关键词类别对应的每个关键词在文本中的位置权重;\n[0119] 权重计算模块,用于基于关键词类别对应的每个关键词的出现频率、每个关键词的预设权重及每个关键词的位置权重,计算关键词类别在文本中的权重。\n[0120] 可选地,该装置还包括:\n[0121] 文本类别确定模块,用于当至少一个关键词类别的权重大于预设阈值时,根据权重最大的关键词类别确定文本的类别;\n[0122] 敏感程度确定模块,用于根据权重最大的关键词类别的权重与预设阈值的大小关系,确定文本的敏感程度;\n[0123] 敏感程度输出模块,用于输出文本的敏感程度。\n[0124] 综上所述,本发明实施例提供的装置,在获取当前检测文本的特征文本字符串后,根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;由于基于预先建立的有限自动状态机对特征文本字符串进行检测,所以在检测过程中,只需对特征文本字符串进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度,降低了资源占用率;且对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重,并根据关键词类别的权重确定当前检测文本是否为敏感文本,由于在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度,提高了检测精准率,可净化网络阅读环境。\n[0125] 实施例四\n[0126] 本实施例提供了一种服务器,该服务器可以用于执行上述实施例中提供的敏感文本检测方法。参见图7,该服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)722(例如,一个或一个以上处理器)和存储器732,一个或一个以上存储应用程序742或数据744的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器732和存储介质730可以是短暂存储或持久存储。\n存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器722可以设置为与存储介质730通信,在服务器700上执行存储介质730中的一系列指令操作。\n[0127] 服务器700还可以包括一个或一个以上电源727,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口758,和/或,一个或一个以上操作系统741,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。\n[0128] 具体在本实施例中,经配置以由一个或者一个以上处理器执行一个或者一个以上程序包含用于进行以下操作的指令:\n[0129] 获取当前检测文本的特征文本字符串;\n[0130] 根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率,有限自动状态机中包括多个关键词;\n[0131] 对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重;\n[0132] 当至少一个关键词类别的权重大于预设阈值时,确定文本为敏感文本。\n[0133] 假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,服务器的存储器中,还包含用于执行以下操作的指令:\n[0134] 配置关键词列表,关键词列表中至少包括多个关键词、每个关键词的关键词类别及每个关键词的预设权重;\n[0135] 确定关键词列表中全部关键词具有的公共前缀;\n[0136] 将公共前缀作为根节点,建立树状有限自动状态机,树状有限自动状态机的每一个分支中至少包含一个关键词。\n[0137] 在第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,服务器的存储器中,还包含用于执行以下操作的指令:\n[0138] 从特征文本字符串的尾部开始,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测。\n[0139] 在第三种可能的实施方式作为基础而提供的第四种可能的实施方式中,服务器的存储器中,还包含用于执行以下操作的指令:\n[0140] 步骤a、确定有限自动状态机中最小长度字符串,将有限自动状态机由特征文本字符串的尾部向前移动,直至最小长度字符串的尾字符与特征文本字符串的尾字符对齐;\n[0141] 步骤b、判断公共前缀的首字符是否与公共前缀对齐的特征文本字符串的第一字符相匹配;\n[0142] 步骤c、如果匹配,则从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0143] 步骤d、如果不匹配,则判断有限自动状态机中是否存在与第一字符相匹配的字符;如果存在与第一字符相匹配的字符,则将有限自动状态机向前移动,直至有限自动状态机中与第一字符相匹配的字符同第一字符对齐,从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0144] 步骤e、以此类推,重复执行步骤b至步骤d,直至公共前缀到达特征文本字符串的首部。\n[0145] 在第一种可能的实施方式作为基础而提供的第五种可能的实施方式中,服务器的存储器中,还包含用于执行以下操作的指令:\n[0146] 确定关键词类别对应的每个关键词在文本中的位置权重;\n[0147] 计算关键词类别在文本中的权重,包括:\n[0148] 基于关键词类别对应的每个关键词的出现频率、每个关键词的预设权重及每个关键词的位置权重,计算关键词类别在文本中的权重。\n[0149] 在第一种可能的实施方式作为基础而提供的第六种可能的实施方式中,服务器的存储器中,还包含用于执行以下操作的指令:\n[0150] 当至少一个关键词类别的权重大于预设阈值时,根据权重最大的关键词类别确定文本的类别;\n[0151] 根据权重最大的关键词类别的权重与预设阈值的大小关系,确定文本的敏感程度;\n[0152] 输出文本的敏感程度。\n[0153] 本实施例提供的服务器,在获取当前检测文本的特征文本字符串后,根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;由于基于预先建立的有限自动状态机对特征文本字符串进行检测,所以在检测过程中,只需对特征文本字符串进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度,降低了资源占用率;且对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重,并根据关键词类别的权重确定当前检测文本是否为敏感文本,由于在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度,提高了检测精准率,可净化网络阅读环境。\n[0154] 实施例五\n[0155] 本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入服务器中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,一个或者一个以上程序被一个或者一个以上的处理器用来执行敏感文本检测方法,方法包括:\n[0156] 获取当前检测文本的特征文本字符串;\n[0157] 根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率,有限自动状态机中包括多个关键词;\n[0158] 对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重;\n[0159] 当至少一个关键词类别的权重大于预设阈值时,确定文本为敏感文本。\n[0160] 假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,根据预先建立的有限自动状态机对特征文本字符串进行检测之前,该方法还包括:\n[0161] 配置关键词列表,关键词列表中至少包括多个关键词、每个关键词的关键词类别及每个关键词的预设权重;\n[0162] 确定关键词列表中全部关键词具有的公共前缀;\n[0163] 将公共前缀作为根节点,建立树状有限自动状态机,树状有限自动状态机的每一个分支中至少包含一个关键词。\n[0164] 在第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,根据预先建立的有限自动状态机对特征文本字符串进行检测,包括:\n[0165] 从特征文本字符串的尾部开始,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测。\n[0166] 在第三种可能的实施方式作为基础而提供的第四种可能的实施方式中,基于有限自动状态机利用坏字符跳转技术由后向前对特征文本字符串进行检测,包括:\n[0167] 步骤a、确定有限自动状态机中最小长度字符串,将有限自动状态机由特征文本字符串的尾部向前移动,直至最小长度字符串的尾字符与特征文本字符串的尾字符对齐;\n[0168] 步骤b、判断公共前缀的首字符是否与公共前缀对齐的特征文本字符串的第一字符相匹配;\n[0169] 步骤c、如果匹配,则从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0170] 步骤d、如果不匹配,则判断有限自动状态机中是否存在与第一字符相匹配的字符;如果存在与第一字符相匹配的字符,则将有限自动状态机向前移动,直至有限自动状态机中与第一字符相匹配的字符同第一字符对齐,从与公共前缀的首字符对齐的字符开始,基于有限自动状态机判断特征文本字符串中是否存在关键词;如果存在关键词,则将关键词的出现频率加1,并将有限自动状态机向前移动最大长度字符串对应的长度;\n[0171] 步骤e、以此类推,重复执行步骤b至步骤d,直至公共前缀到达特征文本字符串的首部。\n[0172] 在第一种可能的实施方式作为基础而提供的第五种可能的实施方式中,计算关键词类别在文本中的权重之前,该方法还包括:\n[0173] 确定关键词类别对应的每个关键词在文本中的位置权重;\n[0174] 计算关键词类别在文本中的权重,包括:\n[0175] 基于关键词类别对应的每个关键词的出现频率、每个关键词的预设权重及每个关键词的位置权重,计算关键词类别在文本中的权重。\n[0176] 在第一种可能的实施方式作为基础而提供的第六种可能的实施方式中确定文本为敏感文本之后,该方法还包括:\n[0177] 当至少一个关键词类别的权重大于预设阈值时,根据权重最大的关键词类别确定文本的类别;\n[0178] 根据权重最大的关键词类别的权重与预设阈值的大小关系,确定文本的敏感程度;\n[0179] 输出文本的敏感程度。\n[0180] 本实施例提供的计算机可读存储介质,在获取当前检测文本的特征文本字符串后,根据预先建立的有限自动状态机对特征文本字符串进行检测,得到每个关键词在特征文本字符串中的出现频率;由于基于预先建立的有限自动状态机对特征文本字符串进行检测,所以在检测过程中,只需对特征文本字符串进行一次从头至尾的扫描,所以提高了检测效率,加快了检测速度,降低了资源占用率;且对于多个关键词类别中的每个关键词类别,基于关键词类别对应的每个关键词的出现频率及每个关键词的预设权重,计算关键词类别在文本中的权重,并根据关键词类别的权重确定当前检测文本是否为敏感文本,由于在确定敏感文本时,还需基于关键词的预设权重,所以提高了检测粒度,提高了检测精准率,可净化网络阅读环境。\n[0181] 需要说明的是:上述实施例提供的敏感文本检测装置在进行敏感文本时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的敏感文本检测装置与敏感文本检测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。\n[0182] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。\n[0183] 本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。\n[0184] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
法律信息
- 2019-08-23
专利权的转移
登记生效日: 2019.08.05
专利权人由腾讯科技(深圳)有限公司变更为腾讯科技(深圳)有限公司
地址由518000 广东省深圳市福田区振兴路赛格科技园2栋东403室变更为518000 广东省深圳市福田区振兴路赛格科技园2栋东403室
专利权人变更为腾讯云计算(北京)有限责任公司
- 2017-11-03
- 2015-12-09
实质审查的生效
IPC(主分类): G06F 17/22
专利申请号: 201410064854.6
申请日: 2014.02.25
- 2015-08-26
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2008-04-09
|
2006-10-08
| | |
2
| |
2010-12-01
|
2010-08-02
| | |
3
| |
2012-06-27
|
2011-12-13
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |