本任务支持科学智算工作流
点击下方按钮进入在线智算工作流环境
进入智算工作流 振荡神经网络(ONN)受大脑同步振荡行为的启发,是一种用于模式识别的有前景的架构模型,基于此模型可以实现先进的类脑计算和集成电路设计。该模型使用相位作为状态变量,通过调整信号的振幅比例缩放相位贡献。ONN的模式识别能力的核心在于突触权重的设计,即神经元之间的连接方式。利用多智能体强化学习(MARL)来获取最优的突触权重,可以使更多的模式能够作为稳定平衡存储在ONN系统中。
该方法首先确定图像对应的存储模式,并作为学习任务;然后基于课程学习对学习任务进行拆分;之后基于拆分的任务集合,建立多智能体强化学习仿真环境;其次对多智能体强化学习进行训练并获得最优奖励的振荡神经网络突触权重;最后识别和存储所有预设存储模式。
具体来说,第 i i i 个智能体从时间步长 t t t 到时间步长 t + 1 t+1 t + 1 的状态转移函数描述为:S t + 1 = S t + ∑ i = 1 n ( a i , t + a i , t T ) S_{t+1} = S_t + \sum_{i=1}^{n}\left(a_{i,t} + a_{i,t}^{T}\right) S t + 1 = S t + ∑ i = 1 n ( a i , t + a i , t T ) ,其中 S t S_t S t 和 S t + 1 S_{t+1} S t + 1 分别表示时间步长 t t t 和 t + 1 t+1 t + 1 的突触权重矩阵,a i , t a_{i,t} a i , t 表示第 i i i 个智能体在时间步长 t t t 的行动,是一个 n n n 维矢量,a i , t a_{i,t} a i , t 被添加到突触权重矩阵 S t S_t S t 的第 i i i 列,a i , t T a_{i,t}^{T} a i , t T 被添加到突触权重矩阵 S t S_t S t 的第 i i i 行。对应于与第 i i i 个神经元连接的权重。智能体 i i i 的奖励 r i r_i r i 计算公式为:
r i = r n r_i = \frac{r}{n} r i = n r
φ k ∗ = ( φ 1 k ∗ φ 2 k ∗ ⋮ φ n k ∗ ) , δ φ k ∗ = φ k ∗ − φ 1 k ∗ ( 1 1 ⋮ 1 ) , k = 1 , 2 , … , P \varphi^{k^*} =
\begin{pmatrix}
\varphi_1^{k^*} \\
\varphi_2^{k^*} \\
\vdots \\
\varphi_n^{k^*}
\end{pmatrix},
\qquad
\delta \varphi^{k^*} =
\varphi^{k^*} - \varphi_1^{k^*}
\begin{pmatrix}
1 \\
1 \\
\vdots \\
1
\end{pmatrix},
\qquad
k = 1,2,\ldots,P φ k ∗ = φ 1 k ∗ φ 2 k ∗ ⋮ φ n k ∗ , δ φ k ∗ = φ k ∗ − φ 1 k ∗ 1 1 ⋮ 1 , k = 1 , 2 , … , P
r = P × μ + ∑ k = 1 P − L 1 ( δ φ k ∗ , δ φ k ) r = P \times \mu + \sum_{k=1}^{P} -L_1(\delta \varphi^{k^*}, \delta \varphi^{k}) r = P × μ + k = 1 ∑ P − L 1 ( δ φ k ∗ , δ φ k )
L 1 ( x , y ) = ∣ ( x + 2 m π ) − y ∣ , x + 2 m π ∈ [ − π , π ] L_1(x,y) = |(x + 2m\pi) - y|,\qquad x + 2m\pi \in [-\pi,\pi] L 1 ( x , y ) = ∣ ( x + 2 mπ ) − y ∣ , x + 2 mπ ∈ [ − π , π ]
上式中,P P P 指当前存储模式的数量,φ k ∗ \varphi^{k^*} φ k ∗ 代表第 k k k 个输入模式的输出相位,φ i k ∗ \varphi_i^{k^*} φ i k ∗ 指的是 φ k ∗ \varphi^{k^*} φ k ∗ 的第 i i i 个元素,δ φ k \delta \varphi^k δ φ k 表示第 k k k 个原始模式的相位偏差,m m m 是使得 x + 2 m π ∈ [ − π , π ] x + 2m\pi \in [-\pi,\pi] x + 2 mπ ∈ [ − π , π ] 的整数,x x x 、y y y 是两个不同的变量具体值根计算需要进行带入,n n n 是智能体个数,μ \mu μ 表示用来区分不同任务的超参数。
pipline