¿Por qué deberían inicializarse los pesos de las redes neuronales a números aleatorios?

Estoy tratando de construir una red neuronal desde cero. En toda la literatura de AI, existe un consenso de que las ponderaciones deberían inicializarse a números aleatorios para que la red converja más rápido.

Pero, ¿por qué se inicializan los pesos iniciales de las redes neuronales como números aleatorios?

Había leído en alguna parte que esto se hace para "romper la simetría" y esto hace que la red neuronal aprenda más rápido. ¿Cómo romper la simetría lo hace aprender más rápido?

¿No sería una mejor idea inicializar los pesos a 0? De esa manera, ¿los pesos podrían encontrar sus valores (positivos o negativos) más rápido?

¿Hay alguna otra filosofía subyacente detrás de la asignación aleatoria de los pesos, aparte de la esperanza de que estén cerca de sus valores óptimos cuando se inicialicen?

Respuestas a la pregunta(4)

Su respuesta a la pregunta