# What to look for when CNN returns same prediction for every input?

I am trying to use a CNN to do a regression prediction on some statistical data. The data is time-series data formatted into a 2-D grid. The network I'm using looks like this:

def create_model(num_features):

model = Sequential()
model.add(Conv2D(32, (3, 3), input_shape=(WINDOW, num_features, 2)))

return model


The input to it is a 200 x 100 x 2 array of floats 0..1 and visualised (using the green and red channels of a RGB png and scaling to 0..255) looks like this as an example:

My problem is that after an amount of training I'm getting a point where no matter what input I give it, the predictions are all coming back as the same value. So something has gone wrong in the training. If I check after the first epoch, then the predictions come back varying (but of course not accurate at that point).

So my question is, what do I need to look for? I'm guessing this symptom has a name? I don't even know what to call it to start looking for answers online.

Any tips greatly appreciated, thanks!

-Matt

• Hi Matt! Please, ask this question on Data Science SE, given that your problem possibly involves the debugging of the source code. This website focuses more on the theoretical and philosophical question related to AI. – nbro Jul 13 '19 at 13:22
• In other words: Please do post the same content to DataScience and remove this one. – mico Jul 13 '19 at 13:49
• Yes, hence why I am asking it here. – Matt Hamilton Jul 13 '19 at 20:30