Преминаване към основното съдържание
OpenAI

13 ноември 2025 г.

ПроучванеПубликация

Разбиране на невронни мрежи чрез разредени вериги

Обучихме моделите да мислят с по-прости и проследими стъпки, за да можем да разберем по-добре как работят.

Зареждане…

​​Невронните мрежи са в основата на най-способните съвременни системи за ИИ, но те остават трудни за разбиране. Ние не пишем тези модели с ясни инструкции стъпка по стъпка. Вместо това, те се учат, като коригират милиарди вътрешни връзки, или „тежести“, докато усвоят дадена задача. Ние определяме правилата на обучението, но не и конкретните поведения, които възникват, а резултатът е плътна мрежа от връзки, която никой човек не може лесно да дешифрира. 

Как разглеждаме интерпретируемостта

Тъй като системите с ИИ стават все по-способни и оказват реално въздействие върху решенията в областта на науката, образованието и здравеопазването, разбирането на начина, по който работят, е от съществено значение. Интерпретируемост се отнася до методи, които ни помагат да разберем защо даден модел е дал даден изход. Има много начини, по които бихме могли да постигнем това. 

Например моделите за разсъждение са стимулирани да обясняват работата си по пътя към крайния отговор. Интерпретируемостта на логическото мислене използва тези обяснения, за да наблюдава поведението на модела. Това е незабавно полезно: логическото мислене на настоящите модели за разсъждение изглеждат информативни по отношение на притеснителни поведения като измама. Въпреки това, пълното разчитане на това свойство е крехка стратегия, която може да се разпадне с течение на времето.

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

Интерпретируемостта поддържа няколко ключови цели, като например да позволява по-добър надзор и да предоставя ранни предупредителни сигнали за опасно или стратегически несъобразено поведение. Допълва и другите ни усилия за безопасност, като например мащабируемия надзор, обучението на противници и редицата екипи. 

В тази работа показваме, че често можем да обучаваме модели по начини, които ги правят по-лесни за интерпретация. Виждаме нашата работа като обещаващо допълнение към пост-хок анализа на плътни мрежи. 

Това е много амбициозен залог; от нашата работа до пълното разбиране на сложното поведение на най-мощните ни модели има дълъг път. Въпреки това за прости поведения откриваме, че разредените модели, обучени по нашия метод, съдържат малки, разчленени вериги, които са разбираеми и достатъчни за изпълнение на поведението. Това подсказва, че може да има лесен път към обучението на по-големи системи, чиито механизми можем да разберем.

Нов подход: изучаване на разредени модели

Досегашната работа по механистична интерпретируемост започваше с плътни, заплетени мрежи и се опитваше да ги разплете. В тези мрежи всеки отделен неврон е свързан с хиляди други неврони. Повечето неврони изглежда изпълняват много различни функции, което ги прави на пръв поглед невъзможни за разбиране. 

Но какво би станало, ако обучим разплетени невронни мрежи с много повече неврони, но в които всеки неврон има само няколко десетки връзки? Тогава може би получената мрежа ще бъде по-проста и по-лесна за разбиране. Това е основният изследователски залог на нашата работа.

Имайки предвид този принцип, ние обучихме езикови модели с много подобна архитектура на съществуващите езикови модели като GPT‑2, с една малка модификация: принуждаваме по-голямата част от теглата на модела да бъдат нули. Това ограничава модела да използва само много малко от възможните връзки между невроните си. Това е проста промяна, която според нас значително разединява вътрешните изчисления на модела.

Диаграма за сравнение на плътни и разредени вериги. Плътната версия показва два реда възли с много взаимосвързани линии, докато разредената версия показва същото оформление, но с по-малко и по-селективни връзки.

В нормалните плътни невронни мрежи всеки неврон е свързан с всеки неврон в следващия слой. В нашите разредени модели всеки неврон се свързва само с няколко неврона в следващия слой. Надяваме се, че това ще улесни разбирането на невроните и на мрежата като цяло.

Оценяване на интерпретируемостта

Искаме да измерим степента, в която изчисленията на нашите разредени модели са разединени. Разгледахме различни прости поведения на модела и проверихме дали можем да изолираме частите на модела, отговорни за всяко поведение—които наричаме вериги.

Избрахме ръчно набор от прости алгоритмични задачи. За всяка от тях съкратихме модела до най-малката верига, която все още може да изпълнява задачата, и проверихме колко проста е тази верига. (За подробности вижте нашата статия(отваря се в нов прозорец).) Установихме, че чрез обучение на по-големи и по-разредени модели можем да създаваме все по-способни модели с все по-прости вериги.

