Keras: "must compile model before using it" despite compile() is used

Found my mistake - explanation for future reference.

The error origniates back in compile() where the first if-statement says:

if not self.built:
    # Model is not compilable because
    # it does not know its number of inputs
    # and outputs, nor their shapes and names.
    # We will compile after the first
    # time the model gets called on training data.
return

So I specified input_shape= and input_format=in the first Conv2D layer and everything works fine.


If ever someone ends up with the same error code here is maybe a way to fix it. So I was using a generator and was getting the "Must compile" error even tho everything was fine. I was able to fix it by doing a model.fit(x,y) on a single batch before launching my fit_generator and everything worked fine after that. I don't know if this helps anyone but yeah!