基于区块链和联邦学习的软件行为智能管控方法技术

技术编号:33993738 阅读:45 留言:0更新日期:2022-07-02 10:21
本发明专利技术属于互联网技术领域,公开了提供一种基于区块链和联邦学习的软件行为智能管控方法,包括以下步骤:(1)构建单节点的软件行为分类模型(2)构建面向软件行为分类模型多节点联合训练任务的联盟链,将上一步构建的软件行为分类模型作为各节点本地训练的模型,并结合区块链和联邦学习技术,实现联盟链上的各节点在无中心节点驱动的情况下,多方协同训练软件行为分类模型;(3)设计软件行为智能管控客户端工具,实时感知用户使用计算机时产生的软件行为数据,输入到软件行为分类模型并根据分类结果对软件行为智能管控。通过本发明专利技术实现在保护用户数据隐私的前提下提升软件弹窗行为分类准确率,能根据用户的软件喜好实现弹窗行为的智能管控。的智能管控。的智能管控。

【技术实现步骤摘要】
基于区块链和联邦学习的软件行为智能管控方法


[0001]本专利技术属于互联网
,特别涉及基于区块链和联邦学习的软件行为智能管控方法。

技术介绍

[0002]目前,部分软件提供商对其开发的应用软件捆绑了大量的广告及信息类弹窗,这种行为损害了软件用户的系统操作体验。软件弹窗的出现会导致干扰用户视线、影响用户操作、降低计算机使用效率和网速等问题,这极大地影响了用户体验。虽然目前市面上出现一些能够进行弹窗拦截的安全软件,例如专利号CN202010503928.7公开的弹窗拦截方法,通过目标钩子函数监控到弹窗事件,然后根据该弹窗事件对应的进程获取该弹窗事件对应弹窗的至少一个属性特征,并根据属性特征确定所述弹窗是否为广告弹窗,若所述弹窗为广告弹窗,则拒绝响应该弹窗事件。该方法能够实现在显示广告弹窗之前进行拦截,提高了用户体验,但该方法依赖一定的规则来判断软件的广告弹窗行为,由于软件弹窗的各种特征不断在变化,因此这种方式存在漏检或误判的风险。
[0003]显然现有方案中,弹窗的控制主要依赖于用户的规则配置,需要用户手动配置弹窗的控制选项,并且没有建立多用户间的软件弹窗行为信息共享机制,无法借助用户群体的软件喜好实现弹窗行为的智能管控。
[0004]在软件行为的检测与分类方面,传统的机器学习算法和深度学习算法能够通过大量的数据来学习相应特征,最终实现对软件行为准确分类。然而由于缺乏数量大且质量高的软件行为训练数据,软件行为检测与分类研究面临数据孤岛的现状,导致在进行机器学习模型训练时无法有效利用各参与方的软件行为数据,阻碍了算法模型效果的提升,因此需要探索与设计软件行为感知方法采集各类软件弹窗的用户界面内容和进程等数据,从而为软件行为的分类与管控提供数据支撑。
[0005]此外,由于采集到的软件行为数据如软件窗口截图中会包含用户的个人偏好信息、窗口进程会暴露用户使用软件的行为,这些数据涉及用户隐私,此外这些数据分散在各个节点,单节点使用有限的数据训练模型效果具有局限性,集中所有节点的数据集中训练又会导致泄露隐私,所以如何在保护数据隐私的前提下打破数据孤岛,提升模型的准确率是需要解决的关键问题。

技术实现思路

