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

Меня, физика-теоретика, ставшего специалистом по данным, часто спрашивают, насколько актуальной была моя академическая подготовка. Хотя моя способность рассчитывать взаимодействие частиц и понимать структуру нашей Вселенной действительно не имеет прямого отношения к моей повседневной работе, интуиция в физике, которой я научился, имеет неизмеримую ценность.

Вероятно, статистическая физика является наиболее близкой областью физики к науке о данных. Ниже я поделюсь некоторыми мыслями о том, как я соединяю точки, и черпаю вдохновение из физики, чтобы помочь мне понять важную часть науки о данных — машинное обучение (ML).

Хотя некоторые из приведенных ниже соображений определенно не являются полностью математически строгими, я считаю, что некоторые из них имеют огромное значение, помогая нам понять, почему и как работает машинное обучение.

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

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

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

Чтобы заставить эти модели работать, мы обучаем их. Теперь многие читатели, вероятно, слышали об общепринятых объяснениях того, как работают модели; здесь я пойду нетрадиционным путем — используя аналогии с физикой.

Скучный подход к математическому мышлению модели заключается в том, что это некая параметризованная функция. Давайте поцарапаем это и подумаем физически. Модель подобна машине, которая превращает исходный материал в полезную продукцию. Итак, это система, состоящая из множества более мелких и простых движущихся частей — вроде коробки, наполненной разными частицами.

Откуда взялась меньшая/более простая часть? Ну, модели ML обычно строятся из слоев простых математических операций: умножения, сложения или базовой логической операции (например, деревья решений или блоки ReLU в нейронных сетях). На самом деле это то же самое, что и многие большие физические системы в реальном мире: кристалл, состоящий из атомов, или бассейн с водой, состоящий из молекул воды. Другими словами,

Модели машинного обучения можно рассматривать как динамические системы, построенные из более мелких компонентов с простыми взаимодействиями.

В этом языке целью обучения было бы разумно собрать эти составляющие, как какую-то красивую снежинку.

Данные как термальные ванны

Что значит подавать входные данные в модель и затем получать какие-то выходные данные? Что ж, на языке взаимодействий подача входных данных в модель была бы эквивалентна воздействию на систему каким-либо внешним воздействием, а выходным сигналом был бы ответ системы.

Какой может быть аналогия для данных? В реальном мире мы не можем контролировать, какие точки данных «выбрали» для сбора. Обычно предполагается, что они выбираются случайным образом. Четкой физической аналогией является термальная ванна — источник случайности и неопределенности.

Вот что делает термодинамическую аналогию мощной: теплофизика извлекает понимание из шума тепловых флуктуаций; Модели машинного обучения извлекают ценную информацию из зашумленных данных.

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

Тренировка как динамический процесс

Чтобы продвинуться дальше, давайте углубимся в динамическую часть нашей модели.

Рассмотрим процесс обучения модели. Как это делается? Обычно мы передаем модели некоторые обучающие данные и заставляем модель минимизировать некоторую объективную функцию потерь. Функция потерь измеряет, насколько близко прогноз модели по сравнению с фактическими данными (могут быть некоторые дополнительные условия регуляризации).

Какой аналог в физике? Давайте посмотрим, какое количество имеет тенденцию к минимизации? Это энергия! Здесь я не имею в виду какие-либо конкретные виды энергии, а скорее думаю об энергии как о понятии. Например, электроны на металлической сфере будут стремиться разлететься, что приведет к снижению общей энергии. Силы можно рассматривать как возникающие из стремления минимизировать эти энергии.

Тем не менее, системы не просто слепо минимизируют эти «энергии». Солнце не просто самопроизвольно взрывается и остывает, и мы не просто мгновенно замерзаем и теряем все тепло нашего тела.

Эволюция системы сводится к фундаментальным взаимодействиям между ее составляющими. Энергия направляет систему, но не полностью диктует, что она делает. В физике «энергия» просто дает нам один конкретный взгляд на систему.

Итак, давайте подумаем о функции потерь в машинном обучении как о некоторой энергии. Хотя специалисты по данным всегда находят новые способы минимизировать функцию потерь, функция потерь — это еще не все. Модели машинного обучения не просто слепо минимизируют функции потерь. Вместо этого мы должны думать об обучении модели ML как об эволюции сложной динамической системы:

Обучение модели похоже на динамическую систему, организующую себя при некоторых взаимодействиях.

С учетом внешних данных обучения эта динамическая система теперь находится под воздействием термальной ванны! Вместе мы получаем очень мощную аналогию:

Обучение модели сродни самоорганизации динамической системы под воздействием термальной ванны данных.

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

