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

黑产用户识别模型训练方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 13:46:35


黑产用户识别模型训练方法、装置、电子设备及存储介质

技术领域

本发明涉及数据处理技术领域,特别是涉及一种黑产用户识别模型训练方法、装置、电子设备及存储介质。

背景技术

随着互联网技术的发展,互联网服务提供商所提供的互联网服务也越来越多,然而,在实际互联网服务场景中,部分人员会基于互联网服务提供商所提供的互联网服务进行异常活动,例如:盗取正常用户信息、恶意刷赞、刷评论、刷订单、发布非法交易信息以及诈骗消息等,这里将进行上述异常活动的人员称为异常用户或黑产用户。互联网服务提供商需要不断识别这些异常用户,以保证正常用户的账户安全以及互联网服务的正常运行。

相关技术中,利用训练好的用户识别模型来对用户的用户行为特征进行分析,从而识别出具有异常行为的异常用户。其中,用户识别模型的训练过程包括:人工选取异常用户的用户行为特征并标记异常用户标签作为正样本,人工选取正常用户的用户行为特征作为负样本,利用正样本及负样本对用户识别模型进行训练,从而得到训练好的用户识别模型。

然而,发明人在研究中发现,采用上述用户识别模型训练方法,需要人工选取大量异常用户的用户行为特征作为正样本,然而实际场景中,异常用户的数量要远远小于正常用户的数量,导致无法选取到足够数量的异常用户的用户行为特征作为正样本,并且人工选取异常用户的用户行为特征的工作量很大,同样限制了异常用户的用户行为特征的正样本的数量,从而导致能够用于训练用户识别模型的正样本的数量较少,最终影响用户识别模型的准确度。

发明内容

本发明实施例的目的在于提供一种黑产用户识别模型训练方法、装置、电子设备及存储介质,以实现减少能够用于训练用户识别模型的正样本的数量对用户识别模型的准确度的影响。具体技术方案如下:

在本发明实施的第一方面,提供了一种黑产用户识别模型训练方法,该方法包括:

利用第一样本集合对第一基础模型进行训练,直至满足第一约束条件,得到第一识别模型;第一识别模型用于基于文本特征序列、用户行为特征序列,预测文本特征序列对应的文本是否为垃圾内容;第一基础模型包括:第一子模型与第二子模型,第一子模型用于对文本特征序列进行分析得到第一垃圾内容预测结果,第二子模型用于对用户行为特征序列进行分析得到第二垃圾内容预测结果;其中,第一约束条件与第一损失相关联,第一损失包括:第二损失、第三损失与第四损失,第二损失为第一子模型的损失,第三损失为第二子模型的损失,第四损失为第一子模型与第二子模型之间的特征损失;

基于第一识别模型中的第二子模型,确定第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

在本发明实施的第二方面,还提供了一种黑产用户识别方法,该方法还包括:

获取待识别用户的用户行为特征序列;

将待识别用户的用户行为特征序列输入到训练完成的第二识别模型中,确定待识别用户是否为黑产用户,其中,训练完成的第二识别模型是通过本申请任一所述的黑产用户识别模型训练方法训练得到的;

基于待识别用户的预测结果,确定待识别用户是否为黑产用户。

在本发明实施的第三方面,还提供了一种黑产用户识别模型训练装置,该装置包括:

第一训练模块,用于利用第一样本集合对第一基础模型进行训练,直至满足第一约束条件,得到第一识别模型;第一识别模型用于基于文本特征序列、用户行为特征序列,预测文本特征序列对应的文本是否为垃圾内容;第一基础模型包括:第一子模型与第二子模型,第一子模型用于对文本特征序列进行分析得到第一垃圾内容预测结果,第二子模型用于对用户行为特征序列进行分析得到第二垃圾内容预测结果;其中,第一约束条件与第一损失相关联,第一损失包括:第二损失、第三损失与第四损失,第二损失为第一子模型的损失,第三损失为第二子模型的损失,第四损失为第一子模型与第二子模型之间的特征损失;

第二训练模块,用于将第一识别模型中的第二子模型作为第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

在本发明实施的第四方面,还提供了一种黑产用户识别装置,该装置还包括:

获取模块,用于获取待识别用户的用户行为特征序列;

识别模块,用于将待识别用户的用户行为特征序列输入到训练完成的第二识别模型中,确定待识别用户是否为黑产用户,其中,训练完成的第二识别模型是通过本申请任一所述的黑产用户识别模型训练装置训练得到的;

确定模块,用于基于待识别用户的预测结果,确定待识别用户是否为黑产用户。

在本发明实施的第五方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现本申请任一所述的方法的步骤。

在本发明实施的第六方面,还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本申请任一所述的方法的步骤。

在本发明实施的第七方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本申请任一所述的方法的步骤。

