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

风险识别模型的训练方法及系统

文献发布时间:2024-04-18 20:02:18


风险识别模型的训练方法及系统

技术领域

本说明书涉及应用风险识别技术领域,更具体地涉及一种应用的风险识别模型的训练方法及系统。

背景技术

随着智能设备的发展,应用已成为人们生活中不可或缺的一部分。一些具有风险的应用在运行过程中会盗取用户数据,造成隐私泄露等风险,因此准确识别应用风险对保证设备的隐私安全是至关重要的。

现有技术中,通常基于应用本身内容判断其是否存在风险,即通过打开应用,并对应用运行过程中出现的页面进行截图,然后判断截图中是否存在风险关键词,从而确定应用是否存在风险。但是,一些应用的页面截图中的关键内容可能会被遮挡,使得该页面截图无效,导致无法判断应用风险。而一些应用的icon(图标)和应用名称本身就包含了较多的底线风险信息,因此可利用应用图标和应用名称作为输入特征,采用机器学习的方法训练模型,从而通过应用的图标和应用的名称识别应用风险。

但是,在训练模型时,应用的图标和应用的名称是从应用包中提取出来的,而其对应的标签(即实际风险结果)则是通过打开应用进行页面截图的方法得到的,一些应用通过其页面内容判断为有风险,但是从应用的图标和应用的名称上无法判断其风险,这些数据在训练过程中会成为噪声,使得训练出的模型不够准确。

发明内容

本说明书的目的之一在于提供一种风险识别模型的训练方法,利用包括应用的图标和应用的名称的训练样本对风险识别模型进行训练,从而基于应用的图标和名称得到应用的风险结果,在训练过程中消除了噪声样本的影响,使得训练好的风险识别模型准确性更高。

基于上述目的,本说明书提供一种风险识别模型的训练方法,包括:

获取各训练样本,其中,针对每个训练样本,该训练样本包括应用的图标和应用的名称,该训练样本的标签为所述应用的实际风险结果;

获取第一风险识别模型和第二风险识别模型;

将所述各训练样本中的各第一样本输入第一风险识别模型,得到所述第一风险识别模型输出的各第一样本的预测风险结果,根据各第一样本的预测风险结果和各第一样本的标签,在各第一样本中选择第一有用样本;并,将所述各训练样本中的各第二样本输入第二风险识别模型,得到所述第二风险识别模型输出的各第二样本的预测风险结果,根据各第二样本的预测风险结果和各第二样本的标签,在各第二样本中选择第二有用样本;

采用所述第一有用样本对所述第二风险识别模型进行训练,采用所述第二有用样本对所述第一风险识别模型进行训练。

进一步地,在一些实施方式中,获取各训练样本,具体包括:

获取第一批应用的应用包;

针对所述第一批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用运行时的页面内容获得该应用的实际风险结果。

进一步地,在一些实施方式中,获取第一风险识别模型和第二风险识别模型,具体包括:

获取各无噪声训练样本,其中,针对每个无噪声训练样本,该无噪声训练样本包括应用的图标和应用的名称,该无噪声训练样本的标签为所述应用的无噪声风险结果;

利用所述各无噪声训练样本对预设的第一风险识别网络进行训练,得到第一风险识别模型;

利用所述各无噪声训练样本对预设的第二风险识别网络进行训练,得到第二风险识别模型。

进一步地,在一些实施方式中,获取各无噪声训练样本,具体包括:

获取第二批应用的应用包;

针对所述第二批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用的图标和该应用的名称获得该应用的无噪声风险结果。

进一步地,在一些实施方式中,根据各第一样本的预测风险结果和各第一样本的标签,在各第一样本中选择第一有用样本,具体包括:

针对每个第一样本,获得该第一样本的预测风险结果和该第一样本的标签之间的第一损失值;确定所述第一损失值是否小于第一阈值,若是,则将该第一样本选为第一有用样本;

根据各第二样本的预测风险结果和各第二样本的标签,在各第二样本中选择第二有用样本,具体包括:

针对每个第二样本,获得该第二样本的预测风险结果和该第二样本的标签之间的第二损失值;确定所述第二损失值是否小于第二阈值,若是,则将该第二样本选为第二有用样本。

本说明书的另一目的在于提供一种风险识别方法,以便基于待识别应用的图标和名称即可获得待识别应用的风险结果。

基于上述目的,本说明书提供一种风险识别方法,包括:

获取待识别应用的应用包;

从所述待识别应用的应用包中提取出待识别应用的图标和待识别应用的名称;

将所述待识别应用的图标和所述待识别应用的名称输入采用如上所述的训练方法训练好的第一风险识别模型或第二风险识别模型中,得到待识别应用的风险结果。

本说明书的又一目的在于提供一种风险识别模型的训练系统,利用包括应用的图标和应用的名称的训练样本对风险识别模型进行训练,从而基于应用的图标和名称得到应用的风险结果,在训练过程中消除了噪声样本的影响,使得训练好的风险识别模型准确性更高。

基于上述目的,本说明书提供一种风险识别模型的训练系统,包括:

第一获取模块,用于获取各训练样本,其中,针对每个训练样本,该训练样本包括应用的图标和应用的名称,该训练样本的标签为所述应用的实际风险结果;

第二获取模块,用于获取第一风险识别模型和第二风险识别模型;

选择模块,用于将所述各训练样本中的各第一样本输入第一风险识别模型,得到所述第一风险识别模型输出的各第一样本的预测风险结果,根据各第一样本的预测风险结果和各第一样本的标签,在各第一样本中选择第一有用样本;并,将所述各训练样本中的各第二样本输入第二风险识别模型,得到所述第二风险识别模型输出的各第二样本的预测风险结果,根据各第二样本的预测风险结果和各第二样本的标签,在各第二样本中选择第二有用样本;

训练模块,用于采用所述第一有用样本对所述第二风险识别模型进行训练,采用所述第二有用样本对所述第一风险识别模型进行训练。

进一步地,在一些实施方式中,所述第一获取模块包括:

第一获取单元,用于获取第一批应用的应用包;

第一提取单元,用于针对所述第一批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用运行时的页面内容获得该应用的实际风险结果。

进一步地,在一些实施方式中,所述第二获取模块包括:

第二获取单元,用于获取各无噪声训练样本,其中,针对每个无噪声训练样本,该无噪声训练样本包括应用的图标和应用的名称,该无噪声训练样本的标签为所述应用的无噪声风险结果;

第一训练单元,用于利用所述各无噪声训练样本对预设的第一风险识别网络进行训练,得到第一风险识别模型;

第二训练单元,用于利用所述各无噪声训练样本对预设的第二风险识别网络进行训练,得到第二风险识别模型。

进一步地,在一些实施方式中,所述第二获取单元包括:

获取子单元,用于获取第二批应用的应用包;

提取子单元,用于针对所述第二批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用的图标和该应用的名称获得该应用的无噪声风险结果。

进一步地,在一些实施方式中,所述选择模块包括:

第一选择单元,用于针对每个第一样本,获得该第一样本的预测风险结果和该第一样本的标签之间的第一损失值;确定所述第一损失值是否小于第一阈值,若是,则将该第一样本选为第一有用样本;

第二选择单元,用于针对每个第二样本,获得该第二样本的预测风险结果和该第二样本的标签之间的第二损失值;确定所述第二损失值是否小于第二阈值,若是,则将该第二样本选为第二有用样本。

本说明书的又一目的在于提供一种风险识别装置,以便基于待识别应用的图标和名称即可获得待识别应用的风险结果。

基于上述目的,本说明书提供一种风险识别装置,包括:

第三获取模块,用于获取待识别应用的应用包;

提取模块,用于从所述待识别应用的应用包中提取出待识别应用的图标和待识别应用的名称;

识别模块,用于将所述待识别应用的图标和所述待识别应用的名称输入采用如上所述的训练方法训练好的第一风险识别模型或第二风险识别模型中,得到待识别应用的风险结果。

