掌桥专利:专业的专利平台
掌桥专利
首页

文本处理方法、装置、计算机设备以及存储介质

文献发布时间:2023-06-19 11:32:36


文本处理方法、装置、计算机设备以及存储介质

技术领域

本申请涉及计算机技术领域,尤其涉及一种文本处理方法、装置、计算机设备以及存储介质。

背景技术

识别海量交易账号中每个交易账号的类型可以保障交易系统的安全性。目前,都是由人工基于以往经验对交易账号下的交易行为进行核验,以确定该交易账号的类型。

由于交易账号的数量巨大,且每个交易账号下也会包含大量的交易行为,仅靠人工识别交易账号的类型会降低识别效率,且人工识别受主观影响较大,进而导致人工识别的准确率低下。

发明内容

本申请实施例提供一种文本处理方法、装置、计算机设备以及存储介质,可以提高识别交易账号类型的效率和准确率。

本申请实施例一方面提供了一种文本处理方法,包括:

获取目标交易账号的目标交易文本;

采用预置词组集合,对所述目标交易文本进行分词处理,得到一个或多个目标词组;所述预置词组集合是对目标类型的文本进行识别处理后得到的;

对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型;

若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为目标类型的交易账号。

本申请实施例一方面提供了一种文本处理装置,包括:

获取模块,用于获取目标交易账号的目标交易文本;

分词模块,用于采用预置词组集合,对所述目标交易文本进行分词处理,得到一个或多个目标词组;所述预置词组集合是对目标类型的文本进行识别处理后得到的;

第一识别模块,用于对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型;

确定模块,用于若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为目标类型的交易账号。

本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述各实施例中的方法。

本申请实施例一方面提供了一种计算机存储介质,计算机存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,执行上述各实施例中的方法。

本申请实施例一方面提供了一种计算机程序产品或计算机程序,计算机程序产品或计算机程序包括计算机指令,计算机指令存储在计算机可读存储介质中,计算机指令被计算机设备的处理器执行时,执行上述各实施例中的方法。

本申请由终端根据交易账户下的交易文本自动识别交易账号的类型,不需要人工参与,可以提升交易账号的识别效率和准确率;再有,本申请基于交易账号下的交易文本来确定交易账户的类型,可以丰富交易账号的识别方式;在交易文本识别过程中,本申请基于目标类型的文本识别后所确定的预置词组集合对交易文本进行分词,相比常规词组集合,可以保证分词的准确率,更准确的分词结果可以进一步提升账号识别的准确率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种文本处理的系统架构图;

图2a-图2d是本申请实例提供的一种文本处理的场景示意图;

图3是本申请实施例提供的一种文本处理的流程示意图;

图4是本申请实施例提供的一种模型评估效果示意图;

图5是本申请实施例提供的一种更新词库的流程示意图;

图6是本申请实施例提供的一种识别账号是否为传销账号的流程示意图;

图7是本申请实施例提供的一种区块链的系统架构图;

图8是本申请实施例提供的一种文本处理的流程示意图;

图9是本申请实施例提供的一种文本处理装置的结构示意图;

图10是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、文本处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

本申请所提供的方案属于人工智能领域下属的文本处理技术以及机器学习/深度学习。本申请通过机器学习/深度学习训练文本识别模型和交易分类模型,文本识别模型和交易分类模型可以基于待识别文本被分词后的词组集合识别待识别文本属于目标类型的概率。后续,基于待识文本属于目标类型的概率判定交易账号是否属于目标类型,以及基于判定结果执行业务操作。

请参见图1,是本发明实施例提供的一种文本处理的系统架构图。服务器10f通过交换机10e和通信总线10d与用户终端集群建立连接,用户终端集群可包括:用户终端10a、用户终端10b、...、用户终端10c。数据库10g中存储了大量交易账号的交易文本。针对一个交易账号的交易文本,服务器10f采用预置词组集合对该交易账号的交易文本进行分词处理,以得到一个或多个词组,其中,预置词组是对目标类型的文本进行识别处理后得到的。服务器将分词后的一个或多个词组进行文本识别处理,得到该交易账号的交易文本的类型,若交易文本的类型是目标类型,则将交易账号也确定为目标类型的交易账号。

图1所示的终端设备10a、终端设备10b、终端设备10c等可以是手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(MID,mobile internet device)、可穿戴设备等具有显示功能的智能设备。终端设备集群与服务器10f可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

本申请可以应用于传销账号识别系统(或者洗钱账号识别系统,或者赌博账号识别系统),当需要识别某一个账号是否涉及传销(或者洗钱,或者赌博时),从交易池抽取该账号的交易文本,采用本申请的方案对交易文本进行识别,以确定该账号的类型,该类型可以标识该账号是否涉及传销(或者洗钱,或者赌博)。若识别到该账号涉及传销(或者洗钱,或者赌博),可以上报该账号,后续对该账号进行打击,例如限制该账号进行交易等。

本申请的文本处理方法中关于待识别账号的交易文本等可以存储在区块链上,依赖于区块链的完整、透明特性,可以保证交易文本的可信度,进而提高对待识别账号的识别结果的可信度;后续,若判断出待识别交易账号的类型是目标类型,也可以将该待识别账号存储在区块链上,防止识别结果被恶意篡改,以及使得识别结果具有可追溯性。

