Дослідники напрямку Computer Science відкрили новий спосіб множити великі матриці швидше, усунувши раніше невідому неефективність, що призвело до найбільшого покращення ефективності множення матриць за останні десять років. Це може врешті прискорити роботу моделей штучного інтелекту, які значною мірою покладаються на множення матриць.
Множення двох прямокутних числових масивів, відоме як матричне множення, відіграє вирішальну роль у сучасних моделях ШІ, включаючи розпізнавання мови та зображень, його використовують чатботи від усіх основних розробників, генератори зображень зі штучним інтелектом та моделі синтезу відео. Крім ШІ, матрична математика важлива для сучасних обчислень (згадаймо обробку зображень і стиснення даних), що навіть незначне підвищення ефективності може призвести до економії обчислень і електроенергії, повідомляє ArsTechnica.
Графічні процесори (GPU) виконують завдання множення матриць завдяки здатності обробляти багато обчислень одночасно. Вони розбивають великі матричні задачі на менші сегменти та розв’язують їх одночасно за допомогою алгоритму.
Вдосконалення цього алгоритму стало ключем до прориву в ефективності множення матриць протягом останнього століття — ще до того, як з’явилися комп’ютери. У жовтні 2022 року була винайдена нова методика моделлю ШІ Google DeepMind під назвою AlphaTensor, зосередившись на практичних алгоритмічних вдосконаленнях для конкретних розмірів матриць, таких як матриці 4х4.
На противагу цьому, нове дослідження групи вчених з Університету Цінхуа, Каліфорнійського університету в Берклі та Массачусетського технологічного інституту, спрямоване на теоретичні вдосконалення з метою зниження показника складності ω для підвищення ефективності для всіх розмірів матриць. Замість того, щоб шукати негайні практичні рішення, такі як AlphaTensor, нова методика спрямована на фундаментальні вдосконалення, які можуть змінити ефективність множення матриць у більш загальному масштабі.
Традиційний метод множення двох матриць n на n вимагає n³ окремих множень. Однак нова методика, яка вдосконалює «лазерний метод», представлений Фолькером Штрассеном у 1986 році, зменшила верхню межу експоненти (позначається як вищезгаданий ω), наблизивши її до ідеального значення 2, яке представляє теоретично мінімальну кількість необхідних операцій.
Традиційний спосіб множення двох сіток, заповнених числами, може вимагати виконання обчислень до 27 разів для сітки 3х3. Але з цими вдосконаленнями процес прискорюється коштом значного скорочення необхідних кроків множення. Це дає змогу звести до мінімуму кількість операцій до трохи більше ніж удвічі більшого розміру однієї зі сторін сітки в квадраті, скоригованого на коефіцієнт 2.371552. Це дуже важливо, тому що це майже досягає оптимальної ефективності подвоєння розмірів квадрата, що є найшвидшою швидкістю, на яку ми коли-небудь могли сподіватися.
Прорив 2023 року став можливим завдяки виявленню «прихованих втрат» у лазерному методі, коли корисні блоки даних ненавмисно відкидалися. У контексті множення матриць, «блоки» означають менші сегменти, на які велика матриця поділяється для полегшення обробки, а «маркування блоків» — це техніка категоризації цих сегментів, щоб визначити, які з них зберегти, а які відкинути, оптимізуючи процес множення для швидкості та ефективності. Модифікувавши спосіб маркування блоків, дослідники змогли зменшити кількість відходів і значно підвищити ефективність.
Яке ж це має практичне застосування? Для моделей ШІ зменшення кількості обчислювальних кроків у матричній математиці може призвести до скорочення часу навчання та ефективнішого виконання завдань. Це дасть змогу швидше навчати складніші моделі, що потенційно призведе до вдосконалення можливостей ШІ та розробки складніших застосунків зі штучним інтелектом. Крім того, підвищення ефективності може зробити ШІ-технології доступнішими завдяки зниженню обчислювальної потужності та споживання енергії, необхідних для виконання цих завдань.
Точний вплив на швидкість роботи моделей ШІ залежить від конкретної архітектури системи та від того, наскільки сильно її завдання покладаються на множення матриць. Підвищення алгоритмічної ефективності часто потрібно поєднувати з оптимізацією апаратного забезпечення, щоб повністю реалізувати потенційний приріст швидкості. Але все ж таки, з часом, коли вдосконалення алгоритмічних методів накопичуються, ШІ буде ставати швидшим.