Розмір шрифта:
Оптимізація застосування апаратних засобів для навчання глибоких нейронних мереж
Остання редакція: 2022-10-29
Анотація
Розглянуто задачу навчання глибоких нейронних мереж із залученням технології машинного навчання DirectML і PyTorch із застосуванням прискорювачів AMD Radeon і центрального процесора. Показано, у яких випадках застосування прискорювачів машинного навчання є обґрунтованим і дає перевагу у навчанні моделей машинного навчання: на прикладі мережі із прямим поширенням помилки, згорткових нейронних мереж і генеративних змагальних мереж. Наведено приклад застосування центральних процесорів для обчислення помилки реконструкції (loss) з одночасним виконанням процедури обчислення градієнта на кожному шарі із застосуванням відео прискорювача, що дає змогу збільшити швидкодію навіть на задачах, що погано обчислюються і неможливості розмістити дані програми повністю в пам’яті відеоприскорювача. Розглянуто приклад обчислення оптимізаційної процедури за умов вичерпання ресурсів по швидкодії та пам’яті графічного процесора та застосування загальної системної пам’яті (RAM) при записі-зчитуванні ваг мережі. В результаті було визначено стратегію застосування центрального процесора, при якій використовуються переваги навчання разом із відео прискорювачем. Дана стратегія використовується для навчання великих моделей на порівняно недорогих прискорювачах, що дає змогу аналіз моделі без залучення високовартісних засобів. Також було запропонована оцінка швидкодії, яка ґрунтується на визначенні процентиля навантаження системи та нормування відносно максимально можливого. Отримана оцінка показала, що загальна очікувана швидкодія системи близька до теоретично обрахованої із залученням стандартного тесту швидкодії OpenCL.