[发明专利]一种基于强化学习的深度学习算子测试数据生成方法在审
申请号: | 202111471856.3 | 申请日: | 2021-11-30 |
公开(公告)号: | CN114265765A | 公开(公告)日: | 2022-04-01 |
发明(设计)人: | 房春荣;顾明政;刘佳玮;何云;孙浩峰;陈振宇 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06N20/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210093 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 强化 学习 深度 算子 测试数据 生成 方法 | ||
1.一种基于强化学习的深度学习算子测试数据生成方法,其特征是基于被提前定义的基本变异方法组定义一个变异方法组,构造一个以方法组中的所有方法为状态集合、跳转至方法组中的所有方法为动作集合的QTable,进行带关联的强化学习训练,并最终达到在复杂的算子场景下采用变异方法链生成深度学习算子测试数据的目的。该方法分为以下几个步骤:
1)变异方法定义:本发明预定义了几种变异方法作为基本变异组,实际使用时可根据需要添加、减少、修改变异方法,定义该次实践专属的变异方法组,上述变异方法均属于张量变异方法,区别于传统标量变异;
2)构造QTable:定义状态s为将某种变异方法施加于当前张量,定义动作a为选择某个变异方法并跳转至该方法对应的状态,以当前变异方法组的全部变异方法按上述方式构造强化学习算法Q-Learning的QTable;
3)强化学习训练:初始化上述QTable,进行带关联的强化学习训练;
4)链式采样:迭代生成随机种子张量和随机起始变异方法,并按QTable对张量链式地施加变异方法,直至张量成功触发准确性问题或迭代至最大迭代次数。
2.根据权利要求1所述的变异方法定义子过程,其特征在于:
1)预定义了一组基本的变异方法组,该方法组包括:字节变异、高斯变异和多项式变异。其中,字节变异是指对测试数据的浮点数二进制编码进行字节操作的变异,操作包括二进制编码各字节的增加、删除、取反、移位、随机重置,支持float32和float16格式编码;高斯变异是指在以测试数据为均值的、至少99.7%处于有效数值区间的高斯分布中进行采样得到新的测试数据;多项式变异是指对测试数据到边界的距离进行不同比例缩放并以此对数据进行线性变换;
2)上述预定义的基本变异方法基于不同的基本思想,如:边界数据更容易引发异常、均匀采样对于小于1的数不利等,经过大量实验证明兼顾有效性与多样性,且目标为张量变异,变异操作较标量变异更复杂、更具统计学特征;
3)基于基本变异方法组,可根据实际需要对其进行扩增、削减和修改,形成新的变异方法组,但需要保证变异方法适用于张量且同时适用于float32和float16格式编码。
3.根据权利要求1所述的构造QTable子过程,其特征在于:
1)定义状态s为将某种变异方法施加于当前张量,定义动作a为选择某个变异方法并跳转至该方法对应的状态,从而状态s和动作a的集合大小与变异方法组大小相同;
2)以当前变异方法组的全部变异方法按上述方式分别构造状态集合和动作集合,并构造强化学习算法Q-Learning的QTable,该表格大小为变异方法组大小*变异方法组大小。
4.根据权利要求1所述的强化学习训练子过程,其特征在于:
1)初始化QTable,配置强化学习训练参数,并通过随机均匀采样生成种子张量;
2)均匀随机采样每次训练的起始变异方法,然后以Q-Learning算法对QTable进行训练,训练过程中,每跳转至一个状态都会将当前状态代表的变异方法施加于当前张量,被修改过的张量将作为下一状态的被变异张量,除非当前结果已触发准确性问题;
3)对于某一次迭代,在规定次数内成功生成触发准确性问题的张量即可获得奖赏,且施加变异方法次数越短奖赏越高,反之,将不会获得负奖赏,即被抑制;
4)强化学习算法将迭代至最大迭代次数或直至QTable变化程度小于某个阈值,上述基于强化学习的链式训练方式非常适合用于复杂、难预测、生成困难的张量生成应用场景。
5.根据权利要求1所述的链式采样子过程,其特征在于:
1)多次迭代,且在每次迭代中均匀随机采样每次训练的起始变异方法及种子张量;
2)在每次迭代中,根据QTable探索变异方法施加路径,随着跳转改变张量并进行测试,若在最大路径长度之内成功生成触发准确性问题的测试数据,则视为成功生成一条测试数据,反之,则视为触发失败;
3)通过上述采样方式,既可以学习到有效的变异方法短路径组合,也可以学习到极为有效的单个变异方法并倾向于使用该方法,因此,这种方式能够生成更为有效的测试数据,能够应对更加复杂的场景。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111471856.3/1.html,转载请声明来源钻瓜专利网。