下述以图2a-图2d为例,具体说明如何识别某个账号是否是属于传销类型的传销账号。请参见图2a-图2d,其是本申请实例提供的一种文本处理的场景示意图。如图2a所示,图2a中的界面20a是传销账号识别系统的主界面,在该主界面中包含已识别完成的交易账号和待识别的交易账号。已识别的交易账号的处理状态为:已处理,待识别的交易账号的处理状态为:未处理,且未处理的交易账号的识别结果也为空。审核人员可以选择用于当前识别的交易账号。如图2a所示,假设审核人员选择交易账号“5870”用于识别该账号是否是传销账号。

当然,除了人工选择用于当前识别的交易账号,还可以由系统自动从交易账号池中拉取待识别的交易账号,以确定拉取的交易账号是否为传销账号。

当审核人员选择交易账号“5870”后,如图2b所示,显示界面20b,界面20b中包含交易账号“5870”的交易数据中的交易文本。从图2b可以看出,交易文本主要包括:交易账号的昵称,交易对方的对方昵称,交易备注等交易过程中涉及的文本信息。当审核人员点击界面20b中的按钮“开始”后,如图2c所示,传销账号识别系统提取出交易账号“5870”的交易文本20c。传销账号识别系统调用预置词库20d对交易文本20c进行分词,以将交易文本20c划分为词组集合20e。其中,预置词库20d中包括常规词汇以及专属于传销领域的词汇,专属于传销领域的词汇是对属于传销类型的文本识别得到,属于传销类型的文本可以是从网络上爬取的传销新闻,也可以是从传销打击网站爬取的传销科普文章等。通过对属于传销类型的文本进行识别,可以发现传销新词以及专属于传销领域的词汇,进而基于预置词库20d就可以更准确地对交易文本进行分词。

传销账号识别系统获取到交易文本20c的词组集合20e后,接下来就是基于词组集合20e和人工智能模型识别交易文本20c是否为传销文本。具体识别过程如下:传销账号识别系统将词组集合20e中的每个词组都转换为词向量,将所有的词向量组合为词向量矩阵,对词向量矩阵进行卷积运算和池化运算,以提取交易文本20c的隐藏特征。再对交易文本20c的隐藏特征进行全连接处理,输出交易文本20c属于传销类型的概率和不属于传销类型的概率,一般来说,输出结果中交易文本20c属于传销类型的概率和不属于传销类型的概率之和为1。

假设人工智能模型识别到交易文本20c属于传销类型的概率为0.8,不属于传销类型的概率是0.2,可以确定交易账号“5870”的交易文本20c的传销类型的交易文本。基于此,传销账号识别系统可以判定交易账号“5870”是传销类型的交易账号。

如图2d所示,由于交易账号“5870”被判定为传销账号,在主界面上显示交易账号“5870”的处理状态为:已处理,且交易账号“5870”的识别结果为:是,即表示交易账号“5870”是传销账号。

由于识别到交易账号“5870”是传销账号,后续,可以对交易账号“5870”进行交易打击,例如,禁止交易账号“5870”进行任何转账交易,甚至禁止交易账号“5870”和其他交易账号进行社交会话等。

其中,获取目标交易账号(如上述实施例中的交易账号“5870”)目标交易文本(如上述实施例中的交易文本20c),采用预置词组集合(如上述实施例中的预置词库20d)对目标交易文本进行分词,以得到一个或多个目标词组(如上述实施例中的词组集合20e)的的具体过程可以参见下述图3-图8对应的实施例。

请参见图3,其是本申请实施例提供的一种文本处理的流程示意图,由于本申请的文本处理涉及人工智能模型识别文本类型,因此下述步骤以性能更好的服务器为执行主体进行描述,上述实施例中的传销账号识别系统可以应用于该服务器,文本处理包括如下步骤:

步骤S101,获取所述目标交易账号的目标交易文本。

具体的,当服务器接收到针对目标交易账号(如上述图2a-图2d对于实施例中的交易账号“5870”)的检测请求时,服务器从交易数据池中抽取目标交易账号的交易文本(称为目标交易文本),其中目标交易文本可以包括目标交易账号的昵称、交易对方昵称、交易备注等。

为了尽可能实时地检测交易账号,服务器可以以小时为单位提取在一个小时内发生了交易行为的交易账号,将提取的交易账号作为目标交易账号,进而生成针对目标交易账号的检测请求。

当然,除了服务器自动拉取用于检测的目标交易账号,服务器还可以为了响应用户操作以生成针对目标交易账号的检测请求,例如,用户手动选择用于当前检测的目标交易账号,进而服务器生成针对目标交易账号的检测请求。

目标交易文本可以是目标交易账号近一个月的交易文本,或者近三个月的交易文本,或者目标交易文本自创建以来的所有交易文本。

步骤S102,用预置词组集合,对所述目标交易文本进行分词处理,得到一个或多个目标词组;所述预置词组集合是对目标类型的文本进行识别处理得到的。

具体的,服务器基于预置词组集合对获取到的目标交易文本进行分词处理,以将目标交易文本划分为一个或多个词组,将划分后的一个或多个词组均称为目标词组(如上述图2a-图2d对应实施例中的词组集合20e)。预置词组集合中既包括一些常规词组,也包括属于目标类型的词组。

预置词组集合是对目标类型的文本进行识别处理后得到的,当本申请应用于识别传销账号时,目标类型可以是传销类型,即预置词组集合是对传销类型的文本进行识别处理后得到的;当本申请应用于识别洗钱账号时,目标类型可以是洗钱类型,即预置词组集合是对洗钱类型的文本进行识别处理后得到;当本申请应用于识别赌博账号时,目标类型可以是赌博类型,即预置词组集合是对赌博类型的文本进行识别处理后得到的。

