Stochastic Gradient Descent (often abbreviated as SGD) is an iterative method for optimizing an objective function with suitable smoothness properties. The succeeding paper presents the process of training a neural network using Stochastic Gradient Descent to solve the two-spiral problem.
- Background : The two-spiral problem is a classification task that consists of deciding in which of two interlocking spiral-shaped regions a given coordinate lies. The interlocking spiral shapes are chosen for this problem because they are not linearly separable. Thus the two-spiral task became a well known benchmark for binary classification and since it had visual appeal, it was convenient to use in pilot studies.
- Objective: To achieve the separation of the 2 different spiral s with the help of the neural network and we know that this is pixelate due to less training time in terms of epochs so if we tend to train for more time then it would result to much smoother spiral distinction.
Basically the idea of the spiral problem was derived from the spirals which occur naturally in galaxies, Cyclones, eddy currents in liquid, Shells and then DNA etc.
The challenge of the two-spiral task inspired many researchers, studies, and new methods, and has had significant impact on machine learning research over the last 18 years. It's high popularity is partially due to its visual appeal and compact size. Given the large number of studies on the two-spiral task it was possible to conduct a partial survey of central parts of the history of artificial neural networks solely based on studies which involve the two-spiral task wither as their central task or in addition to some other datasets. In an example experiment the generalization ability of a state of the art approach was demonstrated and that small variations of the two-spiral data can lead to qualitatively different generalization results-spirals, rays, or an intermediate solution.
For better understanding on the following problem, I request you to please refer the powerpoint presentation which I have attached where you can see the explanation of code in depth. The following problem was taken as a project for my Engineering Optimisation subject.