I am trying to create a Neural Network project to determine the quality of color image and return whether or not it passes the quality check. This quality check will be determined and trained among 2000 sample size which containing 50% good photos and 50% bad photos.
Assuming the picture I'm performing checking is 1280x1280 pixels with RGB no Alpha Channel. I am trying to create following Neural Network
Input Layer ==> 1280 * 1280 * 3 = 4915200 Neurons
2 x Hidden Layer ==> Layer 1 = 1638400 and Layer 2 = 409600 Neurons
Output Layer ==> 1 Neuron
The problem I am having is that in a simple XOR training, we can easily do that with 2 input, 1 hidden layer consisting 2 neurons and 1 output neurons. However, when it become real world application, memory become a huge problem. The amount of memory required exceed my 128GB memory machine.
I don't know how am I supposed to approach this project so that it will become memory efficient? (At least within 128GB)
Looking forward to open discussion on what approach I should take to make it work!
Thanks