Generative Data Intelligence

Як машини «Грок» даних? | Журнал Quanta

Дата:

Вступ

Незважаючи на всю свою яскравість, штучні нейронні мережі залишаються незбагненними, як і раніше. Оскільки ці мережі стають більшими, їхні можливості вибухають, але розшифрувати їхню внутрішню роботу завжди було майже неможливо. Дослідники постійно шукають будь-яку інформацію про ці моделі.

Кілька років тому вони виявили нову.

У січні 2022 року дослідники OpenAI, компанії, що стоїть за ChatGPT, повідомляє що ці системи, коли їм випадково дозволили їсти дані набагато довше, ніж зазвичай, розробили унікальні способи вирішення проблем. Як правило, коли інженери будують моделі машинного навчання з нейронних мереж, що складаються з обчислювальних одиниць, які називаються штучними нейронами, вони прагнуть зупинити навчання в певній точці, яка називається режимом переобладнання. Це коли мережа в основному починає запам’ятовувати свої дані навчання і часто не буде узагальнювати нову, невидиму інформацію. Але коли команда OpenAI випадково навчила невелику мережу далеко за межі цієї точки, здавалося, що вона розвинула розуміння проблеми, яке вийшло за рамки простого запам’ятовування — вона могла раптово перевершити будь-які тестові дані.

Дослідники назвали це явище «grokking» — термін, введений письменником-фантастом Робертом А. Хайнлайном, який означає розуміння чогось «настільки глибоко, що спостерігач стає частиною процесу, за яким спостерігають». Перетренована нейронна мережа, призначена для виконання певних математичних операцій, вивчила загальну структуру чисел і інтерналізувала результат. Це сталося і стало рішенням.

«Це [було] дуже захоплююче та спонукало до роздумів», — сказав Михайло Бєлкін Каліфорнійського університету в Сан-Дієго, який вивчає теоретичні та емпіричні властивості нейронних мереж. «Це стимулювало багато подальшої роботи».

Дійсно, інші скопіювали результати і навіть провели їх реверсивну інженерію. Найновіші статті не тільки прояснили, що ці нейронні мережі роблять, коли вони грохають, але й запропонували нову лінзу, через яку можна досліджувати їх нутрощі. «Налаштування Grokking — це як гарна модель організму для розуміння багатьох різних аспектів глибокого навчання», — сказав Ерік Мішо Массачусетського технологічного інституту.

Зазирнути всередину цього організму часом досить показово. «Ви можете не тільки знайти красиву структуру, але ця красива структура важлива для розуміння того, що відбувається всередині», — сказав Ніл Нанда, зараз у Google DeepMind у Лондоні.

Поза межами

По суті, робота моделі машинного навчання здається простою: перетворити заданий вхід у бажаний результат. Завданням алгоритму навчання є пошук найкращої функції, яка може це зробити. Будь-яка дана модель може отримати доступ лише до обмеженого набору функцій, і цей набір часто визначається кількістю параметрів у моделі, яка у випадку нейронних мереж приблизно еквівалентна кількості з’єднань між штучними нейронами.

Вступ

Коли мережа навчається, вона прагне вивчати більш складні функції, і розбіжність між очікуваним результатом і фактичним починає потрапляти на дані навчання. Ще краще, ця розбіжність, відома як втрата, також починає зменшуватися для тестових даних, які є новими даними, які не використовуються в навчанні. Але в якийсь момент модель починає переповнюватись, і в той час як втрати навчальних даних продовжують падати, втрати тестових даних починають зростати. Тому, як правило, саме тоді дослідники припиняють навчання мережі.

Це була переважна думка, коли команда OpenAI почала досліджувати, як нейронна мережа може виконувати математику. Вони використовували невеликий трансформатор — мережева архітектура, яка нещодавно зробила революцію у великих мовних моделях — для виконання різних видів модульної арифметики, у якій ви працюєте з обмеженим набором чисел, які зациклюються самі по собі. Модуль 12, наприклад, можна виконати на циферблаті годинника: 11 + 2 = 1. Команда показала мережі приклади додавання двох чисел, a та b, для отримання результату, c, за модулем 97 (еквівалентно циферблату годинника з 97 цифрами). Потім вони випробували трансформатор на небачених комбінаціях a та b щоб перевірити, чи можна правильно передбачити c.