本发明实施例提供的一种黑产用户识别模型训练方法、装置、电子设备及存储介质,包括:利用第一样本集合对第一基础模型进行训练,直至满足第一约束条件,得到第一识别模型;基于第一识别模型中的第二子模型,确定第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;其中,第一识别模型用于基于文本特征序列、用户行为特征序列,预测文本特征序列对应的文本是否为垃圾内容;第一基础模型包括:第一子模型与第二子模型,第一子模型用于对文本特征序列进行分析得到第一垃圾内容预测结果,第二子模型用于对用户行为特征序列进行分析得到第二垃圾内容预测结果;其中,第一约束条件与第一损失相关联,第一损失包括:第二损失、第三损失与第四损失,第二损失为第一子模型的损失,第三损失为第二子模型的损失,第四损失为第一子模型与第二子模型之间的特征损失;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

可见,在本发明实施例中,采用联合训练的方式,利用第一样本集合对第一基础模型中的第一子模型和第二子模型进行联合训练,得到第一子模型的第二损失、第二子模型的第三损失以及第一子模型与第二子模型之间的第四损失,利用包含第二损失、第三损失与第四损失的第一损失,来调整第一基础模型的训练参数,从而可以得到第一识别模型的训练参数。然后基于第一识别模型中的第二子模型得到第二基础模型,并利用第二样本集合对第二基础模型进行训练。因为第二子模型已经与第一子模型进行了联合训练,而该第二基础模型是基于第二子模型得到的,所以第二样本集合中只需少量标注有标签数据的用户行为特征序列便可以完成训练,从而可以减少能够用于训练用户识别模型的正样本的数量对用户识别模型的准确度的影响,并且本申请在只使用少量标注有标签数据的用户行为特征序列的情况下,可以增加第二识别模型的准确度。更进一步的,由于文本特征序列的标签数据标注的工作量远远小于用户行为特征序列的标签数据标注的工作量,因此可以减少人工选取及标注异常用户的用户行为特征的工作量。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例中一种黑产用户识别模型训练方法第一种实施方式的流程图;

图2为本发明实施例中一种黑产用户识别模型训练方法第二种实施方式的流程图;

图3为本发明实施例中一种网络结构的结构示意图;

图4为本发明实施例中一种黑产用户识别模型训练方法第三种实施方式的流程图;

图5为本发明实施例的一种黑产用户识别方法的流程示图;

图6为本发明实施例中的整体框架图;

图7为本发明实施例中一种黑产用户识别模型训练方法第四种实施方式的流程示意图;

图8为本发明实施例中一种黑产用户识别模型训练装置的结构示意图;

图9为本发明实施例中一种黑产用户识别装置的结构示意图;

图10为本发明实施例中一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

在实际互联网服务场景中,部分人员会基于互联网服务提供商所提供的互联网服务进行异常活动,例如:盗取正常用户信息,在视频评论页面恶意刷赞、刷评论,或者使用弹幕功能发布非法交易信息或者发布诈骗消息等,这里将进行上述异常活动的人员称为异常用户或黑产用户。互联网服务提供商需要使用识别模型不断识别这些异常用户,以保证正常用户的账户安全以及互联网服务的正常运行。

然而,发明人发现,相关技术中通常需要人工选取大量异常用户的用户行为特征进行识别模型的训练,而异常用户的数量要远远小于正常用户的数量,导致无法选取到足够数量的异常用户的用户行为特征作为正样本,并且人工选取异常用户的用户行为特征的工作量很大,同样限制了异常用户的用户行为特征的正样本的数量,从而导致能够用于训练用户识别模型的正样本的数量较少,最终影响用户识别模型的准确度。

为了解决上述问题,本发明实施例提供了一种黑产用户识别模型训练方法、装置、电子设备及存储介质,以实现减少人工选取及标注异常用户的用户行为特征的工作量。

下面,首先对本发明实施例的一种黑产用户识别模型训练方法进行介绍如图1所示,为本发明实施例中一种黑产用户识别模型训练方法第一种实施方式的流程图,该方法可以包括:

S110,利用第一样本集合对第一基础模型进行训练,直至满足第一约束条件,得到第一识别模型;第一识别模型用于基于文本特征序列、用户行为特征序列,预测文本特征序列对应的文本是否为垃圾内容;第一基础模型包括:第一子模型与第二子模型,第一子模型用于对文本特征序列进行分析得到第一垃圾内容预测结果,第二子模型用于对用户行为特征序列进行分析得到第二垃圾内容预测结果;其中,第一约束条件与第一损失相关联,第一损失包括:第二损失、第三损失与第四损失,第二损失为第一子模型的损失,第三损失为第二子模型的损失,第四损失为第一子模型与第二子模型之间的特征损失;

S120,基于第一识别模型中的第二子模型,确定第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

