Learning Processes
Learning
Learning is a process by which the free parameters of a NN are adapted through a process of stimulation by the environment in which the network is embedded.
Learning is defined in the following actions:
- The network is stimulated by the environment.
- It’s free parameters undergo changes to reflect this stimulation. (training mode)
- The network responds in a new way to the environment, as a result of the changes in its internal structure. (online mode)
Learning Rules
Error Correction Learning
Assume that the $k^\text{th}$ neuron receives a signal vector $\mathbf x(n)$, where $n$ is the tiem variable of a discrete synaptic adaptation procedure. This signal can be the result of other neurons in the previous layers.
We can define the error in the signal by:
\[e_k(n)=d_k(n)-y_k(n)\]where:
- $y_k(n)$ - the neuron output signal.
- $d_k(n)$ - the desired output signal.
Learning is achieved by minimising a cost function $E(n)$ until the system reaches a steady-state.
An example of a cost function could be squared error:
\[E(n)=\frac12e^2_k(n)\]We can iterate on our error to converge on the desired $d_k$ value.
The amount we change the weight is given by:
\[\begin{aligned} \Delta W_{kj}(n)&=\eta e_k(n)x_j(n)\\ \underbrace{\Delta W_{kj}(n+1)}_\text{new weight}&=\underbrace{W_{kj}(n)}_\text{old weight}+\Delta W_{kj}(n)\\ \end{aligned}\]We can change $\eta$ to change the speed of convergence and overshoot.
Memory Based Learning
Under this model we gather a large amount of data for past experiences which are stored in memory as a set $D_\text{train}$:
\[D_\text{train}=\{(\mathbf x_i, d_i)\}^N_{i=1}\]where:
- $\mathbf x_i$ - the sample
- $d_i$ - the desired response
In a graph of this data, we classify new data by choosing the nearest neighbour to the new data.
To get a better response we may use $n$-nearest-neighbour where we average the response of the $n$ neighbours.
Hebbian Learning
A Hebbian synapse is defines as a time-dependent, highly local and strongly interactive mechanism to increase synaptic efficiency:
- If neurons on either side of the synapse are activated simultaneously, then the strength of that synapse should be selectively increased.
- If the activation is asynchronous, then the synapse should be weakened.
This section is unfinished.
Competitive Learning
The output neurons compete amongst themselves to become active, as opposed to other learning rules where more than one neuron can be active.
This is better suited to classification problems as only one neuron is allowed to fire.
This section is unfinished.