本说明书的又一目的在于提供一种可读存储介质,其上存储有计算机程序,当计算机程序在计算机中执行时,令计算机实现如上所述的风险识别模型的训练方法或者风险识别方法。

本说明书的又一目的在于提供一种电子设备,其包括存储器和处理器,存储器中存储有可执行代码,当处理器执行可执行代码时,其实现如上所述的风险识别模型的训练方法或者风险识别方法。

附图说明

图1为根据本说明书一实施例的风险识别模型的训练方法的流程图;

图2为根据本说明书另一实施例的风险识别方法的流程图;

图3为根据本说明书又一实施例的风险识别模型的训练系统的结构框图;

图4为根据本说明书又一实施例的风险识别装置的结构框图。

具体实施方式

下面结合附图,给出本说明书的较佳实施例,并予以详细描述。

应用(Application,APP)在设备上运行时,会调用用户数据或隐私权限,以实现某些功能。若应用本身具有风险,那用户数据可能被其盗取,造成隐私泄露等风险。因此,在运行应用前,通常期望能够对应用进行风险识别,提前发现其风险,从而保证设备的隐私安全。

现有技术中,第一种方法是通过代码解析的方法来判断应用中是否存在恶意代码,从而判断其是否具有风险。例如,通过获取应用的源代码,然后查看是否具有恶意跳转代码、非法获取数据权限等代码,若有则认为该应用具有风险。但是第一种方法只能识别出代码层面有风险的应用,而无法识别代码无风险,但是其内容本身有风险的应用。第二种方法是基于应用运行过程中出现的页面内容来判断其是否有风险,例如在用于检测的设备上运行应用,然后对应用运行过程中的页面依次进行截图,再对截图进行风险关键词搜索确定是否具有风险内容,从而判断应用是否具有风险。但是这种方法一方面比较费时间,另一方面一些应用的页面截图中的关键内容可能会被无关内容(例如用户条款)遮挡,导致截图无效,使得无法识别其风险。

在实际调研中发现,有些应用的icon(图标)和应用的名称本身就包含了较多的底线风险信息,若能通过应用的icon和应用的名称直接判断应用的风险信息,不但可以节省第二种方法中打开应用获得截图的时间,也可以对第二种方法中无法识别风险的应用进行风险识别。在利用应用的icon和应用的名称进行风险识别时,首先可利用机器学习的方法训练出一个模型,然后通过将待识别的应用的icon和名称输入至该模型中,即可以得到基于应用的icon和名称的风险识别结果。

但是,在训练模型时,训练样本的应用的icon和应用的名称是从应用的应用包中提取出来的,而其对应的标签(即实际风险结果)则是通过基于应用本身内容(即上述第二种方法)得到的,一些应用通过其本身内容可能判断为有风险,但是从其icon和名称中却无法判断其风险,这些训练样本在训练过程中会成为噪声,使得训练出的模型不够准确。

基于此,本说明书实施例提供一种风险识别模型的训练方法,利用包括应用的icon和应用的名称的训练样本对风险识别模型进行训练,从而基于应用的icon和名称得到应用的风险结果,在训练过程中消除了噪声样本的影响,使得训练好的风险识别模型准确性更高。

本说明书实施例的风险识别模型的训练方法的执行主体可以是终端设备或服务器,终端设备可以为智能手机、平板电脑等,服务器可以是独立的一个服务器,也可以是由多个服务器组成的服务器群。

如图1所示,本说明书实施例提供一种风险识别模型的训练方法,其包括步骤:

S110:获取各训练样本,其中,针对每个训练样本,该训练样本包括应用的图标和应用的名称,该训练样本的标签为所述应用的实际风险结果。

为了训练风险识别模型,需要先获得多个训练样本。由于训练风险识别模型的目的是为了通过应用的icon和应用的名称来识别应用的风险结果,因此每个训练样本包括应用的icon和应用的名称,训练样本的标签则为应用的实际风险结果。也就是说,风险识别模型的输入为应用的icon和应用的名称,输出则为应用的实际风险结果。

