Assignment 3

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Assignment 3

(by EEZ228477)

Problem Statement: Consider your dataset that you built for Assignment 2. Use the same dataset
to build a tree type growing neural network. At each node, learn a small neural network that tries to
classify samples correctly, and child nodes are added to correct for misclassified samples. Explain
how you will train the individual nodes while using a standard activation function, and then use the
trained network as a node in a growing structure. Plot the loss function values and accuracies for
training, validation, and test subsets, as the network is grown. Deduce a scheme to terminate growth
to avoid overfitting. Please explain your approach and any assumptions in detail. Any missing detail
may lead to hurdles in a fair evaluation. Use well designed figures to explain your approach and the
growing network.

Solution:

(Link of the code at google Colab:


https://colab.research.google.com/drive/1zdHZTDAIQoSy5sZ5JK9SOcYXvjgNTzRe?usp=shari
ng )

Figure of a neuron consisting of a conv layer and 2 dense layer


Miss-classified data

Miss-classified data

The paragraph explains the formation of a small neural network which will be act as a node
to build a growing tree like neural network. This small neuron unit consists of one
convolutional layer and two dense layers. This is the minimum complexity architecture, we
can consider. The results of a single node is that its training and validation accuracy is
coming to be 98.29% and 98.36 % respectively.

Now the formation of growing tree network is explained from here. The main part of the code
is the grow tree function, which is recursive function responsible for building and growing
neural network tree. The challenging part of growing neural network is splitting the
data.Below are the two parameters which determines the growth of the neural network tree.

max_depth: The maximum depth of the tree (the maximum number of child nodes a node
can have). This prevents the tree from growing too deep.
min_accuracy: The minimum acceptable accuracy on the validation set. If a node's validation
accuracy drops below this threshold, we stop growing the tree further. This is a decision
parameter which determines to keep a node or not.

Fig: Results of the growing neural network

You might also like