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

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

Вступление

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

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

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

Примеры на каждый день

Вы оптимизируете переменные и основываете свои личные решения в течение всего дня, большую часть времени даже не осознавая процесс сознательно -

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

Звучит знакомо? Об интересной иллюстрации читайте здесь…



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

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

Насколько важна оптимизация для науки о данных?

Крайне важный.

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

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



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

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

В качестве чрезвычайно упрощенного примера: если в прошлом группа инженеров имела доступ к 1 ГБ данных и могла разработать оптимальное решение по цене 10 долларов, ожидается, что они снизят эту стоимость до 7 долларов, если мне дадут «богаче» набор данных 10 ГБ. В противном случае в чем смысл больших данных?

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

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

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



Основная математика для науки о данных -« Почему и Как
Математика - это основа науки. Мы обсуждаем основные математические темы, которые нужно освоить, чтобы стать лучшим специалистом в области данных… todatascience.com »



Основные элементы оптимизации

Есть три основных элемента любой проблемы оптимизации:

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

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

Простая линейная регрессия

Также обратите внимание на следующее различие в регрессии с двух точек зрения:

Регуляризованная линейная регрессия

Логистическая регрессия

Машина опорных векторов

Анализ временных рядов - экспоненциальное сглаживание

Анализ временных рядов - ARIMA

K -значит кластеризацию

Глубокое обучение / нейронная сеть

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

Обучение с подкреплением (RL)

RL лежит в основе любого современного агента / системы ИИ. Если вы слышали о знаменитой программе AlphaGo от Google, которая победила лучшего человеческого чемпиона в древней настольной игре Go, вы можете быть уверены, что за всем этим машинным интеллектом стояла некая действительно продвинутая техника оптимизации.



Небольшой обходной путь - оптимизация с использованием машинного обучения

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

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



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

Резюме и другие методы

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

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

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

Если у вас есть какие-либо вопросы или идеи, которыми вы хотите поделиться, свяжитесь с автором по адресу tirthajyoti [AT] gmail.com. Кроме того, вы можете проверить авторские репозитории GitHub на предмет других забавных фрагментов кода на Python, R или MATLAB и ресурсов машинного обучения. Если вы, как и я, увлечены машинным обучением / наукой о данных, пожалуйста, не стесняйтесь добавить меня в LinkedIn или подписаться на меня в Twitter.