Способна ли термодинамика помочь в понимании ML?
Тим Лоу, кандидат наук в области физики, рассказывает о машинном обучении с точки зрения термодинамики. Материалом делимся к старту флагманского курса по Data Science.
Меня, физика-теоретика, ставшего дата-сайентистом, часто спрашивают, насколько пригодились мне мои знания. Хотя способность рассчитывать взаимодействие частиц и понимать структуры Вселенной напрямую не связана с моей повседневной работой, усвоенные из физики знания и представления трудно переоценить.
Вероятно, наиболее близка науке о данных статистическая физика. Ниже я поделюсь своими мыслями о том, как умение находить взаимосвязи и черпать вдохновение из физики помогает мне понять важную часть науки о данных — машинное обучение.
Конечно, некоторые из этих мыслей не строги математически, но я считаю их весьма важными для понимания принципов работы ML.
Модели как динамические системы
Одна из ключевых задач науки о данных — прогнозирование, описание одних величин через другие. Например, спрогнозировать цену дома по его характеристикам или понять, как меню ресторана влияет на количество посетителей.
Для этого дата-сайентисты создают математические объекты — модели, необработанные входные данные которых превращаются в полезные выходные данные. Чтобы эти модели работали, их обучают. Многим читателям, вероятно, знаком принцип работы моделей. Я приведу его объяснение на примере термодинамики.
В математике модель — некая параметризованная функция. В физике же модель подобна машине, внутри которой материал превращается в полезный результат. Это система множества малых простых движущихся частей, похожая на заполненную разными деталями коробку:
Откуда берётся эта простая часть? ML-модели обычно строятся из слоёв простых математических операций: умножения, сложения или базовых логических операций (например, деревьев решений или блоков линейной ректификации ReLU в нейросетях).
На самом деле они похожи на многие крупные физические системы: кристалл из атомов или бассейн с огромным количеством молекул воды. Иными словами, ML-модели — это как динамические системы из мелких составляющих с простыми взаимодействиями. Цель обучения такой системы — с умом, как снежинку, объединить эти составляющие:
Данные как термальные воды
Передавать в модель входные данные, а затем получать выходные данные — что это значит на языке физики? Передача входных данных в модель — это вмешательство в систему извне, выходные данные — ответ системы.
В реальном проекте науки о данных нельзя управлять тем, какие именно точки данных собирать. Обычно предполагается случайный порядок отбора данных. В теплофизике информацию получают, исходя из шумности тепловых флуктуаций, а в ML-моделях — из информационного шума, поэтому чёткая параллель — термальные воды:
Обратите внимание, что в ML обычно есть разница между обучением модели и её применением в оценке конкретного набора данных. У этого отличия нет физического эквивалента. Так или иначе посмотрим, как далеко мы продвинемся, жертвуя математической строгостью.
Обучение как динамический процесс
Присмотримся к динамической части модели. Как учится модель? Обычно, чтобы минимизировать целевую функцию потерь модели, в неё передаются обучающие данные.
В функции потерь измеряется, насколько близок прогноз модели к фактическим данным, но может иметь место регуляризация — дополнительные условия.
Посмотрим, какая физическая величина здесь минимизируется. Это энергия! Я имею в виду не конкретные виды энергии, а скорее энергию как понятие. Например, электроны на металлической сфере обычно рассеиваются, что приводит к уменьшению их общей энергии. Можно считать, что силы возникают благодаря свойству минимизации этих энергий:
Но системы не минимизируют эти энергии слепо: Солнце не взрывается и не остывает произвольно, и мы мгновенно не замерзаем и не теряем всё тепло тела.
Эволюция системы сводится к фундаментальным взаимодействиям её составляющих. Энергией система направляется, но в своих действиях не управляется исключительно ею. Энергия в физике — это просто один конкретный взгляд на систему.
Давайте представим функцию потерь в ML как энергию. Хотя дата-сайентисты всегда находят новые способы минимизировать функцию потерь, этой функцией учёные не ограничиваются. В ML-модели функция потерь не просто слепо минимизируются, она обучается, развиваясь как сложная динамическая система:
Обучение модели подобно динамической системе, которая самоорганизуется в процессе взаимодействий. Добавляя в эту динамическую систему внешние обучающие данные, подвергаем её воздействию термальных вод!
Обучение модели сродни динамической системе, которая самоорганизуется под воздействием «термальных вод данных».
На самом деле это проливает свет на условия регуляризации в машинном обучении. Эти условия — дополнительные энергии или, скорее, дополнительные взаимодействия, помогающие направлять развитие моделей.
Итак, ML-модель с точки зрения физики:
Это динамическая система, состоящая из множества малых взаимодействующих компонентов.
По мере обучения и под воздействием внешних термальных вод, то есть источника случайных данных, модель самоорганизуется.
Теперь применим к ML физические законы.
Второй закон термодинамики: энтропия всегда возрастает
Этот закон, — возможно, один из самых известных законов физики — гласит, что существует понятие энтропии, которая с течением времени может только возрастать, смотрите другую мою подробную статью об энтропии.
Проще говоря, энтропия — отражение универсальности системы; второй закон гласит, что наиболее универсальная конфигурация, скорее всего, будет преобладающей. Почти тавтология. И вот что в ней важно для нас:
В термодинамических системах энергия не просто минимизируется — в системе максимизируется энтропия. То есть системы обычно переходят к наиболее вероятным конфигурациям. Применительно к ML-моделям это означает, что:
Функция потерь не обязательно минимизируется, она просто переходит к самой вероятной конфигурации.
Это может показаться парадоксальным, ведь мы всегда слышим о минимизации функции потерь, которая часто считается ключевой метрикой производительности, особенно на конкурсах в Kaggle.
Но не забывайте, что набор данных для обучения (и тестовые данные) — это всегда лишь подмножество полных данных. Поэтому цель на самом деле состоит в том, чтобы свести к минимуму не только функцию потерь, но и риск переобучения модели.
Таким образом, в части максимизации энтропии прослеживается компромисс: нужно, чтобы модель обобщала, но не переобучалась.
В применимости второго закона термодинамики есть недостаток, связанный с требованием эргодичности — представлении о том, что в динамической системе каждое состояние с определённой вероятностью проходит вблизи другого состояния.
Во многих моделях эргодичность, наверное, не соблюдается даже близко. Но мы не стремимся к полной математической строгости, так что не будем слишком педантичными.
Термодинамическое равновесие?
Чтобы лучше разбираться в моделях, рассмотрим ещё одно понятие теплофизики: термодинамическое равновесие. Что происходит, когда энтропия максимальна? Возникает термодинамическое равновесие. Для физика это означает, что:
Микроскопическая конфигурация системы может меняться постоянно, но макроскопическое поведение системы меняться перестаёт.
Система забывает прошлое.
Параллели с ML довольно чёткие. Термодинамически уравновешенные модели обладают следующими свойствами:
У моделей, инициализированных различными случайными исходными значениями и обученных на разных случайных наборах данных производительность (макроскопическое поведение) одинакова, но параметры (микроскопические конфигурации) могут различаться.
Общие характеристики ML-модели нечувствительны к траекториям обучения, то есть история не сохраняется.
Оба эти свойства весьма желательны для ML-моделей. Поэтому возможная цель обучения ML-моделей — привести систему к термодинамическому равновесию!
Можно легко найти противоположные примеры, такие как простые линейные модели. Но нельзя отрицать, что здесь есть интригующие параллели и идеи, которые можно заимствовать из физики.
Заключение
Используя понятия физики, такие как энергия, термальные воды и энтропия, можно рассматривать ML-модели как сложные динамические системы, построенные из простых взаимодействий.
Как и в природе, в условиях сложных взаимодействий, направляемых схожей с энергией функцией потерь сложная система по мере передачи в неё данных (термальных вод) самоорганизуется. В итоге система приобретает термодинамическое равновесие, становясь подобием кристалла или снежинки.
Чем полезен взгляд с точки зрения физики? Он помогает разобраться, почему модель работает или нет:
В ML-моделях не просто минимизируются отдельные функции потерь, эти модели развиваются динамически. Думая о ML, нужно учитывать динамическую эволюцию.
Через простой набор метрик по-настоящему понять ML-модели нельзя. Они отражают макроскопическое, но не микроскопическое поведение модели. Метрики — это всего лишь крошечные окна в сложную динамическую систему, и каждая из них подчёркивает только один аспект моделей.
Как физик я бы сказал, что этот взгляд расширяет представление о «чёрной магии» ML.
Работу дата-сайентиста можно сравнить с работой системного инженера — это формирование из моделей макроскопической структуры — той самой идеальной снежинки, подходящего типа микроскопических взаимодействий и окружений.
На этом всё. Оставляйте комментарии и отзывы, это вдохновляет писать больше аналитических статей.
А мы поможем вам прокачать навыки или с самого начала освоить профессию, актуальную в любое время:
Выбрать другую востребованную профессию.
Краткий каталог курсов и профессий
Data Science и Machine Learning
Python, веб-разработка
Мобильная разработка
Java и C#
От основ — в глубину
А также
Jury_78
По-моему перемудрил...