История машинного обучения (1): настройка мировоззрения

машинное обучение
История машинного обучения (1): настройка мировоззрения

Я думаю, что важность машинного обучения (как в академических кругах, так и в промышленности) невозможно переоценить в наши дни, например, лауреат премии Тьюринга в 2010 году.Leslie ValiantЭто пионер теории обучения (Learning Theory), который предложил модель «вероятно приблизительно правильно» (PAC) — читайте PAC каждый раз Китайский перевод модели PAC забавен, но модель PAC и ее варианты действительно являются сегодня одной из наиболее широко используемых структур в теории обучения, и именно модель PAC породила сверхшироко используемый алгоритм повышения. Не случайно два гиганта в теории обучения: модель PAC и статистическая теория обучения (SLT) Вапника, каждый из которых имеет алгоритм (бустинг и SVM), который широко известен и применяется на практике!:DНо у этих сплетен будет шанс подняться позже.

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

Вернемся к машинному обучению, открытый мл-классAndrew NgОн также является восходящей звездой в области машинного обучения.В отличие от многих людей, занимающихся чисто научными исследованиями, во многих его работах есть очень практичные вещи, которые «видимы и осязаемы».LittleDogСобака-робот может ходить, бегать и прыгать, а также преодолевать все виды сложной местности.беспилотный вертолет(Не думайте, что беспилотные вертолеты легче беспилотных автомобилей, потому что в небе мало препятствий и нет пробок ^_^), вы сможете выполнить множество сложных фигур высшего пилотажа. Большое пересечение этих вещей, связанных с роботами/агентами, и машинного обучения — это метод, называемый обучением с подкреплением (англ.Reinforcement Learning, RL), на самом деле, это уже достаточно «старая» тема, и в теории и алгоритме есть значительные достижения, но традиционные RL-алгоритмы обычно имеют довольно агрессивный процесс «исследования» среды, и это может быть нереально для таких вещей, как управление роботом, особенно управление вертолетом, где в крайних случаях сложный «исследовательский» шаг может привести к падению вертолета. Чтобы решить эту проблему, Эндрю Нг предложил так называемое ученичество (ученичество).Apprenticeship learning), который направляет машину к обучению методами, продемонстрированными людьми. Конечно, здесь речь идет не просто о «подражании», теоретически можно доказать, что ученики могут учиться подобно учителям. ученик может даже превзойти учителя, когда демонстрация учителя несет «вдохновляющую» информацию. Так как в этот раз я не говорю конкретно об ученичестве или обучении с подкреплением, пришлось возиться с очень расплывчатыми терминами ("почти", "эвристика" и т.п.), но на самом деле модель и различные гарантии выполнения имеют строго математическое описание , если вам интересно, вы можете перейти к статье Нг (по крайней мере, нужно знать некоторыеMarkov Decision Processбазовые знания). Конечно, помимо теоретических гарантий, ученичество также успешно применялось для управления беспилотными вертолетами. В любом случае такой метод исследования, который начинается с практических задач и сочетает теорию с практикой, действительно очень увлекателен!:D

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

А машинное обучение, хотя и выглядит похоже, существенное отличие состоит в том, что цель машинного обучения — не анализировать текущие данные, а предсказывать будущее. Конечно, эта классификация не очень строгая, например, метод максимального правдоподобия для оценки плотности в машинном обучении состоит в том, чтобы найти модель распределения вероятностей, которая может лучше всего «объяснить» текущие данные. Но, например, человек, специализирующийся на масляной живописи, тоже может рисовать какие-то наброски, так что это не значит, что скетчинг и масляная живопись — одно и то же. Для этого конкретного примера, даже если он также выполняет оценку плотности, статистический анализ обычно может предполагать, что данные действительно удовлетворяют определенному распределению с параметрами, чтобы изучить, как оценить соответствующие параметры более точно и надежно. проблемы (например,Тестовый дизайн); а машинное обучение обычно не предполагает, что истинное распределение данных соответствует вероятностной модели того или иного параметра, или даже вообще не накладывает никаких ограничений, и в этом контексте действительно ли реализуемо обычное максимальное правдоподобие? Сколько точек данных и сколько вычислений требуется для достижения данного интенсивного чтения? Это вопросы, которыми занимается машинное обучение.

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

