Hi @markdaoust, thanks for the follow-up. I was able to follow your advice to add the input spec:
linear_model = tf.keras.Sequential([
    tf.keras.Input(shape=[5]),
    tf.keras.layers.Normalization(axis=-1),
    layers.Dense(units=3, activation='sigmoid')
])

After converting h5 to tflite and loading the model to netron.app, now I see 1x5 for the input.

BTW, regarding the signature runners, can I pass the model file directly to the constructor of Interpreter as indicated by the documentation from the link you provided? Android Studio marked this as an error when I tried it.
@George_Soloupis, I updated the model in the project that I had shared with you, changed features back to 5 elements, and the model generated 3 outputs. However, the values are [0, 0, 255], instead of [30.668777, 111.0412  ,  69.47372], as shown in the Colab notebook. It seems that the translation from the sigmoid activation function from h5 to the Logistic layer in tflite may be the reason for the discrepancy. If this is indeed the case, what should I do to correct it?
I have updated the tarball of the project to include the new tflite model file. Please let me know what I may have missed.
Thanks,
George