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

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

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

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

Моделите като динамични системи

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

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

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

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

Откъде идва по-малката/простата част? Е, ML моделите обикновено се изграждат от слоеве от прости математически операции: умножение, събиране или основна логическа операция (напр. дървета на решенията или ReLU единици в невронни мрежи). Това всъщност е точно като много големи физически системи в реалния свят: кристал, съставен от атоми, или басейн от вода, съставен от водни молекули. С други думи,

ML моделите могат да се разглеждат като динамични системи, изградени от по-малки компоненти с прости взаимодействия

На този език целта на обучението би била интелигентното сглобяване на тези съставни части, като красива снежинка от някакъв вид.

Данни като термални бани

Какво означава да подадете вход към модел и тогава да получите някакъв изход? Е, на езика на взаимодействията, подаването на вход към модел би било еквивалентно на натискане/смущение на системата с някакво външно влияние, докато изходът би бил реакцията на системата.

Каква би била аналогията с данните? В реалния свят не можем да контролираме какви точки от данни са „избрали“ да бъдат събрани. Обикновено се приема, че те са избрани на случаен принцип. Ясната физическа аналогия е термалната баня - източник на случайност и несигурност.

Това е, което прави термодинамичната аналогия мощна: топлинната физика извлича прозрение от шума на топлинните флуктуации; ML моделите извличат прозрения на фона на шумни данни.

Обърнете внимание, че в ML обикновено има разлика между обучение/напасване на модел спрямо използване на модел за оценка на определен набор от данни. Сега това разграничение е изцяло наложено от нас и всъщност няма физически аналог. Във всеки случай ние се отказваме от математическата строгост; така че нека просто видим докъде може да ни отведе.

Обучението като динамичен процес

За да стигнем по-далеч, нека наистина се задълбочим в динамичната част на нашия модел.

Нека разгледаме процеса на обучение на модела. Как става това? Обикновено захранваме модела с някои данни за обучение и принуждаваме модела да минимизира някои обективни функции за загуба. Функцията на загубата измерва колко близо е прогнозата на модела в сравнение с действителните данни (може да има някои допълнителни условия за регулиране).

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

Все пак системите не просто сляпо минимизират тези „енергии“. Слънцето не просто избухва спонтанно и се охлажда и ние не просто моментално замръзваме и губим цялата си телесна топлина.

Еволюцията на една система се свежда до фундаменталните взаимодействия между нейните съставни части. Енергията ръководи системата, но не диктува напълно какво прави. Във физиката „енергията“ просто ни дава един специфичен поглед върху системата.

Така че нека мислим за функцията на загуба в ML като за някакъв вид енергия. Въпреки че специалистите по данни винаги намират нови начини за минимизиране на функцията на загуба, функцията на загуба не е всичко. ML моделите не само сляпо минимизират функциите за загуба. Вместо това трябва да мислим за обучението по ML модел като еволюция на сложна динамична система:

Обучението на модел е подобно на динамична система, която се организира при някои взаимодействия

Добавяйки външни данни за обучение, тази динамична система вече е под въздействието на термална баня! Заедно получаваме много мощна аналогия:

Обучението на модел е подобно на динамична система, организираща се под въздействието на термична баня от данни

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

И така, най-накрая стигаме до виждането на физиците за ML модел:

  1. Това е динамична система, съставена от много малки взаимодействащи компоненти
  2. Докато моделът тренира, той се реорганизира под въздействието на външна термална баня (т.е. източникът на произволни данни)

Сега, нека приложим някои физически закони към ML!

Вторият закон: Ентропията винаги расте

Може би един от най-известните „закони“ на физиката, Вторият закон на термодинамиката гласи, че съществува понятие, наречено ентропия, което може само да нараства с течение на времето (вижте другата ми статия за „Ентропия“ » за подробно проучване).

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

За нас важното е, че:

Термодинамичните системи НЕ просто минимизират енергията. Вместо това системата максимизира ентропията. С други думи, системите са склонни да се установяват до най-вероятните конфигурации.

Когато прилагате това към ML модели, твърдението става

ML моделите НЕ минимизират непременно функцията за загуба, вместо това те просто се установяват до най-вероятната конфигурация