Давайте посмотрим на самые классическиеSupervised LearningПостановка задачи, чтобы получить общее представление о том, как выглядит интересующая проблема в задачах машинного обучения. использовать\mathcal{X}и\mathcal{Y}представляют входное и выходное пространства соответственно, учитывая обучающий наборS_n=\{(x_i,y_i)\}_{i=1}^n, цель состоит в том, чтобы узнать функциюf:\mathcal{X}\rightarrow\mathcal{Y}, так что на будущееx, мы можем использоватьf(x)прогнозировать соответствующиеy. Например,xявляется результатом различных медицинских тестов, проведенных в больнице,yУказывает, есть ли у вас рак. Конечно, так называемый «бесплатный обед», если не исходить из наблюдаемых данных.S_nЕсли есть определенная связь с будущими данными, эта задача не может быть выполнена. В статистическом обучении связь между ними достигается с помощью общей вероятностной модели.

Самое основное предположение здесь состоит в том, что\mathcal{X}\times\mathcal{Y}Существует (совместное) распределение наPS_nпара данных в(x_i,y_i)и будущая пара данных(x,y)обаНезависимые и одинаково распределенные (IID)отPвыборка. Более частный случай (включенный в этот параметр) состоит в том, чтобы предположить только\mathcal{X}имеет распространение наP_{X}, и каждыйxсоответствующийyзадается детерминированной функцией:y=h(x), или добавьте шум, например очень распространенное предположение о гауссовском шумеy=h(x)+\epsilon,здесь\epsilonпредставляет собой шумовую случайную величину, подчиняющуюся гауссовскому распределению с нулевым средним значением, что эквивалентно условному распределениюP(Y|X=x)это ожидание, равноеh(x)Гауссово распределение. Самое главное в предположении IID здесь заключается в том, чтотакой жеРаспределение. То есть обучающие данные и тестовые данные соответствуют одной и той же модели (неизвестной вероятности), поэтому мы можем вывести информацию о (неизвестных) тестовых данных из обучающих данных. Например, предполагается, что модель связи между онкологическими заболеваниями и соответствующими результатами медицинских тестов у азиатов может не совпадать с моделью у европейцев, и в этом случае нет гарантии, что разумная обучающая выборка, собранная непосредственно у азиатов можно получить Прогнозы моделей распространенности рака в Европе.

Однако бывают случаи, когда это требование ослабляется, например, сейчас, хотя модели европейцев и азиатов не совсем одинаковы, но могут быть некоторые сходства (ведь все принадлежат к одному и тому же виду). обучающие данные Когда модель тестовых данных отличается от модели тестовых данных, но «разница невелика», можно ли ее еще изучить? Это то, что рассматривает адаптация предметной области: как сформулировать подобие между двумя моделями, и при каком подобии выполняется, проблема изучаема, какой производительности можно достичь и т. д., но я не буду говорить об этом здесь. пока. Студенты, интересующиеся этим вопросом, могут обратиться к недавней книге "Dataset Shift in Machine Learning". Этот тип задачи обучения, связанный с несколькими различными источниками данных (моделями), также включает в себя трансферное обучение, многозадачное обучение и тому подобное.

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

Чтобы измерить то, что было изученоfхорошо это или плохо, нам также нужно определить функцию потерь\ell:\mathcal{Y}^{\mathcal{X}}\times\mathcal{X}\times\mathcal{Y}\rightarrow\mathbb{R}_+. Например, для классической задачи классификации положим\ellВозьмите 0-1 поражение:

\ell(f,x,y) = \ell_f(x,y) = \begin{cases}1, & f(x)\neq y\\0, & f(x)=y\end{cases}

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

R_n(f) = \frac{1}{n}\sum_{i=1}^n\ell_f(x_i,y_i)

используется для измеренияfриск по всем обучающим данным. Однако для того, чтобы измерить «истинный риск», то естьfриска на «будущие» или «неизвестные» данные, мы должны прибегнуть к только что принятому совместному распределению вероятностей.PВ частности, мы определяем риск как\ell_f(X,Y)ожидания:

R(f) = \mathbb{E}_{XY}\left[\ell_f(X,Y)\right] = \int_{\mathcal{X}\times\mathcal{Y}}\ell_f\,dP

В зависимости от проблемы классификации и потери 0-1 мы имеем

R(f) = \mathbb{E}_{XY}\left[\chi_{f(X)\neq Y}\right] = P(f(X)\neq Y)

здесь\chi_Aпредставлять событияAизХарактеристика Функция. В это время рискf(X)иYНеравная вероятность - это очень естественная мера. Стоит отметить, что формула этого Риска основана на предположениях предложенной нами вероятностной модели, хотя мы не знаем истинногоP, но мы можемPвыборка изS_nиди прямоPСоответствующая информация оценивается, что является основой для успешной реализации статистического обучения.

В частности, в только что описанной установке мировоззрения наша цель очень ясна: найтиR(f)самый маленькийf. проблема в томPнеизвестно, так чтоR(f)Не могу просить об этом, но мы можем пройтиS_nпришел спроситьR_n(f), а затем по теореме больших чисел при фиксированномfСказать,R_n(f)последуетnувеличение имеет тенденцию кR(f). Это может показаться заманчивым, но интуитивно это дает нам простой алгоритм:R_n(f)самый маленькийfВ качестве решения, посколькуR_n(f)(по крайней мере, теоретически) поддается оценке, поэтому это законный алгоритм, часто называемый алгоритмом «минимизации эмпирического риска» (ERM). Что касается конкретных деталей ERM, а также его проблем и решений, мы подробнее остановимся на этом в следующий раз.

Прежде чем закончить, давайте добавим некоторые детали к настройке мира: в основном определим ошибку Байеса.R^*Для наименьшего риска мы можем достичь:

R^* = \inf_f\; R(f)

Может быть, его следовало бы назвать более подходящим байесовским риском... но, короче говоря, название не имеет значения.R^*Это обозначение будет часто использоваться в будущем.Это теоретический предел обучения - каким бы хорошим ни был алгоритм, он не может обеспечить меньший риск.Это определяется самой проблемой, а не конкретным алгоритмом. УведомлениеR^*Не обязательно равно нулю, как в примере ниже.\mathbb{R}Для задачи бинарной классификации на рисунке показано перекрытие между условными функциями плотности вероятности для классов 0 и 1:

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

\begin{split} \eta(x) &= \mathbb{E}[Y|X=x] \\ &= 1\times P(Y=1|X=x) + 0\times P(Y=0|X=x) \\ &= P(Y=1|X=x) \end{split}

тогда

\begin{align} R^* &= \inf_f\;R(f) \\ &= \inf_f\;\mathbb{E}\left[ \chi_{f(X)\neq Y}\right] \\ &= \inf_f\;\mathbb{E}_X\left[ P(f(X)\neq Y|X=x) \right] \\ &= \inf_f\;\mathbb{E}_X\left[ \ chi_{f(x)=0}P(Y=1|X=x) + \chi_{f(x)=1}P(Y=0|X=x)\right] \\ &= \inf_f\;\mathbb{E}_X\left[ \chi_{f(x)=0}\eta(x) + \chi_{f(x)=1}(1-\eta(x ))\right] \\ &= \mathbb{E}_X\left[ \min\{\eta(x),1-\eta(x)\} \right] \\ &= \frac{1}{ 2} – \frac{1}{2}\mathbb{E}_X\left[|2\eta(x)-1|\right] \end{выровнено}

Обратите внимание на функцию регрессии\eta(x)выражатьX=xВремяY=1вероятность, если\eta(x)всегда равен 0 или 1 (соответственноYвсегда детерминистически равен 0 или 1),|2\eta(x)-1|всегда равно 1, в это время по приведенной выше формуле можно получитьR^* = 0. но\eta(x)\in (0,1)Если оно выполняется на множестве ненулевой меры,R^*всегда больше нуля.

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

