CN111881620A - 一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法 - Google Patents

一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法 Download PDF

Info

Publication number
CN111881620A
CN111881620A CN202010678564.6A CN202010678564A CN111881620A CN 111881620 A CN111881620 A CN 111881620A CN 202010678564 A CN202010678564 A CN 202010678564A CN 111881620 A CN111881620 A CN 111881620A
Authority
CN
China
Prior art keywords
software
data
state
user
behavior
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.)
Granted
Application number
CN202010678564.6A
Other languages
English (en)
Other versions
CN111881620B (zh
Inventor
王硕
刘红日
柏军
王佰玲
孙云霄
王凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weihai Tianzhiwei Network Space Safety Technology Co ltd
Harbin Institute of Technology Weihai
Original Assignee
Weihai Tianzhiwei Network Space Safety Technology Co ltd
Harbin Institute of Technology Weihai
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Weihai Tianzhiwei Network Space Safety Technology Co ltd, Harbin Institute of Technology Weihai filed Critical Weihai Tianzhiwei Network Space Safety Technology Co ltd
Priority to CN202010678564.6A priority Critical patent/CN111881620B/zh
Publication of CN111881620A publication Critical patent/CN111881620A/zh
Application granted granted Critical
Publication of CN111881620B publication Critical patent/CN111881620B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于强化学习算法和GAN模型的用户软件行为模拟系统及其工作方法,该模拟系统包括软件间操作序列收集与提取模块、用户软件内操作序列模拟模块和用户软件间行为模拟模块,软件间操作序列收集与提取模块用于收集软件间原始操作数据,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;用户软件内操作序列模拟模块利用强化学习算法模拟软件内操作序列,生成用户软件内完整操作序列;基于软件间操作序列收集与提取模块得到的结构化数据集,用户软件间行为模拟模块利用用GAN网络模拟用户软件间的行为。该方法可以生成某些特定的功能序列,并且转化为真实操作序列实现软件内和软件间的用户行为模拟。

Description

一种基于强化学习算法和GAN模型的用户软件行为模拟系统 及其工作方法
技术领域
本发明涉及一种基于强化学习算法和GAN模型的用户软件行为模拟系统及其工作方法,属于计算机用户操作行为分析领域。
背景技术
测试环境的真实度体现在网络环境支撑、网络行为、用户个体行为等方面。在真实的网络环境下,多数用户使用桌面应用程序而在链路上产生相应的网络流量,而且典型的网络应用程序使用的协议多是自行设计而不公开的,因此这些协议是很难进行流量模拟的。随着知识图谱、数据挖掘、智能Agent等技术的发展,网络测试环境对更多样、效果更逼真的行为模拟方法提出了迫切的要求。国内的网络测试床很少涉及该层次的研究与实现。目前,用户操作软件的行为可以分为两种,一种是用户粗粒度行为,这种行为主要在乎模拟的结果并不关心模拟的过程。另一种是细粒度行为,这种行为更在乎模拟的过程。实现用户行为模拟对网络测试环境尤为重要。
国内外对实现用户行为模拟大致分为两个方法,第一种方法是通过编写脚本的形式来实现特定功能的模拟,这种方式利用脚本对鼠标位置和键盘输入进行控制,进而完成对一组操作序列的模拟,该方式需要的工作量十分的大,每一组操作序列都需要单独的脚本,想要实现多数软件的多种组合操作相对较为困难,而且适应性差,可扩展性差。第二种方法是通过分析用户的操作习惯、访问习惯,对用户行为的习惯建模来学习用户的行为规律,一次性生成用户的行为操作序列。但是目前并没有生成此序列之后如何转化为用户操作软件的行为的方法。
发明内容
针对现有技术的不足,本发明提供了一种基于强化学习算法和GAN模型的用户软件行为模拟系统。
本发明还提供了一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法。该方法首先对用户软件间行为序列进行收集和预处理,经预处理之后的数据符合用户软件间的行为模拟模块的输入格式;然后用强化学习算法以最短的时间生成指定功能的软件内完整的操作序列;最后使用GAN模型模拟用户软件间的行为。
术语解释:
1.GAN:Generative Adversarial Networks,生成式对抗网络,是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成器和判别器的互相博弈学习产生相当好的输出。
本发明的技术方案为:
一种基于强化学习算法和GAN模型的用户软件行为模拟系统,包括软件间操作序列收集与提取模块、用户软件内操作序列模拟模块和用户软件间行为模拟模块,
软件间操作序列收集与提取模块用于收集软件间原始操作数据,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;
用户软件内操作序列模拟模块利用强化学习算法生成用户软件内完整操作序列,并模拟用户软件内操作行为;
基于软件间操作序列收集与提取模块得到的结构化数据集,用户软件间行为模拟模块利用用GAN网络生成用户软件间的行为序列,并模拟用户软件间的行为。
上述基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,用于生成软件内和软件间的用户行为序列,模拟用户软件内和用户软件间的行为,具体步骤包括:
(1)使用软件间操作序列收集与提取模块对软件间操作序列进行收集,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;
(2)在用户软件内操作序列模拟模块中,使用强化学习算法生成用户软件内完整操作序列,进行用户软件内操作序列模拟;
(3)基于步骤(1)生成的结构化数据集,使用GAN网络生成用户软件间的行为序列,进行用户软件间的行为模拟。
根据本发明优选的,步骤(3)中,所述GAN网络包括生成器和判别器,
生成器用于估计真实样本数据的分布,使用服从某一概率分布的样本输入到生成器;生成器利用该随机样本产生一个假数据,将其送入判别器;
判别器的输入包括真实数据和生成器生成的数据,根据输入的数据尝试预测输入数据是真实数据和生成器生成的数据,判别器使用Sigmoid函数解决二元分类问题;
在训练过程中固定生成器或判别器,更新判别器或生成器的网络权重,交替迭代;
当固定生成器的时候,对判别器进行优化,若输入来自于真实数据,判别器优化网络结构使自己输出为真;若输入来自于生成器生成的数据,则判别器优化网络结构使输出为假;
当固定判别器的时候,生成器优化自己的网络使生成器输出尽可能和真实数据一样的样本,并且使得生成的样本经过判别器之后,判别器输出为真,在这个过程中,双方都尽可能的优化自己,从而形成竞争对抗,直到达到动态的平衡,即针对生成器生成的数据,判别器无法判别其是否来自真实数据;
所述GAN网络输入的数据为步骤(1)生成的结构化数据集;用户软件间行为序列由GAN网络中训练后的生成器生成。
本模块采用GPU运算、深度学习数值计算开源软件库tensorflow实现。对于判别器,输入来自两部分:真实数据和生成器生成的假数据,输出是真和假。对于生成器,输入为服从某一概率分布的样本,输出为生成的伪数据。
本发明使用GAN网络的好处在于,训练的模型只用到了反向传播,而不需要马尔可夫链,并且生成器的更新不直接依赖数据样本而是使用判别器进行反向传播,因而生成的伪行为序列会更加真实。
根据本发明优选的,步骤(2)中,使用强化学习算法生成用户软件内完整操作序列,进行用户软件内操作序列模拟;将软件中可以点击的菜单或者按钮定义为动作,点击事件过后的软件状态定义为状态集S中的一员,将通过点击软件打开之后定义为软件的初始状态S;每当软件处于初始状态,用户点击当前可以访问的菜单按钮将其添加到动作集A,那么软件便会转移到新的状态;将新的状态同样也加入到状态集S,周而复始便得到一个软件所有的状态与动作,同时得到状态行为转移矩阵,状态行为转移矩阵中行表示状态,列表是行为;具体过程为:
2-1:输入预先设定的迭代次数T、状态集S、动作集A、步长α、衰减因子γ和探索率ε;
2-2:初始化价值函数Q(S,A),设定价值函数Q(S,A)的终止状态为Q(S,A)等于0;Q(S,A)表示算法从中学习到的知识,是一个状态行为转移矩阵,行表示状态,列表示行为;
2-3:初始化状态S为状态集S中第一个状态序列;
2-4:当前状态S使用∈-贪婪法选择出动作A,并执行该动作;其中ε-贪婪法指在每一步以ε的概率选择在当前状态下最好的动作;
2-5:步骤2-4中的动作完成后,得到新状态S1和奖励R,在新的状态下使用贪婪法选择出动作A1;其中贪婪法指每一步选择都采取在当前状态下最好的动作;
2-6:更新价值函数;
Figure BDA0002585022240000041
2-7:令S=S1
2-8:若状态S不是终止状态,则重复步骤2-4到步骤2-8,记录该次迭代过程中,经过的路径和需要的时间,经过的路径即操作序列,所需要的时间即操作时间;其中路径可表示为:状态1-动作1-状态2-动作2-…-…-状态n;
若状态S是终止状态,则进行下一轮迭代,重复步骤2-3到2-8;
2-9:若迭代次数等于预先设定的迭代次数,则迭代结束,得到某个软件内的操作序列和操作时间以及状态行为转移矩阵。
价值函数Q(S,A)用来寻找在某个状态下的最好的动作,使得最终获得的累计奖励最大。使用强化学习可以在用户操作的环境中主动学习并获得所需要的反馈,能够学习到在动态环境中可执行的策略,可以在单个软件内的模拟可以实现自动操作。
根据本发明优选的,步骤(1)中,对软件间的操作序列进行收集,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集,具体步骤为:
1-1、对软件间的操作序列进行收集,并将得到的原始数据存储在数据库中;
1-2、从数据库中取出原始数据,按照定义的过滤规则逐条地检查原始数据,执行过滤和去重,完成对数据的清洗;定义的过滤规则主要有快照重复的过滤,从而保留关键的状态;鼠标无效点击事件,过滤无效动作,空数据,系统进程数据等。
1-3、按照设定的窗口长度对步骤1-2清洗后的数据进行切片、填充;切片是指对清洗后的数据按照设定的窗口长度来进行分割,填充是指在分割过程中针对不满足设定的窗口长度的片段进行内容填充;
1-4、对步骤1-3得到的数据进行结构化处理,产生完整的结构化数据集。
根据本发明优选的,步骤1-2中,所述过滤规则用于滤除空数据、重复数据和系统进程;
步骤1-4中,结构化处理的过程为:通过分析进程名和执行路径中的信息,确定每一条数据所属的应用软件,将原始数据转为由软件id表示的定长切片的软件间操作序列,从而完成对数据的结构化处理。
本发明的有益效果为:
1.本发明提出的一种基于强化学习算法和GAN模型的用户软件行为的模拟系统可以为网络靶场、政府、科研机构等单位和个人提供生成用户行为模拟序列的功能,能够更加真实地模拟用户行为。
2.使用GAN网络输出生成的用户软件间行为序列,训练的模型只用到了反向传播,而不需要马尔可夫链,并且生成器的更新不直接来袭数据样本而是使用判别器进行反向传播,因而生成的伪行为序列会更加真实。
3.用户软件内操作序列模拟模块中,使用强化学习算法能够以最短的时间生成指定功能的软件内完整的操作序列。
4.使用软件间操作序列收集与提取模块收集用户软件间的真实数据,并进行过滤处理、提取信息并转换为结构化数据,提高了后期算法的处理能力。不仅利用了真实用户数据来生成行为序列,还将行为转化为了可执行的操作。
附图说明
图1为本发明提供的基于强化学习算法和GAN模型的用户软件行为模拟系统的结构示意图。
图2为软件间操作序列收集与提取模块的程序流程图。
图3为Q-Learning算法的程序流程图。
图4为GAN模型模拟用户软件间的行为的结构示意图。
具体实施方式
下面结合实施例和说明书附图对本发明做进一步说明,但不限于此。
实施例1
一种基于强化学习算法和GAN模型的用户软件行为模拟系统,如图1所示,包括软件间操作序列收集与提取模块、用户软件内操作序列模拟模块和用户软件间行为模拟模块,
软件间操作序列收集与提取模块用于收集软件间原始操作数据,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;
用户软件内操作序列模拟模块利用强化学习算法生成用户软件内完整操作序列,并模拟用户软件内操作行为;
基于软件间操作序列收集与提取模块得到的结构化数据集,用户软件间行为模拟模块利用用GAN网络生成用户软件间的行为序列,并模拟用户软件间的行为。
实施例2
实施例1提供的一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,用于生成软件内和软件间的用户行为序列,模拟用户软件内和用户软件间的行为,具体步骤包括:
(1)使用软件间操作序列收集与提取模块对软件间操作序列进行收集,如图2所示,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;
步骤(1)中,对软件间的操作序列进行收集,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集,具体步骤为:
1-1、对软件间的操作序列进行收集,并将得到的原始数据存储在数据库中;
1-2、从数据库中取出原始数据,按照定义的过滤规则逐条地检查原始数据,执行过滤和去重,完成对数据的清洗;定义的过滤规则主要有快照重复的过滤,从而保留关键的状态;鼠标无效点击事件,过滤无效动作,空数据,系统进程数据等。
步骤1-2中,过滤规则用于滤除空数据、重复数据和系统进程;
1-3、按照设定的窗口长度对步骤1-2清洗后的数据进行切片、填充;切片是指对清洗后的数据按照设定的窗口长度来进行分割,填充是指在分割过程中针对不满足设定的窗口长度的片段进行内容填充;
1-4、对步骤1-3得到的数据进行结构化处理,产生完整的结构化数据集。
步骤1-4中,结构化处理的过程为:通过分析进程名和执行路径中的信息,确定每一条数据所属的应用软件,将原始数据转为由软件id表示的定长切片的软件间操作序列,从而完成对数据的结构化处理。
(2)在用户软件内操作序列模拟模块中,使用强化学习算法生成用户软件内完整操作序列,进行用户软件内操作序列模拟;
步骤(2)中,如图3所示,使用强化学习算法生成用户软件内完整操作序列,进行用户软件内操作序列模拟;将软件中可以点击的菜单或者按钮定义为动作,点击事件过后的软件状态定义为状态集S中的一员,将通过点击软件打开之后定义为软件的初始状态S;每当软件处于初始状态,用户点击当前可以访问的菜单按钮将其添加到动作集A,那么软件便会转移到新的状态;将新的状态同样也加入到状态集S,周而复始便得到一个软件所有的状态与动作,同时得到状态行为转移矩阵,状态行为转移矩阵中行表示状态,列表是行为;具体过程为:
2-1:输入预先设定的迭代次数T、状态集S、动作集A、步长α、衰减因子γ和探索率ε;
2-2:初始化价值函数Q(S,A),设定价值函数Q(S,A)的终止状态为Q(S,A)等于0;Q(S,A)表示算法从中学习到的知识,是一个状态行为转移矩阵,行表示状态,列表示行为;
2-3:初始化状态S为状态集S中第一个状态序列;
2-4:当前状态S使用∈-贪婪法选择出动作A,并执行该动作;其中ε-贪婪法指在每一步以ε的概率选择在当前状态下最好的动作;
2-5:步骤2-4中的动作完成后,得到新状态S1和奖励R,在新的状态下使用贪婪法选择出动作A1;其中贪婪法指每一步选择都采取在当前状态下最好的动作;
2-6:更新价值函数;
Figure BDA0002585022240000071
2-7:令S=S1
2-8:若状态S不是终止状态,则重复步骤2-4到步骤2-8,记录该次迭代过程中,经过的路径和需要的时间,经过的路径即操作序列,所需要的时间即操作时间;其中路径可表示为:状态1-动作1-状态2-动作2-…-…-状态n;
若状态S是终止状态,则进行下一轮迭代,重复步骤2-3到2-8;
2-9:若迭代次数等于预先设定的迭代次数,则迭代结束,得到某个软件内的操作序列和操作时间以及状态行为转移矩阵。
价值函数Q(S,A)用来寻找在某个状态下的最好的动作,使得最终获得的累计奖励最大。使用强化学习可以在用户操作的环境中主动学习并获得所需要的反馈,能够学习到在动态环境中可执行的策略,可以在单个软件内的模拟可以实现自动操作。
(3)基于步骤(1)生成的结构化数据集,使用GAN网络生成用户软件间的行为序列,进行用户软件间的行为模拟。
步骤(3)中,如图4所示,GAN网络包括生成器和判别器,
生成器用于估计真实样本数据的分布,使用服从某一概率分布的样本输入到生成器;生成器利用该随机样本产生一个假数据,将其送入判别器;
判别器的输入包括真实数据和生成器生成的数据,根据输入的数据尝试预测输入数据是真实数据和生成器生成的数据,判别器使用Sigmoid函数解决二元分类问题;
在训练过程中固定生成器或判别器,更新判别器或生成器的网络权重,交替迭代;
当固定生成器的时候,对判别器进行优化,若输入来自于真实数据,判别器优化网络结构使自己输出为真;若输入来自于生成器生成的数据,则判别器优化网络结构使输出为假;
当固定判别器的时候,生成器优化自己的网络使生成器输出尽可能和真实数据一样的样本,并且使得生成的样本经过判别器之后,判别器输出为真,在这个过程中,双方都尽可能的优化自己,从而形成竞争对抗,直到达到动态的平衡,即针对生成器生成的数据,判别器无法判别其是否来自真实数据;
GAN网络输入的数据为步骤(1)生成的结构化数据集;用户软件间行为序列由GAN网络中训练后的生成器生成。
本模块采用GPU运算、深度学习数值计算开源软件库tensorflow实现。对于判别器,输入来自两部分:真实数据和生成器生成的假数据,输出是真和假。对于生成器,输入为服从某一概率分布的样本,输出为生成的伪数据。
本发明使用GAN网络的好处在于,训练的模型只用到了反向传播,而不需要马尔可夫链,并且生成器的更新不直接依赖数据样本而是使用判别器进行反向传播,因而生成的伪行为序列会更加真实。

Claims (6)

1.一种基于强化学习算法和GAN模型的用户软件行为模拟系统,其特征在于,包括软件间操作序列收集与提取模块、用户软件内操作序列模拟模块和用户软件间行为模拟模块,
软件间操作序列收集与提取模块用于收集软件间原始操作数据,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;
用户软件内操作序列模拟模块利用强化学习算法生成用户软件内完整操作序列,并模拟用户软件内操作行为;
基于软件间操作序列收集与提取模块得到的结构化数据集,用户软件间行为模拟模块利用用GAN网络生成用户软件间的行为序列,并模拟用户软件间的行为。
2.如权利要求1所述的一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,其特征在于,用于生成软件内和软件间的用户行为序列,模拟用户软件内和用户软件间的行为,具体步骤包括:
(1)使用软件间操作序列收集与提取模块对软件间操作序列进行收集,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集;
(2)在用户软件内操作序列模拟模块中,使用强化学习算法生成用户软件内完整操作序列,进行用户软件内操作序列模拟;
(3)基于步骤(1)生成的结构化数据集,使用GAN网络生成用户软件间的行为序列,进行用户软件间的行为模拟。
3.根据权利要求2所述的一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,其特征在于,步骤(3)中,所述GAN网络包括生成器和判别器,
生成器用于估计真实样本数据的分布,使用服从某一概率分布的样本输入到生成器;生成器利用该随机样本产生一个假数据,将其送入判别器;
判别器的输入包括真实数据和生成器生成的数据,根据输入的数据尝试预测输入数据是真实数据和生成器生成的数据,判别器使用Sigmoid函数解决二元分类问题;
在训练过程中固定生成器或判别器,更新判别器或生成器的网络权重,交替迭代;
当固定生成器的时候,对判别器进行优化,若输入来自于真实数据,判别器优化网络结构使自己输出为真;若输入来自于生成器生成的数据,则判别器优化网络结构使输出为假;
当固定判别器的时候,生成器优化自己的网络使生成器输出尽可能和真实数据一样的样本,并且使得生成的样本经过判别器之后,判别器输出为真,在这个过程中,双方都尽可能的优化自己,从而形成竞争对抗,直到达到动态的平衡,即针对生成器生成的数据,判别器无法判别其是否来自真实数据;
所述GAN网络输入的数据为步骤(1)生成的结构化数据集;用户软件间行为序列由GAN网络中训练后的生成器生成。
4.根据权利要求2所述的一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,其特征在于,步骤(2)中,使用强化学习算法生成用户软件内完整操作序列,进行用户软件内操作序列模拟;将软件中可以点击的菜单或者按钮定义为动作,点击事件过后的软件状态定义为状态集S中的一员,将通过点击软件打开之后定义为软件的初始状态S;每当软件处于初始状态,用户点击当前可以访问的菜单按钮将其添加到动作集A,那么软件便会转移到新的状态;将新的状态同样也加入到状态集S,周而复始便得到一个软件所有的状态与动作,同时得到状态行为转移矩阵,状态行为转移矩阵中行表示状态,列表是行为;具体过程为:
2-1:输入预先设定的迭代次数T、状态集S、动作集A、步长α、衰减因子γ和探索率ε;
2-2:初始化价值函数Q(S,A),设定价值函数Q(S,A)的终止状态为Q(S,A)等于0;Q(S,A)表示算法从中学习到的知识,是一个状态行为转移矩阵,行表示状态,列表示行为;
2-3:初始化状态S为状态集S中第一个状态序列;
2-4:当前状态S使用∈-贪婪法选择出动作A,并执行该动作;其中ε-贪婪法指在每一步以ε的概率选择在当前状态下最好的动作;
2-5:步骤2-4中的动作完成后,得到新状态S1和奖励R,在新的状态下使用贪婪法选择出动作A1;其中贪婪法指每一步选择都采取在当前状态下最好的动作;
2-6:更新价值函数;
Figure FDA0002585022230000021
2-7:令S=S1
2-8:若状态S不是终止状态,则重复步骤2-4到步骤2-8,记录该次迭代过程中,经过的路径和需要的时间,经过的路径即操作序列,所需要的时间即操作时间;
若状态S是终止状态,则进行下一轮迭代,重复步骤2-3到2-8;
2-9:若迭代次数等于预先设定的迭代次数,则迭代结束,得到某个软件内的操作序列和操作时间以及状态行为转移矩阵。
5.根据权利要求2所述的一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,其特征在于,步骤(1)中,对软件间的操作序列进行收集,对数据进行过滤和去重,再对数据进行结构化处理,生成结构化数据集,具体步骤为:
1-1、对软件间的操作序列进行收集,并将得到的原始数据存储在数据库中;
1-2、从数据库中取出原始数据,按照定义的过滤规则逐条地检查原始数据,执行过滤和去重,完成对数据的清洗;
1-3、按照设定的窗口长度对步骤1-2清洗后的数据进行切片、填充;切片是指对清洗后的数据按照设定的窗口长度来进行分割,填充是指在分割过程中针对不满足设定的窗口长度的片段进行内容填充;
1-4、对步骤1-3得到的数据进行结构化处理,产生完整的结构化数据集。
6.根据权利要求5所述的一种基于强化学习算法和GAN模型的用户软件行为模拟系统的工作方法,其特征在于,步骤1-2中,所述过滤规则用于滤除空数据、重复数据和系统进程;
步骤1-4中,结构化处理的过程为:通过分析进程名和执行路径中的信息,确定每一条数据所属的应用软件,将原始数据转为由软件id表示的定长切片的软件间操作序列,从而完成对数据的结构化处理。
CN202010678564.6A 2020-07-15 2020-07-15 一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法 Active CN111881620B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010678564.6A CN111881620B (zh) 2020-07-15 2020-07-15 一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010678564.6A CN111881620B (zh) 2020-07-15 2020-07-15 一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法

Publications (2)

Publication Number Publication Date
CN111881620A true CN111881620A (zh) 2020-11-03
CN111881620B CN111881620B (zh) 2022-12-30

Family

ID=73150763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010678564.6A Active CN111881620B (zh) 2020-07-15 2020-07-15 一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法

Country Status (1)

Country Link
CN (1) CN111881620B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113300882A (zh) * 2021-05-08 2021-08-24 北京科技大学 一种面向材料大数据的数据收集传输方法及装置
CN116244161A (zh) * 2023-05-12 2023-06-09 山东齐鲁壹点传媒有限公司 一种基于深度模拟操作的数据采集方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109889452A (zh) * 2019-01-07 2019-06-14 中国科学院计算技术研究所 基于条件生成式对抗网络的网络背景流量生成方法和系统
CN110009171A (zh) * 2018-11-27 2019-07-12 阿里巴巴集团控股有限公司 用户行为模拟方法、装置、设备及计算机可读存储介质
CN110377354A (zh) * 2019-06-04 2019-10-25 哈尔滨工业大学(威海) 一种软件操作序列自动生成方法
EP3579154A1 (en) * 2018-06-05 2019-12-11 Nokia Technologies Oy Reinforcement learning for user behaviour

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3579154A1 (en) * 2018-06-05 2019-12-11 Nokia Technologies Oy Reinforcement learning for user behaviour
CN110009171A (zh) * 2018-11-27 2019-07-12 阿里巴巴集团控股有限公司 用户行为模拟方法、装置、设备及计算机可读存储介质
CN109889452A (zh) * 2019-01-07 2019-06-14 中国科学院计算技术研究所 基于条件生成式对抗网络的网络背景流量生成方法和系统
CN110377354A (zh) * 2019-06-04 2019-10-25 哈尔滨工业大学(威海) 一种软件操作序列自动生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
XINSHI CHEN 等: "《Generative Adversarial User Model for Reinforcement Learning Based Recommendation System》", 《ARXIV》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113300882A (zh) * 2021-05-08 2021-08-24 北京科技大学 一种面向材料大数据的数据收集传输方法及装置
CN113300882B (zh) * 2021-05-08 2022-04-26 北京科技大学 一种面向材料大数据的数据收集传输方法及装置
CN116244161A (zh) * 2023-05-12 2023-06-09 山东齐鲁壹点传媒有限公司 一种基于深度模拟操作的数据采集方法
CN116244161B (zh) * 2023-05-12 2023-08-11 山东齐鲁壹点传媒有限公司 一种基于深度模拟操作的数据采集方法

Also Published As

Publication number Publication date
CN111881620B (zh) 2022-12-30

Similar Documents

Publication Publication Date Title
CN110674604B (zh) 基于多维时序帧卷积lstm的变压器dga数据预测方法
CN108647145B (zh) 软件内存安全检测方法及系统
CN111881620B (zh) 一种基于强化学习算法和gan模型的用户软件行为模拟系统及其工作方法
CN110445126A (zh) 一种非侵入式负荷分解方法及系统
CN107066389A (zh) 基于集成学习的软件缺陷重新打开的预测方法
CN117236677A (zh) 一种基于事件抽取的rpa流程挖掘方法及装置
Mikuła et al. Magnushammer: A transformer-based approach to premise selection
CN102945198A (zh) 一种表征高性能计算应用特征的方法
CN116450486A (zh) 多元异构计算系统内节点的建模方法、装置、设备及介质
CN112035345A (zh) 一种基于代码片段分析的混合深度缺陷预测方法
Cheng et al. HINNPerf: Hierarchical interaction neural network for performance prediction of configurable systems
CN111882062B (zh) 一种基于强化学习的Windows窗体应用程序自学习智能机器人及其工作方法
CN114420217A (zh) 一种新型量子化学分子性能预测的方法和系统
Wen et al. MapReduce-based BP neural network classification of aquaculture water quality
CN116306780B (zh) 一种动态图链接生成方法
Stockman et al. Forecasting the 2016–2017 Central Apennines earthquake sequence with a neural point process
Niu Optimization of teaching management system based on association rules algorithm
Yang et al. Reliability assessment of CNC machining center based on Weibull neural network
CN112446542B (zh) 基于注意力神经网络的社交网络链路预测方法
CN109977194A (zh) 基于无监督学习的文本相似度计算方法、系统、设备及介质
CN116308854A (zh) 一种基于概率扩散的信息级联流行度预测方法及系统
CN115240787A (zh) 基于深度条件循环神经网络的全新分子生成方法
CN115527626A (zh) 分子处理方法、装置、电子设备、存储介质及程序产品
CN114611990A (zh) 一种网络信息体系要素体系贡献率评估方法和装置
CN114840856A (zh) 一种状态感知的物联网可信执行环境模糊测试方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Liu Hongri

Inventor after: Bai Jun

Inventor after: Wang Bailing

Inventor after: Sun Yunxiao

Inventor after: Wang Kai

Inventor after: Wang Shuo

Inventor before: Wang Shuo

Inventor before: Liu Hongri

Inventor before: Bai Jun

Inventor before: Wang Bailing

Inventor before: Sun Yunxiao

Inventor before: Wang Kai

GR01 Patent grant
GR01 Patent grant