Това може да звучи контраинтуитивно, тъй като винаги ни се казва да минимизираме функцията на загубата, а функцията на загубата често се рекламира като ключов показател за ефективност (особено в състезанията на Kaggle).

Не забравяйте обаче, че данните за обучение (и данните за тестване) винаги са само подмножество от пълните данни. Така че целта наистина е грубо да се минимизира функцията за загуба, като същевременно се минимизира рискът от пренастройване на данните за обучение. Така че частта за максимизиране на ентропията е желан компромис: защото искаме моделът да се обобщава и да не се прекалява.

(* има известно предупреждение относно приложимостта на този закон, тъй като едно от изискванията е ергодичност или идеята, че една динамична система може ефективно да пробва почти всички възможности; много ML модели вероятно дори не идват близо до всякакъв вид ергодичност. Но хей, ние не се опитваме да бъдем 100% математически строги, така че нека не бъдем прекалено педантични)

Топлинно равновесие?

Можем да въведем друга мощна концепция в топлинната физика, която да ни помогне да разберем моделите: понятието за термично равновесие.

И така, какво се случва, когато една система достигне максимална ентропия? крайният резултат е топлинно равновесие. От гледна точка на физиката това означава, че:

  1. Докато микроскопичната конфигурация на системата може да се променя непрекъснато, макроскопичното поведение на системата спира да се променя.
  2. „Историческото“ поведение на системата е напълно загубено, тъй като системата по същество забравя какво се е случило в миналото.

Аналогиите на ML са доста дълбоки. Моделите, достигащи топлинно равновесие, имат свойствата, които:

  1. За модели, инициализирани с различни произволни семена и обучени с различен произволен набор от данни, те ще имат същата производителност (макроскопично поведение), докато параметрите им може да са различни (микроскопични конфигурации)
  2. Цялостните характеристики на ML модела не са чувствителни към тренировъчните траектории (забравяне на истории)

И двата резултата са много желани за моделите на машинно обучение. Така че може би целта на обучението на ML модели е да се насочи системата към някакъв вид топлинно равновесие!

Отново, тази аналогия не е 100% строга и човек лесно може да намери контрапримери като прости линейни модели. И все пак е безспорно, че има някои интригуващи паралели и прозрения, които можем да извлечем от физиката.

Заключение

За да обобщим, използвайки концепции като енергия, термична баня и ентропия от физиката, ние сме в състояние да разглеждаме ML моделите като сложни динамични системи, изградени от прости взаимодействия.

Точно както в природата, ML моделът се развива под влиянието на сложни взаимодействия, ръководени от функцията на загуба (подобна на енергия), която му позволява да се реорганизира, докато му подаваме данни (термална баня). В крайна сметка системата достига до термично равновесие, което води до интригуваща структура, подобна на снежинка/кристал.

Защо тази гледна точка е полезна? Тъй като ни дава някои съвети защо ML работи или не работи:

  1. ML моделите не само минимизират отделни функции на загуба. Вместо това те се развиват динамично. Трябва да вземем предвид динамичната еволюция, когато мислим за ML.
  2. Не можем да разберем напълно ML моделите, като използваме само няколко показателя за ефективност. Тези показатели улавят макроскопичните поведения, но пропускат микроскопичните детайли. Трябва да мислим за показателите като за малки прозорци в сложна динамична система, като всеки показател подчертава само един аспект от нашите модели.

Като физик бих казал, че тези гледни точки ни дават повече интуиция относно често рекламираната „черна магия“ на ML.

В обобщение, можем да опишем работата на специалиста по данни като системен инженер: да създаде правилния тип микроскопични взаимодействия и среди, за да може моделът да се оформи в желана макроскопична структура – ​​да изгради тази перфектна снежинка. За мен това е много по-поетично описание на длъжността; за разлика от седенето пред компютъра, кодирането на редове и редове код и чакането обучителната работа да приключи. Както и да е, така обичам да мисля за науката за данните.

Е, това е всичко засега, надявам се да ви хареса!

Моля, оставете коментари и отзиви по-долу, това ще ме насърчи да пиша повече прозрения!