为了减少能够用于训练用户识别模型的正样本的数量对用户识别模型的准确度的影响,在本发明实施例中,可以先采用包含文本特征序列、用户行为特征序列以及第一标签数据的第一样本集合对第一基础模型进行训练,该第一标签数据用于指示文本特征序列是否为垃圾内容。

在一些示例中,该文本特征序列是对用户在互联网服务平台上发布的文本内容进行处理得到的词集合,该文本内容可以是用户在评论页面发布的正常评论信息或异常评论信息,也可以是用户使用弹幕功能发布的正常弹幕信息或者异常弹幕信息,还可以是:在论坛、贴吧或者微博中发布的正常帖子内容或异常帖子信息,该异常评论信息、异常弹幕信息以及异常帖子信息可以是非法交易信息或者诈骗信息等。例如,该文本内容可以是如表1所示的文本内容,对应的第一标签也可以是表1所示的标签。

例如,该文本特征序列可以是对文本内容进行分词处理得到的词集合,或者使用词袋模型对文本内容进行处理得到的词集合等。

在一些示例中,表1所示的文本内容是比较容易获取的,并且对文本内容是否为垃圾内容也是比较容易判断的,因此,获取文本特征序列及第一标签的过程是比较容易的。可以理解的是,表1中所示的文本内容仅仅只是为了示例说明,在实际应用中,该文本内容的数量可以更多,例如,该数量可以设置为数百万或者数千万等。

表1文本内容与标签示例表

在又一些示例中,上述的文本特征序列可以是通过词袋模型对文本内容进行处理得到的词集合。也可以是通过TF-IDF(词频-逆文档频)模型等对文本内容进行处理得到的词集合。还可以通过其他分词方法对该文本内容进行分词处理,得到词集合,这都是可以的。

其中,该词袋模型用于对文本内容进行分词处理,并统计每个词在文本中出现的次数,从而可以得到该文本内容中包含的所有词,以及每个词在文本中出现的频率。

该TF-IDF模型用于对文本内容进行分词处理,然后计算每个词在本文内容中出现的频率和包含该词的文本的逆向文件频率,进而基于每个词在本文内容中出现的频率和包含该词的文本的逆向文件频率得到该词的加权权值,最后基于各个词的加权权值,选择满足预设选取条件的词作为该文本特征序列的词集合。该预设选取条件可以是加权权值按照从大到小的顺序,位于前N位;也可以是加权权值大于或等于预设加权阈值。

在一些示例中,当用户在发布文本内容时,该文本内容便与用户具有对应关系。当用户在互联网服务平台进行操作时,便会产生对应的用户行为,该用户行为便与该用户具有对应关系。因此,这里可以获取到用户行为特征序列。其中,该用户行为特征序列可以是用户进行不同行为时的相关数据表示,例如,用户登录视频网站时,每个用户行为特征可以使用“登录设备指纹”、“登录IP”、“wifi标志”以及“评论所针对的视频名称”等中的至少一种数据来表示,当用户登录论坛、贴吧或者微博时,每个用户行为特征可以使用“登录设备账号”、“发帖时间”、“修改帖子时间”以及“发帖目的”等中的至少一种数据来表示。

在一些示例中,由于用户行为特征序列难以获得,并且,用户行为特征序列的标签数据标注的工作量远远大于文本特征序列的标签数据标注的工作量,若采用联合训练的方式,对用于分析文本特征序列的第一子模型和用于分析用户行为特征序列的第二子模型进行训练,便可以在只需对文本特征序列的标签数据进行标注的情况下,获得能够用于分析用户行为特征序列的第二子模型。

因此,在本发明实施例中,上述的第一基础模型可以包括两个子模型,该两个子模型可以是孪生神经网络模型,该两个子模型分别为第一子模型与第二子模型,因此,可以将文本特征序列输入到第一子模型中,将用户行为特征序列输入到第二子模型中,从而可以得到该第一基础模型的第一损失,然后基于第一损失对第一基础模型的模型参数进行调整,以实现对第一基础模型的训练。

在又一些示例中,在对第一基础模型进行训练得到第一识别模型后,可以基于第一识别模型中的能够用于分析用户行为特征序列的第二子模型,确定能够用于分析用户行为特征序列的第二基础模型;

例如,可以从第一识别模型中提取第二子模型,然后将该第二子模型作为第二基础模型;

也可以获取第一识别模型中的第二子模型的模型参数,并将第二子模型的模型参数存储至预设的知识库中,该预设的知识库包含有多个模型的模型参数,也即,该预设的知识库是多个模型的模型参数的集合。

然后从该知识库中获取该第二子模型的模型参数并迁移至与第二基础模型,其中,第二基础模型与第二子模型的模型结构相同。

可以理解的是,当训练得到第一识别模型后,也得到了该第一识别模型中的第二子模型对用户行为的知识理解,该知识理解可以用第二子模型的模型参数来表示,因此,这里的知识库可以是该第二子模型的模型参数。