f^*(x) = \begin{case}1, & \eta(x)\geq \frac{1}{2}\\0, & \eta(x)называется байесовским классификатором, и далее мы проиллюстрируемf^*оптимальна: для любого другогоf, мы должны доказатьR(f^*)\leq R(f). Из предыдущего вывода мы получаем дополнительную формулу и еще больше упрощаем ее: \begin{aligned} R(f) &= \mathbb{E}_X\left[ \chi_{f(x)=0}\eta(x) + \chi_{f(x)=1}(1-\eta(x)) \right] \\ &= \mathbb{E}_X\left[ \chi_{f(x)=0}(2\eta(x)-1) + 1-\eta(x) \right] \end{ выровнено}, поэтому у нас есть R (f) -R (f ^ *) = \ mathbb {E}_X \ left [ (2 \ eta (x) -1) (\ chi_ {f (x) = 0)} - \ чи_ {е ^ * (х) = 0}) \right] \geq 0 Последнее неотрицательное значение, потому что: если\eta(x)\geq 1/2,Так2\eta(x)-1\geq 0и по определениюf^*(x)=1, независимо от тогоf(x)Оно равно скольким (0 или 1) эта формула вся неотрицательна;\eta(x)<1/2Ситуация похожая. Зависит отf^*Оптимальность знанияR(f^*)это байесовский рискL^*, то есть нижняя граница находится вf^*получать. Следует отметить, что хотя этот оптимальный байесовский классификатор и существует, и конкретную форму можно придать, но на практике мы этого не знаем.P, так что не знаю\eta,такf^*также неизвестно. Наконец, следует отметить, что в реальном процессе машинного обучения мы обычно находимся в функциональном пространстве.\mathcal{F}обучения, в крайнем случае, мы делаем\mathcal{F}содержит все из\mathcal{X}прибыть\mathcal{Y}Функция , которая является чрезвычайно огромным функциональным пространством.Обычно сложность задач обучения возрастает с увеличением размера (сложности) функционального пространства.Используя метафору изображения, в таком огромном функциональном пространстве найти оптимальное Функция так же трудна, как найти самую круглую гальку на речном берегу: с одной стороны, гальки слишком много, а с другой стороны, наш невооруженный глаз очень грязный. на самом деле не то, что вы ищете. Возвращаясь к случаю машинного обучения, например, если мы используем метод ERM для обучения, для любого большого количестваnобучающих данных, мы можем построить функциюf, так что для точек обучающих данныхf(x_i)=y_i, а для других точечных командf(x)=0, эмпирический риск этой функции равен нулю, а реальный риск совершенно необоснован. Поэтому на практике мы будем использовать меньшие и лучшие функциональные пространства для обучения, такие как все линейные классификаторы или гильбертово пространство воспроизводящего ядра, индуцированное определенной функцией ядра. В настоящее времяf^*может быть или не быть\mathcal{F}, обратите внимание, R_{\mathcal{F}} = \inf_{f\in\mathcal{F}}\; R(f) это то, что мы имеем в\mathcal{F}Наименьший риск, который может быть достигнут в . очевидно естьR\geq R^*. Наконец, подведем итог: на этот раз мы даем базовую структуру простейшей задачи обучения с учителем и определяем цель задачи обучения (нахождение функции с наименьшим риском) и теоретическое оптимальное значение, которое может быть достигнуто.R^*, в частности, при задаче бинарной классификации и проигрыше 0-1 мы используем функцию регрессии\etaПроведите более подробный анализ. контролируемое обучение согласно\mathcal{Y}Ситуацию можно условно разделить на классификацию и регрессию, причем бинарная классификация является наиболее типичной и простой ситуацией в задаче классификации. При постановке задачи обучения мы также упомянули алгоритм обучения ERM и теорему больших чисел, но не обсуждали ее подробно, по крайней мере, это будет основной темой в следующий раз. Наконец, обложка «персонаж»: тот, кто любит читать книгиTachikoma. Тачикома - это аниме "Призрак в доспехах«Роботы в Уроке 9 Бюро общественной безопасности нельзя назвать строго «индивидуальными», потому что после каждого задания все «люди» синхронизируют свои воспоминания. Тем не менее, они все еще развивают личности, что я не нахожу удивительным, поскольку память — это не все, что есть у человека. Но Тачикома действительно производит на меня наибольшее впечатление.:)