Тим Лоу, кандидат наук в области физики, рассказывает о машинном обучении с точки зрения термодинамики. Материалом делимся к старту флагманского курса по Data Science. Меня, физика-теоретика, ставшего дата-сайентистом, очень часто спрашивают, насколько пригодились мне мои знания. Хотя способность рассчитывать взаимодействие частиц и понимать структуры Вселенной напрямую не связана с моей повседневной работой, усвоенные из физики знания и представления трудно переоценить. Вероятно, наиболее близка науке о данных статистическая физика. Ниже я поделюсь своими мыслями о том, как умение находить взаимосвязи и черпать вдохновение из физики помогает мне понять важную часть науки о данных — машинное обучение. Конечно, некоторые из этих мыслей не строги математически, но я считаю их весьма важными для понимания принципов работы ML.
Модель — это сложная система из множества малых и простых движущихся частей (фото Jonathan Borba)
Модели как динамические системы
Одна из ключевых задач науки о данных — прогнозирование, описание одних величин через другие. Например, спрогнозировать цену дома по его характеристикам или понять, как меню ресторана влияет на количество посетителей.
Для этого дата-сайентисты создают математические объекты — модели, необработанные входные данные которых превращаются в полезные выходные данные. Чтобы эти модели работали, их обучают. Многим читателям, вероятно, знаком принцип работы моделей. Я приведу его объяснение на примере термодинамики.
В математике модель — некая параметризованная функция. В физике же модель подобна машине, внутри которой материал превращается в полезный результат. Это система множества малых простых движущихся частей, похожая на заполненную разными деталями коробку:
Откуда берётся эта простая часть? ML-модели обычно строятся из слоёв простых математических операций: умножения, сложения или базовых логических операций (например, деревьев решений или блоков линейной ректификации ReLU в нейросетях).
На самом деле они похожи на многие крупные физические системы: кристалл из атомов или бассейн с огромным количеством молекул воды. Иными словами, ML-модели — это как динамические системы из мелких составляющих с простыми взаимодействиями. Цель обучения такой системы — с умом, как снежинку, объединить эти составляющие:
Как и модели машинного обучения, динамические системы состоят из множества простых физических взаимодействий. Так и замечательная структура снежинки часто возникает из хаоса (фото Damian McCoig)
Данные как термальные воды
Передавать в модель входные данные, а затем получать выходные данные — что это значит на языке физики? Передача входных данных в модель — это вмешательство в систему извне, выходные данные — ответ системы.
В реальном проекте науки о данных нельзя управлять тем, какие именно точки данных собирать. Обычно предполагается случайный порядок отбора данных. В теплофизике информацию получают, исходя из шумности тепловых флуктуаций, а в ML-моделях — из информационного шума, поэтому чёткая параллель — термальные воды:
Термальными водами в быту можно считать почти всё, в том числе данные (фото Simon Hurry)
Обратите внимание, что в ML обычно есть разница между обучением модели и её применением в оценке конкретного набора данных. У этого отличия нет физического эквивалента. Так или иначе посмотрим, как далеко мы продвинемся, жертвуя математической строгостью.
Обучение как динамический процесс
Присмотримся к динамической части модели. Как учится модель? Обычно, чтобы минимизировать целевую функцию потерь модели, в неё передаются обучающие данные.
В функции потерь измеряется, насколько близок прогноз модели к фактическим данным, но может иметь место регуляризация — дополнительные условия.
Посмотрим, какая физическая величина здесь минимизируется. Это энергия! Я имею в виду не конкретные виды энергии, а скорее энергию как понятие. Например, электроны на металлической сфере обычно рассеиваются, что приводит к уменьшению их общей энергии. Можно считать, что силы возникают благодаря свойству минимизации этих энергий:
Энергия в физике — ключ к изменениям, аналогичный функции потерь в ML (фото Андрея Метелева)
Но системы не минимизируют эти энергии слепо: Солнце не взрывается и не остывает произвольно, и мы мгновенно не замерзаем и не теряем всё тепло тела.
Эволюция системы сводится к фундаментальным взаимодействиям её составляющих. Энергией система направляется, но в своих действиях не управляется исключительно ею. Энергия в физике — это просто один конкретный взгляд на систему.
Давайте представим функцию потерь в ML как энергию. Хотя дата-сайентисты всегда находят новые способы минимизировать функцию потерь, этой функцией учёные не ограничиваются. В ML-модели функция потерь не просто слепо минимизируются, она обучается, развиваясь как сложная динамическая система:
Обучение модели подобно динамической системе, которая самоорганизуется в процессе взаимодействий. Добавляя в эту динамическую систему внешние обучающие данные, подвергаем её воздействию термальных вод!
Обучение модели сродни динамической системе, которая самоорганизуется под воздействием «термальных вод данных».
Случайные движения частиц в воде подобны обучению ML-модели со случайными данными
На самом деле это проливает свет на условия регуляризации в машинном обучении. Эти условия — дополнительные энергии или, скорее, дополнительные взаимодействия, помогающие направлять развитие моделей.
Итак, ML-модель с точки зрения физики:
- Это динамическая система, состоящая из множества малых взаимодействующих компонентов.
- По мере обучения и под воздействием внешних термальных вод, то есть источника случайных данных, модель самоорганизуется.
Теперь применим к ML физические законы.
Второй закон термодинамики: энтропия всегда возрастает
Второй закон термодинамики, который часто ассоциируется со «стрелой времени», утверждает, что энтропия с течением времени всегда увеличивается (фото Immo Wegmann)
Этот закон, — возможно, один из самых известных законов физики — гласит, что существует понятие энтропии, которая с течением времени может только возрастать, смотрите другую мою подробную статью об энтропии.
Проще говоря, энтропия — отражение универсальности системы; второй закон гласит, что наиболее универсальная конфигурация, скорее всего, будет преобладающей. Почти тавтология. И вот что в ней важно для нас:
В термодинамических системах энергия не просто минимизируется — в системе максимизируется энтропия. То есть системы обычно переходят к наиболее вероятным конфигурациям. Применительно к ML-моделям это означает, что:
Функция потерь не обязательно минимизируется, она просто переходит к самой вероятной конфигурации.
Это может показаться парадоксальным, ведь мы всегда слышим о минимизации функции потерь, которая часто считается ключевой метрикой производительности, особенно на конкурсах в Kaggle.
Но не забывайте, что набор данных для обучения (и тестовые данные) — это всегда лишь подмножество полных данных. Поэтому цель на самом деле состоит в том, чтобы свести к минимуму не только функцию потерь, но и риск переобучения модели.
Таким образом, в части максимизации энтропии прослеживается компромисс: нужно, чтобы модель обобщала, но не переобучалась.
В применимости второго закона термодинамики есть недостаток, связанный с требованием эргодичности — представлении о том, что в динамической системе каждое состояние с определённой вероятностью проходит вблизи другого состояния.
Во многих моделях эргодичность, наверное, не соблюдается даже близко. Но мы не стремимся к полной математической строгости, так что не будем слишком педантичными.
Термодинамическое равновесие?
Идеальная модель создаётся как баланс эффективности обучения и обобщения. Аналогично ли это термодинамическому равновесию? (фото Piret Ilver)
Чтобы лучше разбираться в моделях, рассмотрим ещё одно понятие теплофизики: термодинамическое равновесие. Что происходит, когда энтропия максимальна? Возникает термодинамическое равновесие. Для физика это означает, что:
- Микроскопическая конфигурация системы может меняться постоянно, но макроскопическое поведение системы меняться перестаёт.
- Система забывает прошлое.
Параллели с ML довольно чёткие. Термодинамически уравновешенные модели обладают следующими свойствами:
- У моделей, инициализированных различными случайными исходными значениями и обученных на разных случайных наборах данных производительность (макроскопическое поведение) одинакова, но параметры (микроскопические конфигурации) могут различаться.
- Общие характеристики ML-модели нечувствительны к траекториям обучения, то есть история не сохраняется.
Оба эти свойства весьма желательны для ML-моделей. Поэтому возможная цель обучения ML-моделей — привести систему к термодинамическому равновесию!
Можно легко найти противоположные примеры, такие как простые линейные модели. Но нельзя отрицать, что здесь есть интригующие параллели и идеи, которые можно заимствовать из физики.
Заключение
Используя понятия физики, такие как энергия, термальные воды и энтропия, можно рассматривать ML-модели как сложные динамические системы, построенные из простых взаимодействий.
Как и в природе, в условиях сложных взаимодействий, направляемых схожей с энергией функцией потерь сложная система по мере передачи в неё данных (термальных вод) самоорганизуется. В итоге система приобретает термодинамическое равновесие, становясь подобием кристалла или снежинки.
Чем полезен взгляд с точки зрения физики? Он помогает разобраться, почему модель работает или нет:
- В ML-моделях не просто минимизируются отдельные функции потерь, эти модели развиваются динамически. Думая о ML, нужно учитывать динамическую эволюцию.
- Через простой набор метрик по-настоящему понять ML-модели нельзя. Они отражают макроскопическое, но не микроскопическое поведение модели. Метрики — это всего лишь крошечные окна в сложную динамическую систему, и каждая из них подчёркивает только один аспект моделей.
Как физик я бы сказал, что этот взгляд расширяет представление о «чёрной магии» ML.
Работу дата-сайентиста можно сравнить с работой системного инженера — это формирование из моделей макроскопической структуры — той самой идеальной снежинки, подходящего типа микроскопических взаимодействий и окружений.
Автор: @honyaki
Источник: https://habr.com/
Понравилась статья? Тогда поддержите нас, поделитесь с друзьями и заглядывайте по рекламным ссылкам!