在得到第二基础模型后,由于该第二基础模型能够用于对用户行为特征序列进行分析,而为了得到更高的分析准确度,可以对该第二基础模型进行进一步的训练,此时可以利用包括用户行为特征序列以及第二标签数据的第二样本集合对第二基础模型进行训练,直至满足第二约束条件,可以得到用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户的第二识别模型。

其中,该第二约束条件可以是该第二基础模型的损失收敛,或者训练次数达到第三预设次数阈值,或者相邻两次训练得到的损失的差值小于预设误差阈值的次数大于或等于第三预设次数阈值等,这里不对第二约束条件进行限定。

在本发明实施例中,采用联合训练的方式,利用第一样本集合对第一基础模型中的第一子模型和第二子模型进行联合训练,得到第一子模型的第二损失、第二子模型的第三损失以及第一子模型与第二子模型之间的第四损失,利用包含第二损失、第三损失与第四损失的第一损失,来调整第一基础模型的训练参数,从而可以得到第一识别模型的训练参数。然后基于第一识别模型中的第二子模型得到第二基础模型,并利用第二样本集合对第二基础模型进行训练。因为第二子模型已经与第一子模型进行了联合训练,而该第二基础模型是基于第二子模型得到的,所以第二样本集合中只需少量标注有标签数据的用户行为特征序列便可以完成训练,从而可以减少能够用于训练用户识别模型的正样本的数量对用户识别模型的准确度的影响,并且本申请在只使用少量标注有标签数据的用户行为特征序列的情况下,可以增加第二识别模型的准确度。更进一步的,由于文本特征序列的标签数据标注的工作量远远小于用户行为特征序列的标签数据标注的工作量,因此可以减少人工选取及标注异常用户的用户行为特征的工作量。

在图1所示的一种黑产用户识别模型训练方法的基础上,本发明实施例还提供了一种可能的实现方式,如图2所示,为本发明实施例中一种黑产用户识别模型训练方法第二种实施方式的流程图,该方法可以包括:

S210,将文本特征序列输入到第一子模型中,得到第一子模型中的第二全连接层输出的第一全连接层特征及第一子模型的归一化层输出的第一垃圾内容预测结果;

S220,将用户行为特征序列输入到第二子模型中,得到第二子模型中的第二全连接层输出的第二全连接层特征及第二子模型的归一化层输出的第二垃圾内容预测结果;

S230,基于第一标签数据及第一垃圾内容预测结果计算第二损失,基于第一标签数据及第二垃圾内容预测结果计算第三损失,基于第一全连接层特征及第二全连接层特征计算第四损失;

S240,根据第二损失、第三损失及第四损失,确定第一损失;

S250,根据第一损失调整第一基础模型中的训练参数,直至满足第一约束条件,得到第一识别模型。

S260,基于第一识别模型中的第二子模型,确定第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

在一些示例中,在将文本特征序列输入到第一子模型中后,可以得到该第一子模型输出的第一全连接层特征及第一垃圾内容预测结果;

在将用户行为特征序列输入到第二子模型中后,可以得到第二子模型输出的第二全连接层特征及第二垃圾内容预测结果;

此时,可以基于第一标签数据及第一垃圾内容预测结果计算第二损失,基于第一标签数据及第二垃圾内容预测结果计算第三损失,基于第一全连接层特征及第二全连接层特征计算第四损失;然后根据第二损失、第三损失及第四损失,确定第一损失;进而可以根据第一损失调整第一基础模型中的训练参数,直至满足第一约束条件,得到第一识别模型。

其中,该第二损失用于表示该第一垃圾内容预测结果与第一标签数据之间的偏差,第三损失用于表示该第二垃圾内容预测结果与第一标签数据之间的偏差。

而由于该第一全连接层特征是文本特征序列的特征,可以用于表示文本特征序列,该第二全连接层特征是用户行为特征序列的特征,可以用于表示用户行为特征序列,因此,该第四损失可以用于表示该第一子模型对文本特征序列进行变换后得到的第一全连接层特征,与该第二子模型对用户行为特征序列进行变换后得到的第二全连接层特征之间的距离。

这样,可以使得在第一损失最小时,该第一全连接层特征与第二全连接层特征之间的距离也最小,也即第一子模型对文本特征序列的变换与第二子模型对用户行为特征序列的变换最接近。因此,采用文本特征对第一子模型进行训练的训练结果可以用于第二子模型中。

在又一些示例中,该第一约束条件可以包括如下至少一种:第一损失收敛,或者相邻两次训练得到的第一损失的差值小于预设误差阈值的次数大于或等于第二预设次数阈值等,这里不对第一约束条件进行限定,只要该第一约束条件与第一损失相关联都是可以的。通过将第一约束条件与第一损失相关联,可以使得最终训练得到的第一识别模型的识别准确度与第一损失的大小相关,若第一损失越大,则训练得到的第一识别模型的识别准确度越低,反之,若第一损失越小,则训练得到的第一识别模型的识别准确度越高。

