ageron / handson-ml3

A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in Python using Scikit-Learn, Keras and TensorFlow 2.
Apache License 2.0
7.44k stars 3k forks source link

Fix Model Fit Error for : Compiling Functional API with Aux Output with one loss function #127

Open PrabalMukherjee opened 5 months ago

PrabalMukherjee commented 5 months ago

Model compile was throwing error for Functional API with aux output.For below code of Chapter 10 Pg 334 was throwing error while model training on fit method call. model.compile(loss=("mse", "mse"), loss_weights=(0.9, 0.1), optimizer=optimizer, metrics=["RootMeanSquaredError"])

ValueError: For a model with multiple outputs, when providing the metrics argument as a list, it should have as many entries as the model has outputs. Received: metrics=['RootMeanSquaredError'] of length 1 whereas the model has 2 outputs.

We need to specify another loss function for aux output like for fit method to work correctly. model.compile(loss=("mse", "mse"), loss_weights=(0.9, 0.1), optimizer=optimizer, metrics=["RootMeanSquaredError", "RootMeanSquaredError"])