文本识别方法和装置、存储介质及电子设备与流程

文档序号:23718048发布日期:2021-01-24 06:25阅读:90来源:国知局
文本识别方法和装置、存储介质及电子设备与流程

[0001]
本发明涉及互联网领域,具体而言,涉及一种文本识别方法和装置、存储介质及电子设备。


背景技术:

[0002]
在很多应用场景中往往需要借助文本信息来完成交互过程,如这里的文本信息可以为外链转发文本、社区共享空间中的共享文本、评论文本、评论文本、绑定账号关系时所使用的打招呼文本等等。
[0003]
然而,一些非法主体为了达到某种恶意目的,常常会大规模地推送垃圾文本信息,如,在外链转发场景的转发文本中会出现大量的具备诱导传播性质的假红包文本信息,在群组会话场景的会话文本中会出现大量的赌博相关的文本,在共享文本中会出现黑五类相关的恶意文本,在评论文本中会出现大量引流相关的文本,在打招呼文本中会出现大量的骚扰内容。其中,这些垃圾文本信息具有以下特性:内容高度相似;数量庞大。
[0004]
针对上述垃圾文本,目前常用的识别方式是通过传统哈希算法来计算待识别文本与已知垃圾文本之间的文本相似度,在确定待识别文本与已知垃圾文本相似的情况下,直接对发送该待识别文本的源端主体执行封禁处理。这里传统哈希算法在离线状态下计算得到的文本相似度,不仅精度较差,而且由于离线处理而无法及时发现垃圾文本,从而导致文本识别效率较低的问题。
[0005]
针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