在又一些示例中,在利用第一样本集合对第一基础模型进行训练,直至满足第一约束条件,得到第一识别模型时,可以获取第一样本集合中的文本特征序列、文本特征序列对应的用户行为特征序列以及对应的第一标签数据;

然后将文本特征序列输入到第一子模型中,得到第一全连接层特征及第一垃圾内容预测结果;将用户行为特征序列输入到第二子模型中,得到第二全连接层特征及第二垃圾内容预测结果;

进而可以基于第一标签数据及第一垃圾内容预测结果计算第二损失,基于第一标签数据及第二垃圾内容预测结果计算第三损失,基于第一全连接层特征及第二全连接层特征计算第四损失;并根据第二损失、第三损失及第四损失,确定第一损失;

最后,可以根据第一损失调整第一基础模型中的训练参数,并返回执行步骤:获取第一样本集合中的文本特征序列、文本特征序列对应的用户行为特征序列以及对应的第一标签数据,直至满足第一约束条件,得到第一识别模型。

在一些示例中,该第一子模型和第二子模型可以采用相同的网络结构,也可以采用不同的网络结构,例如,当第一子模型和第二子模型相同时,则可以均为BERT(Bidirectional Encoder Representations from Transformers,基于Transformer模型的双向编码器表示)模型,或者均为albert(A Lite BERT,轻量级的基于Transformer模型的双向编码器表示)模型,当第一子模型和第二子模型不同时,则第一子模型可以为BERT模型,第二子模型可以为albert模型,或者第一子模型为albert模型,第二子模型为BERT模型。

在又一些示例中,当该第一子模型和第二子模型为采用相同的网络结构时;该网络结构可以是如图3所示的网络结构,该网络结构包括:多个嵌入层301、多个双向长短期记忆层302、反向前馈神经网络层303、正向前馈神经网络层304、第一全连接层305、隐藏表示层306、第二全连接层307、逻辑回归层308、归一化层309;其中,

如图3所示,每个嵌入层301连接一个双向长短期记忆层302;多个双向长短期记忆层302分别与反向前馈神经网络层303和正向前馈神经网络层304连接;反向前馈神经网络层303和正向前馈神经网络层304,均与第一全连接层305连接;第一全连接层305、隐藏表示层306、第二全连接层307、逻辑回归层308、以及归一化层309依次连接。

在将文本特征序列输入到第一子模型后,该第一子模型的多个嵌入层301可以获取到该文本特征序列并进行处理,从而可以输出连续的词向量;然后可以将连续词向量输入至该第一子模型的多个双向长短期记忆层302,得到该第一子模型的多个双向长短期记忆层302输出的第一词向量;再将第一词向量分别输入至该第一子模型的反向前馈神经网络层303和正向前馈神经网络层304,得到该第一子模型的反向前馈神经网络层303输出的第二词向量和该第一子模型的正向前馈神经网络层304输出的第三词向量;进而可以将第二词向量和第三词向量输入至该第一子模型的第一全连接层305,得到该第一子模型的第一全连接层305输出的第三全连接层特征;

在得到该第三全连接层特征后,可以将第三全连接层特征输入至该第一子模型的隐藏表示层306,得到该第一子模型的隐藏表示层306输出的第一隐藏特征;再将第一隐藏特征输入至该第一子模型的第二全连接层307,得到该第一子模型的第二全连接层307输出的第一全连接层特征;然后可以将第一全连接层特征输入至该第一子模型的逻辑回归层308,得到该第一子模型的逻辑回归层308输出的第一待归一化预测结果;最后将第一待归一化预测结果输入至该第一子模型的归一化层309,得到该第一子模型的归一化层309输出的第一垃圾内容预测结果。该第一垃圾内容预测结果为基于文本特征序列得到的并且用于表示文本是否为垃圾内容。

在将用户行为特征序列输入到第二子模型后,该第二子模型的多个嵌入层301可以获取到用户行为特征序列并进行处理,从而可以输出连续的行为特征向量。然后可以将连续的行为特征向量输入至该第二子模型的多个双向长短期记忆层302,得到该第二子模型的多个双向长短期记忆层302输出的第一行为特征向量;再将该第一行为特征向量分别输入至该第二子模型的反向前馈神经网络层303和正向前馈神经网络层304,得到该第二子模型的反向前馈神经网络层303输出的第二行为特征向量和该第二子模型的正向前馈神经网络层304输出的第三行为特征向量;进而可以将第二行为特征向量和第三行为特征向量输入至该第二子模型的第一全连接层305,得到该第二子模型的第一全连接层305输出的第四全连接层特征;

