Liquid State Machine: How it works and how to use it?

匿名 (未验证) 提交于 2019-12-03 02:45:02

问题:

I am now learning about LSM (Liquid State Machines), and I try to understand how they are used for learning.

I am pretty confused from what I read over the web.

I'll write what I understood -> It may be incorrect and I'll be glad if you can correct me and explain what is true:

  1. LSMs are not trained at all: They are just initialized with many "temporal neurons" (e.g. Leaky Integrate & Fire neurons), while their thresholds are selected randomly, and so the connections between them (i.e. not each neuron has to have a common edge with each of the other neurons).

  2. If you want to "learn" that x time-units after inputting I, the occurrence Y occurs, you need to "wait" x time-units with the LIF "detectors", and see which neurons fired at this specific moment. Then, you can train a classifier (e.g. FeedForward Network), that this specific subset of firing neurons means that the occurrence Y happened.

  3. You may use many "temporal neurons" in your "liquid", so you may have many possible different subsets of firing neurons, so a specific subset of firing neurons becomes almost unique for the moment after you waited x time-units, after inputting your input I

I don't know whether what I wrote above is true, or whether it is a total garbage.

Please tell me if this is the correct usage and targets of LIF.

回答1:

From your questions, it seems that you on the right track. Anyhow, the Liquid State Machine and Echo State machine are complex topics that deal with computational neuroscience and physics, topics like chaos, dynamic action system, and feedback system and machine learning. So it’s ok if you feel like it’s hard to wrap your head around it.

To answer your questions:

  1. Most implementations of Liquid State Machines using the reservoir of neurons untrained. There is some attempts to train the reservoir but they didn't had dramatic success that worth the computational power that needed for this aim. (See Reservoir computing approaches to recurrent neural network training http://www.sciencedirect.com/science/article/pii/S1574013709000173) or (The p-Delta Learning Rule for Parallel Perceptrons http://www.igi.tugraz.at/psfiles/pdelta-journal.pdf)

    My opinion is that if you want to use the Liquid as classifier in term of separability or generalization of pattern, you can gain much more from the way the neurons connect between each other (see Hazan, H. and Manevitz, L., Topological constraints and robustness in liquid state machines, Expert Systems with Applications, Volume 39, Issue 2, Pages 1597-1606, http://dx.doi.org/10.1016/j.eswa.2011.06.052, February 2012.) or (Which Model to Use for the Liquid State Machine? http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5178822) The biological approach (in my opinion the most interesting one) (What Can a Neuron Learn with Spike-Timing-Dependent Plasticity? www.mitpressjournals.org/doi/abs/10.1162/0899766054796888)
  2. You right, you need to wait at least until you finish giving the input. Otherwise you risk in detect your input, and not the activity that occur as a result from your input as it should be.
  3. Yes, you can imagine that your liquid complexity is a kernel in SVM that try to project the data points to some hyperspace and the detector in the liquid as the part that try to separate between the classes in the dataset. As a thumb rule, the number of neuron and the way they connect between each other determine the degree of complexity of the liquid.

About LIF (Leaky Integrate & Fire neurons), as I see it (I could be wrong) the big difference between the two approaches is the individual unit. In liquid state machine use biological like neurons, and in the Echo state use more analog units. So in term of “very short term memory” the Liquid State approach each individual neuron remember its own history, where in the Echo state approach each individual neuron react base only on the current state, there for the memory stored in the activity between the units.



回答2:

To understand LSMs you have to understand the comparision with Liquid. Regard the following image:

  • You are randomly throwing stones into water. Depending of what kind of stones you have throwed into the water, there's another wave pattern after x timesteps.
  • Regarding this wave pattern you can have conclusions about the features of the different stones
  • Out of this pattern you can tell what kind of stones you threw in.

The LSM models this behavior we have:

  • A input layer which is randomly connected to the reservoir of neurons. Take it as the stones you throw into the water
  • A reservoir of randomly connected neurons. Those represent your Water which interacts with your stones in a specific way.

    • In terms of LSM we have special Neurons (they try to model real neurons). They add activations over the timesteps and only fire if a certain amount of activation is reached, a cooldown factor representing the natrium kalium pumps in the brain is applied in addition.
    • After x timesteps you'll have a pattern of spiking neurons at that time.
  • A output layer which interprets that pattern, and uses it for classification.



回答3:

I just want to add 2 additional points for other readers. First, that "natrium-kalium" pumps are sodium-potassium pumps in English. Second is the relationship between liquid state machines (LSM) and finite state machines (FSM) (since some readers may come with an understanding of finite state machines already).

The relationship between LSM and FSM is mostly a mere analogy. However, the units (neurons) of an LSM can be individually modeled as FSM with regards to whether or not they fire action potentials (change state). A difficulty with this is that the timing of the state changes of each unit and its neighbors is not fixed. So when we consider the states of all the units and how they change in time then we get an infinite transition table, and that puts the LSM in the class of a transition system, not an FSM (maybe this is a little obvious). However, we then add the linear discriminator... This is a simple deterministic readout layer which is trained to pick out patterns in the LSM corresponding to desired computations. The readout system monitors a subset of units, and usually has well defined temporal rules. In other words, it ignores many state transitions and is sensitive to only a few. This makes it somewhat like an FSM.

You may read that combinations of units in the LSM can form FSM such that the readout identifies FSM "virtually contained within it". This comes from a writer who is thinking about the LSM as a computer model first and foremost (when in principle you might elucidate the units and connections comprising a "virtual FSM" and construct an actual analogous FSM). Such a statement can be confusing for anyone thinking about LSM as a biological system, where it is better to think about the readout as an element which selects and combines features of the LSM in a manner that ignores the high-dimensional variability and produces a reliable low dimensional FSM like result.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!