RTUEE / EC / EEEYr 2019 · Sem 72019

Q5Artificial Intelligence Techniques

Question

16 marks

Q.3. (a) Explain the concept of neural network. [8]

(b) Explain the learning algorithm in neural networks. [8]

Answer

A neural network is a computational model loosely inspired by biological neurons, consisting of interconnected layers of simple processing units (neurons) that apply weighted sums and non-linear activation functions to transform input data into a desired output, capable of learning complex non-linear input-output mappings; the learning algorithm in neural networks, most commonly backpropagation combined with gradient descent, iteratively adjusts the network's connection weights to minimize the error between the network's actual output and the desired target output across the training dataset.

Concept of Neural Network

Artificial Neural Network - Layered StructureInput layerHidden layerOutput layer

A neural network (artificial neural network) is a computational model whose structure is loosely inspired by the interconnected network of biological neurons found in the human brain, consisting of a large number of simple processing units (called artificial neurons or nodes) organized into layers — typically an input layer (receiving the raw input data/feature values), one or more hidden layers (performing intermediate transformations of the data), and an output layer (producing the network's final output, such as a classification label or a numerical prediction).

Individual neuron operation: each artificial neuron receives one or more numerical inputs (either directly from the input data, or from the outputs of neurons in a preceding layer), computes a weighted sum of these inputs (with each connection between neurons having its own adjustable weight parameter, plus typically an additional bias term), and then passes this weighted sum through a non-linear activation function (such as the sigmoid function, hyperbolic tangent, or the widely-used Rectified Linear Unit, ReLU) to produce the neuron's own output value, which is then passed forward as input to the neurons in the next layer:

where xi are the neuron's inputs, wi are the corresponding connection weights, b is the bias term, and f is the chosen non-linear activation function.

Significance of the layered, interconnected structure: by combining many simple neurons across multiple layers, with each layer's non-linear transformation building upon the previous layer's output, a neural network is capable of learning and representing highly complex, non-linear input-output relationships that a single simple processing unit alone could never capture — this capability, formally supported by the universal approximation theorem (which shows that a feedforward neural network with even a single sufficiently large hidden layer can approximate essentially any continuous function to arbitrary accuracy), is the fundamental reason neural networks have become such a powerful and widely-applicable tool for pattern recognition, classification, regression, and increasingly complex tasks such as image recognition, natural language understanding, and game-playing, particularly as networks have grown deeper (containing many hidden layers, giving rise to the modern field of deep learning) and as computational hardware and training techniques have improved to make training such deep networks practically feasible.

Learning Algorithm in Neural Networks

The learning (training) process for a neural network involves adjusting its many connection weights (and bias terms) so that the network's actual computed output, for each training example, comes as close as possible to the known, desired target output for that example, across the entire training dataset — this adjustment process is most commonly accomplished using the backpropagation algorithm in combination with a gradient-descent-based optimization procedure.

Forward pass: for a given training input, the network computes its output by propagating the input values forward through each successive layer, applying each neuron's weighted-sum-and-activation computation in turn, until the final output layer's values are obtained.

Error (loss) computation: the network's computed output is compared against the known, correct target output for that training example, using a chosen loss (error) function (such as mean squared error for regression tasks, or cross-entropy loss for classification tasks), quantifying how far the network's current output deviates from the desired target.

Backward pass (backpropagation): using the calculus chain rule, the algorithm computes the gradient (partial derivative) of the loss function with respect to every individual weight and bias parameter in the network, propagating this gradient information backward from the output layer through each hidden layer in turn, back to the input layer — this backward propagation of gradient information, computed efficiently by systematically reusing intermediate gradient calculations layer by layer (rather than recomputing each weight's gradient independently from scratch), is what gives the backpropagation algorithm its name and its practical computational efficiency for training networks with many layers and parameters.

Weight update (gradient descent): each weight and bias parameter is then updated by a small amount in the direction that reduces the loss function, proportional to the negative of its computed gradient and scaled by a chosen learning-rate parameter:

where eta is the learning rate (a hyperparameter controlling the step size of each weight update) and partial(L)/partial(w) is the computed gradient of the loss with respect to that specific weight.

Iteration to convergence: this forward-pass, error-computation, backward-pass, and weight-update cycle is repeated many times (typically processing the entire training dataset multiple times, each full pass termed an 'epoch'), progressively adjusting the network's weights to reduce the overall training loss, until the loss converges to a satisfactorily small value (or some other stopping criterion, such as a maximum number of epochs or negligible further improvement, is reached), at which point the trained network's weights are fixed and the network is ready to be used for making predictions on new, previously unseen input data — practical implementations of this basic gradient-descent training procedure commonly incorporate additional refinements, such as mini-batch stochastic gradient descent (updating weights based on small random subsets of the training data at each step, rather than the entire dataset at once, for improved training speed and generalization), momentum-based or adaptive learning-rate optimization algorithms (such as Adam), and regularization techniques (such as dropout or weight decay) to reduce overfitting and improve the trained network's generalization performance on new data.

Neural network learning algorithms differ substantially in their sophistication, ranging from the simple perceptron learning rule (adjusting weights only in response to misclassification of linearly separable patterns) to the backpropagation algorithm used to train deep multi-layer networks (systematically computing the gradient of the network's error with respect to every weight throughout the network via the chain rule, then updating each weight in the direction that reduces error), with the choice of learning algorithm, network architecture, and activation function jointly determining what class of input-output functions the resulting trained network is capable of representing and learning accurately.

This gradient-based weight-adjustment process is repeated iteratively across many training examples and typically many full passes (epochs) over the entire training dataset, progressively reducing the network's overall prediction error until either the error falls below an acceptable threshold or further training yields no meaningful additional improvement, at which point the trained network's fixed weight values encode the learned input-output mapping.

Back to Paper