Як і очікувалося, коли мережа увійшла в режим переобладнання, втрати в навчальних даних наблизилися до нуля (вона почала запам’ятовувати те, що бачила), а втрати в тестових даних почали зростати. Це не було узагальненням. «І одного разу нам пощастило, — сказала керівник команди Алетея Пауер, виступаючи у вересні 2022 року на конференції в Сан-Франциско. «А під пощастило я маю на увазі забудькуватість».

Член команди, який навчав мережу, пішов у відпустку та забув припинити навчання. Оскільки ця версія мережі продовжувала тренуватися, вона раптово стала точною щодо невидимих ​​даних. Автоматичне тестування виявило цю несподівану точність для решти команди, і незабаром вони зрозуміли, що мережа знайшла розумні способи впорядкувати числа a та b. Внутрішньо мережа представляє числа в якомусь багатовимірному просторі, але коли дослідники спроектували ці числа в двовимірний простір і відобразили їх, числа утворили коло.

Це було вражаюче. Команда ніколи не розповідала моделі, що вона виконує математику за модулем 97, або навіть що означає модуль — вони просто показали їй приклади арифметики. Здавалося, модель натрапила на якесь глибше аналітичне рішення — рівняння, яке узагальнювало всі комбінації a та b, навіть поза тренувальними даними. Мережа забилася, точність тестових даних досягла 100%. «Це дивно», — сказала Пауер своїй аудиторії.

Команда перевірила результати, використовуючи різні завдання та різні мережі. Відкриття вистояло.

Про годинники та піцу

Але яке рівняння знайшла мережа? У документі OpenAI нічого не сказано, але результат привернув увагу Нанди. «Одна з головних таємниць і неприємних речей нейронних мереж полягає в тому, що вони дуже хороші в тому, що вони роблять, але за замовчуванням ми не маємо уявлення, як вони працюють», — сказав Нанда, чия робота зосереджена на зворотному проектуванні навченого мережі, щоб з’ясувати, які алгоритми вона вивчила.

Нанда був зачарований відкриттям OpenAI, і він вирішив розібрати на частини нейронну мережу, яка порушилася. Він розробив ще простішу версію нейронної мережі OpenAI, щоб він міг уважно досліджувати параметри моделі, коли вона навчалася виконувати модульну арифметику. Він спостерігав таку саму поведінку: переобладнання, яке змінилося на узагальнення та різке підвищення точності тесту. Його мережа також розташовувала числа по колу. Це вимагало певних зусиль, але зрештою Нанда зрозумів, чому.

Хоча вона представляла числа в колі, мережа не просто відраховувала цифри, як дитсадок, який дивиться на годинник: вона виконувала деякі складні математичні маніпуляції. Вивчаючи значення параметрів мережі, Нанда та його колеги розкрили що він додавав числа годинника, виконуючи над ними «дискретне перетворення Фур’є» — перетворюючи числа за допомогою тригонометричних функцій, таких як синуси та косинуси, а потім маніпулюючи цими значеннями за допомогою тригонометричних тотожностей, щоб отримати рішення. Принаймні, це те, що робила його конкретна мережа.

Коли команда в MIT послідував На роботі Нанди вони показали, що гроккінг нейронні мережі не завжди виявляють цей «годинниковий» алгоритм. Іноді натомість мережі знаходять те, що дослідники називають алгоритмом «піци». Цей підхід уявляє піцу, поділену на шматочки та пронумеровану в порядку. Щоб додати два числа, уявіть, що ви малюєте стрілки від центру піци до відповідних чисел, а потім обчислюєте лінію, яка ділить навпіл кут, утворений двома першими стрілками. Ця лінія проходить через середину деякого шматка піци: номер шматка є сумою двох чисел. Ці операції також можна записати в термінах тригонометричних і алгебраїчних маніпуляцій із синусами та косинусами a та b, і теоретично вони такі ж точні, як і годинник.

Вступ

«І годинник, і алгоритми піци мають це кругове представлення», — сказав Цімін Лю, член команди MIT. «Але... як вони використовують ці синуси та косинуси по-різному. Ось чому ми називаємо їх різними алгоритмами».