为了获得各训练样本,需要先收集一批应用的应用包数据,然后从这些应用包数据中提取出各应用的icon和应用的名称,以及各应用的实际风险结果。在一些实施例中,获取各训练样本,具体包括:

获取第一批应用的应用包;

针对第一批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用运行时的页面内容获得该应用的实际风险结果。

每个应用的icon和名称形成一个训练样本,该应用的实际风险结果即为该训练样本的标签。

由于应用具有很多不同的类型,为了能使风险识别模型的准确度更高,第一批应用的数量可以尽量多,且包含的应用的类型也可以尽量多。例如,第一批应用中可以包括投资类、借贷类、刷单类等各种类型的应用。

在一些实施例中,应用的实际风险结果可以为有风险或无风险。在另外一些实施例中,应用的实际风险结果可以为无风险或具有某种特定类型的风险,例如,应用A为第一类型(例如借贷类)的应用,其实际风险结果可以为应用A具有第一类型风险(例如借贷风险),应用B为第二类型(例如刷单类)的应用,其实际风险结果为第二类型风险(例如刷单风险),应用C为第三类型(例如投资类)的应用,其实际风险结果为第三类型风险,应用D为无风险应用,其实际风险结果为无风险。

S120:获取第一风险识别模型和第二风险识别模型。

第一风险识别模型和第二风险识别模型为两个预选训练好的模型,其输入均为应用的icon和应用的名称,输出均为应用的预测风险结果。也就是说,将某个应用的icon和应用的名称输入第一风险识别模型或第二风险识别模型中,第一风险识别模型或第二风险识别模型即可以输出应用的预测风险结果。

在一些实施例中,第一风险识别模型和第二风险识别模型均是利用无噪声训练样本训练得到的,无噪声训练样本的标签是通过应用的icon和名称进行标注的风险结果,由于风险结果是根据应用的icon和名称直接标注的,因此该风险结果是无噪声风险结果,标签也是无噪声的。获取第一风险识别模型和第二风险识别模型,具体包括:

获取各无噪声训练样本,其中,每个无噪声训练样本包括应用的icon和应用的名称,每个无噪声训练样本的标签为应用的无噪声风险结果;

利用各无噪声训练样本对预设的第一风险识别网络进行训练,得到第一风险识别模型;

利用各无噪声训练样本对预设的第二风险识别网络进行训练,得到第二风险识别模型。

在一些实施例中,第一风险识别网络和第二风险识别网络可以为任意神经网络,例如人工神经网络、深度信念神经网络、深度学习神经网络、卷积神经网络、循环神经网络或其他任何期望形式的神经网络。

为了获得各无噪声训练样本,需要先获取一批应用的应用包数据,然后从中提取出各应用的icon和名称,并对各应用的icon和名称进行标注,得到其无噪声风险结果。在一个示例性的实施例中,获取各无噪声训练样本,具体包括:

获取第二批应用的应用包;

针对第二批应用中的每一个应用,从该应用的应用包中提取该应用的icon和该应用的名称;并根据该应用的icon和该应用的名称获得该应用的无噪声风险结果。每个应用的icon和名称形成一个训练样本,该训练样本的标签则为该应用的无噪声风险结果,这样,即可以得到多个无噪声训练样本。

在对应用进行标注时,是利用应用的icon和名称本身所包含的风险信息来进行判断。例如,在一个应用的icon和名称中,可能会包含“抢单”、“兼职”等风险特征,那么可以将该应用标注为“有风险”或“有刷单风险”;在另一个应用的icon和名称中,可能会包含“速贷”、“借款”等风险特征,那么可以将该应用标注为“有风险”或“有借贷风险”;若一个应用的icon和名称中没有包含风险特征,那么可以将该应用标注为“无风险”。这样获得的标签是基于应用的icon和名称直接获得的,因此是无噪声的。