其中,目标类型的文本可以包括从网络上爬取的目标类型的新闻,从专门的网站爬取的目标类型的文本(例如,当目标类型是传销类型时,从专门打击传销的传销网站爬取的传销科普文本),以及目标类型的投诉文本。

基于预置词组集合对目标交易文本进行分词处理可以具体采用jieba分词算法来实现,下面对jieba分词算法的具体过程进行说明:

第一步是构造预置词组集合的前缀词:预置词组集合中每个预置词组还携带词频,该词频是预置词组在目标类型的文本中的频率,或者是默认值。读取预置词组集合的所有预置词组,构建每个预置词组的前缀词,对预置词组集合中存在的前缀词,该前缀词的词频为原本携带的词频,对预置词组集合中不存在在的词缀词,该前缀词的词频设置为0,此处的词频是用于后续计算每条路径的概率使用。

例如,预置词组为:好好学习,那么该预置词组的前缀词包括:好,好好,好好学,好好学习。

第二步是构造目标交易文本的有向无环图:遍历目标交易文本中的每个字符可能构成的所有词组,若在预置词组集合中存在的词组都记录其下标,每个字符可能存在多种存在的成词可能性,可以构成有向无环图,根据有向无环图计算每种成词概率,最大概率的路径为最佳的分词可能。jieba采用了dict结构表示dag,最终的dag是以{k:[k,j],m:[m,p,q],…}的字典结构存储,其中k和m为字符在目标交易文本中的位置,k对应的列表列表存放的是目标交易文本中以k开始的可能的词语的结束位置。

第三步是动态规划,确定最大概率路径。jieba分词中计算最大概率路径的主函数是calc(self,sentence,DAG,route),函数根据已经构建好的有向无环图计算最大概率路径。函数是一个自底向上的动态规划问题,它从目标交易文本的最后一个字(N-1)开始倒序遍历目标交易文本的每个字(idx)的方式,计算子句[idx~N-1]的概率对数得分。然后将概率对数得分最高的情况以(概率对数,词语最后一个位置)这样的元组保存在route中。函数中,概率对数为命中前缀词的词频之和的对数值,这里的计算都是使用概率对数值,可以有效防止下溢问题。

至此,就可以获取到目标交易文本的一个或多个目标词组。

下面再对预置词组集合的生成过程进行说明:

获取目标类型的文本,识别该文本中属于目标类型的新词集合,获取原始词库,将识别到的新词集合添加至原始词库,以得到预置词组集合。新词集合可以认为专属于目标类型,且未出现在原始词库中的新词,通过不断地将新词集合加入至原始词库,以更新预置词组集合,进而可以保证分词的准确性。

预置词组集合的更新的频率可以一个月,或者一个星期,即每间隔一个更新周期就爬取新的目标类型的文本,进而识别新的新词集合,得到新的预置词组集合。

下面对如何基于目标类型的文本确定目标类型的新词集合的具体过程进行说明:

服务器可以按照n-gram原则将目标类型的文本划分为多个字符序列,每个字符序列中都包含n个字符。例如,文本为:AAABBC,且n=2,服务器可以将该文本划分为3个字符序列,分别为:AA、AB、BC。

服务器分别确定每个字符序列的词组评估指标,词组评估指标包括:词组频率、词组凝固度和词组自由度,其中词组评估指标用于评估一个字符序列是否可以被判定为一个词组。

服务器根据每个字符词组评估指标,从所有的字符序列中选择出可以被判定为词组的字符序列,并将所有的字符序列组合为第一词组集合。服务器根据原始词库对第一词组集合进行去重,将去重后剩余的字符序列均称为第二词组,所有的第二词组组合为第二词组集合。可以知道,去重后的第二词组集合都是原始词库所没有的新词,为了进一步筛选出目标类型的新词,服务器还需要根据每个第二词组对应的文本的文本来源,从多个第二词组中筛选出属于目标类型的新词集合。

下面以一个字符序列为例,称为目标字符序列,来说明如何计算出目标字符序列的词组评估指标,以及如何根据目标字符序列的词组评估指标判断该目标字符序列是否属于第一词组集合:

服务器统计目标字符序列在目标类型的文本中的词组频率。

服务器计算目标字符序列的凝固度(称为词组凝固度),凝固度是用于度量一个字符序列里面字符和字符之间的紧密程度,例如,“琉璃”、“苹果”这样的字符序列的凝固度就非常高,但“荣耀”这样的字符序列的凝固度就比较低。计算目标字符序列的凝固度的过程是:首先将目标字符序列切分为不同的组合对,比如’abcd’可以拆成(‘a’,‘bcd’),(‘ab’,‘cd’),(‘abc’,‘d’),然后计算每个组合对的凝固度D(s1,s2)=P(s1s2)/(P(s1)*P(s2)),最后,取这些组合对的凝固度中最小的那个为目标字符序列的凝固度。其中,P(x)表示x在文本中的词组频率。

拿“电影院”这个词举例,具体的计算公式如下:

其中,C(电影院)代表“电影院”凝固度,p(电影院)代表该词在文本中的出现频率。

