Взгляд физика: термодинамика машинного обучения

Блог компании SkillFactory. Тим Лоу, кандидат наук в области физики, рассказывает о машинном обучении с точки зрения термодинамики. Материалом делимся к старту флагманского курса по Data Science.

Способна ли термодинамика помочь в понимании ML?

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

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

Конечно, некоторые из этих мыслей не строги математически, но я считаю их весьма важными для понимания принципов работы ML.

fizika1.pngЧто общего у машинного обучения и текущей вниз по течению воды? Вода убывает, и в машинном обучении также что-то сводится к минимуму. Но аналогии глубже, чем может показаться (фото Апполинарии Калашниковой)

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

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

Для этого дата-сайентисты создают математические объекты — модели, необработанные входные данные которых превращаются в полезные выходные данные. Чтобы эти модели работали, их обучают. Многим читателям, вероятно, знаком принцип работы моделей. Я приведу его объяснение на примере термодинамики.

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

fizika2.pngМодель — это сложная система из множества малых и простых движущихся частей (фото Jonathan Borba)

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

На самом деле они похожи на многие крупные физические системы: кристалл из атомов или бассейн с огромным количеством молекул воды. Иными словами, ML-модели — это как динамические системы из мелких составляющих с простыми взаимодействиями. Цель обучения такой системы — с умом, как снежинку, объединить эти составляющие:

fizika3.pngКак и модели машинного обучения, динамические системы состоят из множества простых физических взаимодействий. Так и замечательная структура снежинки часто возникает из хаоса (фото Damian McCoig)

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

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

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

fizika4.pngТермальными водами в быту можно считать почти всё, в том числе данные (фото Simon Hurry)

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

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

Присмотримся к динамической части модели. Как учится модель? Обычно, чтобы минимизировать целевую функцию потерь модели, в неё передаются обучающие данные.

В функции потерь измеряется, насколько близок прогноз модели к фактическим данным, но может иметь место регуляризация — дополнительные условия.

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

fizika5.pngЭнергия в физике — ключ к изменениям, аналогичный функции потерь в ML (фото Андрея Метелева)

Но системы не минимизируют эти энергии слепо: Солнце не взрывается и не остывает произвольно, и мы мгновенно не замерзаем и не теряем всё тепло тела.

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

Давайте представим функцию потерь в ML как энергию.

Подробнее
Пожалуйста, оцените статью:
Пока нет голосов
Источник(и):

Хабр