在理想情况下,无噪声训练样本的数量越多越好,这样,训练出来的第一风险识别模型和第二风险识别模型的准确度也会越高,但是,由于无噪声训练样本的标签是对每个应用的icon和名称进行标注得到的,无噪声训练样本的数量越多,所花费的时间和成本也就越多。因此,第二批应用的数量会远小于第一批应用的数量,也就是说,无噪声训练样本的数量会远小于有噪声训练样本的数量。第二批应用可以包括尽量多的应用类型,从而使第一风险识别模型和第二风险识别模型的识别范围更广。

S130:将各训练样本中的各第一样本输入第一风险识别模型,得到第一风险识别模型输出的各第一样本的预测风险结果,根据各第一样本的预测风险结果和各第一样本的标签,在各第一样本中选择第一有用样本;并,将各训练样本中的各第二样本输入第二风险识别模型,得到第二风险识别模型输出的各第二样本的预测风险结果,根据各第二样本的预测风险结果和各第二样本的标签,在各第二样本中选择第二有用样本。

由于步骤S110中的各训练样本是包含噪声样本的,若直接将所有训练样本对风险识别模型进行训练,那么得到的风险识别模型受噪声影响较大,准确度会降低,若能从各训练样本中选择出无噪声样本,利用无噪声样本对风险识别模型进行训练,就可以消除噪声样本的影响,得到更为准确的风险识别模型。

由于第一风险识别模型和第二风险识别模型均是利用无噪声训练样本训练得到的,因此可以认为第一风险识别模型和第二风险识别模型具有较高的准确度,可以用来从各训练样本中选择无噪声样本。具体地,可将各训练样本中的各第一样本输入第一风险识别模型中,得到第一风险识别模型输出的各第一样本的预测风险结果,然后根据各第一样本的预测风险结果与各第一样本的标签在各第一样本中选择第一有用样本(即第一风险识别模型选择的无噪声样本),例如,可根据各第一样本的预测风险结果和各第一样本的标签之间的差距判断各第一样本是否为第一有用样本,若某个第一样本的标签与其预测风险结果之间的差距较小,则认为该第一样本是无噪声的,可将其选为第一有用样本。同时,可将各训练样本中的各第二样本输入第二风险识别模型中,得到第二风险识别模型输出的各第二样本的预测风险结果,然后根据各第二样本的预测风险结果与各第二样本的标签在各第二样本中选择第二有用样本(即第二风险识别模型选择的无噪声样本),例如,可根据各第二样本的预测风险结果和各第二样本的标签之间的差距判断各第二样本是否为第二有用样本,若某个第二样本的标签与其预测风险结果之间的差距较小,则认为该第二样本是无噪声的,可将其选为第二有用样本。

在一些实施例中,各第一样本和各第二样本可以完全相同、部分相同或完全不同。例如,各第一样本和各第二样本均为各训练样本中的所有训练样本,在选择第一有用样本和第二有用样本时,将各训练样本中的每一个训练样本分别输入第一风险识别模型和第二风险识别模型中,然后判断该训练样本是否为第一有用样本和第二有用样本,可以理解的是,一个训练样本可以同时是第一有用样本和第二有用样本,也可以是第一有用样本而不是第二有用样本,也可以是第二有用样本而不是第一有用样本,还可以既不是第一有用样本又不是第二有用样本,也就是说各第一有用样本和各第二有用样本也可以完全相同、部分相同或完全不同。

各第一样本和各第二样本也可以是各训练样本中的两个不相交的子集,此时各第一样本和各第二样本完全不同,各第一有用样本和各第二有用样本也完全不同。

各第一样本和各第二样本也可以是各训练样本中的两个部分相交的子集,此时各第一样本和各第二样本部分相同,各第一有用样本和各第二有用样本可能部分相同,也可能完全不同。

在一些实施例中,可以利用预测风险结果与标签之间的损失值来判断某个样本是否为有用样本。具体地,根据各第一样本的预测风险结果和各第一样本的标签,在各第一样本中选择第一有用样本,包括:

针对每个第一样本,获得该第一样本的预测风险结果和该第一样本的标签之间的第一损失值;确定所述第一损失值是否小于第一阈值,若是,则将该第一样本选为第一有用样本;