[0006]
本发明实施例提供了一种文本识别方法和装置、存储介质及电子设备,以至少解决由于离线处理而无法及时发现垃圾文本所导致的文本识别效率较低的技术问题。
[0007]
根据本发明实施例的一个方面,提供了一种文本识别方法,包括:获取待识别的目标文本对应的目标词列表;利用上述目标词列表生成上述目标文本对应的目标文本向量;在已存储的文本聚类簇集合中查找与上述目标文本向量匹配的目标文本聚类簇,其中,上述文本聚类簇集合将被定期更新,且上述文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,上述文本类型标签用于指示上述对象文本聚类簇为恶意聚类簇或非恶意聚类簇;在上述文本聚类簇集合中查找到上述目标文本聚类簇,且上述目标文本聚类簇对应的文本类型标签指示上述目标文本聚类簇为恶意聚类簇的情况下,将上述目标文本确定为异常文本。
[0008]
根据本发明实施例的另一方面,还提供了一种文本识别装置,包括:获取单元,用于获取待识别的目标文本对应的目标词列表;生成单元,用于利用上述目标词列表生成上述目标文本对应的目标文本向量;查找单元,用于在已存储的文本聚类簇集合中查找与上述目标文本向量匹配的目标文本聚类簇,其中,上述文本聚类簇集合将被定期更新,且上述文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,上述文本类型标签用于指
示上述对象文本聚类簇为恶意聚类簇或非恶意聚类簇;识别单元,用于在上述文本聚类簇集合中查找到上述目标文本聚类簇,且上述目标文本聚类簇对应的文本类型标签指示上述目标文本聚类簇为恶意聚类簇的情况下,将上述目标文本确定为异常文本。
[0009]
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述文本识别方法。
[0010]
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的文本识别方法。
[0011]
在本发明实施例中,在获取待识别的目标文本对应的目标词列表之后,利用该目标词列表生成目标文本对应的目标文本向量。然后在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇,这里文本聚类簇集合将被定期更新,该文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,上述文本类型标签用于指示对象文本聚类簇是否为恶意聚类簇。若在文本聚类簇集合中查找到目标文本聚类簇,且该目标文本聚类簇对应的文本类型标签指示为恶意聚类簇的情况下,则将上述目标文本识别确定为异常文本。也就是说,在获取到待识别的目标文本对应的目标文本向量之后,在定期更新且配置有文本类型标签的文本聚类簇集合中,查找是否有目标文本的目标文本向量对应的目标文本聚类簇,从而实现直接利用已确定文本类型的文本聚类簇来识别目标文本的文本类型,而不再需要针对每个文本单独进行离线识别,达到了提高文本识别效率的目的,进而克服相关技术中由于离线处理而无法及时发现垃圾文本,从而导致文本识别效率较低的问题。
附图说明
[0012]
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0013]
图1是根据本发明实施例的一种可选的文本识别方法的硬件环境的示意图;
[0014]
图2是根据本发明实施例的另一种可选的文本识别方法的硬件环境的示意图;
[0015]
图3是根据本发明实施例的另一种可选的文本识别方法的流程图;
[0016]
图4是根据本发明实施例的另一种可选的文本识别方法的识别逻辑架构图;
[0017]
图5是根据本发明实施例的另一种可选的文本识别方法的流程图;
[0018]
图6是根据本发明实施例的一种可选的文本识别方法中的示意图;
[0019]
图7是根据本发明实施例的又一种可选的文本识别方法的流程图;
[0020]
图8是根据本发明实施例的另一种可选的文本识别方法中的示意图;
[0021]
图9是根据本发明实施例的又一种可选的文本识别方法的流程图;
[0022]
图10是根据本发明实施例的又一种可选的文本识别方法中的示意图;
[0023]
图11是根据本发明实施例的一种可选的文本识别装置的结构示意图;
[0024]
图12是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
[0025]
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的
附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0026]
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0027]
需要说明的是,本申请实施例提供的文本识别方法将会涉及以下技术术语:
[0028]
自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
[0029]
机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
[0030]
文本向量:提取文本的语义信息,将其表示为向量形式,算法处理时以向量来代替文本。
[0031]
实时文本聚类:在实时文本数据流中,将相似的文本聚集起来,形成聚簇结构。
[0032]
双向编码表示模型(bidirectional encoder representations from transformers,简称bert):是一种基于transformer建模的自然语言处理模型。
[0033]
分层的可导航小世界图(hierarchcal navigable small world graphs,简称hnsw):是一种用于最邻近相似搜索的数据结构。
[0034]
key-value(简称kv)分布式存储系统,查询速度快、存放数据量大、支持高并发,适于通过主键进行查询,但不能进行复杂的条件查询。
[0035]
根据本发明实施例的一个方面,提供了一种文本识别方法,可选地,作为一种可选的实施方式,上述文本识别方法可以但不限于应用于如图1所示的硬件环境中的文本识别系统中,其中,该文本识别系统可以包括但不限于终端设备102、网络104、服务器106。这里终端设备102中包括人机交互屏幕1022,处理器1024及存储器1026。人机交互屏幕1022用于通过人机交互接口获取待识别的目标文本。上述处理器1024用于对待识别的目标文本进行编码和预处理,存储器1026用于存储上述待识别的目标文本。
[0036]
此外,服务器106中包括数据库1062及处理引擎1064,数据库1062中用于存储文本聚类簇集合。处理引擎1064用于对从终端设备102接收的目标文本进行处理,并在文本聚类簇集合中查找该目标文本的目标文本向量对应的目标文本聚类簇。
[0037]
作为一种可选的实施方式,假设对评论场景中的评论文本执行本实施例中提供的文本识别过程。具体过程可以如步骤s102-s104,在终端设备102中获取待识别的目标文本,并通过网络104,将该目标文本发送给服务器106。然后服务器106将执行以下操作:
[0038]
s106,对目标文本进行文本预处理,以得到目标词列表;
[0039]
s108,利用该目标词列表生成目标文本对应的目标文本向量;
[0040]
s110,通过处理引擎1064在数据库存储的文本聚类集合中查找与上述目标文本向量相匹配的目标文本聚类簇;
[0041]
s112,在查找到目标文本聚类簇,且该目标文本聚类簇对应的文本类型标签指示为恶意聚类簇的情况下,将该目标文本确定为异常文本。
[0042]
可选地,还可以如步骤s114将上述对目标文本的识别结果通过网络返回终端设备102,这里图1所示交互过程为示例,也可以直接将识别结果保存到服务器中,以便于下次识别过程参考使用。这里不做限定。
[0043]
作为一种可选的实施方式,假设仍然采用上述图1所示文本识别系统中的各个设备对评论场景中的评论文本执行本实施例中提供的文本识别过程。具体过程可以如步骤s202-s206,在终端设备102中获取待识别的目标文本,并在终端设备102中对目标文本进行文本预处理,以得到目标词列表;利用该目标词列表生成目标文本对应的目标文本向量。然后如步骤s208,通过网络104,将该目标文本发送给服务器106。然后服务器106将执行以下操作:
[0044]
s210,通过处理引擎1064在数据库存储的文本聚类集合中查找与上述目标文本向量相匹配的目标文本聚类簇;
[0045]
s212,在查找到目标文本聚类簇,且该目标文本聚类簇对应的文本类型标签指示为恶意聚类簇的情况下,将该目标文本确定为异常文本。
[0046]
可选地,还可以如步骤s214将上述对目标文本的识别结果通过网络返回终端设备102,这里图2所示交互过程为示例,也可以直接将识别结果保存到服务器中,以便于下次识别过程参考使用。这里不做限定。
[0047]
也就是说,在本实施例中,将待识别的目标文本转化为目标文本向量的过程可以在终端设备102中完成,也可以在服务器106中完成,这里对此不做任何限定。
[0048]
需要说明的是,在本实施例中,在获取待识别的目标文本对应的目标词列表之后,利用该目标词列表生成目标文本对应的目标文本向量。然后在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇,这里文本聚类簇集合将被定期更新,该文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,上述文本类型标签用于指示对象文本聚类簇是否为恶意聚类簇。若在文本聚类簇集合中查找到目标文本聚类簇,且该目标文本聚类簇对应的文本类型标签指示为恶意聚类簇的情况下,则将上述目标文本识别确定为异常文本。也就是说,在定期更新且配置有文本类型标签的文本聚类簇集合中,查找是否有目标文本对应的目标文本聚类簇,从而实现直接利用已确定文本类型的文本聚类簇来识别目标文本的文本类型,而不再需要针对每个文本单独进行离线识别,达到了提高文本
识别效率的目的,进而克服相关技术中由于离线处理而无法及时发现垃圾文本所导致的文本识别效率较低的问题。此外,在快速高效地识别出恶意文本的情况下,还将有利于净化基于用户生成内容进行内容展示或分享的网络平台的环境,避免大量非法的文本信息对用户的浏览或观看过程造成信息干扰,为广大用户提供阳光的网络环境,保证用户的浏览安全性。
[0049]
可选地,在本实施例中,上述终端设备可以是配置有目标客户端的终端设备,可以包括但不限于以下至少之一:手机(如android手机、ios手机等)、笔记本电脑、平板电脑、掌上电脑、mid(mobile internet devices,移动互联网设备)、pad、台式电脑、智能电视等。目标客户端可以是社区共享空间应用客户端、即时通信会话客户端、视频播放应用客户端、内容分发应用客户端等。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、wifi及其他实现无线通信的网络。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。
[0050]
可选地,作为一种可选的实施方式,如图3所示,上述文本识别方法包括:
[0051]
s302,获取待识别的目标文本对应的目标词列表;
[0052]
s304,利用目标词列表生成目标文本对应的目标文本向量;
[0053]
s306,在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇,其中,文本聚类簇集合将被定期更新,且文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,文本类型标签用于指示对象文本聚类簇为恶意聚类簇或非恶意聚类簇;
[0054]
s308,在文本聚类簇集合中查找到目标文本聚类簇,且目标文本聚类簇对应的文本类型标签指示目标文本聚类簇为恶意聚类簇的情况下,将目标文本确定为异常文本。
[0055]
可选地,在本实施例中,上述文本识别方法可以但不限于应用于基于用户生成内容(user generated content,简称ugc)进行内容展示或推广的应用场景中,其中,ugc是指将自己原创的内容通过互联网平台进行展示或提供给其他用户。例如,好友社交网络、视频/照片/知识分享网络、社区/论坛等场景。可选地,将本实施例中提供的文本识别方法应用于上述应用场景中对应的上述应用场景中的文本信息可以包括但不限于以下至少之一:外链转发场景的转发文本信息、社区共享空间中的共享文本信息、对展示内容的评论文本信息、绑定账号关系(如注册、添加好友账号等)时所使用的打招呼文本信息。这里的识别过程主要是识别出不同上述应用场景中由用户通过网络平台发布、出现频率较高且内容重复的垃圾文本,如用户通过“漂流瓶”形式发送的文本信息,可能是内容重复,甚至涉及非法敏感信息(如黄赌毒信息)的文本内容。这些垃圾文本通常是一些恶意主体未为达到某种目的触发的恶意文本,对用户在正常浏览网页界面或观看视频等关注内容的广大用户造成了很大的信息干扰,使得广大用户的网络浏览环境无法得到安全保障。
[0056]
因而,为了克服上述问题,就需要对在线业务流中的恶意文本进行及时地识别和清理。然而在相关技术中,常用的识别方式是采用传统哈希算法对业务流中的文本进行离线识别,不仅识别精度较差,而且实时性较差,无法及时发现在线数据中出现的恶意文本。在本申请实施例中,在获取到待识别的目标文本对应的目标文本向量之后,将在定期更新且配置有文本类型标签的文本聚类簇集合中,查找是否有目标文本向量对应的目标文本聚类簇,从而实现直接利用已确定文本类型的文本聚类簇来识别目标文本的文本类型,而不
再需要针对每个文本单独进行离线识别,达到了提高文本识别效率的目的,进而克服相关技术中由于离线处理而无法及时发现垃圾文本所导致的文本识别效率较低的问题。此外,在快速高效地识别出恶意文本的情况下,还将有利于净化基于用户生成内容进行内容展示或分享的网络平台的环境,避免大量非法的文本信息对用户的浏览或观看过程造成信息干扰,为广大用户提供阳光的网络环境,保证用户的浏览安全性。
[0057]
可选地,在本实施例中,上述文本识别方法可以但不限于应用于如图4所示的识别逻辑架构中,该识别逻辑架构可以包括但不限于:文本向量生成模块402、向量搜索模块404、实时聚类模块406及标签分配模块408。其中,文本向量生成模块402用于将目标文本的目标词列表转化为目标文本向量;向量搜索模块404中存储有文本聚类簇集合,该模块用于在已存储的文本聚类簇集合中查找与所述目标文本向量匹配的目标文本聚类簇;实时聚类模块406用于在已存储的文本聚类簇集合中并未查找到与所述目标文本向量匹配的目标文本聚类簇的情况下,对满足聚类条件的目标文本进行聚类处理,以生成新的文本聚类簇,并将满足添加条件的新的文本聚类簇添加到文本聚类簇集合中。标签分配模块408用于对新的文本聚类簇分配文本类型标签。需要说明的是,在本实施例中对于一个文本聚类簇,在对其中任一个文本分配文本类型标签(打标)的情况下,即可实现对该文本聚类簇中所有文本批量打标的目的,无需重复操作,从而达到提高打标效率的效果。
[0058]
可选地,在本实施例中,利用目标词列表生成目标文本对应的文本向量可以但不限于采用基于bert的语言处理模型经过模型蒸馏后得到的模型来实现。也就是说,在上述文本向量生成模块中可以但不限于包括采用模型蒸馏技术处理后的基于tinybert的模型。其中,基于bert的语言处理模型是一种超大规模神经网络,它利用海量语料数据进行无监督学习,可应用于文本分类、问答、相似、情感分析、序列标注等等自然语言处理任务。此外,蒸馏后的tinybert的模型结构与bert相同,但网络层数变小,网络中参与运算的参数变少。这样通过减小模型的大小,将加速将文本转化为文本向量的处理,进一步有利于提高文本的识别效率。
[0059]
可选地,在本实施例中,已存储的文本聚类簇集合中可以但不限于包括多个对象文本聚类簇。这里的对象文本聚类簇可以是在实时文本数据流中,对相似文本聚集后所形成的聚簇结构。对于每一个聚簇结构存在一个聚类中心向量,可以但不限于将与聚类中心向量之间的距离小于阈值的文本向量,归类为该聚簇结构,也就是确定该文本向量命中与该聚簇结构对应的对象文本聚类簇,即该文本向量与该对象文本聚类簇中包含的各个文本相似。
[0060]
进一步,在已存储的文本聚类簇集合中查找到与目标文本向量匹配的目标文本聚类簇的情况下,表示该目标文本命中文本聚类簇集合中的目标文本聚类簇,则可以基于该目标文本聚类簇中配置的文本类型标签,确定目标文本的类型标签,从而达到快速高效地识别出目标文本是否为被视为恶意文本的垃圾文本的效果。
[0061]
需要说明的是,上述文本聚类簇集合是可以定期更新的,这里定期更新的更新周期可以但不限于为1周、1天或1小时等,具体周期取值可以但不限于根据实际场景进行设置。也就是说,通过及时更新文本聚类簇集合,将可以进一步实现对文本进行实时识别,达到及时发现恶意文本的目的。此外,在本实施例中,上述文本聚类簇集合的更新场景是获取到新聚类得到的对象文本聚类簇。也就是说,在当前的目标文本并未在已存储的文本聚类
簇集合中查找到目标文本聚类簇的情况下,则可以暂时先缓存该目标文本,在其达到聚类条件的情况下,则可利用该目标文本实时生成新的对象文本聚类簇,并在达到添加条件的情况下,将该新的对象文本聚类簇添加到文本聚类簇集合,并对相关属性信息进行适应调整更新。
[0062]
可选地,在本实施例中,在通过实时聚类过程获取到新的对象聚类模块可以为其分配新的簇标识(打标)。需要说明的是,在本实施例中,可以但不限于定时(如每小时)从已存储的文本聚类簇集合中拉取当前周期内前n个热门的对象文本聚类簇,并从这n个对象文本聚类簇中的每个对象文本聚类簇任选一个文本进行打标,以确定该对象文本聚类簇中的文本的类型是否为被视为恶意文本的垃圾文本,n为正整数。
[0063]
此外,在本实施例中,上述识别逻辑架构还可以包括但不限于监督控制模块,该监督控制模块用于:基于一些数据分析工具的分析功能,对文本聚类簇集合进行分析统计,以获取分析结果,并实时展示该分析结果。例如在识别出目标文本为恶意文本的情况下,则可以对该目标文本所在目标文本聚类簇中的内容进行实时跟踪,并绘制展示其量级变化的趋势曲线。进一步,还可以在基于异常检测算法对趋势曲线进行检测后,及时在恶意文本爆发前发出自动预警信息,避免对用户造成不必要的损失。
[0064]
具体结合图5所示示例进行说明:假设在线部分包括逻辑中心500,其中包括预处理逻辑500-2、上报逻辑500-4和处理逻辑500-6。这里在线部分获取到待识别的目标文本(如图所示新文本),在逻辑中心500中的预处理逻辑500-2中对该新文本进行预处理,如该预处理的操作包括:分词、去除停用词、繁体转简体、去除特殊字符等等,得到空格分隔的词列表。然后将该词列表输入文本向量生成模块502,通过该文本向量生成模块502中经过蒸馏处理后的模型将上述词列表转化为目标文本向量。然后,通过向量搜索模块504在已存储的文本聚类簇集合中搜索查找该目标文本向量匹配的目标文本聚类簇,即确定该目标文本向量是否命中文本聚类簇集合中的聚类簇。
[0065]
在确定命中的情况下,即确定查到目标文本聚类簇,则可通过索引列表确定该目标文本聚类簇,并获取其所配置的文本类型标签,以确定该目标文本的类型。进而通过逻辑中心500中的处理逻辑500-6,对该目标文本执行相应的处理,如确定为恶意文本的情况下,则对该目标文本的源账号或源ip执行封禁处理或告警处理。如确定为非恶意文本的情况下,则允许该目标文本实现正常交互。
[0066]
而在确定并未命中的情况下,即并未查到目标文本聚类簇,则可通过实时聚类模块506考虑对该目标文本进行实时聚类。在该目标文本达到聚类条件的情况下,对其进行聚类,将新的对象文本聚类簇添加到文本聚类簇集合,并更新索引列表508中记录的信息。然后由标签分配模块510为该新的对象文本聚类簇分配文本类型标签,来标识该对象文本聚类簇。
[0067]
其中,在上述对目标文本进行聚类的过程中,可以包括但不限于先在确定在本设备中上述目标文本的出现频率;在出现频率大于阈值的情况下,将其先聚类为文本聚类簇,并通过上报逻辑500-4将其上报到离线部分的数据分析库512,以使该数据分析库512对各个设备上报的新的文本聚类簇进行汇聚。在汇聚结果指示上述新的文本聚类簇的频率大于阈值的情况下,则确定其为将要添加到文本聚类簇集合中的新的对象文本聚类簇。
[0068]
在上述过程中,离线部分的监督控制模块514将实现实时监督,以跟踪恶意文本的
量级变化,并绘制展示其量级变化的趋势曲线。进一步,还可以在基于异常检测算法对趋势曲线进行检测后,及时在恶意文本爆发前发出自动预警信息,避免对用户造成不必要的损失。
[0069]
通过本申请提供的实施例,在获取到待识别的目标文本对应的目标文本向量之后,将在定期更新且配置有文本类型标签的文本聚类簇集合中,查找是否有目标文本向量对应的目标文本聚类簇,从而实现直接利用已确定文本类型的文本聚类簇来识别目标文本的文本类型,而不再需要针对每个文本单独进行离线识别,达到了提高文本识别效率的目的,进而克服相关技术中由于离线处理而无法及时发现垃圾文本所导致的文本识别效率较低的问题。此外,在快速高效地识别出恶意文本的情况下,还将有利于净化基于用户生成内容进行内容展示或分享的网络平台的环境,避免大量非法的文本信息对用户的浏览或观看过程造成信息干扰,为广大用户提供阳光的网络环境,保证用户的浏览安全性。
[0070]
作为一种可选的方案,在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇包括:
[0071]
s1,在基于文本聚类簇集合构建的聚类图中进行查找,其中,在聚类图中,每个文本向量设置为一个元素,在同一个对象文本聚类簇中的文本向量对应的元素之间设置连线;
[0072]
s2,在聚类图中查找到目标聚类中心向量的情况下,将目标聚类中心向量所指示的对象文本聚类簇,确定为目标文本聚类簇,其中,目标聚类中心向量与目标文本向量之间的距离大于目标距离阈值。
[0073]
可选地,在本实施例中,查找目标文本聚类簇可以但不限于是基于hnsw的向量检索技术,这里hnsw是相关技术提供的一种基于图的向量检索方法,具体是通过对向量集合中相似的向量构建连边,形成图结构,从而提查询速度。该方法利用了高速公路、废弃列表、动态列表等机制保证高效的查询速度,在此基础之上还使用了层次化的图结构,进一步的加速了检索速度。基于hnsw的向量相似检索算法的示意图可以如图6所示。其中图6中(a)所示各个空心圆表示一个向量,各个空心圆之间的连线表示向量之间是相似关系。基于该图结构可以从进入点出发,开始查询。进一步如图6中(b)所示这里的图结果还可以是多层次的,更加有利于提高查找搜索的效率。
[0074]
在本申请实施例中,文本聚类簇集合中的各个对象文本聚类簇都将构建对应的图结构,以便于在其中确定出与目标文本向量相匹配的目标文本。
[0075]
具体可以如以下示例:假设基于hnsw构建在线相似向量搜索服务,并建立simsvr服务,以降低上述服务的内存开销、搜索请求量及索引更新同步耗时等。基于文本聚类簇集合中各个对象文本聚类簇中的文本向量,构建用于查询相似文本的聚类图结构,如以文本向量为元素,将同一个对象文本聚类簇中的相似文本之间设置连线。
[0076]
在获取到目标文本的目标文本向量的情况下,则可以在上述聚类图结构中查找与该目标文本向量最为相似的聚类簇。即,遍历各个对象文本聚类簇,依次比对每个对象文本聚类簇的聚类中心向量与目标文本向量之间的余弦相似度。在查找到余弦相似度超过目标阈值的目标聚类中心向量的情况下,则确定该目标文本向量命中了已有的文本聚类簇集合,并将上述目标聚类中心向量对应的对象文本聚类簇确定为目标文本聚类簇,获取该目标文本聚类簇的簇id。而在并未查找到余弦相似度超过目标阈值的目标聚类中心向量的情
况下,则确定该目标文本向量并未命中已有的文本聚类簇集合,则继续进入后续处理操作。
[0077]
通过本申请提供的实施例,基于向量图的图结构特性,将加快在文本聚类簇结合构建的聚类图中搜索查找与目标文本向量匹配的目标文本聚类簇的速度,达到提高搜索效率,进而实现提高对该目标文本进行识别的效率。
[0078]
作为一种可选的方案,在基于文本聚类簇集合构建的聚类图中查找目标文本向量包括:
[0079]
s1,根据与文本聚类簇集合对应的索引列表中记录的索引关系,从文本聚类簇集合中确定出目标词列表中各个词所在的候选文本聚类簇,其中,索引关系为文本聚类簇集合中各个词与对象文本聚类簇之间的映射关系;
[0080]
s2,在候选文本聚类簇对应的候选聚类图中进行查找。
[0081]
可选地,在本实施例中,上述索引列表可以包括但不限于两级索引列表,其中,该两级索引列表包括:一级索引列表(也可称作正排索引列表)、二级索引列表(也可称作倒排索引列表)。这里一级索引列表用于记录文本聚类簇集合中各个对象文本簇对应的簇索引标识和其所包含的文本向量中的各个词在二级索引列表中所在位置的位置指针的索引关系。也就是每个对象文本簇与其所包含的一个或多个词之间的映射关系。这里二级索引列表用于记录文本聚类簇集合中各个词与其所在对象文本聚类簇对应的簇标识之间的索引关系。也就是每个词与其所在对象文本簇之间的映射关系。
[0082]
需要说明的是,上述簇索引标识可以是为对象文本聚类簇分配的用于在全局进行区分使用的簇标识(即簇id),也可以是单独为了构建索引列表而设置的标识,本实施例中对此不作任何限定。
[0083]
可选地,为了减少搜索量,以提高搜索效率,在本实施例中还可以对搜索范围进行筛选预处理,以从文本聚类簇集合中确定出范围较小的候选文本聚类簇。
[0084]
其中,在获取到目标文本向量的情况下,则可以基于与文本聚类簇集合对应的索引列表中的索引关系,如二级索引列表(也可称作倒排索引列表),查找出上述目标文本向量对应的目标词列表中涉及的各个词所在的对象文本聚类簇。如假设文本聚类簇集合包括n个对象文本聚类簇,对目标文本向量的目标词列表分析后得到该目标文本的句子中包括词:w1、w2、w3、w4。则可在倒排索引列表中直接查找到词w1所在对象文本聚类簇为簇b1,词w2所在对象文本聚类簇为簇b2,词w3所在对象文本聚类簇也为簇b2,词w4所在对象文本聚类簇为簇b3。则可从整体的文本聚类簇集合中确定出候选集{b1,b2,b3},将其确定为候选文本聚类簇,并在该候选文本聚类簇对应的候选聚类图中进行查找。
[0085]
通过本申请提供的实施例,通过确定候选文本聚类簇,来缩小搜索范围,从而便于减少对目标文本向量进行查找的搜索量,进而实现提高搜索效率的效果。
[0086]
作为一种可选的方案,在在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇之后,还包括:
[0087]
s1,在文本聚类簇集合中并未查找到目标文本聚类簇的情况下,利用目标文本向量创建新的对象文本聚类簇;
[0088]
s2,根据新的对象文本聚类簇更新文本聚类簇集合。
[0089]
需要说明的是,在本实施例中,在已有的文本聚类簇集合中并未查找到文本聚类簇的情况下,将对当前待识别的目标文本采取实时聚类处理。也就是说,对该目标文本进行
实时判断,在判断结果指示该目标文本达到聚类条件的情况下,实时将该目标文本聚类为新的对象文本聚类簇。从而实现在线及时发现尚未聚类的垃圾文本,并及时对这些恶意触发的垃圾文本进行整合,存储到文本聚类簇集合中,以便于后续直接利用文本聚类簇集合来识别恶意文本,提高对文本的识别效率。
[0090]
作为一种可选的方案,根据新的对象文本聚类簇更新文本聚类簇集合包括:
[0091]
1)在文本聚类簇集合中当前已存储的对象文本聚类簇的数量尚未达到目标数值的情况下,直接将新的对象文本聚类簇添加到文本聚类簇集合中;
[0092]
2)在文本聚类簇集合中当前已存储的对象文本聚类簇的数量达到目标数值的情况下,从文本聚类簇集合中剔除至少一个对象文本聚类簇,再将新的对象文本聚类簇添加到文本聚类簇集合中。
[0093]
需要说明的是,在本实施例中为文本聚类簇集合配置上限数值(即目标数值),从而避免无限制的增加聚类簇的个数,进而减少需要遍历查找比对的工作量,达到提高文本识别效率的目的。
[0094]
具体结合图7所示过程进行说明:假设在文本聚类簇集合中并未查找到目标文本向量匹配的目标文本聚类簇的情况下,则可以采用图5所示的实时聚类模块506,以确定是否基于目标文本向量创建新的对象文本聚类簇。
[0095]
如步骤s702,获取到一个新的文本对应的文本向量q(即图中所示目标文本向量),并如步骤s704,根据倒排索引列表获取该文本向量q中出现的m个词组分别所在的m个对象文本聚类簇组成的候选集。然后判断上述文本向量q是否与候选集中的任意一个文本聚类簇相似(如将文本向量q与文本聚类簇的聚类中心向量之间的余弦距离作为二者之间的相似度)。在确定出文本向量q与一个文本聚类簇相似(如相似度大于指定阈值)的情况下,则如步骤s706-1,将上述文本向量q归于该文本聚类簇(聚类到已有的文本聚类簇中)。
[0096]
而在确定出文本向量q与一个文本聚类簇并不相似(如相似度小于或等于指定阈值)的情况下,则如步骤s706-2,获取当前文本聚类簇的数量,判断该数量是否达到预先设置的上限值。在确定并未达到上限值的情况下,如步骤s708-1,判断是否基于该文本向量q创建新的对象文本聚类簇,并如步骤s710-1,将新的对象文本聚类簇添加至已有的文本聚类簇集合;在确定达到上限值的情况下,则需如步骤s708-2和步骤s710-2,从已有的文本聚类簇中确定出待剔除的旧类,将其剔除,以便于基于上述文本向量q创建新的对象文本聚类簇,从而达到增加新的文本聚类簇的目的。需要说明的是,在无法确定出待剔除的旧类的情况下,还可以对当前的目标文本向量执行丢弃处理,以完成当前识别过程。
[0097]
在增加新的文本聚类簇或剔除旧的文本聚类簇的过程中,还将执行步骤s712,更新对应的索引列表。以便于在下一次查询过程,可以直接利用更新后的索引列表来辅助在文本聚类簇集合中完成对文本向量的查找识别过程。
[0098]
通过本申请提供的实施例,为文本聚类簇集合中存储的对象文本聚类簇的数量设置上限数值(即目标数值),从而避免文本聚类簇集合中无限制地存储过多的文本聚类簇,进而减少在查找遍历过程中所需比对的工作量,提高在已有的文本聚类集合簇中完成遍历查找的速度,进一步达到提高文本识别效率的效果。
[0099]
作为一种可选的方案,根据新的对象文本聚类簇更新文本聚类簇集合包括:
[0100]
在将新的对象文本聚类簇添加到文本聚类簇集合时,更新文本聚类簇集合对应的
两级索引列表,其中,两级索引列表包括一级索引列表及二级索引列表,其中,一级索引列表中记录有文本聚类簇集合中各个对象文本聚类簇对应的簇索引标识,与该簇索引标识所指示的对象文本聚类簇中包含的各个词在二级索引列表所在位置的位置指针之间的索引关系,二级索引列表中记录有文本聚类簇集合中出现的各个词与该词所在对象文本聚类簇对应的簇标识之间的索引关系。
[0101]
需要说明的是,上述文本聚类簇集合中的索引列表可以包括但不限于量级索引列表,不仅保证了查询效率,而且支持快速新增、删除等功能。
[0102]
例如,如图8中所示二级索引列表记录有各个词与其所在对象文本聚类簇的簇标识之间的索引关系。这里的二级索引列表可以为倒排索引,也可以为正排索引,其中,这里的倒排索引(倒排索引表,也可称作inverted index)中是一个名为哈希表(hash map)的数据结构,由键(key)和值(value)两部分组成,其中值的表示形式为双向链表(doubly linked list)。具体到本应用,它的结构示意图如图8中上面部分所示,词a对应的索引簇标识包括:聚类1、聚类2及聚类5;词b对应的索引簇标识包括:聚类2及聚类3。
[0103]
进一步,如图8中所示一阶索引列表(正排索引列表)中记录有各个对象文本聚类簇,及其所包含的各个词在二级索引列表中所在位置的位置指针的索引关系。正排索引也是一种哈希表结构,值的形式为单向链表。这里的键是聚类簇id,值链表里面存放的是指向倒排索引的值链表里面的节点的指针(pointer,缩写为ptr)。
[0104]
需要说明的是,上述索引列表中的链表具有以下特点:对于节点的修改、增加、删除非常快,但是要查找其中的某个节点却需要遍历整个链表,即查找非常慢。双向链表相对于普通的单向链表,支持两个方向的遍历。此外,针对倒排索引结构:能够很快查询到某个词出现在了哪些聚类里面,但是如果想要从倒排索引里面删除、修改某个聚类,效率却非常低下,需要遍历该聚类中所有的词对应的所有链表节点。针对正排索引结构:能够很快查询到某个聚类出现在倒排索引里面的位置,进而很方便对倒排索引中的聚类信息进行修改,弥补了倒排索引的缺陷。
[0105]
作为一种可选的实施方式,更新文本聚类簇集合对应的两级索引列表包括:
[0106]
1)在剔除至少一个对象文本聚类簇的情况下,在一级索引列表中查找到至少一个对象文本聚类簇对应的各个词在二级索引列表所在位置的位置指针;将位置指针所指示的各个词分别所在的对象文本聚类簇剔除;
[0107]
2)在新增至少一个对象文本聚类簇的情况下,在二级索引列表中增加至少一个对象文本聚类簇中出现的各个词与该词所在对象文本聚类簇对应的簇标识之间的索引关系;在一级索引列表中创建至少一个对象文本聚类簇的簇索引标识,与该簇索引标识所指示的对象文本聚类簇中包含的各个词在二级索引列表所在位置的位置指针之间的索引关系。
[0108]
例如,在剔除一个旧的对象文本聚类簇的情况下,先确定出待剔除的旧的对象文本聚类簇的簇索引标识(如簇索引标识k-2),则可基于一级索引列表查找到簇索引标识k-2所标识的文本聚类簇中包含的词,如w1和w9,其对应的位置指针为p1和p9。进一步基于二级索引列表查找到p1对应的簇标识id-1和p2对应的簇标识id-2,然后对簇标识id-1所标识的文本聚类簇和簇标识id-2所标识的文本聚类簇执行剔除处理,并同步删除索引列表记录的相关索引关系。
[0109]
例如,在增加一个新的对象文本聚类簇的情况下,先确定出新的对象文本聚类簇
中包含的多个词,并在二级索引列表中为各个词创建索引关系。然后基于这些词的在二级索引列表中所在位置的位置编号,在一级索引列表中为其创建位置指针和簇索引标识之间的索引关系。
[0110]
需要说明的是,上述簇索引标识(key,简称k)可以是为对象文本聚类簇分配的用于在全局进行区分使用的簇标识(即簇id),也可以是单独为了构建索引列表而分配的全局标识,本实施例中对此不作任何限定。
[0111]
通过本申请提供的实施例,基于上述两级索引列表来对对象文本聚类簇进行管理,如查询、新增、删除等操作,将大大提高管理效率。
[0112]
作为一种可选的方案,将新的对象文本聚类簇添加到文本聚类簇集合中之前,包括:
[0113]
s1,在新的对象文本聚类簇的出现频次大于第一阈值的情况下,将新的对象文本聚类簇上报给服务器,以使服务器对各个聚类设备上报的新的对象文本聚类簇进行汇聚;
[0114]
s2,在服务器的汇聚结果指示新的对象文本聚类簇的簇大小大于第二阈值的情况下,为新的对象文本聚类簇分配簇标识。
[0115]
可选地,在本实施例中,在基于目标文本向量创建新的对象文本聚类簇时,需要达到一定聚类条件,其中,这里的聚类条件可以包括但不限于两次聚类判定达到对应的阈值条件。需要说明的是,在聚类过程中,实际上线上的流量是分布在多个聚类设备中,为了实现统一的聚类编号以及统计,在本实施例中,可以但不限于对每个聚类设备上报的单设备的聚类结果进行汇总,并且将最新的聚类结果更新到向量搜索服务中。
[0116]
例如,如图9所示,在多个设备(如假设为三个聚类设备)并行执行文本识别的过程中,可以如步骤s902,在每个设备中并行执行聚类处理,如在每个聚类设备中获取文本向量,并对在当前聚类设备中出现频率大于第一阈值(也可称作如图所示低阈值)的文本向量聚类上报到聚合设备中。如各个聚类设备分别执行步骤s904-1,s904-2,s904-3(即低阈值触发上报)。
[0117]
聚合设备执行步骤s906,对上述上报的内容进行结果聚合(即二次聚类)。在当前二次聚类的聚类簇的大小达到第二阈值(也可称作如图所示高阈值)之后,则如步骤s908,将上述二次聚类的结果上报到离线数据库902(即高阈值触发上报)中。其中数据库902中包括聚类上报表9022和全局聚类表9024,这里聚类上报表9022用于实现聚类控制,如步骤s910,对聚类的结果进行融合得到簇。全局聚类表9024用于为新的对象文本聚类簇分配新的全局id,如步骤s912-s914,请求获取已有聚类簇进行比对,并在全局聚类表9024中新增聚类簇。然后并将其定时同步更新到线上的向量搜索服务900中,如步骤s916,定期更新,以便于向量搜索服务900快速搜索出最新的与目标文本向量匹配的目标文本聚类簇。
[0118]
通过本申请提供的实施例,对达到聚类条件的文本向量进行实时聚类,并通过二次聚类实现对不同设备上报的聚类簇进行过滤管理,避免对出现频次小或簇体量小的聚类分配全局标识,或占用全局资源,从而减少不必要的资源浪费。
[0119]
作为一种可选的方案,获取待识别的目标文本对应的目标词列表包括:对目标文本执行预处理操作,以得到目标词列表,其中,预处理操作包括:分词操作、去除冗余字符操作、格式转换操作;利用目标词列表生成目标文本对应的目标文本向量包括:采用蒸馏后的语言向量转换模型,将目标文本转化为目标文本向量,其中,蒸馏后的语言向量转换模型中
的网络层数小于原始的语言向量转换模型中的网络层数,语言向量转换模型为用于语言处理的编码表示模型。
[0120]
可选地,在本实施例中可以但不限于采用基于bert的语言处理模型蒸馏后得到的tinybert来实现文本到文本向量的转化过程。这里的tinybert的模型结构与bert的模型结构相同,只不过网络层数更小,参数更少而已。这里图10所示为bert的一种模型结构,其中,图10中(a)为转换结构,图10中(b)为bert结构。
[0121]
在利用样本数据训练好了语言处理模型之后,可以通过以下方法生成文本向量:对文本进行预处理操作,例如预处理操作可以为分词、去除停用词、繁体转简体、去除特殊字符等等,以得到空格分隔的词列表;将上述词列表转化为数字id的形式,然后输入到上述在线模型中;该模型将输出上述文本对应的文本向量。
[0122]
通过本申请提供的实施例,利用基于bert的语言处理模型和模型蒸馏技术来生成文本向量,从而实现利用网络层数更少的模型来加速文本转化处理过程,进而便于基于转化后的文本向量快速识别出文本的文本类型,达到提高文本识别效率的效果。
[0123]
作为一种可选的方案,在将目标文本确定为异常文本之后,还包括:
[0124]
s1,定期从文本聚类簇集合中拉取目标时间段内处于热门状态的多个对象文本聚类簇;
[0125]
s2,为多个对象文本聚类簇配置文本类型标签。
[0126]
需要说明的是,在对文本聚类簇集合更新之后,可以定期为其中的对象文本聚类簇分配文本类型标签(即打标)。例如,定时(如每小时)拉取当前时间段(1小时)内的前n个热门的对象文本聚类簇,导入到打标系统之中,在系统中对其进行打标,如根据实际运营的结果确定前n个热门的对象文本聚类簇中的每个对象文本聚类簇判定是否为恶意触发的垃圾文本,如果是垃圾文本,则打标结果是为其配置文本类型标签:恶意聚类簇,如果不是垃圾文本,则打标结果是为其配置文本类型标签:非恶意聚类簇。然后将打标结果提交并及时反馈到线上,以实现实时聚类的目的,保证实时性。
[0127]
此外,在本实施例中,上述打标操作可以但不限于为对一个对象文本聚类簇中的任一个文本配置文本类型标签,以使的该类对象文本簇共用该文本类型标签,而无需重复打标操作。
[0128]
通过本申请提供的实施例,通过实时更新线上的实时聚类的打标结果,将有助于加快对恶意触发的垃圾文本(异常文本)的识别过程,提升对恶意触发的垃圾文本的有效打击。
[0129]
作为一种可选的方案,在将目标文本确定为异常文本之后,还包括:对发送异常文本的源账号或源ip地址执行以下至少一种操作:发送告警信息、终止使用权限。
[0130]
需要说明的是,在本实施例中,对于上述识别出的异常文本(即恶意触发的垃圾文本),可以进一步执行处罚处理,如向触发异常文本的源账号或源ip地址发送告警信息,以提示其异常状态;又如对上述触发异常文本的源账号或源ip地址执行封禁处理,即停用其使用权限,避免其再次恶意触发垃圾文本,对用户造成信息干扰。
[0131]
作为一种可选的方案,在将目标文本确定为异常文本之后,还包括:
[0132]
s1,获取目标周期内识别出的异常文本的聚类信息,其中,聚类信息中至少包括异常文本的量级变化信息;
[0133]
s2,将聚类信息以图表形式推送到各个客户端进行展示。
[0134]
可选地,在本实施例中,可以采用成熟的数据分析工具(如clickhouse)的数据分析功能来分析上述识别出的异常文本的内容,并实时展示分析结果。如,展示当前的文本聚类情况(展示当前最热门的文本内容),以及绘制可疑聚类簇的量级变化趋势曲线;进一步,对于量级变化异常的聚类簇,可以根据曲线异常检测算法进行自动预警。对于在监控系统中发现的恶意聚类,也支持运营人员在监控系统进行运营工作。
[0135]
通过本申请提供的实施例,在保证及时发现识别出异常文本的情况下,还将进一步改善对异常文本的实时监控结果,对及时发现的恶意聚类簇进行预警,避免造成不必要的损失。
[0136]
具体结合以下示例进行说明:
[0137]
假设以视频内容分享平台为例,在用户账号id-a通过该平台分享了一段视频,关注用户账号id-a的粉丝账号id-a至id-c针对该段视频分别发布了评论文本。假设粉丝账号id-a发布了一条评论文本a:“内容真棒!”;粉丝账号id-b发布了一条评论文本b:“很有创意!”;粉丝账号id-c发布了多条重复文本c:“是否需要高额贷款?”。这里粉丝账号id-c发布的内容重复,且内容本身并不利于用户账号id-a接收粉丝账号的所发布的视频的反馈,也并不利于其他用户账号的观看。实际上对用户账号id-a和其他用户账号造成了一定的信息干扰。
[0138]
而通过本实施例中提供的文本识别方法,可以通过与已存储的文本聚类簇集合进行比对查找,以识别出上述文本a、文本b和文本c中的垃圾文本。也就是说可以从中准确地识别出文本c为异常文本(即垃圾文本)。在确定粉丝账号id-c发布类似异常文本的操作频率已经达到阈值的情况下,则可以在后台服务器直接对上述粉丝账号id-c发送告警信息,或终止其使用权限,从而实现对广大用户的浏览环境进行安全保护的目的。
[0139]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0140]
根据本发明实施例的另一个方面,还提供了一种用于实施上述文本识别方法的文本识别装置。如图11所示,该装置包括:
[0141]
1)获取单元1102,用于获取待识别的目标文本对应的目标词列表;
[0142]
2)生成单元1104,用于利用目标词列表生成目标文本对应的目标文本向量;
[0143]
3)查找单元1106,用于在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇,其中,文本聚类簇集合将被定期更新,且文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,文本类型标签用于指示对象文本聚类簇为恶意聚类簇或非恶意聚类簇;
[0144]
4)识别单元1108,用于在文本聚类簇集合中查找到目标文本聚类簇,且目标文本聚类簇对应的文本类型标签指示目标文本聚类簇为恶意聚类簇的情况下,将目标文本确定为异常文本。
[0145]
可选地,在本实施例中,上述文本识别装置可以但不限于应用于基于用户生成内
容(user generated content,简称ugc)进行内容展示或推广的应用场景中,其中,ugc是指将自己原创的内容通过互联网平台进行展示或提供给其他用户。例如,好友社交网络、视频/照片/知识分享网络、社区/论坛等场景。可选地,将本实施例中提供的文本识别方法应用于上述应用场景中对应的上述应用场景中的文本信息可以包括但不限于以下至少之一:外链转发场景的转发文本信息、社区共享空间中的共享文本信息、对展示内容的评论文本信息、绑定账号关系(如注册、添加好友账号等)时所使用的打招呼文本信息。这里的识别过程主要是识别出不同上述应用场景中由用户通过网络平台发布、出现频率较高且内容重复的垃圾文本,如用户通过“漂流瓶”形式发送的文本信息,可能是内容重复,甚至涉及非法敏感信息(如黄赌毒信息)的文本内容。这些垃圾文本通常是一些恶意主体未为达到某种目的触发的恶意文本,对用户在正常浏览网页界面或观看视频等关注内容的广大用户造成了很大的信息干扰,使得广大用户的网络浏览环境无法得到安全保障。
[0146]
具体实施例可以参考上述方法实施例,这里不再赘述。
[0147]
根据本发明实施例的又一个方面,还提供了一种用于实施上述文本识别方法的电子设备,该电子设备可以是图1所示的服务器。如图12所示,该电子设备包括存储器1202和处理器1204,该存储器1202中存储有计算机程序,该处理器1204被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
[0148]
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
[0149]
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
[0150]
s1,获取待识别的目标文本对应的目标词列表;
[0151]
s2,利用目标词列表生成目标文本对应的目标文本向量;
[0152]
s3,在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇,其中,文本聚类簇集合将被定期更新,且文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,文本类型标签用于指示对象文本聚类簇为恶意聚类簇或非恶意聚类簇;
[0153]
s4,在文本聚类簇集合中查找到目标文本聚类簇,且目标文本聚类簇对应的文本类型标签指示目标文本聚类簇为恶意聚类簇的情况下,将目标文本确定为异常文本。
[0154]
可选地,本领域普通技术人员可以理解,图12所示的结构仅为示意,电子装置电子设备也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图12其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图12中所示更多或者更少的组件(如网络接口等),或者具有与图12所示不同的配置。
[0155]
其中,存储器1202可用于存储软件程序以及模块,如本发明实施例中的文本识别方法和装置对应的程序指令/模块,处理器1204通过运行存储在存储器1202内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的文本识别方法。存储器1202可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1202可进一步包括相对于处理器1204远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1202具体可以但不限于用于存储待识别的目标文本及识别结果等信息。作为一种示例,如图12所示,上述存
储器1202中可以但不限于包括上述文本识别装置中的提取单元1102、确定单元1104、生成单元1106及处理单元1108。此外,还可以包括但不限于上述文本识别装置中的其他模块单元,本示例中不再赘述。
[0156]
可选地,上述的传输装置1206用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1206包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1206为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
[0157]
此外,上述电子设备还包括:显示器1208,用于显示上述待识别的目标文本及识别结果;和连接总线1210,用于连接上述电子设备中的各个模块部件。
[0158]
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(p2p,peer to peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
[0159]
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述文本识别方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
[0160]
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
[0161]
s1,获取待识别的目标文本对应的目标词列表;
[0162]
s2,利用目标词列表生成目标文本对应的目标文本向量;
[0163]
s3,在已存储的文本聚类簇集合中查找与目标文本向量匹配的目标文本聚类簇,其中,文本聚类簇集合将被定期更新,且文本聚类簇集合中包括配置有文本类型标签的对象文本聚类簇,文本类型标签用于指示对象文本聚类簇为恶意聚类簇或非恶意聚类簇;
[0164]
s4,在文本聚类簇集合中查找到目标文本聚类簇,且目标文本聚类簇对应的文本类型标签指示目标文本聚类簇为恶意聚类簇的情况下,将目标文本确定为异常文本。
[0165]
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
[0166]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0167]
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所
述方法的全部或部分步骤。
[0168]
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0169]
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0170]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0171]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0172]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1