一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自动驾驶车辆的抗干扰方法和装置与流程

2021-10-08 23:25:00 来源:中国专利 TAG:抗干扰 驾驶 车辆 人工智能 装置


1.本发明涉及人工智能技术领域,具体涉及一种自动驾驶车辆的抗干扰方法和一种自动驾驶车辆的抗干扰装置。


背景技术:

2.深度强化学习(drl)是近年来人工智能备受关注的方向之一,随着强化学习的快速发展和应用,强化学习已经被应用于自动驾驶领域。为了保证深度强化学习在自动驾驶领域的安全应用,关键在于分析、发现深度强化学习算法、模型中的漏洞以防止一些别有用心的人利用这些漏洞来进行非法牟利行为。不同于传统机器学习的单步预测任务,深度强化学习系统需要进行多步决策来完成某项任务,而且连续的决策之间还具有高度的相关性。
3.强化学习通常是一个连续决策的过程,其基本思想是通过最大化智能体从环境中获取的累计奖励,从而学习最优策略以达到学习目的。深度强化学习充分利用神经网络作为参数结构,结合了深度学习的感知能力和强化学习的决策能力来优化深度强化学习策略,最终实现从感知输入到决策输出的端到端深度强化学习框架,具有较强的学习能力且应用广泛。深度强化学习策略通常采用深度神经网络(dnn)来近似操作值函数。但是,dnn容易受到对抗性攻击,攻击者可以在输入中添加较小但精心设计的扰动,这可能会误导dnn以很高的置信度提供不正确的输出。根据对样本的攻击,主要可分为观测攻击、奖励攻击、动作攻击以及环境攻击。同时,深度强化学习的训练过程中也会受到中毒攻击,使得模型的训练代价加大,模型的性能降低。此外,深度强化学习训练的策略还存在安全性隐患,模型策略漏洞的存在会给强化学习系统带来严重的损害,尤其是自动驾驶领域中,这种安全性隐患带来了很大的危害,会使强化学习系统的决策发生错误,这对于强化学习的决策安全应用是重大挑战。


技术实现要素:

4.本发明为解决上述技术问题,提供了一种自动驾驶车辆的抗干扰方法和装置,能够提高自动驾驶控制模型的鲁棒性、抗干扰能力,从而提高自动驾驶的安全性。
5.本发明采用的技术方案如下:
6.一种自动驾驶车辆的抗干扰方法,包括以下步骤:s1,基于强化学习中的异步优势行动者评论家算法对目标智能体进行预训练,其中,目标智能体为具有自动驾驶控制模型的自动驾驶车辆;s2,固定预训练后的目标智能体的策略,并以预训练后的目标智能体的策略,利用深度确定性决策梯度算法训练对抗性智能体;s3,固定训练后的对抗性智能体的策略,并以预训练后的对抗性智能体的策略,基于注意力机制对目标智能体进行对抗性训练;s4,通过对抗性训练后的目标智能体实现自动驾驶控制。
7.在步骤s1中,强化学习中的异步优势行动者评论家算法采用多线程对目标智能体进行预训练,算法模型的主网络和子线程网络均分为actor网络和critic网络,每个线程各
自更新子线程网络的参数,当每个子线程网络产生一定的训练数据后,计算各自子线程网络的损害函数的梯度,然后利用计算的梯度去迭代更新主网络,主网络的参数每间隔一定时间分发给子线程网络。
8.在步骤s2中,深度确定性决策梯度算法的网络结构由actor网络和critic网络两大部分组成,actor网络包含动作估计网络和动作实现网络,critic网络包含状态估计网络和状态实现网络,在利用深度确定性决策梯度算法训练对抗性智能体的训练过程中,将状态转换过程存储在经验回放缓冲区,作为训练数据集,最终训练后的对抗性智能体用以挖掘预训练后的目标智能体的策略中存在的安全漏洞。
9.在步骤s3中,在对目标智能体进行对抗性训练的过程中,每隔一定的回合生成对抗样本,利用通道空间注意力机制和像素空间注意力机制从目标智能体主网络的actor网络中提取浅层特征以生成不同状态的对抗样本,将生成的对抗样本作为输入状态对目标智能体进行对抗训练。
10.步骤s2和s3重复多次执行。
11.一种自动驾驶车辆的抗干扰装置,包括:第一训练模块,用于基于强化学习中的异步优势行动者评论家算法对目标智能体进行预训练,其中,目标智能体为具有自动驾驶控制模型的自动驾驶车辆;第二训练模块,用于固定预训练后的目标智能体的策略,并以预训练后的目标智能体的策略,利用深度确定性决策梯度算法训练对抗性智能体;第三训练模块,用于固定训练后的对抗性智能体的策略,并以预训练后的对抗性智能体的策略,基于注意力机制对目标智能体进行对抗性训练;控制模块,用于通过对抗性训练后的目标智能体实现自动驾驶控制。
12.本发明的有益效果:
13.(1)利用对抗性智能体和注意力机制的方式来实现目标智能体策略优化和模型鲁棒增强的防御效果;(2)在目标智能体策略优化中,利用对抗性智能体来调整优化目标智能体的模型参数,首先固定目标智能体的策略来训练对抗性智能体,对抗性智能体的目的是为了挖掘目标智能体训练的策略中存在的安全漏洞,再利用训练好的对抗性智能体与目标智能体进行对抗性训练,以达到目标智能体策略优化的目的,从而实现模型的鲁棒增强防御效果;(3)在策略防御过程中,利用注意力机制的方法从模仿学习的actor网络中提取浅层特征来生成对抗样本,再对目标智能体进行对抗训练,从而提高目标智能体模型的鲁棒性。由此,能够提高自动驾驶控制模型的鲁棒性、抗干扰能力,从而提高自动驾驶的安全性。
附图说明
14.图1为本发明实施例的自动驾驶车辆的抗干扰方法的流程图;
15.图2为本发明一个实施例的自动驾驶车辆的抗干扰方法的实现过程示意图;
16.图3为本发明一个实施例的a3c算法模型结构示意图;
17.图4为本发明一个实施例的ddpg算法模型结构示意图;
18.图5为本发明一个实施例的基于注意力机制的对抗样本生成过程示意图;
19.图6为本发明实施例的自动驾驶车辆的抗干扰装置的方框示意图。
具体实施方式
20.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.如图1所示,本发明实施例的自动驾驶车辆的抗干扰方法包括以下步骤:
22.s1,基于强化学习中的异步优势行动者评论家算法对目标智能体进行预训练,其中,目标智能体为具有自动驾驶控制模型的自动驾驶车辆。
23.参照图2,首先可在自动驾驶场景中进行环境采样,采样得到的包含路况信息、指示牌信息、交通信号等的环境信息作为目标智能体预训练的样本,目标智能体,即具有自动驾驶控制模型的自动驾驶车辆的目的是在较短的时间内安全地到达目的地。
24.在本发明的一个实施例中,如图3所示,强化学习中的异步优势行动者评论家算法(a3c)采用多线程对目标智能体进行预训练,a3c算法模型包含一个主网络和n(n为大于1的正整数)个子线程网络,主网络和子线程网络均分为actor网络和critic网络,每个线程中采用actor网络和critic网络框架与环境进行单独地交互训练,每个线程各自更新子线程网络的参数,当每个子线程网络产生一定的训练数据后,计算各自子线程网络的损害函数的梯度,然后利用计算的梯度去迭代更新主网络,主网络的参数每间隔一定时间分发给子线程网络。
25.具体地,目标智能体的主网络和子线程网络均采用ac网络结构,即分为actor网络π
θ'
(a|s)和critic网络v
μ'
(s),通过输入当前时刻的状态来得到相应的策略π(a|s;θ'),即表示在状态s和参数θ'的情况下选择动作a的概率。
26.a3c中通过利用价值函数的输出v(s|μ')构造优势函数a(s,t)来评估采取的策略,当采用n步采样时,得到的优势函数为:
27.a(s,t)=r
t
γr
r 1
... γ
n
‑1r
t n
‑1γ
n
v(s')

v(s)=r(t)

v(s)
28.其中,γ是折扣因子,取值范围为(0,1),r(
·
)是奖励函数。然后利用策略梯度来计算更新子线程中actor网络和critic网络中的参数:
[0029][0030][0031]
其中,θ'和μ'分别为子线程中actor网络和critic网络的参数,π(a|s;θ')是基于actor网络参数θ'的策略函数,而a(s|μ')是基于critic网络参数μ'的优势函数。
[0032]
预训练过程中,利用子线程中得到的梯度来迭代更新主网络中的参数θ和μ:
[0033]
θ=θ

α
·

[0034]
μ=μ

β
·

[0035]
其中,α和β表示参数更新的学习率。
[0036]
s2,固定预训练后的目标智能体的策略,并以预训练后的目标智能体的策略,利用深度确定性决策梯度算法训练对抗性智能体。
[0037]
参照图2,在对目标智能体进行预训练后,可固定预训练后的目标智能体的策略以训练对抗性智能体。在自动驾驶场景中,可固定预训练后的目标智能体的策略,将其作为观
测环境的一部分来训练对抗性智能体,可将多个智能体的训练过程简化为单个智能体的训练。
[0038]
对抗性智能体的目标是最小化其所获得的奖励值,即最大化其累计奖励值的负值。在当前状态s
t
,目标智能体的动作a
t
与对抗性智能体的动作的情况下,将目标智能体获得的奖励值r
t
的负值作为对抗性智能体的奖励反馈,达到其最小化所获得的累计奖励值的目标。
[0039]
在本发明的实施例中,可利用深度确定性决策梯度算法(ddpg)来训练对抗性智能体,深度确定性决策梯度算法模型的结构如图4所示,其用来生成连续行为,其网络结构由actor网络和critic网络两大部分组成,actor网络包含动作估计网络和动作实现网络,critic网络包含状态估计网络和状态实现网络,在预训练阶段,只需要训练动作估计网络和状态估计网络的参数,动作实现网络和状态实现网络的参数是分别由动作估计网络和状态估计网络每隔一定的时间复制过去的。状态估计网络的学习过程根据下面的损失函数来进行网络学习,即实际q值和估计q值的平方损失:
[0040][0041]
其中,q(s
i
,a
i
,w)是根据状态估计网络根据状态s
i
和在动作估计网络参数w下的动作a
i
得到的估计q值,a
i
是动作估计网络传过来的动作,y
i
为实际q值,以目标q值y
i
的最大值作为实际q值,即y
i
=max(y
i
),其中,目标q值y
i
是根据现实奖励r、下一时刻环境状态s

以及动作实现网络输出的动作a

利用贝尔曼方程计算得到,具体公式为:
[0042]
y
i
=r γq

(s

,a

,w

)
[0043]
其中,r为当前动作对应的奖励值,γ为折扣因子,取值范围为0~1,q

(s

,a

,w

)为可能的下一动作a

对应的期望q值,由状态实现网络计算得到,w

为状态实现网络参数。
[0044]
动作估计网络参数则是利用损失梯度来更新的,网络参数的更新公式如下:
[0045][0046]
θ
′←
τθ (1

τ)θ

[0047]
w
′←
τw (1

τ)w

[0048]
其中,θ是动作估计网络的参数,θ

是动作实现网络的参数,w是状态估计网络的参数,w

是状态实现网络的参数,q(s
i
,a
i
,w)是根据状态估计网络根据状态s
i
和在状态估计网络参数w下的动作a
i
得到的估计q值,π
θ
(.)是参数θ下动作估计网络的策略,j(.)是动作估计网络的损失函数。
[0049]
在利用深度确定性决策梯度算法训练对抗性智能体的训练过程中,将状态转换过程(s0,a0,r0,s'0)存储在经验回放缓冲区buff,作为训练数据集,并以随机采样的形式进行批处理学习,其中s0表示目标智能的部分可观测的状态数据,a0表示目标智能在s0状态时采取的动作,r0表示得到的即时奖励,s'0表示目标智能体可观测到的下一个状态数据。
[0050]
最终训练后的对抗性智能体可用以挖掘预训练后的目标智能体的策略中存在的安全漏洞。
[0051]
s3,固定训练后的对抗性智能体的策略,并以预训练后的对抗性智能体的策略,基于注意力机制对目标智能体进行对抗性训练。
[0052]
参照图2,在训练好对抗性智能体后,可固定训练后的对抗性智能体的策略,并将其作为状态观测中环境的一部分来对目标智能体进行对抗性训练,可利用训练好的对抗性智能体的策略和目标智能体的策略来生成连续的状态动作数据,以及获得的奖励值(s
t
,a
t
,r
t
,s
t 1
),利用这些经验数据来对目标智能体进行模型更新。
[0053]
在对目标智能体进行对抗性训练的过程中,每隔一定的回合生成对抗样本,利用通道空间注意力机制和像素空间注意力机制从目标智能体主网络的actor网络中提取浅层特征以生成不同状态的对抗样本,将生成的对抗样本作为输入状态对目标智能体进行对抗训练,以提高目标智能体的鲁棒性,从而防御目标智能体在测试和应用中的对抗性扰动攻击。
[0054]
具体地,如图5所示,提取尺寸为[l,w,c,4]的原始状态s
re
,通过reshape操作转化尺寸为[l,4,b],其中b=w*c;将尺寸为[1,l,w,c]的重构特征图g
s
,通过reshape转化尺寸为[1,c,b
s
]的重构特征图g
s
,然后计算通道注意力的权重,计算公式为:
[0055][0056]
其中,softmax(
·
)表示激活函数,然后需要将w
rlc
再次进行reshape得到尺寸大小为[1,1,l,4],最后得到重构的通道空间注意力权重:
[0057][0058]
其中,w
rlc
是通道空间注意力的权重,g
m
为原状态空间变换后的特征图。随后需要进一步进行深层特征的提取,首先需要将进行尺寸变化能操作,尺寸变为[1,b
s
,4];同时需要将原状态转换尺寸为[l,b
s
,4],将二者转换操作后使用tanh(
·
)函数进行激活,然后得到最终注意力特征:
[0059]
w
rlc
=softmax(tanh(vec))where
[0060][0061]
其中,z
i
为x的第二维元素的平均值。最后调整w
att
尺寸为[1,l,w,1]得到映射特征w
adv
,也就是我们要用的扰动,该扰动是测试期间动太获取的,没帧运行都得到一个基于注意力的深层扰动ρ=w
adv
,并在输入状态上添加该扰动得到对抗扰动状态:
[0062][0063]
其中,为t时刻的扰动状态,为t时刻的原始状态,ρ
t
是t时刻要加的扰动。
[0064]
在本发明的实施例中,步骤s2和s3重复多次执行,不断地对目标智能体进行鲁棒对抗训练,以增强目标智能体的鲁棒安全性。
[0065]
s4,通过对抗性训练后的目标智能体实现自动驾驶控制。
[0066]
根据本发明实施例的自动驾驶车辆的抗干扰方法,首先,利用强化学习中的异步优势行动者评论家算法即a3c算法对目标智能体进行预训练得到目标策略,然后将目标智能体的策略固定,作为环境中的一部分,在此基础上训练对抗性智能体,进而将训练得到的对抗性智能体策略固定,反过来训练更新目标智能体的模型策略参数,以加强目标智能体的训练效果,弥补其策略存在的安全漏洞,最后利用注意力机制从模仿学习网络中提取浅层特征来生成对抗样本,对目标智能体进行对抗训练,以增强目标模型的鲁棒性,所达到的
有益效果是:(1)利用对抗性智能体和注意力机制的方式来实现目标智能体策略优化和模型鲁棒增强的防御效果;(2)在目标智能体策略优化中,利用对抗性智能体来调整优化目标智能体的模型参数,首先固定目标智能体的策略来训练对抗性智能体,对抗性智能体的目的是为了挖掘目标智能体训练的策略中存在的安全漏洞,再利用训练好的对抗性智能体与目标智能体进行对抗性训练,以达到目标智能体策略优化的目的,从而实现模型的鲁棒增强防御效果;(3)在策略防御过程中,利用注意力机制的方法从模仿学习的actor网络中提取浅层特征来生成对抗样本,再对目标智能体进行对抗训练,从而提高目标智能体模型的鲁棒性。由此,能够提高自动驾驶控制模型的鲁棒性、抗干扰能力,从而提高自动驾驶的安全性。
[0067]
对应上述实施例的自动驾驶车辆的抗干扰方法,本发明还提出一种自动驾驶车辆的抗干扰装置。
[0068]
如图6所示,本发明实施例的自动驾驶车辆的抗干扰装置包括:第一训练模块10、第二训练模块20、第三训练模块30和控制模块40。其中,第一训练模块10用于基于强化学习中的异步优势行动者评论家算法对目标智能体进行预训练,其中,目标智能体为具有自动驾驶控制模型的自动驾驶车辆;第二训练模块20用于固定预训练后的目标智能体的策略,并以预训练后的目标智能体的策略,利用深度确定性决策梯度算法训练对抗性智能体;第三训练模块30用于固定训练后的对抗性智能体的策略,并以预训练后的对抗性智能体的策略,基于注意力机制对目标智能体进行对抗性训练;控制模块40用于通过对抗性训练后的目标智能体实现自动驾驶控制。
[0069]
自动驾驶车辆的抗干扰装置更具体的实施方式可参照上述自动驾驶车辆的抗干扰方法的实施例,在此不再赘述。
[0070]
根据本发明实施例的自动驾驶车辆的抗干扰装置,能够提高自动驾驶控制模型的鲁棒性、抗干扰能力,从而提高自动驾驶的安全性。
[0071]
在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0072]
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0073]
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
[0074]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特
点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0075]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0076]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0077]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0078]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0079]
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0080]
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