根据各第二样本的预测风险结果和各第二样本的标签,在各第二样本中选择第二有用样本,包括:

针对每个第二样本,获得该第二样本的预测风险结果和该第二样本的标签之间的第二损失值;确定所述第二损失值是否小于第二阈值,若是,则将该第二样本选为第二有用样本。

在一些实施例中,第一损失值可以为第一样本的预测风险结果和第一样本的标签之间的距离,例如欧氏距离、曼哈顿距离、闵可夫斯基距离等等。第一损失值越小,说明两者之间的距离越小,两者之间也就越相似,而第一样本的预测风险结果是由无噪声训练样本训练得到的第一风险识别模型输出的准确的结果,因此,若第一损失值小于第一阈值,可以认为第一样本的预测风险结果与第一样本的标签之间足够相似,第一样本的标签是正确的,即无噪声的,可将该第一样本选为第一有用样本。同理,第二损失值可以为第二样本的预测风险结果和第二样本的标签之间的距离,若第二损失值小于第二阈值,可以认为第二样本的预测风险结果和第二样本的标签足够相似,第二样本的标签是正确的,无噪声的,可将该第二样本选为第二有用样本。

在一些实施例中,第一阈值和第二阈值可以根据需要进行设定。第一阈值和第二阈值可以相同,也可以不同。

S140:采用第一有用样本对第二风险识别模型进行训练,采用第二有用样本对第一风险识别模型进行训练。

如上所述,第一有用样本为根据第一风险识别模型的预测风险结果选择的无噪声样本,第二有用样本为根据第二风险识别模型的预测风险结果选择的无噪声样本,因此可以直接用于对风险识别模型进行训练,从而得到较为准确的结果。在本说明书实施例中,采用第一有用样本对第二风险识别模型进行训练,采用第二有用样本对第一风险识别模型进行训练,从而得到训练后的第一风险识别模型和第二风险识别模型。也就是说,第一风险识别模型从各训练样本中选出无噪声的第一有用样本,用于对第二风险识别模型进行训练,第二风险识别模型则从各训练样本中选出无噪声的第二有用样本,用于对第一风险识别模型进行训练,两个模型之间相互合作,从而消除噪声样本的影响,得到准确度高的第一风险识别模型和第二风险识别模型。当需要对测试数据进行预测时,可以将测试样本的应用的icon和名称输入训练后的第一风险识别模型和第二风险识别模型中,分别得到两个预测风险结果,这两个预测风险结果均具有较高的准确度。在一些实施例中,还可以采用这两个预测风险结果的加权值,作为最终的预测风险结果。

在一些实施例中,可以先利用第一风险识别模型从各训练样本中选出第一有用样本,并利用第二风险识别模型从各训练样本中选出第二有用样本,然后用所有的第一有用样本对第二风险识别模型进行训练,并用所有的第二有用样本对第一风险识别模型进行训练,即“先选择后训练”。在另外一些实施例中,也可以同时向第一风险识别模型和第二风险识别模型依次输入各第一样本和各第二样本,若某第一样本为第一有用样本,则将该第一有用样本输入第二风险识别模型中,并利用该第一样本更新第二风险识别模型的参数,然后利用参数更新后的第二风险识别模型的预测风险结果判断后续第二样本是否为第二有用样本;同理,若某第二样本为第二有用样本,则将其输入第一风险识别模型中,并更新第一风险识别模型的参数,然后利用参数更新后的第一风险识别模型的预测风险结果判断后续的第一样本是否为第一有用样本;也就是说,此时采用的方式是“边选择边训练”。

本说明书实施例的风险识别模型的训练方法,利用包括应用的icon和名称的训练样本对风险识别模型进行训练,从而基于应用的icon和名称得到应用的风险结果;在训练过程中利用两个训练好的第一风险识别模型和第二风险识别模型分别为对方从各训练样本中选择无噪声的第一有用样本和第二有用样本,然后利用第二有用样本训练第一风险识别模型,利用第一有用样本训练第二风险识别模型,从而消除噪声样本的影响,使得训练后的第一风险识别模型和第二风险识别模型准确度更高。

