Простой ответ из-за случайной инициализации.
Если вы начали с одинаковыми весами через нейронную сеть (NN), то все узлы будут выдавать одинаковый вывод.
Это потому что при использовании алгоритма backprop ошибка распределяется в зависимости от силы активации каждого узла. Если они начинаются одинаково, то ошибка будет распространяться одинаково, и, следовательно, узлы в NN не смогут изучать различные функции.
Таким образом, базовая c случайная инициализация гарантирует, что каждый узел специализируется. Следовательно, после обучения узлы в скрытых слоях будут выдавать разные выходные данные, даже если они одинаковые.
Надеюсь, это поможет.