Explicación de entrada de Keras: input_shape, units, batch_size, dim, etc.

Para cualquier capa Keras ( Layerclase), ¿Puede alguien explicar cómo entender la diferencia entre input_shape, units, dim, etc.? Por ejemplo, el documento dice que unitsespecifique la forma de salida de una capa. En la imagen de la red neuronal a continuación hidden layer1tiene 4 unidades....