服务器计算目标字符序列的自由度(称为词组自由度),自由度是用于度量字符序列能独立运行的程度。比如“巧克力”里面的“巧克”凝固度就很高,和“巧克力”一样高,但是它右边相邻的词非常的单一、自由运用程度几乎为零,所以“巧克”不能单独成词。单独成词的字组合应该有更丰富的临字。自由度的计算公式如下:

F(w)=min{H

其中,F(w)就是字符序列w的自由度,而H

至此,就确定了目标字符序列的词组频率,词组凝固度和词组自由度。

若目标字符序列的词组频率大于预设的频率阈值,且目标字符序列的词组凝固度大于预设的凝固度阈值,且目标字符序列的词组自由度大于预设的自由度阈值,则可以确定目标字符序列属于第一词组集合;反之,若目标字符序列的词组频率不大于预设的频率阈值,或者目标字符序列的词组凝固度不大于预设的凝固度阈值,或者目标字符序列的词组自由度不大于预设的自由度阈值,则可以确定目标字符序列不属于第一词组集合。

总的来说,只有目标字符序列的词组频率、词组凝固度和词组自由度都大于阈值,才能确定目标字符序列属于第一词组集合。

可选的,除了采用上述策略来确定目标字符序列是否属于第一词组集合,还可以采用如下策略来确定目标字符序列是否属于第一词组集合:

若目标字符序列的词组频率大于预设的频率阈值,或者目标字符序列的词组凝固度大于预设的凝固度阈值,或者目标字符序列的词组自由度大于预设的自由度阈值,则可以确定目标字符序列属于第一词组集合;反之,若目标字符序列的词组频率不大于预设的频率阈值,且目标字符序列的词组凝固度不大于预设的凝固度阈值,且目标字符序列的词组自由度不大于预设的自由度阈值,则可以确定目标字符序列不属于第一词组集合。

总的来说,只要目标字符序列的词组频率、词组凝固度和词组自由度中的至少一个大于阈值,就能确定目标字符序列属于第一词组集合。

服务器根据原始词库对第一词组集合进行去重,得到第二词组集合的具体过程为:服务器确定原始词库和第一词组集合之间的交集,在第一词组集合中删除交集中的词组,将第一词组中剩余的词组都称为第二词组,将所有的第二词组组合为第二词组集合。

下面以一个第二词组为例(称为目标第二词组)来说明如何根据目标第二词组的文本来源,确定该目标第二词组是否属于目标类型新词集合:

目标第二词组的文本来源可以认为是前述中属于目标类型的文本的文本来源,且文本来源可以是第一文本来源或者第二文本来源,第一文本来源和第二文本来源是根据文本应用场景划分的。例如,属于第一文本来源的文本是从网络上爬取的目标类型的新闻,或者是从专门的网站爬取的目标类型的文本;属于第二文本来源的文本是关于目标类型的投诉文本等。

若目标第二词组对应的文本来源是第一文本来源,则可以直接确定目标第二词组属于新词集合;若目标第二词组的文本来源是第二文本来源,则获取交易账号集合中每个交易账号的交易文本,其中,交易账号集合包括多个交易账号,且交易账号集合中的交易账号的类型都已经确定的,这些交易账号的类型要么属于目标类型要么不属于目标类型。

从交易账号集合中选择交易文本包含目标第二词组的交易账号,将选择出来的交易账号称为待确定交易账号,从多个待确定交易账号从选择属于目标类型的待确定交易账号。服务器计算属于目标类型的待确定交易账号的数量与所有待确定交易账号的数量之间的比值,若该比值大于预设的阈值,则确定目标第二词组是属于新词集合。

简单来说,就是通过其余已经确定类型的交易账号的交易文本来反推当前第二词组是否为新词集合。

步骤S103,对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型。

具体的,调用词向量模型,将目标交易文本分词后的每个目标词组都分别转换为词向量,将所有的词向量组合为词矩阵。例如,词向量的维度是1×m,且目标交易文本分词后得到n个目标词组,因此词矩阵的维度为:n×m。

训练好的文本分类模型的输出是交易文本属于目标类型的概率,以及不属于目标类型的概率。调用训练好的文本分类模型中的卷积层,对组合而成的词矩阵进行卷积运算,得到卷积特征,调用文本分类模型中的池化层,对卷积特征进行池化运算,得到目标交易文本的池化特征;调用文本分类模型中的全链接层,对池化特征进行全连接处理,得到目标交易文本属于目标类型的概率(称为第一概率),若第一概率大于或者等于第一概率阈值,则确定目标交易文本的类型是目标类型;反之,若第一概率小于第一概率阈值,则确定目标交易文本的类型不是目标类型。

步骤S104,若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为目标类型的交易账号。

具体的,若目标交易文本的类型是目标类型,则服务器可以直接将目标交易账号确定为属于目标类型的交易账号。

除了直接确定目标交易账号的类型外,还可以采用如下策略确定目标交易账号的类型:

若目标交易文本的类型是目标类型,则服务器获取目标交易账号的交易流水(称为目标交易流水),目标交易流水包含交易时间(称为目标交易时间),交易资源数据量(称为目标交易资源数据量)等,交易流水可以是目标交易账号近一个月的交易流水,还可以是近三个月,或者自目标交易账号创建以来的所有流水。

根据目标交易时间和目标交易资源数据量生成交易特征,将交易特征输入训练好的交易分类模型,训练好的交易分类模型的输出是交易流水属于目标类型的概率,以及不属于目标类型的概率。交易分类模型输出目标交易流水是目标类型的概率(称为第二概率),若第一概率和第二概率之和不小于预设的第二概率阈值,则将目标交易账号确定为属于目标类型的交易账号。

可选的,若第二概率不小于第二概率阈值,则将目标交易账号确定为属于目标类型的交易账号。

总的来说,若要判定目标交易账号的类型是否为目标类型,不仅要参考目标交易账号的目标交易文本,还要参考目标交易账号的目标交易流水来共同确定。通过多个维度的交易数据来判定目标交易账号的类型,可以提高目标交易账号的识别准确率。

请参见图4,图4是本申请实施例提供的一种模型评估效果示意图,图4中的虚线表示精度(Precision),实线表示召回率(Recall)。从图4可以看出,本申请在测试数据集上的精度(Precision)和召回率(Recall)都比较高;再有,本申请在测试数据集上的准确率accuracy也达到0.991,KS(Kolmogorov-Smirnov,柯尔莫可洛夫-斯米洛夫检验)达到0.964:auc(area under the curve,ROC曲线下的面积)达到0.996。同时在实际大盘验证抽审预测高分账号时,本申请准确率也是不错的。

请参图5,图5是本申请实施例提供的一种更新词库的流程示意图,本实施例主要描述将一些传销新词添加至词库以更新词库的过程,更新词库包括如下步骤:

步骤S201,流程开始。

步骤S202,拉取文本数据。

具体的,服务器可以从专门的传销网站拉取文本,以及在网络上爬取传销类新闻,以及拉取传销类的投诉文本。其中,拉取的文本数据可以对应本申请中的属于目标类型的文本。

步骤S203,对文本数据进行预处理,过滤文本数据中无意义的词或者符号。

步骤S204,发现文本数据中的新词。

具体的,将文本数据划分为多个字符序列,计算每个字符序列的3个成词评估指标,3个成词评估指标分别是词频,凝固度和自由度。根据3个成词评估指标可以筛选出文本数据中的词组,然后与现有的词库去重后得到一批待定性新词。其中,待定性新词可以对应本申请中的第二词组。

计算每个字符序列的词频,凝固度和自由度的具体过程可以参见上述图3对应实施例中的步骤S102。

发现了一批待定性新词后,就要对这一批待定性新词进行风险定性判断。只有满足风险定性判断条件的待定性新词,才能被作为属于传销类型的新词,进而被添加至词库。

步骤S205,若待定性新词所在的文本是从网络上爬取的新闻,或者是从专门的传销网站拉取的文本,那么可以认定该待定性新词是属于传销类型的新词。

步骤S206,若该待定性新词所在的文本是传销类的投诉文本,那么召回一批交易文本包含该待定性新词的账号。

步骤S207,根据恶意浓度确定待定性新词是否为属于传销类型的新词。

具体的,从这一批召回的账号中,筛选出属于传销类型的账号(此处可以是人工筛选)。计算该待定性新词的恶意浓度(恶意浓度即等于传销类召回账号数量/总召回账号数量),按照一定阈值标准,确定该待定性新词是否为传销类型的新词。

步骤S208,更新词库。

具体的,将上述2种方法筛选出来的属于传销类型的新词加入词库,形成新的词库,筛选出来的属于传销类型的新词即可对应本申请中新词集合中的词组。新的词库可以用于模型训练或审核判定时使用。

步骤S209,流程结束。

请参见图6,图6是本申请实施例提供的一种识别账号是否为传销账号的流程示意图,识别过程涉及如下步骤:

步骤S301,流程开始。

步骤S302,提取待识别账号的交易文本。

具体的,获取待识别账号近一个月的交易文本,交易文本包括转账文本、红包文本、和昵称文本等数据,交易文本即是待识别账号的模型特征。

步骤S303,交易文本预处理。

具体的,过滤交易文本中的中性词和停用词,例如,“生日快乐”、“百年好合”以及“祝福”等中性词,“的”、“地”、“得”等停用词。

步骤S304,加载更新后的词库,基于该更新后的词库对预处后的交易文本进行分词,以将交易文本划分为多个词组。由于更新后的词库包含传销类新词,因此交易文本的分词结果更加准确。

其中,更新后的词库即是上述图5对应实施例中添加了属于传销类型的新词的词库。

步骤S305,将分词后的每个词组都进行热编码。

其中,热编码后每个词组都会对应一个热编码向量,且该向量中只有1个1,其余的取值都是0。

步骤S306,将每个热编码向量都进行降维,以将每个热编码向量转换为词向量。

步骤S307,将所有词组的词向量输入训练好的text cnn(text,convolutionalneural networks,文本卷积神经网络)模型中,text cnn模型中的卷积层对所有词向的词向量进行卷积运算,得到卷积特征。

其中,text cnn模型可以对应本申请中的文本分类模型。

步骤S308,text cnn模型中的池化层对卷积特征进行池化运算,得到池化特征。

步骤S309,text cnn模型中的全连接层对池化特征进行全连接,得到全连接特征。

可选的,text cnn模型中的卷积层对所有词向的词向量进行卷积运算,得到卷积特征。text cnn模型中的池化层对所有词向的词向量进行池化运算,得到池化特征。将卷积特征和池化特征进行全连接,得到全连接特征。

步骤S310,归一化层根据全连接特征,确定概率得分。

具体的,该概率得分表示交易文本是传销类型的概率。

除了采用text cnn模型来确定交易文本是传销类型的概率,还可以采用fasttext等其他的文本分类模型来确定交易文本是传销类型的概率。

步骤S311,基于待识别交易账号的交易流水以及训练好的交易模型,确定该交易流水是传销类型的概率。

结合上述待识别账号的交易文本是传销类型的概率,以及待识别账号的交易流水是传销类型的概率确定待识别账号是否为传销账号,例如,若待识别账号的交易文本是传销类型的概率和待识别账号的交易流水是传销类型的概率之和大于阈值,则确定待识别账号是传销账号。

步骤S312,流程结束。

在风控决策引擎准实时平台部署这一套模型之后,每一天大盘可以识别到1w+的恶意传销账号,有效打击了大盘交易中的传销恶意风险,并且减少了传销打击的误判案例和客诉率。

请参见图7,图7是本申请实施例提供的一种区块链的系统架构图。前述实施例中的服务器可以为图7中的节点1、或节点2或节点3或节点4,所有的节点可以组合为区块链系统,每个节点都包括硬件层、中间层、操作系统层和应用层。从图7中可以看出,区块链系统的中的每个节点所存储的区块链数据都相同。可以知道,上述节点可以包括计算机设备。下述实施例以目标区块链节点为执行主体进行描述,目标区块链节点是区块链系统中多个节点中的任一节点,目标区块链节点可以对应前述实施例中的服务器。

请一并参见图8,图8是本申请实施例提供的一种文本处理的流程示意图,本实施例主要描述交易账号的识别和区块链技术的结合,文本处理包括如下步骤S401-步骤S405:

步骤401,当检测到目标交易账号的检测请求时,在区块链中确定区块高度对应的第一区块,在第一区块中读取所述目标交易账号的原始交易文本。

具体的,当目标区块链节点检测到目标交易账号的检测请求时,提取出检测请求携带的区块高度。目标区块链节点获取区块链,并从区块链中抽取该区块高度对应的区块,称为第一区块。其中,第一区块中存储有目标交易账号的原始交易文本。目标区块链节点从第一区块的区块体中提取目标交易账号的原始交易文本。

原始交易文本可以包括目标交易账号的昵称,交易对方的昵称,交易备注文本等。

步骤S402,获取过滤词库,根据所述过滤词库对所述原始交易文本进行过滤处理,得到所述目标交易文本。

具体的,目标区块链节点获取过滤词库,根据过滤词库对原始交易文本进行过滤处理,以得到目标交易账号的目标交易文本。其中,过滤词库中包含中性词和停用词,例如,“生日快乐”、“百年好合”“祝福”等词都是中性词,“的”、“地”、“得”、“以及”、“或者”等词都是停用词。因此,在原始交易文本中中性词和停用词都被会过滤掉。

步骤S403,采用预置词组集合,对所述目标交易文本进行分词处理,得到一个或多个目标词组;所述预置词组集合是对目标类型的文本进行识别处理后得到的。

步骤S404,对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型,若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为目标类型的交易账号。

其中,步骤S403-步骤S404的具体过程可以参见上述图3对应实施例中的步骤S102-步骤S104。

步骤S405,将所述目标交易账号封装为第二区块,将所述第二区块存储于所述区块链。

具体的,若判断出目标交易账号的类型是目标类型,目标区块链节点将确定的属于目标类型的目标交易账号存储至区块体,计算上述目标交易账号的默克尔根,并获取当前区块链的最后一个区块的哈希值,目标区块链节点将目标交易账号的默克尔根、当前区块链的最后一个区块的哈希值以及当前时间戳存储至区块头。目标区块链节点将该区块头以及存储了目标交易账号的区块体组合为第二区块,并将第二区块存储至目标区块链节点所维护的区块链,以及向其余的节点广播第二区块,以使其余的节点将第二区块添加至各自维护的区块链,使得各节点所维护的区块链达到同步。

当目标类型是传销类型时,后续,需要执行传销交易账号打击的节点可以从区块链中读取第二区块,以及从第二区块中读取目标交易账号,进而对目标交易账号进行打击。

上述可知,依托于区块链的完整属性以及不可篡改属性,可以保证目标区块链节点获取到的原始交易文本是可信且未被篡改的,因此基于原始交易文本所识别的目标交易账号的类型也是可信任的,可以保证对目标交易账号的识别过程的安全性和准确性。

进一步的,请参见图9,其是本申请实施例提供的一种文本处理装置的结构示意图。如图9所示,文本处理装置1可以应用于上述图3-图8对应实施例中的服务器或者目标区块链节点。具体的,文本处理装置1可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该文本处理装置1为一个应用软件;该文本处理装置1可以用于执行本申请实施例提供的方法中的相应步骤。

文本处理装置1可以包括:获取模块11、分词模块12、第一识别模块13和确定模块14。

获取模块11,用于获取目标交易账号的目标交易文本;

分词模块12,用于采用预置词组集合,对所述目标交易文本进行分词处理,得到一个或多个目标词组;所述预置词组集合是对目标类型的文本进行识别处理后得到的;

第一识别模块13,用于对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型;

确定模块14,用于若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为目标类型的交易账号。

在一种可能的实施方式中,所述文本处理装置1还可以包括:第二识别模块15和更新模块16。

所述获取模块11,还用于获取目标类型的文本;

第二识别模块15,用于识别所述文本中属于所述目标类型的新词集合;

更新模块16,用于获取原始词库,将所述新词集合添加至所述原始词库,得到所述预置词组集合。

在一种可能的实施方式中,所述第二识别模块15在用于识别所述文本中属于所述目标类型的新词集合时,具体用于:

将所述文本划分为多个字符序列,对每个字符序列进行识别处理,得到每个字符序列的词组评估指标;

根据每个字符序列的词组评估指标,从多个字符序列中选择第一词组集合;

将所述第一词组集合进行去重处理,得到第二词组集合;所述第二词组集合包括多个第二词组;

根据每个第二词组的文本来源,从所述多个第二词组中确定属于所述目标类型的新词集合。

在一种可能的实施方式中,目标第二词组是多个第二词组中的任一第二词组,目标第二词组的文本来源是第一文本来源或第二文本来源,第一文本来源和第二文本来源是根据文本应用场景划分的;

第二识别模块15在用于根据目标第二词组的文本来源,判断目标第二词组是否属于新词集合时,具体用于:

若目标第二词组的文本来源是第一文本来源,则确定所述目标第二词组属于所述新词集合。

在一种可能的实施方式中,第二识别模块15还用于:

若目标第二词组的文本来源是第二文本来源,则获取交易账号集合中每个交易账号的交易文本;

从交易账号集合中选择交易文本包含所述目标第二词组的多个待确定交易账号,从多个待确定账号中选择属于目标类型的待确定交易账号;

若属于目标类型的待确定交易账号的数量与待确定交易账号的数量的比值大于阈值,则确定所述目标第二词组属于所述新词集合。

在一种可能的实施方式中,目标字符序列是多个字符序列中的任一字符序列,目标字符序列的词组评估指标包括词组频率、词组凝固度和词组自由度;

第二识别模块15在用于根据目标字符序列的词组评估指标,判断目标字符序列是否属于第一词组集合时,具体用于:

若目标字符序列的词组频率大于频率阈值,且词组凝固度大于凝固度阈值,且词组自由度大于自由度阈值,则确定目标字符序列属于第一词组集合;或者,

若目标字符序列的词组频率大于频率阈值,或词组凝固度大于凝固度阈值,或词组自由度大于自由度阈值,则确定目标字符序列属于第一词组集合。

在一种可能的实施方式中,所述第二识别模块15在用于将所述第一词组集合进行去重处理,得到第二词组集合时,具体用于:

确定所述原始词库与所述第一词组之间的交集;

在第一词组集合中删除所述交集对应词组,将第一词组集合中剩余的词组组合为所述第二词组集合。

在一种可能的实施方式中,所述第一识别模块13对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型时,具体用于:

将每个目标词组分别转化为词向量,将所有的词向量组合为词矩阵;

调用文本分类模型识别所述词矩阵,得到所述目标交易文本的类型是目标类型的第一概率;

若所述第一概率不小于第一概率阈值,则确定所述目标交易文本的类型是目标类型。

在一种可能的实施方式中,所述确定模块14在用于若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为属于目标类型的交易账号时,具体用于:

若所述目标交易文本的类型是目标类型,则获取所述目标交易账号的目标交易流水,所述目标交易流水包括目标交易资源数据量和目标交易时间;

调用交易分类模型识别所述目标交易资源数据量和目标交易时间,得到所述目标交易流水的类型是目标类型的第二概率;

若第一概率和第二概率之和不小于第二概率阈值,则将所述目标交易账号确定为属于目标类型的交易账号。

在一种可能的实施方式中,所述获取模块11在用于获取目标交易账号的目标交易文本时,具体用于:

当检测到目标交易账号的检测请求时,在区块链中确定区块高度对应的第一区块,在第一区块中读取所述目标交易账号的原始交易文本;所述检测请求包含所述区块高度;

获取过滤词库,根据所述过滤词库对所述原始交易文本进行过滤处理,得到所述目标交易文本;

则所述文本处理装置1还包括:封装模块17。

封装模块17,用于将所述目标交易账号封装为第二区块,将所述第二区块存储于所述区块链。

根据本发明的一个实施例,图3-图8所示的方法所涉及的各个步骤均可以是由图9所示的文本处理装置中的各个模块来执行的。例如,图3中所示的步骤S101-S104可以分别由图9中所示的获取模块11、分词模块12、第一识别模块13、确定模块14、第二识别模块15和更新模块16来执行;又如,图8中所示的步骤S401、S405可以由图9中所示的获取模块11和封装模块17来执行。

本申请由终端根据交易账户下的交易文本自动识别交易账号的类型,不需要人工参与,可以提升交易账号的识别效率和准确率;再有,本申请基于交易账号下的交易文本来确定交易账户的类型,可以丰富交易账号的识别方式;在交易文本识别过程中,本申请基于目标类型的文本识别后所确定的预置词组集合对交易文本进行分词,相比常规词组集合,可以保证分词的准确率,更准确的分词结果可以进一步提升账号识别的准确率。

进一步地,请参见图10,是本申请实施例提供的一种计算机设备的结构示意图。上述图3-图8对应实施例中的服务器或者目标区块链节点可以为计算机设备1000。如图10所示,计算机设备1000可以包括:用户接口1002、处理器1004、编码器1006以及存储器1008。信号接收器1016用于经由蜂窝接口1010、WIFI接口1012、...、或NFC接口1014接收或者发送数据。编码器1006将接收到的数据编码为计算机处理的数据格式。存储器1008中存储有计算机程序,处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。存储器1008可包括易失性存储器(例如,动态随机存取存储器DRAM),还可以包括非易失性存储器(例如,一次性可编程只读存储器OTPROM)。在一些实例中,存储器1008可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备1000。用户接口1002可以包括:键盘1018和显示器1020。

在图10所示的计算机设备1000中,处理器1004可以用于调用存储器1008中存储计算机程序,以实现:

获取目标交易账号的目标交易文本;

采用预置词组集合,对所述目标交易文本进行分词处理,得到一个或多个目标词组;所述预置词组集合是对目标类型的文本进行识别处理后得到的;

对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型;

若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为目标类型的交易账号。

在一个实施例中,处理器1004还执行以下步骤:

获取目标类型的文本,识别所述文本中属于所述目标类型的新词集合;

获取原始词库,将所述新词集合添加至所述原始词库,得到所述预置词组集合。

在一个实施例中,处理器1004在执行识别所述文本中属于所述目标类型的新词集合时,具体执行以下步骤:

将所述文本划分为多个字符序列,对每个字符序列进行识别处理,得到每个字符序列的词组评估指标;

根据每个字符序列的词组评估指标,从多个字符序列中选择第一词组集合;

将所述第一词组集合进行去重处理,得到第二词组集合;所述第二词组集合包括多个第二词组;

根据每个第二词组的文本来源,从所述多个第二词组中确定属于所述目标类型的新词集合。

在一个实施例中,目标第二词组是多个第二词组中的任一第二词组,目标第二词组的文本来源是第一文本来源或第二文本来源,第一文本来源和第二文本来源是根据文本应用场景划分的;

处理器1004在执行根据目标第二词组的文本来源,判断目标第二词组是否属于新词集合时,具体执行以下步骤:

若目标第二词组的文本来源是第一文本来源,则确定所述目标第二词组属于所述新词集合。

在一个实施例中,处理器1004还执行以下步骤:

若目标第二词组的文本来源是第二文本来源,则获取交易账号集合中每个交易账号的交易文本;

从交易账号集合中选择交易文本包含所述目标第二词组的多个待确定交易账号,从多个待确定账号中选择属于目标类型的待确定交易账号;

若属于目标类型的待确定交易账号的数量与待确定交易账号的数量的比值大于阈值,则确定所述目标第二词组属于所述新词集合。

在一个实施例中,目标字符序列是多个字符序列中的任一字符序列,目标字符序列的词组评估指标包括词组频率、词组凝固度和词组自由度;

处理器1004在执行根据目标字符序列的词组评估指标,判断目标字符序列是否属于第一词组集合时,具体执行以下步骤:

若目标字符序列的词组频率大于频率阈值,且词组凝固度大于凝固度阈值,且词组自由度大于自由度阈值,则确定目标字符序列属于第一词组集合;或者,

若目标字符序列的词组频率大于频率阈值,或词组凝固度大于凝固度阈值,或词组自由度大于自由度阈值,则确定目标字符序列属于第一词组集合。

在一个实施例中,处理器1004在执行将所述第一词组集合进行去重处理,得到第二词组集合时,具体执行以下步骤:

确定所述原始词库与所述第一词组之间的交集;

在第一词组集合中删除所述交集对应词组,将第一词组集合中剩余的词组组合为所述第二词组集合。

在一个实施例中,处理器1004在执行对所述一个或多个目标词组进行文本识别处理,得到所述目标交易文本的类型时,具体执行以下步骤:

将每个目标词组分别转化为词向量,将所有的词向量组合为词矩阵;

调用文本分类模型识别所述词矩阵,得到所述目标交易文本的类型是目标类型的第一概率;

若所述第一概率不小于第一概率阈值,则确定所述目标交易文本的类型是目标类型。

在一个实施例中,处理器1004在执行若所述目标交易文本的类型是目标类型,则将所述目标交易账号确定为属于目标类型的交易账号时,具体执行以下步骤:

若所述目标交易文本的类型是目标类型,则获取所述目标交易账号的目标交易流水,所述目标交易流水包括目标交易资源数据量和目标交易时间;

调用交易分类模型识别所述目标交易资源数据量和目标交易时间,得到所述目标交易流水的类型是目标类型的第二概率;

若第一概率和第二概率之和不小于第二概率阈值,则将所述目标交易账号确定为属于目标类型的交易账号。

在一个实施例中,处理器1004在执行获取目标交易账号的目标交易文本时,具体执行以下步骤:

当检测到目标交易账号的检测请求时,在区块链中确定区块高度对应的第一区块,在第一区块中读取所述目标交易账号的原始交易文本;所述检测请求包含所述区块高度;

获取过滤词库,根据所述过滤词库对所述原始交易文本进行过滤处理,得到所述目标交易文本;

则处理器1004还执行以下步骤:

将所述目标交易账号封装为第二区块,将所述第二区块存储于所述区块链。

应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3-图8所对应实施例中对文本处理方法的描述,也可执行前文图9所对应实施例中对文本处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

此外,这里需要指出的是:本申请实施例还提供了一种计算机存储介质,且计算机存储介质中存储有前文提及的文本处理装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3-图8所对应实施例中对文本处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可以被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,分布在多个地点且通过通信网络互联的多个计算机设备上执行,分布在多个地点且通过通信网络互联的多个计算机设备可以组合为区块链网络。

根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备可以执行前文图3到图8所对应实施例中的方法,因此,这里将不再进行赘述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

相关技术
  • 文本处理方法、文本处理装置、电子设备以及计算机可读存储介质
  • 文本处理方法、装置、计算机设备及计算机可读存储介质
技术分类

06120112964575