如图2所示,本说明书另一实施例提供一种风险识别方法,其包括:

S210:获取待识别应用的应用包;

S220:从待识别应用的应用包中提取出待识别应用的icon和待识别应用的名称;

S230:将待识别应用的icon和待识别应用的名称输入采用如上述实施例所述的训练方法训练好的第一风险识别模型或第二风险识别模型中,得到待识别应用的风险结果。

本说明书实施例的风险识别方法,基于待识别应用的icon和待识别应用的名称即可获得待识别应用的风险结果,可节省时间;且利用上述实施例的训练方法训练好的第一风险识别模型或第二风险识别模型识别待识别应用的风险结果,准确度高。

如图3所示,本说明书又一实施例提供一种风险识别模型的训练系统,包括第一获取模块11、第二获取模块12、选择模块13和训练模块14。

其中,第一获取模块11用于获取各训练样本,其中,针对每个训练样本,该训练样本包括应用的图标和应用的名称,该训练样本的标签为应用的实际风险结果。

第一获取模块11可包括第一获取单元111和第一提取单元112,第一获取单元111用于获取第一批应用的应用包括,第一提取单元112用于针对第一批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用运行时的页面内容获得该应用的实际风险结果。

第一批应用的数量和类型可以尽可能的多,从而使风险识别模型的准确度更高。

在一些实施例中,应用的实际风险结果可以为有风险或无风险。在另外一些实施例中,应用的实际风险结果可以为无风险或具有某种特定类型的风险。

第二获取模块12用于获取第一风险识别模型和第二风险识别模型。

第二获取模块12可包括第二获取单元121、第一训练单元122和第二训练单元123,第二获取单元121用于获取各无噪声训练样本,其中,针对每个无噪声训练样本,该无噪声训练样本包括应用的图标和应用的名称,该无噪声训练样本的标签为所述应用的无噪声风险结果;第一训练单元122用于利用各无噪声训练样本对预设的第一风险识别网络进行训练,得到第一风险识别模型;第二训练单元123用于利用各无噪声训练样本对预设的第二风险识别网络进行训练,得到第二风险识别模型。

在一些实施例中,第一风险识别网络和第二风险识别网络可以为任意神经网络,例如人工神经网络、深度信念神经网络、深度学习神经网络、卷积神经网络、循环神经网络或其他任何期望形式的神经网络。

第二获取单元121可包括获取子单元1211和提取子单元1212,获取子单元1211用于获取第二批应用的应用包,提取子单元1212用于针对第二批应用中的每一个应用,从该应用的应用包中提取该应用的图标和该应用的名称;并根据该应用的图标和该应用的名称获得该应用的无噪声风险结果。

第二批应用可以包括尽量多的应用类型,从而使第一风险识别模型和第二风险识别模型的识别范围更广。

选择模块13用于将各训练样本中的各第一样本输入第一风险识别模型,得到第一风险识别模型输出的各第一样本的预测风险结果,根据各第一样本的预测风险结果和各第一样本的标签,在各第一样本中选择第一有用样本;并,将各训练样本中的各第二样本输入第二风险识别模型,得到第二风险识别模型输出的各第二样本的预测风险结果,根据各第二样本的预测风险结果和各第二样本的标签,在各第二样本中选择第二有用样本。

在一些实施例中,各第一样本和各第二样本可以完全相同、部分相同或完全不同。各第一有用样本和各第二有用样本也可以完全相同、部分相同或完全不同。

选择模块13可包括第一选择单元131和第二选择单元132,第一选择单元131用于针对每个第一样本,获得该第一样本的预测风险结果和该第一样本的标签之间的第一损失值;确定所述第一损失值是否小于第一阈值,若是,则将该第一样本选为第一有用样本;第二选择单元132用于针对每个第二样本,获得该第二样本的预测风险结果和该第二样本的标签之间的第二损失值;确定所述第二损失值是否小于第二阈值,若是,则将该第二样本选为第二有用样本。

