ДаліНаступний посібник
Стохастичне усереднення ваги
технічний
Технічний КЕРІВНИЦТВО
Як ви встановлюєте початкові ваги нейронної мережі перед початком навчання, що сильно впливає на те, чи залишатимуться сигнали та градієнти здоровими через глибокі шари.
Послухайте цей посібникШІ-розказаний · ~2 min
Good initialization is the difference between fast convergence and a model that never learns.
Перед тренуванням кожна вага потребує вихідного значення. Встановлення всіх на нуль є фатальним: однакові ваги створюють однакові градієнти, тому нейрони ніколи не диференціюються — це проблема порушення симетрії. Випадкова ініціалізація порушує симетрію, але масштаб має величезне значення. Занадто великий і активації та градієнти вибухають; занадто малі, і вони зникають. Принципові схеми вибирають дисперсію на основі розміру шару, щоб підтримувати дисперсію сигналу приблизно постійною між шарами. Ініціалізація Xavier (Glorot) масштабує дисперсію за кількістю вхідних і вихідних одиниць і підходить для tanh і sigmoid мереж. Ініціалізація He (Kaiming) масштабується за кількістю входів і враховує, що ReLU відкидає половину своїх входів, що робить його стандартом для глибоких мереж і CNN на основі ReLU. Хороша ініціалізація зберігає раннє навчання стабільним, доки нормалізація та адаптивні оптимізатори не візьмуть верх.
CNN, що використовує активації ReLU, ініціалізується ініціалізацією He, тому глибокі згорточні стеки тренуються без зникаючих сигналів.
Мережа з активаціями tanh використовує ініціалізацію Xavier, щоб підтримувати стабільність дисперсії активації на різних рівнях.
Інженер, який випадково ініціалізує всі ваги на нуль, бачить, що мережа не навчається, оскільки кожен нейрон залишається ідентичним.
Стандартні параметри фреймворку (Kaiming PyTorch, Glorot uniform Keras) автоматично застосовують принципову ініціалізацію під час створення шару.
Рівні нормалізації та залишкові з’єднання зробили навчання дещо менш чутливим до точної ініціалізації, але воно все ще має значення для дуже глибоких мереж або мереж, які не потребують нормалізації. Активні дослідження включають схеми, адаптовані до трансформаторів і уваги, методи, які дозволяють мережам тренуватися без будь-яких рівнів нормалізації, а також такі теорії, як динамічна ізометрія та ядро нейронного дотичного, яке передбачає можливість навчання лише за допомогою ініціалізації. Ініціалізація, залежна від даних, яка калібрує ваги з партії зразків, є ще одним напрямом, що розвивається.
Безплатний розсилок
Три перевірені історії про ШІ щоробочого ранку, написані простою мовою. Безплатно назавжди, без реклами.
Один лист щотижня з понеділка по п'ятницю. Відписатися в один клік. Ми ніколи не продаємо та не передаємо вашу адресу.
Перевір себе
Миттєва зворотна связь на кожну відповідь та сертифікат із перевіреним ідентифікатором, яким можна поділитися, після проходження курсу.
Підтримайте безплатну освіту у сфері ШІ. AI Understanding — це некомерційна організація 501(c)(3) — без реклами, без платних стін, назавжди. Зробіть пожертву
Як ви встановлюєте початкові ваги нейронної мережі перед початком навчання, що сильно впливає на те, чи залишатимуться сигнали та градієнти здоровими через глибокі шари. Хороша ініціалізація - це різниця між швидкою конвергенцією та моделлю, яка ніколи не навчається.
З ідентичними вагами кожен нейрон обчислює однакові вихідні дані та градієнт, тому вони оновлюються ідентично, і шар ніколи не зможе вивчити різні функції.
Ініціалізація масштабує дисперсію на 2 / fan_in, щоб компенсувати обнулення ReLU приблизно половини своїх вхідних даних.
Такі схеми, як Xavier і He, вибирають дисперсію ваги з розмірів шарів, щоб сигнали не зникали й не вибухали під час поширення.
Xavier балансує пряму та зворотну дисперсію для симетричних, насичених активацій, таких як tanh та sigmoid.
ReLU пропускає лише позитивні входи, відкидаючи приблизно половину сигналу, тому подвоєння дисперсії відновлює очікувану дисперсію активації.
Продовжуйте вчитися
Інші посібники, вибрані для цієї теми
ДаліНаступний посібник
Стохастичне усереднення ваги
технічний