Skip to content

aramayyes/NNComparison

Repository files navigation

Neural networks comparison

Two neural networks, one with a single hidden layer (first) and the other with convolutional layers (second) are compared for digits recognition.

Code

Neural Networks

  • The first neural network contains just a single hidden layer. The gradient descent algorithm without any optimization is used for updating the network's weights.

  • The second neural network contains convolutional and pooling layers. The gradient descent algorithm with Adam optimization is used for updating the network's weights.

Projects

There are three projects in this repository.

  • NNComparisonAndroidApp is an android application, which allows to write digits on the screen and test the neural network using those digits.

  • NNetworkWithSingleHiddenLayer is a server application which represents the first neural network.

  • ConvolutionalNNetwork is a server application which represents the second neural network.

In order to test one of the neural networks, run the corresponding server application first, update the serverUrl in DigitsPaintingActivity.kt and then run the android application.

In the image below, the first neural network is on the left side, and the second neural network is on the right side.

Networks comparison