Итак, наконец, мы приходим к представлению физиков о модели машинного обучения:

  1. Это динамическая система, состоящая из множества небольших взаимодействующих компонентов.
  2. По мере обучения модели она реорганизуется под воздействием внешней термальной ванны (то есть источника случайных данных).

Теперь давайте применим некоторые физические законы к машинному обучению!

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

Возможно, один из самых известных законов физики, второй закон термодинамики, гласит, что существует понятие под названием энтропия, которое может только увеличиваться с течением времени (см. другую мою статью Энтропия для подробного изучения).

Проще говоря, энтропия показывает, насколько универсальна система, а второй закон статистики гласит, что наиболее общая конфигурация, скорее всего, будет преобладать (почти тавтологическое утверждение).

Для нас важным моментом является то, что:

Термодинамические системы НЕ просто минимизируют энергию. Вместо этого система максимизирует энтропию. Другими словами, системы стремятся к наиболее вероятным конфигурациям.

При применении этого к моделям ML оператор становится

Модели машинного обучения НЕ обязательно минимизируют функцию потерь, вместо этого они просто устанавливают наиболее вероятную конфигурацию.

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

Однако помните, что данные обучения (и данные тестирования) всегда являются лишь подмножеством полных данных. Таким образом, цель на самом деле состоит в том, чтобы примерно минимизировать функцию потерь, а также свести к минимуму риск переобучения обучающим данным. Таким образом, часть максимизации энтропии является желательным компромиссом: потому что мы хотим, чтобы модель обобщала, а не подгоняла.

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

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

Мы можем ввести еще одно мощное понятие из теплофизики, которое поможет нам понять модели: понятие теплового равновесия.

Так что же происходит, когда система достигает максимальной энтропии? конечным результатом является тепловое равновесие. С точки зрения физики это означает, что:

  1. В то время как микроскопическая конфигурация системы может непрерывно меняться, макроскопическое поведение системы перестает меняться.
  2. «Историческое» поведение системы полностью утрачивается, поскольку система по существу забывает, что произошло в прошлом.

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

  1. Для моделей, инициализированных разными случайными начальными значениями и обученных на разных случайных наборах данных, они будут иметь одинаковую производительность (макроскопическое поведение), а их параметры могут быть разными (микроскопические конфигурации).
  2. Общие характеристики модели ML не чувствительны к траекториям обучения (забывание истории).

Оба эти результата очень желательны для моделей машинного обучения. Так что, возможно, цель обучения моделей машинного обучения — привести систему к некоему тепловому равновесию!

Опять же, эта аналогия не является на 100% строгой, и можно легко найти контрпримеры, такие как простые линейные модели. Тем не менее, нельзя отрицать, что есть некоторые интригующие параллели и идеи, которые мы можем извлечь из физики.

Заключение

Подводя итог, используя такие понятия, как энергия, термальная ванна и энтропия из физики, мы можем рассматривать модели машинного обучения как сложные динамические системы, построенные из простых взаимодействий.

Как и в природе, модель машинного обучения развивается под влиянием сложных взаимодействий, управляемых функцией потерь (сродни энергии), что позволяет ей реорганизовываться по мере того, как мы подаем ей данные (термальная ванна). В конце концов, система приходит к тепловому равновесию, что приводит к интригующей структуре, похожей на снежинку/кристалл.

Чем полезна эта точка зрения? Потому что это дает нам некоторые намеки на то, почему машинное обучение работает или не работает:

  1. Модели ML не просто минимизируют отдельные функции потерь. Вместо этого они развиваются динамически. Мы должны учитывать динамическую эволюцию, когда думаем об ML.
  2. Мы не можем полностью понять модели машинного обучения, используя лишь несколько показателей производительности. Эти метрики фиксируют макроскопическое поведение, но упускают микроскопические детали. Мы должны думать о метриках как о крошечных окнах в сложной динамической системе, где каждая метрика освещает только один аспект наших моделей.

Как физик, я бы сказал, что эти точки зрения дают нам больше интуитивных представлений о часто рекламируемой «черной магии» машинного обучения.

Подводя итог, мы можем описать работу специалиста по данным как системного инженера: создать правильный тип микроскопических взаимодействий и сред, чтобы модель превратилась в желаемую макроскопическую структуру — построить идеальную снежинку. Для меня это более поэтичное описание работы; в отличие от сидения перед компьютером, кодирования строк и строк кода и ожидания завершения обучения. Во всяком случае, именно так мне нравится думать о науке о данных.

Ну вот и все на данный момент, надеюсь вам понравится!

Пожалуйста, оставляйте комментарии и отзывы ниже, это побудит меня написать больше статей!