Моделі та платформи ШІ
Дослідники створили альтернативу GPU

Комп’ютерні вчені з Райсського університету, разом з колегами з Intel (INTC ), розробили більш економічну альтернативу GPU. Нова алгоритмічна система називається «підлінійний двигун глибокого навчання» (SLIDE), і вона використовує загальні процесори (CPU) без спеціалізованого прискорювального апаратного забезпечення.
Результати були представлені в конференц-центрі Остіна, який проводить конференцію з систем машинного навчання MLSys.
Однією з найбільших проблем у сфері штучного інтелекту (AI) є спеціалізоване прискорювальне апаратне забезпечення, chẳng hạn як графічні процесори (GPU). До нових розробок вважалося, що для прискорення технології глибокого навчання необхідне використання цього спеціалізованого апаратного забезпечення.
Багато компаній надають велике значення інвестиціям у GPU і спеціалізоване апаратне забезпечення для глибокого навчання, яке відповідає за технології, такі як цифрові помічники, розпізнавання облич, і системи рекомендацій товарів. Однією з таких компаній є Nvidia (NVDA ), яка створює графічні процесори Tesla (TSLA ) V100 Tensor Core. Nvidia недавно повідомила про зростання виручки у четвертому кварталі на 41% у порівнянні з минулим роком.
Розробка SLIDE відкриває абсолютно нові можливості.
Аншумалі Шрівастава є асистентом професора в школі інженерії Райсського університету і допоміг винайти SLIDE разом з аспірантами Бейді Чен і Таруном Медіні.
“Наші тести показують, що SLIDE є першою розумною алгоритмічною реалізацією глибокого навчання на CPU, яка може перевершити апаратне прискорення GPU на промислових масштабах рекомендаційних наборів даних з великими повністю зв’язаними архітектурами”, – сказав Шрівастава.
SLIDE долає проблему GPU завдяки зовсім іншому підходу до глибокого навчання. Наразі стандартна техніка навчання глибоких нейронних мереж – “зворотнє поширення”, і вона вимагає множення матриць. Ця робота вимагає використання GPU, тому дослідники змінили навчання нейронної мережі так, щоб її можна було розв’язати за допомогою хеш-таблиць.
Цей новий підхід значно зменшує обчислювальні витрати для SLIDE. Поточна найкраща платформа GPU, яку компанії, такі як Amazon (AMZN ) і Google (GOOGL ), використовують для хмарного глибокого навчання, складається з восьми Tesla V100, і її ціна становить близько 100 000 доларів.
“У нас є одна в лабораторії, і в нашому тестовому випадку ми взяли робоче навантаження, яке ідеально підходить для V100, одне з більш ніж 100 мільйонами параметрів у великих повністю зв’язаних мережах, які поміщаються в пам’яті GPU”, – сказав Шрівастава. “Ми тренували її з найкращим (програмним) пакетом, який є, Google’s TensorFlow, і це зайняло 3 з половиною години.
“Потім ми показали, що наш новий алгоритм може виконати навчання за один годину, не на GPU, а на 44-ядерному процесорі Xeon-класу”, – продовжив він.
Хешування – це тип методу індексування даних, винайдений у 1990-х роках для інтернет-пошуку. Чисельні методи використовуються для кодування великих обсягів інформації у вигляді рядка цифр, який називається хешем. Хеші перераховуються для створення таблиць, які можна швидко шукати.
“Було б безглуздо реалізувати наш алгоритм на TensorFlow або PyTorch, оскільки перша річ, яку вони хочуть зробити, – це перетворити все, що ви робите, у проблему множення матриць”, – сказав Чен. “Це саме те, від чого ми хотіли відмовитися. Тому ми написали свій власний код на C++ з нуля”.
За словами Шрівастави, найбільша перевага SLIDE полягає в тому, що вона паралельна за даними.
“Під паралельністю за даними я маю на увазі, що якщо у мене є два екземпляри даних, на яких я хочу тренувати, скажімо, одне – зображення кота, а інше – автобуса, вони, ймовірно, активуватимуть різні нейрони, і SLIDE може оновити, або тренувати ці два незалежно”, – сказав він. “Це значно краще використання паралелізму для CPU”.
“З іншого боку, у порівнянні з GPU, ми потребуємо великої пам’яті”, – сказав він. “Є ієрархія кешу в основній пам’яті, і якщо ви не будете обережні з нею, ви можете натрапити на проблему, таку як кеш-трешинг, коли ви отримуєте багато промахів кешу”.
SLIDE відкрив двері для нових способів реалізації глибокого навчання, і Шрівастава вважає, що це тільки початок.
“Ми тільки поцарапали поверхню”, – сказав він. “Є багато того, що ми ще можемо зробити для оптимізації. Ми не використали векторизацію, наприклад, або вбудовані прискорювачі в CPU, такі як Intel Deep Learning Boost. Є багато інших трюків, які ми могли б використовувати, щоб зробити це ще швидшим”.












