一种基于生成式目标课程学习的自博弈智能对抗方法

文档序号:31721130发布日期:2022-10-04 23:18阅读:212来源:国知局
一种基于生成式目标课程学习的自博弈智能对抗方法

1.本发明涉及智能体自博弈训练技术领域,尤其涉及一种基于生成式目标课程学习的自博弈智能对抗方法。


背景技术:

2.在竞赛、对抗类场景中,智能体训练通常比较困难,需要设计非常精妙的奖励机制才能取得很好的效果。
3.在传统的强化学习场景中,智能体会尝试习得最大化奖励的行为策略,奖励 (reward)信号组成了智能体的任务,比如达成特定状态或收集物品,智能体的行为则受到环境的限制,比如重力、路上的障碍,以及智能体自身行动产生的影响,像为自己施加移动的外力,这些都属于环境限制,会限定智能体的有效行为。而为了取得更高的奖励,智能体必须学会应对这些环境中的外力,就是说,智能体必须与环境中的种种约束不断抗争,以达成奖励最大的状态序列。
4.在对抗性场景中,智能体不仅需要与环境动态抗争,还需要与另一个对手抗争,可以将对手看作嵌入环境的一部分,它的动作会直接影响到智能体观察到的状态、以及收到的奖励。
5.就好像人类运动员在学习网球时,会找水平近似的对手一同训练一样,因为对手如果太强或太弱并不有助于提高技术。为了更好地提高水平,网球初学者的对手应该也是初学者,而不是球都拿不起的小朋友或者是世界冠军,这样的训练才更有价值;前者无法把球打回,后者无法打出容易打回的球;在初学者有了足够的击球力量后,就可以与水平更强一点的对手竞技了,这本身是一个循序渐进的过程,这是课程学习(curriculum learning)的基本理念。
6.智能体对抗性场景的训练也应该找到合适的水平相近且能够不断提升的对手。从某个角度来看,智能体自身就满足了作为对手的要求,水平(与自己相比) 近似,也会随时间提升,这时,嵌入到环境中的正是智能体自己的对策,可以将整个过程看作智能体对抗逐渐增强的对手,从而形成一种自然进化般的渐进学习,这种训练方法即称为自我博弈(self-play)。
7.在这种训练方式中,关键是需要实现渐进式的学习过程,从简单到复杂,从低能力到高能力,形成一个系统的方法,就像一个课程学习计划。一个科学的课程学习计划,可以逐步地实现从简单到复杂的过程,把复杂的事情变得简单,一个好的课程学习计划,不仅能够加速学习(模型收敛)过程,甚至能够提升学习 (模型)的最终效果。然而,设计一个有效且高效的课程计划并不简单。特别要记住的是,一个不好的课程计划甚至会阻碍模型的学习。这就是课程学习 (curriculum learning)希望解决的问题。


技术实现要素:

8.为此,本发明提供一种基于生成式目标课程学习的自博弈智能对抗方法,用以克
服现有技术中无法针对智能体对抗性训练制定有效且高效的课程计划的问题。
9.为实现上述目的,本发明提供一种基于生成式目标课程学习的自博弈智能对抗方法,包括:
10.步骤s1,筛选目标课程中与当前智能体策略相同等级的目标,将筛选出的目标组成训练集;
11.步骤s2,筛选目标课程中比当前智能体策略高一等级的目标,将筛选出的目标组成验证集;
12.步骤s3,使用所述步骤s1得到的训练集训练一个目标生成式对抗网络模型,在对所述目标生成式对抗网络模型进行训练时,根据计算的loss值判定目标生成式对抗网络模型收敛状态并在判定模型不收敛时对目标生成式对抗网络模型的学习率进行调节;
13.步骤s4,学习率调节完成后,根据每次训练结果数据的误差率和每个训练次数对应的训练结果数据的标准误差确定最佳训练次数;
14.步骤s5,使用验证集对目标生成式对抗网络模型进行验证,根据验证合格率判定模型是否训练充分并在模型训练不充分时对目标生成式对抗网络模型的迭代次数进行调节;
15.步骤s6,在判定所述目标生成式对抗网络模型训练完成后,可产生新目标,使用这些新目标来进行自我博弈智能体训练。
16.进一步地,在对所述目标生成式对抗网络模型进行训练时,将模型的学习率设置为a,将训练次数设置为q,将迭代次数设置为n。
17.进一步地,在完成对所述目标生成式对抗网络模型训练后,使用代价函数计算loss值c,所述中心处理器将loss值c与c0进行比对,其中,c0为中心处理器预设的loss值,
18.若c≥c0,所述中心处理器判定所述目标生成式对抗网络模型loss值c过高,目标生成式对抗网络模型不收敛;
19.若c<c0,所述中心处理器判定所述目标生成式对抗网络模型loss值c符合标准,目标生成式对抗网络模型收敛。
20.进一步地,当所述中心处理器判定所述目标生成式对抗网络模型不收敛时,计算目标生成式对抗网络模型loss值c与c0的差值δc并根据δc将所述目标生成式对抗网络模型的学习率调节至对应值,设定δc=c-c0,所述中心处理器设有第一预设loss值差值δc1、第二预设loss值差值δc2、第三预设loss值差值δc3、第一学习率调节系数α1、第二学习率调节系数α2以及第三学习率调节系数α3,其中δc1<δc2<δc3,设定0.3<α3<α2<α1<0.5,当中心处理器判定所述目标生成式对抗网络模型的loss值c≥c0并根据c与c0的差值δc对模型的学习率a进行减小时,
21.若δc≤δc1,所述中心处理器选取第一学习率调节系数α1对所述学习率进行调节;
22.若δc1<δc≤δc2,所述中心处理器选取第二学习率调节系数α2对所述学习率进行调节;
23.若δc2<δc≤δc3,所述中心处理器选取第三学习率调节系数α3对所述学习率进行调节;
24.当所述中心处理器选取第s学习率调节系数αs对所述学习率进行调节时,设定s=
1,2,3,所述中心处理器将调节后的学习率记为a1,设定a1=a
×
αs,中心处理器以调节后的学习率进行模型训练。
25.进一步地,学习率调节完成后,按照预设的训练次数q进行训练,q为大于 1的正整数,在完成训练后,所述中心处理器计算每次训练结果数据的均值g1, g2,,,gq,在完成每次训练结果数据的均值的计算后,中心处理器计算q次训练结果数据的均值设定中心处理器将分别计算与每次训练结果数据的均值g1,g2,,,gq之间的误差率σm,设定gq之间的误差率σm,设定其中,m=1,2,,,q。
26.进一步地,当所述中心处理器完成对q次训练结果的均值与每次训练结果数据的均值g1,g2,,,gq之间的误差率σm的计算时,中心处理器将σm 按照训练顺序与σ0进行比对,其中,σ0为中心处理器预设误差率,在所述中心处理器将σm与σ0进行顺序比对时,
27.若存在σm≤σ0,则所述中心处理器判定完成对应次数m的训练得到的误差率符合标准并继续计算m次训练次数到q次训练次数的每个训练次数对应的训练结果数据的标准误差;
28.若q次的误差率均σm>σ0,所述中心处理器判定完成对应次数q的训练误差率过大,训练次数不足。
29.进一步地,当所述中心处理器判定存在σm≤σ0时,所述中心处理器继续计算m次训练次数到q次训练次数的每个训练次数对应的训练结果数据的标准误差τi,设定
[0030][0031]
其中,i=m,m+1,m+2,,,q,
[0032]
所述中心处理器完成对标准误差τi的计算后将τi按照训练顺序与τ0进行比对,其中τ0中心处理器预设标准误差,在所述中心处理器将τi与τ0进行顺序比对时,当标准误差中出现τi≤τ0时,所述中心处理器判定完成对应次数i的训练得到的标准误差符合标准并将i设置为所述目标生成式对抗网络模型的训练次数。
[0033]
进一步地,当所述中心处理器判定q次的训练次数不足时,所述中心处理器计算第q次训练结果数据的误差率σq与预设误差率σ0之间的差值δσ并根据δσ将所述目标生成式对抗网络模型的训练次数调节至对应值,设定δσ=σq
‑ꢀ
σ0,所述中心处理器设有第一预设误差率差值δσ1、第二预设误差率差值δσ 2、第三预设误差率差值δσ3、第一训练次数调节系数的γ1、第二训练次数调节系数γ1以及第三训练次数调节系数γ3,其中δσ1<δσ2<δσ3,设定10 <γ1<γ2<γ3<30,
[0034]
若δσ≤δσ1,所述中心处理器选取第一训练次数调节系数γ1对所述训练次数进行调节;
[0035]
若δσ1<δσ≤δσ2,所述中心处理器选取第二训练次数调节系数γ2对所述训练次数进行调节;
[0036]
若δσ2<δσ≤δσ3,所述中心处理器选取第三训练次数调节系数γ3对所述训练次数进行调节;
[0037]
当所述中心处理器选取第e训练次数调节系数γe对所述训练次数进行调节时,设定e=1,2,3,所述中心处理器将调节后的训练次数设置为q1,设定q1=q
ꢀ×
γe。
[0038]
进一步地,再按照调节后的学习率和训练次数对所述目标生成式对抗网络模型进行训练后,使用验证集对目标生成式对抗网络模型进行验证,若目标生成式对抗网络模型在验证时生成的目标属于验证集记为合格,若目标生成式对抗网络模型在验证时生成的目标不属于验证集记为不合格,验证完成后,统计验证合格率e并将e与e0进行比对,其中,e0为中心处理器预设的验证合格率,
[0039]
若e≥e0,所述中心处理器判定验证合格率符合标准,所述目标生成式对抗网络模型训练完成;
[0040]
若e<e0,所述中心处理器判定验证合格率不符合标准,所述目标生成式对抗网络模型训练不充分。
[0041]
进一步地,当所述中心处理器判定所述目标生成式对抗网络模型训练不充分时,计算所述验证合格率e和预设验证合格率e0的差值δe,设定δe=e0-e,所述中心处理器根据该验证合格率差值与预设验证合格率差值的比对结果选取对应的迭代次数调节系数对迭代次数进行调节,并在调节后再次训练所述目标生成式对抗网络模型,所述中心处理器设有第一预设验证合格率差值δe1、第二预设验证合格率差值δe2、第三预设验证合格率差值δe3、第一迭代次数调节系数β 1、第二迭代次数调节系数β1以及第三迭代次数调节系数β3,其中δe1<δe2 <δe3,设定1<β1<β2<β3<3,
[0042]
若δe≤δe1,所述中心处理器选取第一迭代次数调节系数β1对所述迭代次数进行调节;
[0043]
若δe1<δe≤δe2,所述中心处理器选取第二迭代次数调节系数β2对所述迭代次数进行调节;
[0044]
若δe2<δe≤δe3,所述中心处理器选取第三迭代次数调节系数β3对所述迭代次数进行调节;
[0045]
当所述中心处理器选取第j迭代次数调节系数βj对所述迭代次数进行调节时,设定j=1,2,3,所述中心处理器将调节后的迭代次数设置为n1,设定n1=n
ꢀ×
βj。
[0046]
与现有技术相比,本发明的有益效果在于,为实现智能体自我对抗训练的渐进式学习过程,本发明提出了采用生成式目标学习方法的课程学习目标设计来进行自我博弈的实现与提升方法,采用渐进式的学习,逐渐地提高智能体自身和对手的水平,通过不断与自身或自身历史版本的对抗提升能力,进而提高智能体习得策略的速度和鲁棒性。
[0047]
进一步地,本发明在对所述目标生成式对抗网络模型进行训练时,根据计算的loss值判定目标生成式对抗网络模型收敛状态并在判定模型不收敛时对目标生成式对抗网络模型的学习率进行调节,提高了目标生成式对抗网络模型的精准性,进而提高了模型制定学习目标设计的有效性且高效性。
[0048]
进一步地,本发明在学习率调节完成后,根据每次训练结果数据的误差率和每个训练次数对应的训练结果数据的标准误差确定最佳训练次数,一方面,节省了训练时间,另一方面,提高了目标生成式对抗网络模型的计算速率。
[0049]
进一步地,本发明在使用验证集对目标生成式对抗网络模型进行验证,根据验证合格率判定模型是否训练充分并在模型训练不充分时对目标生成式对抗网络模型的迭代次数进行调节,提高了目标生成式对抗网络模型的精准性,进一步提高了模型制定学习目标设计的有效性且高效性。
附图说明
[0050]
图1为本发明实施例公开的基于生成式目标课程学习的自博弈智能对抗方法的流程图。
具体实施方式
[0051]
为了使本发明的目的和优点更加清楚明白,下面结合实施例对本发明作进一步描述;应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
[0052]
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非在限制本发明的保护范围。
[0053]
请参阅图1所示,其为本发明实施例公开的基于生成式目标课程学习的自博弈智能对抗方法的流程图,包括:
[0054]
步骤s1,筛选目标课程中与当前智能体策略相同等级的目标,将筛选出的目标组成训练集;
[0055]
步骤s2,筛选目标课程中比当前智能体策略高一等级的目标,将筛选出的目标组成验证集;
[0056]
步骤s3,使用所述步骤s1得到的训练集训练一个目标生成式对抗网络模型,在对所述目标生成式对抗网络模型进行训练时,根据计算的loss值判定目标生成式对抗网络模型收敛状态并在判定模型不收敛时对目标生成式对抗网络模型的学习率进行调节;
[0057]
步骤s4,学习率调节完成后,根据每次训练结果数据的误差率和每个训练次数对应的训练结果数据的标准误差确定最佳训练次数;
[0058]
步骤s5,使用验证集对目标生成式对抗网络模型进行验证,根据验证合格率判定模型是否训练充分并在模型训练不充分时对目标生成式对抗网络模型的迭代次数进行调节;
[0059]
步骤s6,在判定所述目标生成式对抗网络模型训练完成后,可产生新目标,使用这些新目标来进行自我博弈智能体训练。
[0060]
为实现智能体自我对抗训练的渐进式学习过程,本发明提出了采用生成式目标学习方法的课程学习目标设计来进行自我博弈的实现与提升方法,采用渐进式的学习,逐渐地提高智能体自身和对手的水平,通过不断与自身或自身历史版本的对抗提升能力,进而提高智能体习得策略的速度和鲁棒性。
[0061]
具体而言,在对所述目标生成式对抗网络模型进行训练时,将模型的学习率设置为a,将训练次数设置为q,将迭代次数设置为n。
[0062]
具体而言,在完成对所述目标生成式对抗网络模型训练后,使用代价函数计算loss值c,所述中心处理器将loss值c与c0进行比对,其中,c0为中心处理器预设的loss值,
[0063]
若c≥c0,所述中心处理器判定所述目标生成式对抗网络模型loss值c过高,目标生成式对抗网络模型不收敛;
[0064]
若c<c0,所述中心处理器判定所述目标生成式对抗网络模型loss值c符合标准,目标生成式对抗网络模型收敛。
[0065]
具体而言,当所述中心处理器判定所述目标生成式对抗网络模型不收敛时,计算目标生成式对抗网络模型loss值c与c0的差值δc并根据δc将所述目标生成式对抗网络模
型的学习率调节至对应值,设定δc=c-c0,所述中心处理器设有第一预设loss值差值δc1、第二预设loss值差值δc2、第三预设loss值差值δc3、第一学习率调节系数α1、第二学习率调节系数α2以及第三学习率调节系数α3,其中δc1<δc2<δc3,设定0.3<α3<α2<α1<0.5,当中心处理器判定所述目标生成式对抗网络模型的loss值c≥c0并根据c与c0的差值δc对模型的学习率a进行减小时,
[0066]
若δc≤δc1,所述中心处理器选取第一学习率调节系数α1对所述学习率进行调节;
[0067]
若δc1<δc≤δc2,所述中心处理器选取第二学习率调节系数α2对所述学习率进行调节;
[0068]
若δc2<δc≤δc3,所述中心处理器选取第三学习率调节系数α3对所述学习率进行调节;
[0069]
当所述中心处理器选取第s学习率调节系数αs对所述学习率进行调节时,设定s=1,2,3,所述中心处理器将调节后的学习率记为a1,设定a1=a
×
αs,中心处理器以调节后的学习率进行模型训练。
[0070]
本发明在对所述目标生成式对抗网络模型进行训练时,根据计算的loss值判定目标生成式对抗网络模型收敛状态并在判定模型不收敛时对目标生成式对抗网络模型的学习率进行调节,提高了目标生成式对抗网络模型的精准性,进而提高了模型制定学习目标设计的有效性且高效性。
[0071]
具体而言,学习率调节完成后,按照预设的训练次数q进行训练,q为大于 1的正整数,在完成训练后,所述中心处理器计算每次训练结果数据的均值g1, g2,,,gq,在完成每次训练结果数据的均值的计算后,中心处理器计算q次训练结果数据的均值设定中心处理器将分别计算与每次训练结果数据的均值g1,g2,,,gq之间的误差率σm,设定gq之间的误差率σm,设定其中,m=1,2,,,q。
[0072]
具体而言,当所述中心处理器完成对q次训练结果的均值与每次训练结果数据的均值g1,g2,,,gq之间的误差率σm的计算时,中心处理器将σm 按照训练顺序与σ0进行比对,其中,σ0为中心处理器预设误差率,在所述中心处理器将σm与σ0进行顺序比对时,
[0073]
若存在σm≤σ0,则所述中心处理器判定完成对应次数m的训练得到的误差率符合标准并继续计算m次训练次数到q次训练次数的每个训练次数对应的训练结果数据的标准误差;
[0074]
若q次的误差率均σm>σ0,所述中心处理器判定完成对应次数q的训练误差率过大,训练次数不足。
[0075]
具体而言,当所述中心处理器判定存在σm≤σ0时,所述中心处理器继续计算m次训练次数到q次训练次数的每个训练次数对应的训练结果数据的标准误差τi,设定
[0076][0077]
其中,i=m,m+1,m+2,,,q,
[0078]
所述中心处理器完成对标准误差τi的计算后将τi按照训练顺序与τ0进行比对,其中τ0中心处理器预设标准误差,在所述中心处理器将τi与τ0进行顺序比对时,当标准误差
中出现τi≤τ0时,所述中心处理器判定完成对应次数i的训练得到的标准误差符合标准并将i设置为所述目标生成式对抗网络模型的训练次数。
[0079]
具体而言,当所述中心处理器判定q次的训练次数不足时,所述中心处理器计算第q次训练结果数据的误差率σq与预设误差率σ0之间的差值δσ并根据δσ将所述目标生成式对抗网络模型的训练次数调节至对应值,设定δσ=σq
‑ꢀ
σ0,所述中心处理器设有第一预设误差率差值δσ1、第二预设误差率差值δσ 2、第三预设误差率差值δσ3、第一训练次数调节系数的γ1、第二训练次数调节系数γ1以及第三训练次数调节系数γ3,其中δσ1<δσ2<δσ3,设定10 <γ1<γ2<γ3<30,
[0080]
若δσ≤δσ1,所述中心处理器选取第一训练次数调节系数γ1对所述训练次数进行调节;
[0081]
若δσ1<δσ≤δσ2,所述中心处理器选取第二训练次数调节系数γ2对所述训练次数进行调节;
[0082]
若δσ2<δσ≤δσ3,所述中心处理器选取第三训练次数调节系数γ3对所述训练次数进行调节;
[0083]
当所述中心处理器选取第e训练次数调节系数γe对所述训练次数进行调节时,设定e=1,2,3,所述中心处理器将调节后的训练次数设置为q1,设定q1=q
ꢀ×
γe。
[0084]
本发明在学习率调节完成后,根据每次训练结果数据的误差率和每个训练次数对应的训练结果数据的标准误差确定最佳训练次数,一方面,节省了训练时间,另一方面,提高了目标生成式对抗网络模型的计算速率。
[0085]
具体而言,再按照调节后的学习率和训练次数对所述目标生成式对抗网络模型进行训练后,使用验证集对目标生成式对抗网络模型进行验证,若目标生成式对抗网络模型在验证时生成的目标属于验证集记为合格,若目标生成式对抗网络模型在验证时生成的目标不属于验证集记为不合格,验证完成后,统计验证合格率e并将e与e0进行比对,其中,e0为中心处理器预设的验证合格率,
[0086]
若e≥e0,所述中心处理器判定验证合格率符合标准,所述目标生成式对抗网络模型训练完成;
[0087]
若e<e0,所述中心处理器判定验证合格率不符合标准,所述目标生成式对抗网络模型训练不充分。
[0088]
具体而言,当所述中心处理器判定所述目标生成式对抗网络模型训练不充分时,计算所述验证合格率e和预设验证合格率e0的差值δe,设定δe=e0-e,所述中心处理器根据该验证合格率差值与预设验证合格率差值的比对结果选取对应的迭代次数调节系数对迭代次数进行调节,并在调节后再次训练所述目标生成式对抗网络模型,所述中心处理器设有第一预设验证合格率差值δe1、第二预设验证合格率差值δe2、第三预设验证合格率差值δe3、第一迭代次数调节系数β 1、第二迭代次数调节系数β1以及第三迭代次数调节系数β3,其中δe1<δe2 <δe3,设定1<β1<β2<β3<3,
[0089]
若δe≤δe1,所述中心处理器选取第一迭代次数调节系数β1对所述迭代次数进行调节;
[0090]
若δe1<δe≤δe2,所述中心处理器选取第二迭代次数调节系数β2对所述迭代次数进行调节;
[0091]
若δe2<δe≤δe3,所述中心处理器选取第三迭代次数调节系数β3对所述迭代次数进行调节;
[0092]
当所述中心处理器选取第j迭代次数调节系数βj对所述迭代次数进行调节时,设定j=1,2,3,所述中心处理器将调节后的迭代次数设置为n1,设定n1=n
ꢀ×
βj。
[0093]
本发明在使用验证集对目标生成式对抗网络模型进行验证,根据验证合格率判定模型是否训练充分并在模型训练不充分时对目标生成式对抗网络模型的迭代次数进行调节,提高了目标生成式对抗网络模型的精准性,进一步提高了模型制定学习目标设计的有效性且高效性。
[0094]
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
[0095]
以上所述仅为本发明的优选实施例,并不用于限制本发明;对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1