Weight initialization
Почему это критично? Если все веса одинаковы, нейроны будут обновляться одинаково, и сеть не научится разнообразию — это называют симметрией. Если же веса слишком большие или нулевые, сигналы при прямом проходе либо затухают, либо взрываются, и градиент, который несёт информацию для обучения, теряется. Хорошая инициализация позволяет сигналу и градиенту проходить через глубокие слои сбалансированно.
Интуитивно это похоже на старт бегуна: если он начнёт с неудобной позы, первые шаги будут неуклюжими, а то и падение. Так и сеть: начав с неудачных весов, она либо медленно сходится, либо вовсе застревает в плохом локальном минимуме. Поэтому веса берутся случайными, но с учётом количества входов и выходов нейрона — чтобы дисперсия активаций сохранялась на каждом слое.
Прикладной пример: при обучении распознаванию изображений на свёрточной сети без инициализации (например, с нулевыми весами) точность остаётся на уровне угадывания. С корректной инициализацией, например методом Ге-Чэня, используемым для ReLU, модель на том же датасете достигает 90% точности за то же число эпох. Это наглядно показывает, что стартовые условия определяют скорость и качество результата.
В итоге инициализация весов — незаметный, но фундаментальный этап. Она не решает задачу, но создаёт плодотворную основу для обучения, экономя часы вычислений и повышая стабильность модели.
Поделиться