Взгляд физика: термодинамика машинного обучения
Друзья, с момента основания проекта прошло уже 20 лет и мы рады сообщать вам, что сайт, наконец, переехали на новую платформу.
Какое-то время продолжим трудится на общее благо по адресу
На новой платформе мы уделили особое внимание удобству поиска материалов.
Особенно рекомендуем познакомиться с работой рубрикатора.
Спасибо, ждём вас на N-N-N.ru
Блог компании SkillFactory. Тим Лоу, кандидат наук в области физики, рассказывает о машинном обучении с точки зрения термодинамики. Материалом делимся к старту флагманского курса по Data Science.
Способна ли термодинамика помочь в понимании ML?
Меня, физика-теоретика, ставшего дата-сайентистом, часто спрашивают, насколько пригодились мне мои знания. Хотя способность рассчитывать взаимодействие частиц и понимать структуры Вселенной напрямую не связана с моей повседневной работой, усвоенные из физики знания и представления трудно переоценить.
Вероятно, наиболее близка науке о данных статистическая физика. Ниже я поделюсь своими мыслями о том, как умение находить взаимосвязи и черпать вдохновение из физики помогает мне понять важную часть науки о данных — машинное обучение.
Конечно, некоторые из этих мыслей не строги математически, но я считаю их весьма важными для понимания принципов работы ML.
Что общего у машинного обучения и текущей вниз по течению воды? Вода убывает, и в машинном обучении также что-то сводится к минимуму. Но аналогии глубже, чем может показаться (фото Апполинарии Калашниковой)
Модели как динамические системы
Одна из ключевых задач науки о данных — прогнозирование, описание одних величин через другие. Например, спрогнозировать цену дома по его характеристикам или понять, как меню ресторана влияет на количество посетителей.
Для этого дата-сайентисты создают математические объекты — модели, необработанные входные данные которых превращаются в полезные выходные данные. Чтобы эти модели работали, их обучают. Многим читателям, вероятно, знаком принцип работы моделей. Я приведу его объяснение на примере термодинамики.
В математике модель — некая параметризованная функция. В физике же модель подобна машине, внутри которой материал превращается в полезный результат. Это система множества малых простых движущихся частей, похожая на заполненную разными деталями коробку:
Модель — это сложная система из множества малых и простых движущихся частей (фото Jonathan Borba)
Откуда берётся эта простая часть? ML-модели обычно строятся из слоёв простых математических операций: умножения, сложения или базовых логических операций (например, деревьев решений или блоков линейной ректификации ReLU в нейросетях).
На самом деле они похожи на многие крупные физические системы: кристалл из атомов или бассейн с огромным количеством молекул воды. Иными словами, ML-модели — это как динамические системы из мелких составляющих с простыми взаимодействиями. Цель обучения такой системы — с умом, как снежинку, объединить эти составляющие:
Как и модели машинного обучения, динамические системы состоят из множества простых физических взаимодействий. Так и замечательная структура снежинки часто возникает из хаоса (фото Damian McCoig)
Данные как термальные воды
Передавать в модель входные данные, а затем получать выходные данные — что это значит на языке физики? Передача входных данных в модель — это вмешательство в систему извне, выходные данные — ответ системы.
В реальном проекте науки о данных нельзя управлять тем, какие именно точки данных собирать. Обычно предполагается случайный порядок отбора данных. В теплофизике информацию получают, исходя из шумности тепловых флуктуаций, а в ML-моделях — из информационного шума, поэтому чёткая параллель — термальные воды:
Термальными водами в быту можно считать почти всё, в том числе данные (фото Simon Hurry)
Обратите внимание, что в ML обычно есть разница между обучением модели и её применением в оценке конкретного набора данных. У этого отличия нет физического эквивалента. Так или иначе посмотрим, как далеко мы продвинемся, жертвуя математической строгостью.
Обучение как динамический процесс
Присмотримся к динамической части модели. Как учится модель? Обычно, чтобы минимизировать целевую функцию потерь модели, в неё передаются обучающие данные.
В функции потерь измеряется, насколько близок прогноз модели к фактическим данным, но может иметь место регуляризация — дополнительные условия.
Посмотрим, какая физическая величина здесь минимизируется. Это энергия! Я имею в виду не конкретные виды энергии, а скорее энергию как понятие. Например, электроны на металлической сфере обычно рассеиваются, что приводит к уменьшению их общей энергии. Можно считать, что силы возникают благодаря свойству минимизации этих энергий:
Энергия в физике — ключ к изменениям, аналогичный функции потерь в ML (фото Андрея Метелева)
Но системы не минимизируют эти энергии слепо: Солнце не взрывается и не остывает произвольно, и мы мгновенно не замерзаем и не теряем всё тепло тела.
Эволюция системы сводится к фундаментальным взаимодействиям её составляющих. Энергией система направляется, но в своих действиях не управляется исключительно ею. Энергия в физике — это просто один конкретный взгляд на систему.
Давайте представим функцию потерь в ML как энергию.
- Источник(и):
- Войдите на сайт для отправки комментариев