[0006]针对现有技术存在的不足,本专利技术提供一种基于区块链和联邦学习的软件行为智能管控方法,结合机器学习、联邦学习和区块链技术,在保护用户的软件行为数据隐私的前提下,综合多方数据协同训练软件行为分类模型,并根据分类结果及时对软件弹窗行为实施管控。相比原有集中数据训练模型的方法,本专利技术的方法可以实现在保护用户数据隐私的前提下提升软件弹窗行为分类准确率,同时也为跨用户共享弹窗类软件的管控策略提供了支持。
[0007]为了解决上述技术问题,本专利技术采用的技术方案是:基于区块链和联邦学习的软件行为智能管控方法,包括以下步骤:(1)构建单节点的软件行为分类模型,包括软件行为感知与存储、构建软件行为数据集、设计软件弹窗用户界面内容识别和软件行为分类模型网络结构的步骤;(2)构建面向软件行为分类模型多节点联合训练任务的联盟链,将上一步构建的软件行为分类模型作为各节点本地训练的模型,并结合区块链和联邦学习技术,实现联盟链上的各节点在无中心节点驱动的情况下,多方协同训练软件行为分类模型,包括设计软件行为分类模型联合训练任务的联盟链架构、定义链上区块结构和联合训练流程、设计模型聚合算法和编写软件行为分类模型联合训练过程中的智能合约的部分;(3)设计软件行为智能管控客户端工具,实时感知用户使用计算机时产生的软件行为数据,并输入构建的软件行为分类模型,为软件行为分类,获得分类结果,根据分类结果对软件行为智能管控。
[0008]进一步的,步骤(1)中具体步骤如下:(1.1)软件行为感知与存储:分析不同弹窗类软件的自动弹窗原理,实时感知各类多维度软件的行为数据,并存储;(1.2)构建软件行为数据集:将存储的多维度软件行为数据进行数据清洗,然后对该弹窗软件的行为数据做标注,由用户判断是否喜欢该内容并标注,将标注过的软件行为数据作为最终的训练与测试数据集;(1.3)软件弹窗用户界面内容识别:对软件弹窗用户界面中的文本内容进行识别,并将其作为后续软件行为分类模型输入的一部分;(1.4)构建软件行为分类模型:分别将软件弹窗用户界面内容的识别结果、进程行为数据和网络行为数据映射为特征向量形式并将特征向量以不同权重进行融合,然后通过深度神经网络进行特征学习,最后将学习到的特征向量输入到概率输出层,输出每个类别的概率,实现对软件弹窗行为的分类。
[0009]进一步的,步骤(2)基于Hyperledger Fabric设计了面向软件行为分类模型联合训练任务的联盟链架构,建立起去中心化软件行为分类模型联合训练框架。为了保障软件行为数据的隐私性和软件行为分类模型的安全性,本方法提出的框架用到的区块链类型为联盟链。相比于公有链架构,联盟链为各节点设置了更严格的身份认证条件,能够为系统提升安全性。同时,为避免链上数据存储给各节点带来的存储空间负担和保障用户本地数据的隐私性,该联盟链只记录模型训练任务信息、节点本地模型的摘要信息、共享模型参数信息,各节点无需上传本地软件行为数据。联盟链中节点的角色分为任务协调节点和数据提供节点,任务协调节点负责发布软件行为分类模型联合训练任务、初始化全局模型,最终通过提取全局模型参数来完成此次任务;数据提供节点负责针对任务协调节点发布的软件行为分类模型联合训练任务,使用本地软件行为数据集训练模型,并上传本地模型的摘要信息与模型参数,以完成此次任务。
[0010]在已初始化构建联盟链的去中心化网络上,软件行为分类模型联合训练流程的详细步骤如下:(2.1)任务协调节点向联盟链系统发布学习训练任务描述并初始化全局模型参数,然后新增一个软件行为分类联合训练任务,其中,初始全局模型选用步骤(1)构建的软
件行为分类模型。
[0011](2.2)参与此次任务的数据提供节点形成一个集合,然后从联盟链中获取联合训练任务信息和全局模型参数并解密,基于本地的软件行为数据集执行联邦学习,协作训练同一个机器学习模型。
[0012](2.3)各数据提供节点在每一轮迭代训练结束后将本地模型的摘要数据(如模型的准确率、损失值等)和加密后的模型参数作为交易内容发起交易,然后由智能合约评估各节点对模型做出的贡献,并仅保留符合要求的模型交易信息至联盟链上。
[0013](2.4)在每轮迭代训练结束后,智能合约计算各节点对全局模型贡献度的权重,然后基于权重实现模型参数的聚合并更新全局模型,判断全局模型是否拟合或达到最大迭代次数。如果达到此条件,则判定本次联合训练任务完成,然后通知任务协调节点;如果未达到此条件,则将聚合后的全局模型打包成区块并发布下一轮的迭代训练任务,各节点开始下一轮的迭代训练,继续执行步骤(2.2)。
[0014](2.5)任务协调节点提取全局模型参数并验证模型的有效性以结束此次联合训练任务。
[0015]进一步的,步骤(2)中所述模型聚合算法,根据各数据提供节点本地模型的摘要信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于区块链和联邦学习的软件行为智能管控方法,其特征在于,包括以下步骤:(1)构建单节点的软件行为分类模型,包括软件行为感知与存储、构建软件行为数据集、设计软件弹窗用户界面内容识别和软件行为分类模型网络结构的步骤;(2)构建面向软件行为分类模型多节点联合训练任务的联盟链,将上一步构建的软件行为分类模型作为各节点本地训练的模型,并结合区块链和联邦学习技术,实现联盟链上的各节点在无中心节点驱动的情况下,多方协同训练软件行为分类模型,包括设计软件行为分类模型联合训练任务的联盟链架构、定义链上区块结构和联合训练流程、设计模型聚合算法和编写软件行为分类模型联合训练过程中的智能合约的部分;(3)设计软件行为智能管控客户端工具,实时感知用户使用计算机时产生的软件行为数据,并输入构建的软件行为分类模型,为软件行为分类,获得分类结果,根据分类结果对软件行为智能管控。2.根据权利要求1所述的基于区块链和联邦学习的软件行为智能管控方法,其特征在于,步骤(1)中具体步骤如下:(1.1)软件行为感知与存储:分析不同弹窗类软件的自动弹窗原理,实时感知各类多维度软件的行为数据,并存储;(1.2)构建软件行为数据集:将存储的多维度软件行为数据进行数据清洗,然后对该弹窗软件的行为数据做标注,由用户判断是否喜欢该内容并标注,将标注过的软件行为数据作为最终的训练与测试数据集;(1.3)软件弹窗用户界面内容识别:对软件弹窗用户界面中的文本内容进行识别,并将其作为后续软件行为分类模型输入的一部分;(1.4)构建软件行为分类模型:分别将软件弹窗用户界面内容的识别结果、进程行为数据和网络行为数据映射为特征向量形式并将特征向量以不同权重进行融合,然后通过深度神经网络进行特征学习,最后将学习到的特征向量输入到概率输出层,输出每个类别的概率,实现对软件弹窗行为的分类。3.根据权利要求1所述的基于区块链和联邦学习的软件行为智能管控方法,其特征在于,步骤(2)基于Hyperledger Fabric设计了面向软件行为分类模型联合训练任务的联盟链架构,建立起去中心化软件行为分类模型联合训练框架,框架用到的区块链类型为联盟链,该联盟链只记录模型训练任务信息、节点本地模型的摘要信息、共享模型参数信息,各节点无需上传本地软件行为数据;联盟链中节点的角色分为任务协调节点和数据提供节点,任务协调节点负责发布软件行为分类模型联合训练任务、初始化全局模型,最终通过提取全局模型参数来完成此次任务;数据提供节点负责针对任务协调节点发布的软件行为分类模型联合训练任务,使用本地软件行为数据集训练模型,并上传本地模型的摘要信息与模型参数,以完成此次任务;在已初始化构建联盟链的去中心化网络上,软件行为分类模型联合训练流程的详细步骤如下:(2.1)任务协调节点向联盟链系统发布学习训练任务描述并初始化全局模型参数,然后新增一个软件行为分类联合训练任务,其中,初始全局模型选用步骤(1)构建的软件行为分类模型;(2.2)参与此次任务的数据提供节点形成一个集合,然后从联盟链中获取联合训练任
务信息和全局模型参数并解密,基于本地的软件行为数据集执行联邦学习,协作训练同一个机器学习模型;(2.3)各数...

【专利技术属性】
技术研发人员:王晓东谭雨欣魏志强李晓璇
申请(专利权)人:中国海洋大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1