І це ще не все. Після навчання численних мереж обчисленню за модулем Лю та його колеги виявили, що близько 40% алгоритмів, відкритих цими мережами, були різновидами алгоритмів піци або годинника. Команда не змогла розшифрувати, що мережі роблять решту часу. Що стосується алгоритмів піци та годинника, «так трапляється, що вони знаходять те, що ми, люди, можемо інтерпретувати», — сказав Лю.

І який би алгоритм не вивчала мережа, коли вона виявляє проблему, він навіть потужніший для узагальнення, ніж підозрювали дослідники. Коли команда в університеті Меріленда живиться простою нейронною мережею навчальні дані з випадковими помилками, мережа спочатку поводилася, як очікувалося: переобладнала навчальні дані, помилки та інше, і погано працювала на непошкоджених тестових даних. Однак, як тільки мережа почала правильно відповідати на запитання тесту, вона могла видавати правильні відповіді навіть на неправильні записи, забуваючи запам’ятовані неправильні відповіді та узагальнюючи навіть свої навчальні дані. «Завдання грокінгу насправді досить стійке до такого роду корупції», — сказав Даршил Доші, один із авторів статті.

Битва за контроль

У результаті дослідники тепер починають розуміти процес, який призводить до того, що мережа перекриває свої дані. Нанда бачить явну зовнішню раптовість грокінгу як результат поступового внутрішнього переходу від запам’ятовування до узагальнення, яке використовує два різні алгоритми всередині нейронної мережі. За його словами, коли мережа починає навчатися, вона спочатку визначає легший алгоритм запам’ятовування; однак, незважаючи на те, що алгоритм є простішим, він вимагає значних ресурсів, оскільки мережа повинна запам’ятовувати кожен екземпляр навчальних даних. Але навіть під час запам’ятовування частини нейронної мережі починають формувати схеми, які реалізують загальне рішення. Два алгоритми конкурують за ресурси під час навчання, але узагальнення врешті-решт перемагає, якщо мережа навчена додатковим компонентом, який називається регуляризацією.

«Регулярізація повільно зміщує рішення до рішення узагальнення», — сказав Лю. Це процес, який зменшує функціональні можливості моделі — складність функції, яку модель може вивчити. Оскільки регулярізація зменшує складність моделі, узагальнюючий алгоритм, який є менш складним, зрештою перемагає. «Узагальнення простіше для того самого [рівня] продуктивності», — сказав Нанда. Нарешті, нейронна мережа відкидає алгоритм запам’ятовування.

Таким чином, хоча відстрочена здатність до узагальнення, здається, з’являється раптово, внутрішні параметри мережі постійно вивчають узагальнюючий алгоритм. Лише тоді, коли мережа вивчила узагальнюючий алгоритм і повністю видалила алгоритм запам’ятовування, ви починаєте дивуватися. «Цілком можливо, що речі, які здаються раптовими, насправді відбуваються поступово під поверхнею», – сказав Нанда. інші дослідження машинного навчання.

Незважаючи на ці прориви, важливо пам’ятати, що дослідження гроккінгу все ще перебувають у зародковому стані. Поки що дослідники вивчали лише надзвичайно малі мережі, і не ясно, чи ці висновки будуть актуальними для більших і потужніших мереж. Бєлкін також попереджає, що модульна арифметика — це «крапля в морі» порівняно з усіма різними завданнями, які виконують сучасні нейронні мережі. Зворотного проектування рішення нейронної мережі для такої математики може бути недостатньо, щоб зрозуміти загальні принципи, які спонукають ці мережі до узагальнення. «Це чудово вивчати дерева», — сказав Бєлкін. «Але ми також повинні вивчати ліс».

Тим не менш, здатність зазирнути всередину цих мереж і зрозуміти їх аналітично має величезні наслідки. Для більшості з нас перетворення Фур’є та дуги кіл, що ділять навпіл, є дуже дивним способом додавання за модулем — людські нейрони просто так не думають. «Але якщо ви створені на основі лінійної алгебри, насправді має сенс робити це так», — сказав Нанда.

«Ці дивні [штучні] мізки працюють не так, як наш власний», — сказав він. «[У них] є свої правила та структура. Нам потрібно навчитися думати, як мислить нейронна мережа».

spot_img

Остання розвідка

spot_img