Could you please let me know which of the following classification of Neural Network's learning algorithm is correct?
- The first one classifies it into:
- unsupervised and
- reinforcement learning.
Those three forms of Machine Learning are not really different forms of a Neural Network learning algorithm (or, really, any learning algorithm); they are different forms of learning problems. They basically describe how much information we give our learning algorithm during a learning process / what kind of information we give it, regardless of what algorithm we're using to learn.
- In supervised learning, we give very detailed information; we give example pairs of inputs + desired outputs.
- In unsupervised learning, we still give many example inputs, but don't give any desired outputs. This can be, for example, because we simply don't know ourselves what the desired outputs would be. The most common example of unsupervised learning is learning to create clusters; we'd typically give some measure of similarity or distance between instances, and ask a learning algorithm to create clusters of instances for us such that instances within the same cluster are "close" to each other, and instances in different clusters are far away from each other. This is different from supervised learning because we do not directly tell the learning algorithm in which cluster each example instance would belong.
- In reinforcement learning, we typically try to learn about policies (~= behaviours) in environments where an agent can take actions. We typically do not exactly know what the best complete policy would be, but can occasionally give "hints" (reinforcement) in the form of numerical rewards. This is not completely supervised learning because we don't tell exactly what the optimal action in a state would be. You can imagine this as giving a cookie to a dog if he's been a good boy.
Now, there also are indeed Supervised Learning / Unsupervised Learning / Reinforcement Learning algorithms, but it's generally a property of the problem first and foremost; once you know what type of problem you're trying to solve, you'll look for a matching algorithm that can handle that problem.
However, the second one provides a different taxonomy on page 34:
- learning with a teacher (error correction learning including incremental and batch training),
- learning without a teacher (reinforcement, competitive, and unsupervised - memory-based learning, and
- Boltzmann learning.
This... honestly seems a bit all-over-the-place to me. Learning with a teacher vs. learning without a teacher can be viewed like Supervised vs Unsupervised learning above. I suppose Reinforcement Learning would be kind of in between.
What they describe as memory-based learning is also often referred to as instance-based learning. This is suddenly not anymore about properties of learning problems, this is a type of learning algorithm. I'm not aware of instance-based learning being common in Neural Networks at all, indeed the example given in your link (the most common example) is the k-nearest neighbours algorithm, which doesn't really have any relation with Neural Networks. This is normally used for Supervised Learning problems.
Boltzmann learning is a particular kind of learning algorithms for specific types of Neural Networks (with a specific architecture), and generally associated with unsupervised learning (or "generative" learning, learning probability distributions for given input data).
Besides, is it true to consider SVM as a kind of NN (the second thesis on page 155)?
SVMs are very rarely considered to be Neural Networks. Indeed, if you do a google search for the two, most results are about differences between the two, asking which one is best, etc., all kinds of results treating them as different things. However some people do indeed sometimes view them as a particular (relatively simple) Neural Network. For example, SVMs are included in this Neural Network Zoo of different architectures. Some of the answers to this quora question also describe how they can be viewed as a Neural Network. I personally view them as different things though, and in my experience most people do so.
Furthermore, are the materials presented on pages 6-11 of the first article (i.e., sections 3-3 to 3-11) different structures of NN (just as pages 147-153 of the second one?
That's correct. If I want to refresh my mind on which different architectures exist, I personally like the Neural Network Zoo which I also linked above, it's again very similar to those two parts of the two documents you mention here. None of these lists is likely to be exhaustive though. Research in this area is moving very rapidly, so it's close to impossible to keep track of an exhaustive list.