Диаграма на разсейване, показваща възможностите на модела (загубата преди обучението) по оста x спрямо интерпретируемостта (размер на орязаната схема) по оста y. Точките представляват модели с различни размери и нива на рядкост, като цветът показва общия брой параметри, а размерът на маркера – броя на ненулевите параметри. Стрелките обозначават горната дясна посока като „по-добра“.

Ние изобразяваме интерпретируемостта спрямо способността в различните модели (долният ляв ъгъл е по-добър). За фиксиран размер на разредения модел увеличаването на разредеността – задаването на повече тегла към нула – намалява възможностите, но увеличава интерпретируемостта. Увеличаването на размера на модела измества тази граница навън, което предполага, че можем да създадем по-големи модели, които са едновременно способни и интерпретируеми.

За да конкретизираме това, разгледайте задача, при която модел, обучен на код в Python, трябва да попълни низ с правилния тип кавички. В Python ‘hello’ трябва да завършва с единична кавичка, а “hello” – с двойна кавичка. Моделът може да реши този проблем, като запомни кой тип кавички е отворил низа и го възпроизведе в края.

Нашите най-интерпретируеми модели изглежда съдържат разплетени вериги, които прилагат точно този алгоритъм.

Диаграма, илюстрираща примерна схема в разредения трансформатор. Показва как определени неврони и глави на вниманието се активират в отговор на входящи токени като „(“ и „вериги„, с маркирани пътища за положителни и отрицателни тегла, умножения, нелинейности и връзки между слоевете на вниманието и MLP, завършващи с вероятности за изходящи токени.

Примерна верига в разреден трансформатор, която предсказва дали даден низ да завършва с единична или двойна кавичка. Тази схема използва само пет остатъчни канала (вертикални сиви линии), два MLP неврона в слой 0 и един канал за запитване-ключ за внимание и един канал за стойност в слой 10. Моделът (1) кодира единичните кавички в един остатъчен канал, а двойните кавички – в друг; (2) използва MLP слой, за да преобразува това в един канал, който открива всяка кавичка, и друг, който класифицира между единични и двойни кавички; (3) използва операция за внимание, за да игнорира намесващите се токени, да открие предишната кавичка и да копира нейния тип в крайния токен; и (4) предсказва съответстващата затваряща кавичка.

В нашата дефиниция точните връзки, показани по-горе, са достатъчни за изпълнение на задачата – ако премахнем останалата част от модела, тази малка верига все още работи. Те са и необходими – изтриването на тези няколко ръба води до провал на модела.

Също така разгледахме някои по-сложни поведения. По-трудно е да се обяснят напълно нашите вериги за тези поведения (например променливото свързване, показано по-долу). Дори и тогава можем да постигнем сравнително прости частични обяснения, които предсказват поведението на модела.

Диаграма, показваща примерна схема на рядък трансформатор в рамките на функцията get_neighbors на Python. Двете присвоявания на current = set() са оградени с цветни стрелки, показващи кои глави за внимание (обозначени с индекси Q/K/V) се активират, за да свържат всяко появяване на променливата current с нейното използване в цикъла.

Друга примерна верига, с по-малко подробности. За да се определи типът на променлива, наречена current, една операция на вниманието копира името на променливата в токена set(), когато тя е дефинирана, а друга по-късна операция копира типа от токена set() в последваща употреба на променливата, което позволява на модела да изведе правилния следващ токен.

Какво ни предстои

Тази работа е начална стъпка към една по-голяма цел: да се улесни разбирането на изчисленията на моделите. Но все още има дълъг път напред. Нашите разредени модели са много по-малки от авангардните модели и голяма част от изчисленията им остават неинтерпретирани. 

След това се надяваме да разширим обхвата на нашите техники до по-големи модели и да обясним повече от поведението на моделите. Чрез изброяване на мотивите на веригите, които лежат в основата на по-сложните разсъждения в способни разредени модели, бихме могли да развием разбиране, което да ни помогне по-добре да насочим изследванията си към авангардните модели.

За да преодолеем неефективността на обучението на разредени модели, виждаме два пътя напред. Една от тях е да се извлекат разредени вериги от съществуващи плътни модели, вместо да се обучават разредени модели от нулата. Плътните модели са по същество по-ефективни за внедряване от разредените модели. Другият път е да се разработят по-ефективни техники за обучение на модели за интерпретируемост, които може да са по-лесни за внедряване в производство.

Обърнете внимание, че нашите открития тук не гарантират, че този подход ще се приложи към по-способни системи, но тези ранни резултати са обещаващи. Нашата цел е постепенно да разширим обхвата на моделите, които можем да интерпретираме надеждно, и да създадем инструменти, които да улеснят анализа, отстраняването на грешки и оценката на бъдещите системи.

Автори

Leo Gao, Achyuta Rajaram, Jacob Coxon, Soham V. Govande, Bowen Baker и Dan Mossing