Домашнє завдання

Оптимізатори

Усюди рахуй кроки, а не секунди. Секунди залежать від того, який у тебе комп'ютер і що ще на ньому крутиться; кроки — не залежать ні від чого.


рівень 1Рівень 1 — База

Візьми з практики функції спуск_простий, спуск_із_моментом і спуск_adam, але зроби собі новий яр: змінюй лише кривизну крутого напрямку. Постав її по черзі рівною 5, 20 (як у лекції), 50 і 100, лишивши пологу 0.05 без змін. Для кожної кривизни візьми найбільший крок, який ще дозволений простому спуску (це 2/кривизна, взяте з невеликим запасом — наприклад, 0.96 від межі), і порахуй, за скільки кроків кожен із трьох методів заходить у коло радіуса 0.20.

Побудуй таблицю з чотирьох рядків: кривизна, кроки простого, кроки моменту, кроки Adam.

Зроблено, якщо: таблиця побудована, і ти написав(ла) двома реченнями, як змінюється відношення «кроки простого / кроки моменту» з ростом кривизни — росте, падає чи стоїть на місці, і чому саме так.


рівень 2Рівень 2 — Плюс

Повернись до мережі з частини 3 практики й перевір твердження з розділу 08 лекції: «Adam кращий з коробки, SGD із моментом кращий після налаштування».

Прожени кожен із трьох методів (простий спуск, момент, Adam) на сітці кроків [0.01, 0.03, 0.1, 0.3, 1.0, 3.0] і для кожної пари «метод × крок» запиши фінальну крос-ентропію на навчальній вибірці та точність на тестовій. Побудуй графік: по горизонталі крок (логарифмічна шкала), по вертикалі точність, три криві.

Зроблено, якщо: графік побудований і ти відповів(ла) на два питання числами. Перше: у скільки разів ширший діапазон кроків, на якому Adam дає точність не гіршу за 0.90, порівняно з простим спуском? Друге: чи знайшовся крок, на якому момент обійшов найкращий результат Adam, і на скільки?


рівень 3Рівень 3 — Виклик

Реалізуй AdamW — варіант Adam зі спадом ваг (weight decay), винесеним з градієнта в саме правило кроку. Різниця з класичним підходом в одному рядку:

Додай обидва варіанти до функції навчити і порівняй їх на мережі з практики при λ з набору [0, 0.001, 0.01, 0.1].

Зроблено, якщо: ти показав(ла) таблицею, як при кожній λ різняться дві речі — норма ваг наприкінці навчання (√(сума квадратів усіх параметрів)) і точність на тесті, — і пояснив(ла) одним абзацом, чому в класичному варіанті фактична сила регуляризації для різних параметрів виходить різною, хоча λ одна на всіх.


Підказки