我现在正在学习关于LSM(液体状态机)的知识,并试图理解它们是如何用于学习的。
从网上阅读的内容来看,我感到非常困惑。我会写下我目前的理解,但可能有误,所以如果您能纠正我并解释真实情况,我将不胜感激:
-
LSM完全不进行训练:它们只是用许多“时间神经元”(例如,泄漏积分与发放神经元)进行初始化,它们的阈值是随机抽取的,连接也是随机的(即,一个神经元不必与其他每个神经元都有共同的边)。
-
如果我们想“学习”在输入I之后的x时间单位内,事件Y发生,那么我们需要用LIF“检测器”等待x时间单位,并观察在这一特定时刻哪些神经元发放了。然后,我们可以训练一个分类器(例如,前馈网络),使这一特定发放神经元子集表示事件Y发生了。
-
我们在“液体”中可能使用许多“时间神经元”,因此可能有许多不同的发放神经元子集,所以在输入我们的输入I后等待x时间单位后的这一特定时刻,一个特定的发放神经元子集几乎是独一无二的。
我不知道我上面写的内容是否完全正确。我希望能得到关于这个话题的解释。
回答:
从你的问题来看,你似乎走在正确的轨道上。然而,液体状态机和回声状态机是涉及计算神经科学和物理学的复杂话题,涉及混沌、动态动作系统、反馈系统和机器学习等主题。所以,如果你觉得难以理解,这是正常的。
回答你的问题:
- 大多数液体状态机的实现使用未经训练的神经元库。有一些尝试训练神经元库,但它们没有取得足以证明所需计算能力的显著成功。(参见:Reservoir Computing Approaches to Recurrent Neural Network Training)或(The p-Delta Learning Rule for Parallel Perceptrons )
我的观点是,如果你想在可分性或模式泛化方面使用液体作为分类器,你可以从神经元之间的连接方式中获得更多好处(参见 Hazan, H. and Manevitz, L., Topological constraints and robustness in liquid state machines, Expert Systems with Applications, Volume 39, Issue 2, Pages 1597-1606, February 2012。)或(Which Model to Use for the Liquid State Machine?)生物学方法(在我看来是最有趣的)(What Can a Neuron Learn with Spike-Timing-Dependent Plasticity? )
- 你是对的,你需要至少等到输入结束,否则你可能会检测到你的输入,而不是应该检测到的由输入引起的活动。
- 是的,你可以想象你的液体复杂度是SVM中的一个核,它试图将数据点投影到某个超空间,而液体中的检测器则是试图在数据集中区分不同类别的部分。作为经验法则,神经元的数量和它们之间的连接方式决定了液体的复杂程度。
关于LIF(泄漏积分与发放神经元),在我看来(我可能错了),两种方法之间的主要区别在于单个单位。液体状态机使用类似生物的神经元,而回声状态机使用更多模拟单位。因此,在“非常短期记忆”方面,液体状态方法中的每个神经元都记得自己的历史,而在回声状态方法中,每个神经元仅根据当前状态做出反应,因此记忆存储在单位之间的活动中。