CN118260744A - 基于深度学习的胶囊网络模型的挖矿程序检测方法及*** - Google Patents
基于深度学习的胶囊网络模型的挖矿程序检测方法及*** Download PDFInfo
- Publication number
- CN118260744A CN118260744A CN202310967606.1A CN202310967606A CN118260744A CN 118260744 A CN118260744 A CN 118260744A CN 202310967606 A CN202310967606 A CN 202310967606A CN 118260744 A CN118260744 A CN 118260744A
- Authority
- CN
- China
- Prior art keywords
- capsule
- feature
- vector
- layer
- capsule unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000002775 capsule Substances 0.000 title claims abstract description 258
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000013135 deep learning Methods 0.000 title claims abstract description 47
- 238000005070 sampling Methods 0.000 claims abstract description 38
- 238000001514 detection method Methods 0.000 claims abstract description 20
- 238000012544 monitoring process Methods 0.000 claims abstract description 17
- 239000013598 vector Substances 0.000 claims description 179
- 230000006870 function Effects 0.000 claims description 39
- 238000012549 training Methods 0.000 claims description 30
- 230000008878 coupling Effects 0.000 claims description 29
- 238000010168 coupling process Methods 0.000 claims description 29
- 238000005859 coupling reaction Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 21
- 239000011159 matrix material Substances 0.000 claims description 15
- 210000002569 neuron Anatomy 0.000 claims description 15
- 238000013528 artificial neural network Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000005065 mining Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 235000009854 Cucurbita moschata Nutrition 0.000 description 3
- 240000001980 Cucurbita pepo Species 0.000 description 3
- 235000009852 Cucurbita pepo Nutrition 0.000 description 3
- 235000020354 squash Nutrition 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000005406 washing Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于深度学习的胶囊网络模型的挖矿程序检测方法及***,包括:对目标设备的运行数据进行监控,获取所述运行数据;基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据;以及基于所述输入数据和预设的基于深度学习的胶囊网络模型进行挖矿程序的检测。本发明旨在解决目前对挖矿程序检测时不够准确的问题,能够实现高效准确地进行挖矿程序的检测,同时又能在机器运行或不运行挖矿程序时时合理经济的选取CPU与GPU参数。
Description
技术领域
本发明涉及网络安全技术领域,并且更具体地,涉及一种基于深度学习的胶囊网络模型的挖矿程序检测方法及***。
背景技术
对于企业机构和广大网民来说,除了面对勒索病毒这一类威胁以外,其往往面临的另一类广泛的网络威胁类型就是感染恶意挖矿程序。恶意挖矿,就是在用户不知情或未经允许的情况下,占用用户终端设备的***资源和网络资源进行挖矿,从而获取虚拟币牟利。其通常可以发生在用户的个人电脑,企业网站或服务器,个人手机,网络路由器。相关技术中,目前对挖矿程序的检测大多基于经验排查法和技术排查法,比如查看进程行为、网络连接状态、自启动或任务计划脚本、相关配置文件、日志文件等等。这些方法很难具备通用性,从而导致挖矿程序的检测结果不准确,进而影响企业机构和个人网民的后续操作。
因此,如何选取用于挖矿程序检测的参数使之具有通用性,又能合理的设计出一个使用这些参数数据来检测挖矿程序的深度学习模型,是目前亟需解决的问题。
发明内容
本发明提出一种基于深度学习网络模型的挖矿程序检测方法及***,以解决如何高效准确地进行挖矿程序检测的问题。
为了解决上述问题,根据本发明的一个方面,提供了一种基于深度学习的胶囊网络模型的挖矿程序检测方法,其特征在于,所述方法包括:
对目标设备的运行数据进行监控,获取所述运行数据;
基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据;以及
基于所述输入数据和预设的基于深度学习的胶囊网络模型进行挖矿程序的检测。
优选地,所述对目标设备的运行数据进行监控,获取所述运行数据,包括:
利用硬件监测工具(OpenHardwareMonitor)对目标设备进行实时监测,以获取所述目标设备运行时的CPU信息和GPU信息,基于所述CPU信息和GPU信息获取所述运行数据。
优选地,所述基于所述运行数据确定每个采样时刻对应的特征值,包括:
对所述运行数据进行格式转换,基于需求信息从经过格式转换后的运行数据中进行需求特征数据的选取,并剔除所述需求特征数据的单位信息;
计算所述需求特征数据中每个特征的权重,并基于每个特征的权重确定每个采样时刻对应的特征值。
优选地,利用如下方式计算所述需求特征数据中每个特征的权重,包括:
cos(xh,xp)=xh*xp/(|xh|*|xp|),
利用如下方式基于每个特征的权重确定每个采样时刻对应的特征值,包括:
其中,Kh为第h个特征的权重;N1为选取的特征的数量减去1的差值;cos(xh,xp)为第h个特征和第p个特征的距离;xh为第h个特征对应的特征数据;xp为第p个特征对应的特征数据,h、p和N1为自然数;|xh|为第h个特征对应的特征数据的模;|xp|为第p个特征对应的特征数据的模;X是每个采样时刻对应的特征值。
优选地,所述方法还包括:
利用如下方式进行基于深度学习的胶囊网络模型的训练,以获取所述预设的基于深度学习的胶囊网络模型,包括:
初始化向量bij;其中,i表示前层L层的第i个胶囊单元,j表示当前层L+1层的第j个胶囊单元;
对于前层L层的第i个胶囊单元,基于所述向量bij进行softmax操作,以获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij;
基于第i个胶囊单元中的神经元向量和对应的权重矩阵,计算所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的预测向量
基于所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij和预测向量计算所述第j个胶囊单元对应的输入向量sj;
基于所述第j个胶囊单元对应的输入向量sj对后一个胶囊单元j+1的输入向量si+1进行增强处理;
对所有的进行了增强处理的输入向量进行压缩操作,获取要被传递到当前层L+1层的第j个胶囊单元的输出向量vj;
对向量bij进行动态更新操作,并重新进行输入向量sj的计算,直至迭代次数达到预设次数时,训练完成,获取所述预设的基于深度学习的胶囊网络模型。
优选地,利用如下方式获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij,包括:
其中,j表示神经网络输出向量中第j个类别的值;k表示神经网络的类别数;为标准指数函数应用于前层L层的第i个胶囊单元的输入向量的每个元素;为标准指数函数应用于当前层L+1层的第j个胶囊单元的输入向量的每个元素;ci为softmax函数的输入向量;exp(ci)为标准指数函数应用于softmax函数的输入向量。
优选地,利用如下方式计算第j个胶囊单元对应的输入向量sj,包括:
其中,cij为第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数;Wij为权重矩阵中前层L层的第i个胶囊单元与当前层L+1层的第j个胶囊单元之间对应的权值;ui表示前层L层含有一组神经元的第i个胶囊单元;Wijui为第i个胶囊单元对应的预测向量。
优选地,所述对所有的进行了增强处理的输入向量进行压缩操作,获取要被传递到当前层L+1层的第j个胶囊单元的输出向量vj,包括:
其中,vj为要被传递给到当前层L+1层的第j个胶囊单元的输出向量;sj′为第j个胶囊单元对应的增强后的输入向量;||sj′||为sj′的向量范数,指在向量空间中向量sj′的大小。
优选地,所述对向量bij进行动态更新操作,包括:
利用L+1层的第j个胶囊单元的输出向量vj与从L层胶囊单元得到的预测向量做点积,并加上原向量bij进行更新,以获取到新的向量bij。
根据本发明的另一个方面,提供了一种基于深度学习的胶囊网络模型的挖矿程序检测***,所述***包括:
运行数据获取模块,用于对目标设备的运行数据进行监控,获取所述运行数据;
输入数据获取模块,用于基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据;
检测模块,用于基于所述输入数据和预设的基于深度学习的胶囊网络模型进行挖矿程序的检测。
优选地,其中所述运行数据获取模块,对目标设备的运行数据进行监控,获取所述运行数据,包括:
利用硬件监测工具(OpenHardwareMonitor)对目标设备进行实时监测,以获取所述目标设备运行时的CPU信息和GPU信息,基于所述CPU信息和GPU信息获取所述运行数据。
优选地,其中所述输入数据获取模块,基于所述运行数据确定每个采样时刻对应的特征值,包括:
对所述运行数据进行格式转换,基于需求信息从经过格式转换后的运行数据中进行需求特征数据的选取,并剔除所述需求特征数据的单位信息;
计算所述需求特征数据中每个特征的权重,并基于每个特征的权重确定每个采样时刻对应的特征值。
优选地,其中所述输入数据获取模块,利用如下方式计算所述需求特征数据中每个特征的权重,包括:
cos(xh,xp)=xh*xp/(|xh|*|xp|),
利用如下方式基于每个特征的权重确定每个采样时刻对应的特征值,包括:
其中,Kh为第h个特征的权重;N1为选取的特征的数量减去1的差值;cos(xh,xp)为第h个特征和第p个特征的距离;xh为第h个特征对应的特征数据;xp为第p个特征对应的特征数据,h、p和N1为自然数;|xh|为第h个特征对应的特征数据的模;|xp|为第p个特征对应的特征数据的模;X是每个采样时刻对应的特征值。
优选地,其中所述***还包括:模型训练模块,用于:
利用如下方式进行基于深度学习的胶囊网络模型的训练,以获取所述预设的基于深度学习的胶囊网络模型,包括:
初始化向量bij;其中,i表示前层L层的第i个胶囊单元,j表示当前层L+1层的第j个胶囊单元;
对于前层L层的第i个胶囊单元,基于所述向量bij进行softmax操作,以获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij;
基于第i个胶囊单元中的神经元向量和对应的权重矩阵,计算所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的预测向量
基于所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij和预测向量计算所述第j个胶囊单元对应的输入向量sj;
基于所述第j个胶囊单元对应的输入向量sj对后一个胶囊单元j+1的输入向量si+1进行增强处理;
对所有的进行了增强处理的输入向量进行压缩操作,获取要被传递到当前层L+1层的第j个胶囊单元的输出向量vj;
对向量bij进行动态更新操作,并重新进行输入向量sj的计算,直至迭代次数达到预设次数时,训练完成,获取所述预设的基于深度学习的胶囊网络模型。
优选地,其中所述模型训练模块,利用如下方式获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij,包括:
其中,j表示神经网络输出向量中第j个类别的值;k表示神经网络的类别数;为标准指数函数应用于前层L层的第i个胶囊单元的输入向量的每个元素;为标准指数函数应用于当前层L+1层的第j个胶囊单元的输入向量的每个元素;ci为softmax函数的输入向量;exp(ci)为标准指数函数应用于softmax函数的输入向量。
优选地,其中所述模型训练模块,利用如下方式计算第j个胶囊单元对应的输入向量sj,包括:
其中,cij为第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数;Wij为权重矩阵中前层L层的第i个胶囊单元与当前层L+1层的第j个胶囊单元之间对应的权值;ui表示前层L层含有一组神经元的第i个胶囊单元;Wijui为第i个胶囊单元对应的预测向量。
优选地,其中所述模型训练模块,所述对所有的进行了增强处理的输入向量进行压缩操作,获取要被传递到当前层L+1层的第j个胶囊单元的输出向量vj,包括:
其中,vj为要被传递给到当前层L+1层的第j个胶囊单元的输出向量;sj′为第j个胶囊单元对应的增强后的输入向量;||sj′||为sj′的向量范数,指在向量空间中向量sj′的大小。
优选地,其中所述模型训练模块,所述对向量bij进行动态更新操作,包括:
利用L+1层的第j个胶囊单元的输出向量vj与从L层胶囊单元得到的预测向量做点积,并加上原向量bij进行更新,以获取到新的向量bij。
基于本发明的另一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现一种基于深度学习的胶囊网络模型的挖矿程序检测方法中任一项的步骤。
基于本发明的另一方面,本发明提供一种电子设备,包括:
上述的计算机可读存储介质;以及
一个或多个处理器,用于执行所述计算机可读存储介质中的程序。
本发明提供了一种基于深度学习的胶囊网络模型的挖矿程序检测方法及***,包括:对目标设备的运行数据进行监控,获取所述运行数据;基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据;基于所述输入数据和预设基于深度学习的胶囊网络模型进行挖矿程序的检测。本发明旨在解决目前对挖矿程序检测时不够准确的问题,能够实现高效准确地进行挖矿程序的检测,同时又能在机器运行或不运行挖矿程序时时合理经济的选取CPU与GPU参数。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为根据本发明实施方式的基于深度学习的胶囊网络模型的挖矿程序检测方法100的流程图;
图2为根据本发明实施方式的基于深度学习的胶囊网络模型的挖矿程序检测***200的结构示意图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
图1为根据本发明实施方式的基于深度学习的胶囊网络模型的挖矿程序检测方法100的流程图。如图1所示,本发明实施方式提供的基于深度学习网络模型的挖矿程序检测方法,旨在解决目前对挖矿程序检测时不够准确的问题,能够实现高效准确地进行挖矿程序的检测,同时又能在机器运行或不运行挖矿程序时时合理经济的选取CPU与GPU参数。本发明实施方式提供的基于深度学习网络模型的挖矿程序检测方法100,从步骤101处开始,在步骤101,对目标设备的运行数据进行监控,获取所述运行数据。
优选地,其中所述对目标设备的运行数据进行监控,获取所述运行数据,包括:
利用OpenHardwareMon itor工具对目标设备进行实时监测,以获取所述目标设备运行时的CPU信息和GPU信息,以获取所述运行数据。
在本发明中,通过OpenHardwareMon itor工具实时监控计算机日常工作时的运行数据,包括CPU与GPU的状态。OpenHardwareMon itor工具是一个exe文件,是运行在web上,所以要同时开启监听程序将web上的信息收集下来。
在步骤102,基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据。
优选地,其中所述基于所述运行数据确定每个采样时刻对应的特征值,包括:
对所述运行数据进行格式转换,基于需求信息从经过格式转换后的运行数据中进行需求特征数据的选取,并剔除所述需求特征数据的单位信息;
计算所述需求特征数据中每个特征的权重,并基于每个特征的权重确定每个采样时刻对应的特征值。
优选地,其中所述方法利用如下方式计算所述需求特征数据中每个特征的权重,包括:
cos(xh,xp)=xh*xp/(|xh|*|xp|),
所述方法利用如下方式基于每个特征的权重确定每个采样时刻对应的特征值,包括:
其中,Kh为第h个特征的权重;N1为选取的特征的数量和1的差;cos(xh,xp)为第h个特征和第p个特征的距离;xh为第h个特征对应的特征数据;xp为第p个特征对应的特征数据。
其中,h、p和N1为自然数;|xh|为第h个特征对应的特征数据的模;|xp|为第p个特征对应的特征数据的模;X是每个采样时刻对应的特征值。
在本发明中,收集下来的运行数据是json格式,放在本地txt文件中,因此要通过python程序将其转化为CSV文件,CSV文件中每一列对应一个CPU或GPU参数的数据。然后,要选取需要使用的CPU与GPU参数。例如,可以选取的参数有:cpu_total_load(CPU总负载)、cpu_package_power(CPU封装功耗)、cpu_cores_power(CPU核心功耗)、gpu_core_load(GPU核心负载)、gpu_frame_buffer_load(GPU帧缓冲区)、gpu_bus_interface_load(GPU总线接口负载)、gpu_power(GPU功耗)、gpu_pcie_rx(GPU高带宽扩展总线接受量)和gpu_pcie_tx(GPU高带宽扩展总线发送量)。
最后,将选取完的CPU与GPU参数数据的单位清洗掉,并基于清洗掉单位后的数据进行计算,以确定每个采样时刻对应的特征值,并将所有采样时刻对应的特征值作为输入数据输入到训练好的模型中,以进行挖矿程序的检测。
在本发明中,利用如下方式计算所述需求特征数据中每个特征的权重,包括:
cos(xh,xp)=xh*xp/(|xh|*|xp|),
再利用如下方式基于每个特征的权重确定每个采样时刻对应的特征值,包括:
其中,Kh为第h个特征的权重;N1为选取的特征的数量和1的差;cos(xh,xp)为第h个特征和第p个特征的距离,几何中夹角余弦可用来衡量两个向量方向的差异,机器学习中借用这一概念来衡量特征之间的差异;xh为第h个特征对应的特征数据;xp为第p个特征对应的特征数据。
在步骤103,基于所述输入数据和预设基于深度学习的胶囊网络模型进行挖矿程序的检测。
优选地,其中所述方法还包括:
利用如下方式进行基于深度学习的胶囊网络模型的训练,以获取所述预设基于深度学习的胶囊网络模型,包括:
初始化向量bij;其中,i表示前层L-1层的第i个胶囊单元,j表示当前层L层的第j个胶囊单元;
对于前层L-1层的第i个胶囊单元,基于所述向量bij进行softmax操作,以获取所述第i个胶囊单元对当前层第j个胶囊单元的耦合系数cij;
基于第i个胶囊单元中的神经元向量和对应的权重矩阵,计算所述第i个胶囊单元对当前层第j个胶囊单元的预测向量
基于所述第i个胶囊单元对当前层第j个胶囊单元的耦合系数cij和预测向量计算所述第j个胶囊单元对应的输入向量sj;
基于所述第j个胶囊单元对应的输入向量sj对后一个胶囊单元j+1的输入向量si+1进行增强;
对所有的进行了增强处理的输入向量进行压缩操作,获取传递到上层胶囊单元的输出向量vj;
对权重bij进行动态更新操作,并重新进行输入向量的计算,直至迭代次数达到预设次数时,训练完成,获取所述预设基于深度学习的胶囊网络模型。
可替换地,初始化向量bij;其中,i表示前层L层的第i个胶囊单元,j表示当前层L+1层的第j个胶囊单元;
对于前层L层的第i个胶囊单元,基于所述向量bij进行softmax操作,以获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij;
基于第i个胶囊单元中的神经元向量和对应的权重矩阵,计算所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的预测向量
基于所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij和预测向量计算所述第j个胶囊单元对应的输入向量sj;
基于所述第j个胶囊单元对应的输入向量sj对后一个胶囊单元j+1的输入向量si+1进行增强处理;
对所有的进行了增强处理的输入向量进行压缩操作,获取要被传递到当前层L+1层的第j个胶囊单元的输出向量vj;
对向量bij进行动态更新操作,并重新进行输入向量sj的计算,直至迭代次数达到预设次数时,训练完成,获取所述预设的基于深度学习的胶囊网络模型。
优选地,其中所述方法利用如下方式获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij,包括:
其中,其中,j表示神经网络输出向量中第j个类别的值;k表示神经网络的类别数;为标准指数函数应用于前层L层的第i个胶囊单元的输入向量的每个元素;为标准指数函数应用于当前层L+1层的第j个胶囊单元的输入向量的每个元素;ci为softmax函数的输入向量;exp(ci)为标准指数函数应用于softmax函数的输入向量。
优选地,其中所述方法利用如下方式计算第j个胶囊单元对应的输入向量sj,包括:
其中,cij为第i个胶囊单元对当前层第j个胶囊单元的耦合系数;Wij为权重矩阵中第i个胶囊单元与当前层第j个胶囊单元之间对应的权值;ui表示第i个胶囊单元的输出;Wijui为第i个胶囊单元对应的预测向量。
优选地,其中所述对所有的进行了增强处理的输入向量进行压缩操作,获取传递到上层胶囊单元的向量vj,包括:
其中,vj为传递给当前层第j个胶囊单元的向量;sj为第j个胶囊单元对应的增强后的输入向量。
优选地,其中所述对权重bij进行动态更新操作,包括:
利用L+1层的胶囊单元的输出向量vj与从L层胶囊单元得到的预测向量做点积,并加上原权重bij进行更新,以获取到新的权重bij。
在本发明中,在获取到输入数据后,将输入数据输入到训练好的预设基于深度学习的胶囊网络模型中即可进行挖矿程序的检测,获取检测结果。其中,通过将已知的输入数据和结果标签输入到胶囊网络模型进行训练,根据训练结果确定训练好的预设基于深度学习的胶囊网络模型。
在本发明中,Sequential input胶囊网络模型在动态路由算法上进行增强处理,在原动态路由的公式上增加了sj=sj+sj-1,sj代表在一层中第j个胶囊单元的输入。这使得在Sequential input胶囊网络模型中,sj能够携带上一胶囊单元的信息,增强了Sequential input胶囊网络模型对历史信息的学习能力。为了更好学习的CPU与GPU状态的信息,在实验过程中截取了较长时间的CPU与GPU状态信息。Sequential input胶囊网络模型用sj=sj+sj-1来更新当前胶囊单元的sj,能够充分学习CPU与GPU状态的动态变化情况,从而提高恶意软件的检测效率。
Sequential input胶囊网络模型的运行流程大致如下:
首先,在L层胶囊网络中,u1和u2是含有一组神经元的胶囊单元,它们都是向量。接着这些向量乘以相应的权重矩阵W(W编码了低层特征和高层特征之间的空间关系和其他重要关系),得到各自的预测向量i代表前层第i个胶囊单元,j代表当前层第j个胶囊单元。对前层的每一个胶囊,计算它对当前层每个胶囊的耦合系数cij,构成一整体耦合矩阵,列方向上和为1,保证前层某个胶囊对当前层的影响被当前层所有胶囊瓜分。通过对预测向量与耦合系数cij的乘积和得到向量sj。在同一层的不同的神经元之间,后一个神经元的输入sj=sj+sj-1,增强了前后神经元之间的联系程度。最后,对所有进行了增强处理的向量sj进行Squash非线性函数的压缩操作,非线性激活函数接受一个向量,然后在不改变方向的前提下,将其长度压缩到1以下,得到输出向量vj。利用L+1层的胶囊单元的输出向量vj与从L层胶囊单元的得到的预测向量做点积,加上原权重更新得到新的权重,其内在含义为要衡量当前层的每个胶囊和前层某个胶囊之间的相似性,如果二者不相似,则削弱了前层胶囊对当前层胶囊的重要性,反之则增强了重要性,以上就是从L层的胶囊单元到L+1层胶囊单元的信息流动过程。
在本发明中,Sequential input胶囊网络模型训练详细过程如下:
其中,算法所需输入包括指明路由迭代次数r,L层胶囊单元的预测向量
步骤一:初始化向量bij,在第一次迭代过程中,bij的初始值为零。随着迭代次数r的变化,向量bij动态更新。其中,bij=eiπ+1。
步骤二:对于L层的所有胶囊单元i而言,对向量bij进行softmax操作,其中k表示神经网络的多个输出或类别数,v为输出向量,vj为v中第j个输出或类别的值,i表示当前需要计算的类别,得到向量ci的值。softmax激活函数保证了cij的值不会是负数,并且同一层胶囊单元的cij的总和为1。因为在第一次迭代过程中,bij的初始值均为零,所以第一次迭代结束后,同一层的不同胶囊单元的耦合系数cij均相等。其中,
其中,j表示第j个输出;k表示神经网络的多个输出或类别数;为标准指数函数应用于前层第i个胶囊单元输入向量的每个元素;为标准指数函数应用于当前层第j个胶囊单元输入向量的每个元素;ci为softmax函数的输入向量。
步骤三:在得到了所有L层胶囊单元i的耦合系数cij之后,信息流将向上层即L+1层的胶囊单元流通。在这一步骤中,u是上一层胶囊网络的输出,W是每个输出要乘的权值,不同的胶囊单元的输入向量sj是所有可能传入该单元的加权和,即为耦合系数cij与所有可能的预测向量的乘积和。其中,利用如下方式确定输入向量,包括:
其中,cij为第i个胶囊单元对当前层第j个胶囊单元的耦合系数;Wij为权重矩阵中第i个胶囊单元与当前层第j个胶囊单元之间对应的权值;ui表示第i个胶囊单元的输出;Wijui为第i个胶囊单元对应的预测向量。
步骤四:在同一层的不同的神经元之间,后一个神经元的输入sj=sj+sj-1,增强了前后胶囊单元之间的联系程度。例如在L+1层的第二个胶囊单元的输入就是当前的输入s2加上前一个胶囊单元的输入s1,即第二个胶囊单元的输入是s2=s2+s1。这使得L+1层的第二个胶囊单元也能更好的学习到前一个胶囊单元所传递的信息,增强了模型对历史输入信息的学习能力。
步骤五:对所有进行了增强处理的向量sj进行Squash非线性函数的压缩操作。经过Squash压缩函数作用后,向量sj保留了其原本的向量方向,压缩操作只是对向量的长度进行了改变,将向量sj的长度压缩到1以下。向量sj进行压缩操作后得到传给上层胶囊单元的向量vj。其中,
其中,vj为传递给当前层第j个胶囊单元的向量;sj为第j个胶囊单元对应的增强后的输入向量。
步骤六:对权重bij进行动态更新操作,每一次胶囊网络中的数据完成一次单向流动过程后,都要进行权重的更新操作,这是动态路由算法的关键。在这一步骤中,利用L+1层的胶囊单元的输出向量vj与从L层胶囊单元的得到的预测向量做点积,加上原权重更新得到新的权重,实现权重的动态更新。点积操作是为了计算预测向量与输出向量vj之间的相似性,通过相似性来更新权重。步骤六结束之后,算法跳转到第3步重新开始这一流程,并重复r次。
其中,利用如下方式进行更新:
bij=bij+Wijui·vj,
其中,bij为初始化的向量;Wij为权重矩阵中第i个胶囊单元与当前层第j个胶囊单元之间对应的权值;vj为传递给当前层第j个胶囊单元的向量。
交叉熵损失函数经常用于分类问题中,特别是在神经网络做分类问题时,也经常使用交叉熵作为损失函数。在本发明中,基于交叉熵损失函数进行预测。
其中,在二分类的情况下,模型最后需要预测的结果只有两种情况,对于每个类别我们的预测得到的概率为p和1-p,此时表达式为:
对于多分类,实际上就是二分类的扩展:
其中,M为类别的数量,ymc是符号函数(0或1),如果样本m的真实类别等于c取1,否则取0,pmc是指观测样本m属于类别c的预测概率。
图2为根据本发明实施方式的基于深度学习的胶囊网络模型的挖矿程序检测***200的结构示意图。如图2所示,本发明实施方式提供的基于深度学习网络模型的挖矿程序检测***200,包括:运行数据获取模块201、输入数据获取模块202和检测模块203。
优选地,所述运行数据获取模块201,用于对目标设备的运行数据进行监控,获取所述运行数据。
优选地,其中所述运行数据获取模块201,对目标设备的运行数据进行监控,获取所述运行数据,包括:
利用OpenHardwareMonitor工具对目标设备进行实时监测,以获取所述目标设备运行时的CPU信息和GPU信息,以获取所述运行数据。
优选地,所述输入数据获取模块202,用于基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据。
优选地,其中所述输入数据获取模块202,基于所述运行数据确定每个采样时刻对应的特征值,包括:
对所述运行数据进行格式转换,基于需求信息从经过格式转换后的运行数据中进行需求特征数据的选取,并剔除所述需求特征数据的单位信息;
计算所述需求特征数据中每个特征的权重,并基于每个特征的权重确定每个采样时刻对应的特征值。
优选地,其中所述输入数据获取模块202,利用如下方式计算所述需求特征数据中每个特征的权重,包括:
cos(xh,xp)=xh*xp/(|xh|*|xp|),
所述方法利用如下方式基于每个特征的权重确定每个采样时刻对应的特征值,包括:
其中,Kh为第h个特征的权重;N1为选取的特征的数量和1的差;cos(xh,xp)为第h个特征和第p个特征的距离;xh为第h个特征对应的特征数据;xp为第p个特征对应的特征数据。
优选地,所述检测模块203,用于基于所述输入数据和预设基于深度学习的胶囊网络模型进行挖矿程序的检测。
优选地,其中所述***还包括:模型训练模块,用于:
利用如下方式进行基于深度学习的胶囊网络模型的训练,以获取所述预设基于深度学习的胶囊网络模型,包括:
初始化向量bij;其中,i表示前层L-1层的第i个胶囊单元,j表示当前层L层的第j个胶囊单元;
对于前层L-1层的第i个胶囊单元,基于所述向量bij进行softmax操作,以获取所述第i个胶囊单元对当前层第j个胶囊单元的耦合系数cij;
基于第i个胶囊单元中的神经元向量和对应的权重矩阵,计算所述第i个胶囊单元对当前层第j个胶囊单元的预测向量
基于所述第i个胶囊单元对当前层第j个胶囊单元的耦合系数cij和预测向量计算所述第j个胶囊单元对应的输入向量sj;
基于所述第j个胶囊单元对应的输入向量sj对后一个胶囊单元j+1的输入向量si+1进行增强;
对所有的进行了增强处理的输入向量进行压缩操作,获取传递到上层胶囊单元的输出向量vj;
对权重bij进行动态更新操作,并重新进行输入向量的计算,直至迭代次数达到预设次数时,训练完成,获取所述预设基于深度学习的胶囊网络模型。
优选地,其中所述模型训练模块,利用如下方式获取所述第i个胶囊单元对当前层第j个胶囊单元的耦合系数cij,包括:
其中,j表示第j个输出;k表示神经网络的多个输出或类别数;为标准指数函数应用于前层第i个胶囊单元输入向量的每个元素;为标准指数函数应用于当前层第j个胶囊单元输入向量的每个元素;ci为softmax函数的输入向量。
优选地,其中所述模型训练模块,利用如下方式计算第j个胶囊单元对应的输入向量sj,包括:
其中,cij为第i个胶囊单元对当前层第j个胶囊单元的耦合系数;Wij为权重矩阵中第i个胶囊单元与当前层第j个胶囊单元之间对应的权值;ui表示第i个胶囊单元的输出;Wijui为第i个胶囊单元对应的预测向量。
优选地,其中所述模型训练模块,对所有的进行了增强处理的输入向量进行压缩操作,获取传递到上层胶囊单元的向量vj,包括:
其中,vj为传递给当前层第j个胶囊单元的向量;sj为第j个胶囊单元对应的增强后的输入向量。
优选地,其中所述模型训练模块,对权重bij进行动态更新操作,包括:
利用L+1层的胶囊单元的输出向量vj与从L层胶囊单元得到的预测向量做点积,并加上原权重bij进行更新,以获取到新的权重bij。
本发明的实施例的基于深度学习网络模型的挖矿程序检测***300与本发明的另一个实施例的基于深度学习网络模型的挖矿程序检测方法100相对应,在此不再赘述。
基于本发明的另一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现一种基于深度学习网络模型的挖矿程序检测方法中任一项的步骤。
基于本发明的另一方面,本发明提供一种电子设备,包括:
上述的计算机可读存储介质;以及
一个或多个处理器,用于执行所述计算机可读存储介质中的程序。
已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。
通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该[装置、组件等]”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于深度学习的胶囊网络模型的挖矿程序检测方法,其特征在于,所述方法包括:
对目标设备的运行数据进行监控,获取所述运行数据;
基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据;以及
基于所述输入数据和预设的基于深度学习的胶囊网络模型进行挖矿程序的检测。
2.根据权利要求1所述的方法,其特征在于,所述对目标设备的运行数据进行监控,获取所述运行数据,包括:
利用硬件监测工具对目标设备进行实时监测,以获取所述目标设备运行时的CPU信息和GPU信息,基于所述CPU信息和GPU信息获取所述运行数据。
3.根据权利要求1所述的方法,其特征在于,所述基于所述运行数据确定每个采样时刻对应的特征值,包括:
对所述运行数据进行格式转换,基于需求信息从经过格式转换后的运行数据中进行需求特征数据的选取,并剔除所述需求特征数据的单位信息;
计算所述需求特征数据中每个特征的权重,并基于每个特征的权重确定每个采样时刻对应的特征值。
4.根据权利要求3所述的方法,其特征在于,利用如下方式计算所述需求特征数据中每个特征的权重,包括:
cos(xh,xp)=xh*xp/(|xh|*|xp|),
利用如下方式基于每个特征的权重确定每个采样时刻对应的特征值,包括:
其中,Kh为第h个特征的权重;N1为选取的特征的数量减去1的差值;cos(xh,xp)为第h个特征和第p个特征的距离;xh为第h个特征对应的特征数据;xp为第p个特征对应的特征数据,h、p和N1为自然数;|xh|为第h个特征对应的特征数据的模;|xp|为第p个特征对应的特征数据的模;X是每个采样时刻对应的特征值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
利用如下方式进行基于深度学习的胶囊网络模型的训练,以获取所述预设的基于深度学习的胶囊网络模型,包括:
初始化向量bij;其中,i表示前层L层的第i个胶囊单元,j表示当前层L+1层的第j个胶囊单元;
对于前层L层的第i个胶囊单元,基于所述向量bij进行softmax操作,以获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij;
基于第i个胶囊单元中的神经元向量和对应的权重矩阵,计算所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的预测向量
基于所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij和预测向量计算所述第j个胶囊单元对应的输入向量sj;
基于所述第j个胶囊单元对应的输入向量sj对后一个胶囊单元j+1的输入向量si+1进行增强处理;
对所有的进行了增强处理的输入向量进行压缩操作,获取要被传递到当前层L+1层的第j个胶囊单元的输出向量vj;
对向量bij进行动态更新操作,并重新进行输入向量sj的计算,直至迭代次数达到预设次数时,训练完成,获取所述预设的基于深度学习的胶囊网络模型。
6.根据权利要求5所述的方法,其特征在于,利用如下方式获取所述第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数cij,包括:
其中,j表示神经网络输出向量中第j个类别的值;k表示神经网络的类别数;为标准指数函数应用于前层L层的第i个胶囊单元的输入向量的每个元素;为标准指数函数应用于当前层L+1层的第j个胶囊单元的输入向量的每个元素;ci为softmax函数的输入向量;exp(ci)为标准指数函数应用于softmax函数的输入向量。
7.根据权利要求5所述的方法,其特征在于,利用如下方式计算第j个胶囊单元对应的输入向量sj,包括:
其中,cij为第i个胶囊单元对当前层L+1层的第j个胶囊单元的耦合系数;Wij为权重矩阵中前层L层的第i个胶囊单元与当前层L+1层的第j个胶囊单元之间对应的权值;ui表示前层L层含有一组神经元的第i个胶囊单元;Wijui为第i个胶囊单元对应的预测向量。
8.一种基于深度学习的胶囊网络模型的挖矿程序检测***,其特征在于,所述***包括:
运行数据获取模块,用于对目标设备的运行数据进行监控,获取所述运行数据;
输入数据获取模块,用于基于所述运行数据确定每个采样时刻对应的特征值,并根据所有采样时刻对应的特征值确定输入数据;
检测模块,用于基于所述输入数据和预设基于深度学习的胶囊网络模型进行挖矿程序的检测。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
权利要求9中所述的计算机可读存储介质;以及
一个或多个处理器,用于执行所述计算机可读存储介质中的程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310967606.1A CN118260744A (zh) | 2023-08-03 | 2023-08-03 | 基于深度学习的胶囊网络模型的挖矿程序检测方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310967606.1A CN118260744A (zh) | 2023-08-03 | 2023-08-03 | 基于深度学习的胶囊网络模型的挖矿程序检测方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118260744A true CN118260744A (zh) | 2024-06-28 |
Family
ID=91610031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310967606.1A Pending CN118260744A (zh) | 2023-08-03 | 2023-08-03 | 基于深度学习的胶囊网络模型的挖矿程序检测方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118260744A (zh) |
-
2023
- 2023-08-03 CN CN202310967606.1A patent/CN118260744A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4206957A1 (en) | Model training method and related device | |
CN110264270B (zh) | 一种行为预测方法、装置、设备和存储介质 | |
CN113240155A (zh) | 预测碳排放量的方法、装置及终端 | |
EP4350575A1 (en) | Image classification method and related device thereof | |
CN111401473A (zh) | 基于注意力机制卷积神经网络的红外目标分类方法 | |
CN112528108B (zh) | 一种模型训练***、模型训练中梯度聚合的方法及装置 | |
CN115618269A (zh) | 基于工业传感器生产的大数据分析方法及*** | |
CN109117352B (zh) | 服务器性能预测方法和装置 | |
EP4318322A1 (en) | Data processing method and related device | |
CN113541985A (zh) | 物联网故障诊断方法、模型的训练方法及相关装置 | |
CN116700206B (zh) | 基于多模态神经网络的工业控制***异常检测方法及装置 | |
CN116739154A (zh) | 一种故障预测方法及其相关设备 | |
CN118260744A (zh) | 基于深度学习的胶囊网络模型的挖矿程序检测方法及*** | |
CN115601042A (zh) | 信息识别方法、装置、电子设备及存储介质 | |
CN115795025A (zh) | 一种摘要生成方法及其相关设备 | |
CN115292583A (zh) | 一种项目推荐方法及其相关设备 | |
CN114707643A (zh) | 一种模型切分方法及其相关设备 | |
CN116992937A (zh) | 神经网络模型的修复方法和相关设备 | |
CN113487453A (zh) | 基于犯罪要素的法律判决预测方法及*** | |
CN114330634A (zh) | 一种神经网络的处理方法及相关设备 | |
CN113850686A (zh) | 投保概率确定方法、装置、存储介质及电子设备 | |
CN110598578B (zh) | 身份识别方法、身份识别***的训练方法、装置及设备 | |
CN114496263B (zh) | 用于体重指数估计的神经网络模型建立方法及存储介质 | |
CN116384410B (zh) | 一种数字工厂的可视化处理方法及*** | |
CN114943274B (zh) | 模型训练方法、装置、存储介质、服务器、终端及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |