关于Hopfield网络和Neural ODE的几个想法
1.吸引子网络(Hopfield net)基本形式为:
Xt+1 = f(WXt + B)
进而
Xt+1 - Xt = f(WXt + B) - Xt = g(Xt)
显然,这是一个以时间为layer的ResNet,并且这是差分方程离散形式,连续形式的微分方程形式表为:
dX/dt = g(X)
这就是神经网络常微分方程(Neural ODE)的形式了。所以Neural ODE是一个ResNet,并且存在解X(t) = ∫g(X)dt + X(0)和吸引子(dX/dt = 0时的X值)。
2.既然Neural ODE集三者于一体,那么其吸引子必然可以分为稳定、周期、不稳定吸引子,其中也包括不稳定吸引子中的混沌吸引子。
Neural ODE也可以使用李雅普诺夫第一法(局部线性化)、李雅普诺夫第二法(能量函数XTPX)进行分析,也可以使用李雅普诺夫指数(计算每个基向量在局部线性作用下其模长是膨胀、收缩还是不变)对其吸引子进行分析。
既然存在吸引子,也许根据大脑结构,使用混沌吸引子的Neural ODE更能涌现出意识。
输入X(0)→Neural ODE→输出X(t),给定X(0)、X(t)与t,训练W,Neural ODE也许就是这么工作的,这是“一层”ODE网络,其实不止一层,真正的层数是t,不过不同于普通神经网络,这t层的参数都是W。当然,设定权重W为W(t)来学习,也许可以增加网络效果,相当于每层是不同权重,也许这样更接近神经网络的本质,就是用来拟合任何函数。同理还可以设定为W(t, X),详细在后面介绍。
3.计算机本质上只能计算。机器人是通过计算机计算后(计算坐标与变换坐标需要的机械运动群中的元素)输出的指令变成电路中的信号驱动机械结构形成行为。
人也同理使用大脑。外界信息输入后,也许会输入一个ODE网络,经过思考时间t后输出决策X(t)。如果t足够长,输出的X(t)就处于吸引集(吸引子)中,因为人类神经网络大部分是混沌吸引子,所以在一定范围内确定但是在精细上不同。如果t过短,未达吸引集,那么不输出,表现为生疏或者没想好。习惯养成包括习惯性动作就是缩短到达吸引子的时间t。
4.也许大脑需要注意力机制,也许只需要吸引子网络,这里提出一种结合注意力机制与吸引子网络的办法:
输入X→注意力机制→输出作为X(0)→ODE吸引子网络→输出X(t)→一个降维网络(可以是softmax)→输出决策output
或者注意→吸引→注意也可以。
5.信息的实时输入也许会对网络输出产生卷积效果。
6.神经网络的最终目标就是对任何函数进行最完美的拟合。进行目标的方法就是不断的改变神经网络的架构与增大规模。改变架构,本质上就是在改变加权的处理方式。Transformer架构处理权重的方法就相当于让权重变成一个关于输入X的函数,即W(X)。
对于Neural ODE,它本质上是一个t层的神经网络,t∈R,它的局限性在于它在每一层网络结构中的共享一个权重W,这可能是限制其拟合效果的原因之一。于是我们可以做如下改进,将权重W设置为一个有关t的函数W(t),是他在这t层中,每一层都是不同的。同时为了提高其拟合能力,我们还可以模仿Transformer的自注意力机制,让它的权重也与输入X相关联,即W(t, X),模仿Transformer的结构,使W(t, X)也拥有一定的参数Wk(t)、Wq(t)、Wv(t)由他们来作用X经过自注意力操作形成W(t, X),就像Transformer做的那样。

这样新的Neural ODE(以下写为new Neural ODE)的离散形式表示为:
Xt+1 - Xt = f(W(t, Xt)Xt + B(t)) - Xt = g(Xt, t)
其连续形式为:
dX/dt = g(X, t)
f为激活函数σ。普通离散的神经网络相当于对有限的σ进行线性组合,而new Neural ODE这相当于让无限个σ进行组合,其拟合效果必然会更好。
也许new Neural ODE会成为神经网络的统一模型或者终极形态(拟合任何函数就是在解微分方程),而且其离散化表示之一就是Transformer架构,new Neural ODE的权重如何训练是一个问题。Transformer作为其退化,表示具有离散性质,更好训练。其编码层就是一个不断达到吸引子的过程。Neural ODE使用伴随灵敏度方法拟合,也许可以为new Neural ODE的拟合寻找思路。
(纯属私人想法记录)