Нет, они не такие. Если машинное обучение - это просто прославленная статистика, то архитектура - это просто прославленное строительство замков из песка.

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

Аргумент

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

Итак, если машинное обучение и статистика синонимичны друг другу, почему мы не видим, чтобы все статистические факультеты в каждом университете закрывались или переходили на факультеты «машинного обучения»? Потому что они не такие!

Я часто слышу несколько расплывчатых заявлений по этой теме, наиболее частым из которых является что-то в этом роде:

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

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

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

Итак, на самом деле нам нужно обсудить две вещи: во-первых, чем статистика отличается от машинного обучения, а во-вторых, чем статистические модели отличаются от машинного обучения.

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

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

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

Статистические модели против машинного обучения - пример линейной регрессии

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

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

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

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

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

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

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

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

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

Статистика против машинного обучения - пример линейной регрессии

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

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

Физика - это просто прославленная математика.

Зоология - это просто прославленная коллекция марок.

Архитектура - это просто прославленное строительство замков из песка.

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

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

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



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

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

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

Точно так же машинное обучение - это не то же самое, что искусственный интеллект. Фактически, машинное обучение - это разновидность искусственного интеллекта. Это довольно очевидно, поскольку мы обучаем («обучаем») машину делать обобщаемые выводы о некоторых типах данных на основе предыдущих данных.

Машинное обучение основано на статистике

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

Машинное обучение построено на статистической основе. Это должно быть явно очевидно, поскольку машинное обучение включает в себя данные, а данные должны быть описаны с использованием статистической основы. Однако статистическая механика, которая расширяется до термодинамики для большого числа частиц, также построена на статистической основе. Понятие давления на самом деле является статистикой, а температура также является статистикой. Если вы думаете, что это звучит нелепо, достаточно справедливо, но на самом деле это правда. Вот почему вы не можете описать температуру или давление молекулы, это бессмысленно. Температура - это проявление средней энергии, производимой молекулярными столкновениями. Для достаточно большого количества молекул имеет смысл описать температуру чего-то вроде дома или на открытом воздухе.

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

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

  • Теория машинного обучения из таких областей, как математика и статистика
  • Алгоритмы машинного обучения из таких областей, как оптимизация, матричная алгебра, исчисление
  • Реализации машинного обучения из концепций информатики и инженерии (например, трюки с ядром, хеширование функций)

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

Статистическая теория обучения - статистическая основа машинного обучения

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

Статистика не делает никаких других предположений о вселенной, кроме этих концепций множеств и мер. Вот почему, когда мы определяем вероятностное пространство в очень строгих математических терминах, мы указываем 3 вещи.

Вероятностное пространство, которое мы обозначим так, (Ω, F, P), состоит из трех частей:

  1. Пространство выборки, Ω, которое представляет собой набор всех возможных результатов.
  2. Набор событий, F, где каждое событие - это набор, содержащий ноль или более результатов.
  3. Присвоение вероятностей событиям, P; то есть функция от событий к вероятностям.

Машинное обучение основано на теории статистического обучения, которая по-прежнему основана на этом аксиоматическом понятии вероятностных пространств. Эта теория была разработана в 1960-х годах и расширяет традиционную статистику.

Есть несколько категорий машинного обучения, и поэтому я сосредоточусь здесь только на обучении с учителем, поскольку его легче всего объяснить (хотя он все еще несколько эзотеричен, поскольку он похоронен в математике).

Теория статистического обучения для контролируемого обучения говорит нам, что у нас есть набор данных, который мы обозначаем как S = {(xᵢ, yᵢ)}. По сути, это означает, что мы имеем набор данных из n точек данных, каждая из которых описывается некоторыми другими значениями, которые мы называем функциями, которые предоставляются x,, и эти функции отображается определенной функцией, чтобы дать нам значение y.

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

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

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

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

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

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

Алгоритм обучения, который выбирает функцию, минимизирующую эмпирический риск, называется минимизация эмпирического риска.

Примеры

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

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

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

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

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

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

Окончательное сравнение можно провести, учитывая предвзятость модели. Можно попросить алгоритм машинного обучения протестировать линейные модели, а также полиномиальные модели, экспоненциальные модели и т. Д., Чтобы увидеть, соответствуют ли эти гипотезы данным лучше с учетом нашей априорной функции потерь. Это похоже на увеличение пространства релевантных гипотез. В традиционном статистическом смысле мы выбираем одну модель и можем оценить ее точность, но не можем автоматически заставить ее выбрать лучшую модель из 100 различных моделей. Очевидно, что в модели всегда присутствует некоторая предвзятость, связанная с первоначальным выбором алгоритма. Это необходимо, поскольку поиск произвольной функции, оптимальной для набора данных, является NP-сложной задачей.

Что лучше?

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

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

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

Где я могу узнать больше?

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





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

Http://users.jyu.fi/~miparvia/Opetus/Stokastiikka/introduction-probability.pdf

Https://people.smp.uq.edu.au/DirkKroese/asitp.pdf

Спасибо за чтение!

Новостная рассылка

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