在一些实施例中,第一损失值可以为第一样本的预测风险结果和第一样本的标签之间的距离,例如欧氏距离、曼哈顿距离、闵可夫斯基距离等等。同理,第二损失值可以为第二样本的预测风险结果和第二样本的标签之间的距离。

在一些实施例中,第一阈值和第二阈值可以根据需要进行设定。第一阈值和第二阈值可以相同,也可以不同。

训练模块14用于采用第一有用样本对第二风险识别模型进行训练,并采用第二有用样本对第一风险识别模型进行训练。

由于第一有用样本为根据第一风险识别模型的预测风险结果选择的无噪声样本,第二有用样本为根据第二风险识别模型的预测风险结果选择的无噪声样本,因此利用第一有用样本训练好的第二风险识别模型和利用第二有用样本训练好的第一风险识别模型均消除了噪声样本的影响,可以得到较准确的预测结果。

在一些实施例中,可以先利用第一风险识别模型从各训练样本中选出第一有用样本,并利用第二风险识别模型从各训练样本中选出第二有用样本,然后用所有的第一有用样本对第二风险识别模型进行训练,并用所有的第二有用样本对第一风险识别模型进行训练,即“先选择后训练”。在另外一些实施例中,也可以同时向第一风险识别模型和第二风险识别模型依次输入各第一样本和各第二样本,若某第一样本为第一有用样本,则将该第一有用样本输入第二风险识别模型中,并利用该第一样本更新第二风险识别模型的参数,然后利用参数更新后的第二风险识别模型的预测风险结果判断后续第二样本是否为第二有用样本;同理,若某第二样本为第二有用样本,则将其输入第一风险识别模型中,并更新第一风险识别模型的参数,然后利用参数更新后的第一风险识别模型的预测风险结果判断后续的第一样本是否为第一有用样本;也就是说,此时采用的方式是“边选择边训练”。

本说明书实施例的风险识别模型的训练系统,利用包括应用的icon和名称的训练样本对风险识别模型进行训练,从而基于应用的icon和名称得到应用的风险结果;在训练过程中利用两个训练好的第一风险识别模型和第二风险识别模型分别为对方从各训练样本中选择无噪声的第一有用样本和第二有用样本,然后利用第二有用样本训练第一风险识别模型,利用第一有用样本训练第二风险识别模型,从而消除噪声样本的影响,使得训练后的第一风险识别模型和第二风险识别模型准确度更高。

如图4所示,本说明书又一实施例提供一种风险识别装置,其包括第三获取模块21、提取模块22和识别模块23,其中,第三获取模块21用于获取待识别应用的应用包;提取模块22用于从待识别应用的应用包中提取出待识别应用的icon和待识别应用的名称;识别模块23用于将待识别应用的icon和待识别应用的名称输入采用如上述实施例所述的训练方法训练好的第一风险识别模型或第二风险识别模型中,得到待识别应用的风险结果。

本说明书实施例的风险识别装置,基于待识别应用的icon和待识别应用的名称即可获得待识别应用的风险结果,可节省时间;且利用上述实施例的训练方法训练好的第一风险识别模型或第二风险识别模型识别待识别应用的风险结果,准确度高。

本说明书的又一实施例提供一种可读存储介质,其上存储有计算机程序,当计算机程序在计算机中执行时,令计算机实现本说明书上述实施例中风险识别模型的训练方法或者风险识别方法。

本说明书又一实施例提供一种电子设备,其包括存储器和处理器,存储器中存储有可执行代码,当处理器执行可执行代码时,其实现本说明书上述实施例中风险识别模型的训练方法或者风险识别方法。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述的,仅为本说明书的较佳实施例,并非用以限定本说明书的范围,本说明书的上述实施例还可以做出各种变化。即凡是依据本说明书申请的权利要求书及说明书内容所作的简单、等效变化与修饰,皆落入本说明书专利的权利要求保护范围。本说明书未详尽描述的均为常规技术内容。

技术分类

06120116581951