在得到第四全连接层特征后,可以将第四全连接层特征输入至该第二子模型的隐藏表示层306,得到该第二子模型的隐藏表示层306输出的第二隐藏特征;再将第二隐藏特征输入至该第二子模型的第二全连接层307,得到该第二子模型的第二全连接层307输出的第二全连接层特征;然后可以将第二全连接层特征输入至该第二子模型的逻辑回归层308,得到该第二子模型的逻辑回归层308输出的第二待归一化预测结果;最后将第二待归一化预测结果输入至该第二子模型的归一化层309,得到该第二子模型的归一化层309输出的第二垃圾内容预测结果。该第二垃圾内容预测结果为基于用户行为特征序列得到的并且用于表示文本是否为垃圾内容。

在一些示例中,上述的双向长短期记忆层302是一种循环神经网络,由于该双向长短期记忆层302包含了很多门控结构,这些门控结构和该循环神经网络的总线一并构成了双向长短期记忆层的特殊结构,这样就能够解决连续的基于词向量和连续的行为特征向量进行训练的过程中的梯度消失和梯度爆炸的问题。

通过采用本发明实施例的网络结构,可以通过嵌入层301将离散的词向量转换为连续的词向量,也可以通过嵌入层301将离散的行为特征也转换为连续的行为特征向量。并且,双向长短期记忆层302可以解决训练过程中的梯度消失和梯度爆炸的问题。进一步的,通过采用相同的网络结构,可以方便对第一子模型的模型参数和第二子模型的模型参数进行调整,进而减少训练过程中的时间开销,提高训练效率。

在一些示例中,在得到第一垃圾内容预测结果、第二垃圾内容预测结果、第一全连接层特征及第二全连接层特征后,可以基于第一标签数据及第一垃圾内容预测结果计算第二损失,基于第一标签数据及第二垃圾内容预测结果计算第三损失,基于第一全连接层特征及第二全连接层特征计算第四损失;其中,该第二损失用于表示第一垃圾内容预测结果与第一标签数据之间的偏差,第三损失用于表示第二垃圾内容预测结果与第一标签数据之间的偏差。

在一些示例中,第四损失满足如下公式:

其中,MMD(X,Y)为第一全连接层特征X=[x

可以理解的是,迁移学习的目的是将源域中学到的知识可以应用到不同但相关的目标域。而为了能够实现迁移学习的目的,则需要使得源域数据与目标域数据之间的距离最小。而该最大均值差异能够度量两个不同但相关的域数据之间的距离。因此,这里可以使用该最大均值差异来衡量文本特征序列与用户行为特征序列之间的距离。

在一些示例中,通过计算第一全连接层特征及第二全连接层特征之间的最大均值差异,并将该最大均值差异加入网络的损失中,来对第一基础模型进行训练,可以使得后续能够对第一识别模型中的第二子模型进行迁移,也即将第二子模型的模型参数作为知识库迁移至第二基础模型中。

在得到第二损失、第三损失及第四损失之后,可以基于第二损失、第三损失及第四损失,来计算第一基础模型的第一损失,然后根据第一损失调整第一基础模型中的训练参数,直至满足第一约束条件,得到第一识别模型。进而可以基于第一识别模型来确定第二基础模型,利用第二样本集合对第二基础模型进行训练,得到第二识别模型。

可以理解的是,本发明实施例中的步骤S260与上述第一种实施方式的中的步骤S120相同或相似,这里不再赘述。

在图2所示的一种黑产用户识别模型训练方法的基础上,本发明实施例还提高了一种可能的实现方式,如图4所示,为本发明实施例中一种黑产用户识别模型训练方法第三种实施方式的流程图,该方法可以包括:

S410,将文本特征序列输入到第一子模型中,得到第一子模型中的第二全连接层输出的第一全连接层特征及第一子模型的归一化层输出的第一垃圾内容预测结果;

S420,将用户行为特征序列输入到第二子模型中,得到第二子模型中的第二全连接层输出的第二全连接层特征及第二子模型的归一化层输出的第二垃圾内容预测结果;

S430,基于第一标签数据及第一垃圾内容预测结果计算第二损失,基于第一标签数据及第二垃圾内容预测结果计算第三损失,基于第一全连接层特征及第二全连接层特征计算第四损失;

S440,对第二损失、第三损失以及第四损失进行加权处理,得到第一损失。

S450,根据第一损失调整第一基础模型中的训练参数,直至满足第一约束条件,得到第一识别模型。

S460,基于第一识别模型中的第二子模型,确定第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

在一些示例中,可以对第二损失、第三损失以及第四损失进行加权处理,从而可以得到第一损失,其中,该加权处理可以是加权求和,也可以加权平均。

在又一些示例中,在进行加权求和计算第一损失时,可以先对第二损失乘以第一加权系数,对第三损失乘以第二加权系数,对第四损失乘以第三加权系数,然后对加权后的第二损失、加权后的第三损失以及加权后的第四损失进行求和,来计算第一损失。例如,该第一损失可以采用以下公式计算:

Total Loss=a*loss1+b*loss2+c*domain_loss。

其中,Total Loss为第一损失,loss1为第二损失,loss2为第三损失,domain_loss为第四损失,a为第一加权系数,b为第二加权系数,c为第三加权系数,该a、b,c均为人工超参数。

在一些示例中,该第一加权系数、第二加权系数以及第三加权系数可以是预先设置的不变的参数,也可以是在每次调整模型参数时都进行调整的参数。

可以理解的是,本发明实施例中的步骤S410~S430、S450~S460与上述第二种实施方式中的步骤S210~S230、S250~S260相同或相似,这里不再赘述。

在一些示例中,在得到第二识别模型后,便可以使用该第二识别模型对用户进行识别。如图5所示,为本发明实施例的一种黑产用户识别方法的流程示图,该方法可以包括:

S510,获取待识别用户的用户行为特征序列;

S520,将待识别用户的用户行为特征序列输入到训练完成的第二识别模型中,确定待识别用户是否为黑产用户,其中,训练完成的第二识别模型是通过上述任一实施例所示的黑产用户识别模型训练方法训练得到的。

具体的,可以将待识别用户的用户行为特征序列输入到上述的第二识别模型中,该第二识别模型可以基于该待识别用户的用户行为特征序列,输出该待识别用户为黑产用户的概率,进而基于该待识别用户为黑产用户的概率可以判定该待识别用户是否为黑产用户。

例如,当该待识别用户为黑产用户的概率大于50%时,可以判定该待识别用户为黑产用户,否则判定该待识别用户不是黑产用户。

在又一些示例中,该第二识别模型也可以基于该待识别用户的用户行为特征序列,直接输出该待识别用户是否为黑产用户,例如,可以直接输出“是”表示该待识别用户为黑产用户,或者直接输出“否”表示该待识别用户不是黑产用户。

在又一些示例中,还可以周期性的更新第二样本集合,并采用更新后的第二样本集合,对该第二识别模型进行强化训练。这样,可以使得该第二识别模型能够不断更新,进而可以使得该第二识别模型可以更及时的识别出黑产用户。

为了更清楚的说明本发明实施例,这里结合图6所示的整体框架图和图7所示的流程示意图进行说明。

首先,可以离线收集海量文本内容,该文本内容可以是用户在评论页面发布的评论信息,也可以是用户使用弹幕功能发布的弹幕信息,该评论信息或者弹幕信息可以包括正常评论信息或者异常评论信息,该异常评论信息可以是非法交易信息或者诈骗信息等。然后对该海量文本内容标注第一标签,然后该海量文本内容进行提取,得到文本特征集合和用户行为特征集合,也即,内容特征集合和用户行为特征集合。

在又一些示例中,该文本内容也可以是用户在其他场景下发布的信息,例如,在论坛、贴吧、微博中发布的帖子内容,则该文本内容可以包括正常帖子内容或者异常帖子内容。

然后构建孪生网络,如图6所示,该孪生网络是图6所示的采用相同网络结构的第一子模型610和第二子模型620。如图6所示,该网络结构包括:多个嵌入层301、多个双向长短期记忆层302、反向前馈神经网络层303、正向前馈神经网络层304、第一全连接层305、隐藏表示层306、第二全连接层307、逻辑回归层308、归一化层309;其中,

如图3所示,每个嵌入层301连接一个双向长短期记忆层302;多个双向长短期记忆层302分别与反向前馈神经网络层303和正向前馈神经网络层304连接;反向前馈神经网络层303和正向前馈神经网络层304,均与第一全连接层305连接;第一全连接层305、隐藏表示层306、第二全连接层307、逻辑回归层308、以及归一化层309依次连接。

由于该嵌入层301可以将离散的特征变换为连续的向量,因此,在得到文本特征集合和用户行为特征集合后,可以将文本特征集合转换为文本特征序列,将用户行为特征集合转换为用户行为特征序列。

此时,可以将文本特征序列和用户行为特征序列输入至该孪生网络中,对该孪生网络进行离线训练。这里,可以将对孪生网络进行训练计为任务1,因此,这里对孪生网络进行训练也可以称为对孪生网络在任务1上训练。

在训练完成后,可以得到训练完成的第一识别模型,然后可以将第一识别模型中的第二子模型的模型参数作为知识库,迁移至第二基础模型630中。

然后再采用第二样本集合对该迁移得到的第二基础模型630进行离线微调。这里,将对第二基础模型630进行微调计为任务2,因此,这里对第二基础模型630进行微调可以称为在任务2上继续微调,从而可以得到可以部署到线上的目第二识别模型。并将该第二识别模型部署到线上,成为线上风控模型。

这样,可以在获取到用户行为实时流时,先按照该用户行为实时流中用户行为的时间顺序,采用预设大小的滑动窗口,依次提取该用户行为实时流的行为特征,然后将该用户行为实时流的行为特征输入到部署在线上的第二识别模型中,由该线上部署的第二识别模型对该用户行为实时流的行为特征进行线上识别,并实时输出用户识别结果,也即实时输出风控结果。该用户识别结果包括:该用户是黑产用户或该用户不是黑产用户。

通过本发明实施例,可以使得对第二识别模型的训练不依赖对大量的用户行为数据的标注,降低了对用户行为数据进行标注的人工成本。并且,本发明实施例的黑产用户识别模型训练方法,不需要制定各种层次的规则,不会有规则失效、规则之间矛盾的问题。进一步的,采用本发明实施例的黑产用户识别模型训练方法训练得到的第二识别模型可以对用户的实时行为进行检测,检测实时性强,只要用户在短期行为序列出现异常,即可检测到。

相应于上述的方法实施例,本发明实施例还提供了一种模型训练装置,如图8所示,为本发明实施例中一种模型训练装置的结构示意图,该装置可以包括:

第一训练模块810,用于利用第一样本集合对第一基础模型进行训练,直至满足第一约束条件,得到第一识别模型;第一识别模型用于基于文本特征序列、用户行为特征序列,预测文本特征序列对应的文本是否为垃圾内容;第一基础模型包括:第一子模型与第二子模型,第一子模型用于对文本特征序列进行分析得到第一垃圾内容预测结果,第二子模型用于对用户行为特征序列进行分析得到第二垃圾内容预测结果;其中,第一约束条件与第一损失相关联,第一损失包括:第二损失、第三损失与第四损失,第二损失为第一子模型的损失,第三损失为第二子模型的损失,第四损失为第一子模型与第二子模型之间的特征损失;

第二训练模块820,用于将第一识别模型中的第二子模型作为第二基础模型,并利用第二样本集合对第二基础模型进行训练,得到第二识别模型;第二识别模型用于基于用户行为特征序列来识别用户行为特征序列对应的用户是否为黑产用户。

在一些示例中,第一样本集合包括:文本特征序列、用户行为特征序列以及第一标签数据,第一标签数据用于指示文本特征序列是否为垃圾内容;

第一训练模块810,具体用于:

将文本特征序列输入到第一子模型中,得到第一全连接层特征及第一垃圾内容预测结果;

将用户行为特征序列输入到第二子模型中,得到第二全连接层特征及第二垃圾内容预测结果;

基于第一标签数据及第一垃圾内容预测结果计算第二损失,基于第一标签数据及第二垃圾内容预测结果计算第三损失,基于第一全连接层特征及第二全连接层特征计算第四损失;

根据第二损失、第三损失及第四损失,确定第一损失;

根据第一损失调整第一基础模型中的训练参数,直至满足第一约束条件,得到第一识别模型。

在一些示例中,第一子模型和第二子模型均包括:

多个嵌入层、多个双向长短期记忆层、反向前馈神经网络层、正向前馈神经网络层、第一全连接层、隐藏表示层、第二全连接层、逻辑回归层以及归一化层;

其中,第一子模型中的第二全连接层输出第一全连接层特征;第二子模型中的第二全连接层输出第二全连接层特征。

在一些示例中,第一训练模块810,具体用于:

计算第一全连接层特征及第二全连接层特征之间的最大均值差异;并将最大均值差异确定为第四损失。

在一些示例中,第一训练模块810,还用于:

对第二损失、第三损失以及第四损失进行加权处理,得到第一损失。

在一些示例中,第二训练模块820,具体用于:

获取第一识别模型中的第二子模型的模型参数,并将第二子模型的模型参数存储至预设的知识库中,预设的知识库包含有多个模型的模型参数;

从知识库中获取第二子模型的模型参数并迁移至第二基础模型,其中,第二基础模型与第二子模型的模型结构相同。

在一些示例中,本发明实施例还提供了一种黑产用户识别装置,如图9所示,为本发明实施例中一种黑产用户识别装置的结构示意图,该装置可以包括:

获取模块910,用于获取待识别用户的用户行为特征序列;

识别模块920,用于将待识别用户的用户行为特征序列输入到训练完成的第二识别模型中,确定待识别用户是否为黑产用户,其中,训练完成的第二识别模型是通过图8所示的模型训练装置训练得到的。

本发明实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,

存储器1003,用于存放计算机程序;

处理器1001,用于执行存储器1003上所存放的程序时,实现上述任一实施例所示的步骤。

上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述终端与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例所示的步骤。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一实施例所示的步骤。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、存储介质等实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

技术分类

06120113806755