Глубокое обучение часто используется для прогнозирования анализа на основе данных. Но что означают эти предсказания?

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

Возникновение событий и алеаторическая неопределенность

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

Мы описываем вероятность возникновения событий с помощью функции P : dE P (d) ∈ [0 , 1] , то есть функция распределения вероятностей, P, присваивает значение от 0 до 1 любому событию, d, в пространстве все возможные события, E. Если событие невозможно, то P (d) = 0, в то время как определенный исход имеет вероятность P (d) = 1. Эта вероятность является аддитивной, так что объединение всех возможных событий dE определенно, т.е. P (E) = 1.

Используя небольшое злоупотребление обозначениями, мы можем написать d ~ P, что означает, что какое-то событие, d извлекается из пространства всех возможных событий E с вероятностью P (d). Это означает, что существует вероятность 100 × P (d)%, что наблюдается событие d. d может быть любым наблюдением, событием или результатом процесса, например, при броске n = 2 шестигранных кубиков и получении шестерки с обоими, d = (d ¹ = 0, d ² = 0, d ³ = 0, d= 0, d= 0, d= 2). Мы не знаем заранее, какой именно результат мы получим, бросив эти два кубика, но мы знаем, что существует определенная вероятность того, что будет получен какой-либо конкретный результат. При многократном повторении эксперимента с броском кубиков (с идеально сбалансированными кубиками и идентичными условиями) мы должны увидеть, что вероятность возникновения d равна P (d) ≈ ¹ / ₃₆. Даже не выполняя много повторений броска кубиков, мы могли бы дать нашу верную оценку распределения вероятности того, что мы увидим определенные результаты.

Статистические модели

Чтобы делать статистические прогнозы, мы моделируем распределение данных с помощью параметризуемых распределений, Pₐ. Мы можем рассматривать a как определение статистической модели, которая содержит описание распределения данных и любых возможных ненаблюдаемых параметров, v Eᵥ модели. Затем функция распределения приписывает значения вероятности возникновению наблюдаемых / ненаблюдаемых событий Pₐ: (d, v)(E, Eᵥ) ↦ Pₐ (d , v) ∈ [0, 1]. Полезно отметить, что мы можем записать это совместное распределение вероятностей в виде условного оператора Pₐ = Lₐ · pₐ = ρₐ · eₐ. Эти функции распределения вероятностей:

  • Вероятность - Lₐ: (d, v)(E, Eᵥ) ↦ Lₐ (d | v) ∈ [0, 1]
  • Априор - pₐ: vEᵥpₐ (v) ∈ [0, 1]
  • Апостериорная - ρₐ: (d, v)(E, Eᵥ) ↦ ρₐ (v | d) ∈ [0, 1]
  • Доказательства - eₐ: dEeₐ (d) ∈ [0, 1]

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

Для эксперимента с броском кубиков мы могли (и делаем) моделирование распределения данных с использованием полиномиального распределения, Pₐ = ∏ᵢ n! / D ⁱ! pᵢ ᵈⁱ, где фиксированные параметры полиномиальной модели равны v = {p₁, p₂, p₃, p₄, p₅, p₆, n} = {pᵢ, n | i ∈ [1, 6] } с pᵢ в качестве вероятностей получения значения i ∈ [1, 6] из die и n как количество бросков. Если мы рассматриваем полностью несмещенные кости, то p₁ = p₂ = p₃ = p₄ = p₅ = p₆ = ¹ / ₆. Вероятность появления двух шестерок, d = (d ¹ = 0, d ² = 0, d ³ = 0, d= 0, d= 0, d= 2), в нашей полиномиальной модели с n = 2 броска кубика, следовательно, можно оценить как Pₐ (d) = ¹ / ₃₆. Поскольку параметры модели, v, фиксированы, это эквивалентно установке предшествующего значения pₐ = δ (pᵢ - ¹ / ₆, n - 2) для i ∈ [1, 6] таких, что Lₐ = ∏ᵢ 2 (¹ / ) ᵈⁱ / d ⁱ! или 0.

Конечно, мы могли бы построить более сложную модель, в которой значения pᵢ зависели от других факторов, таких как количество поверхностей, от которых кубики могли отскочить, или сила, по которой они были брошены, или скорость каждой молекулы воздуха, попавшей в кости в тот момент, когда они покинули наши руки, или бесконечное количество различных эффектов. В этом случае распределение Pₐ будет назначать вероятности появления данных, d ~ P, в зависимости от взаимодействий между ненаблюдаемыми параметрами, v, описывающими такие физические эффекты, т.е. в полиномиальной модели, значения, v, параметров модели будут изменить значение pᵢ , описывающий, насколько вероятно d . Однако мы можем не знать точно, какие значения имеют эти ненаблюдаемые параметры. Поэтому Pₐ описывает не только оценку истинного распределения данных, но также его зависимость от ненаблюдаемых параметров модели. Мы называем функцию условного распределения, описывающую вероятность наблюдения данных по ненаблюдаемым параметрам, правдоподобием Lₐ. Поскольку модель a описывает всю статистическую модель, априорное распределение вероятностей, pₐ, параметров модели, v, является внутренним свойством модель.

Тот факт, что мы не знаем значений v параметров в модели a (и даже не знаем о выборе самой модели), вводит источник неопределенности, который мы называем эпистемическим - неопределенность из-за вещей, о которых мы могли узнать через поддержку наблюдения за событиями. Таким образом, хотя существует алеаторическая неопределенность из-за истинной случайной природы возникновения событий d из распределения данных, P, существует также эпистемическая неопределенность, которая возникает из-за моделирование этого распределения с помощью Pₐ. Однако априорное распределение, pₐ, не следует путать с эпистемической неопределенностью, поскольку априорное распределение является выбором конкретной модели a. Может быть использован необоснованный выбор предварительного распределения (из-за определения статистической модели), который не позволяет модели поддерживаться данными.

Например, для задачи броска кости, когда мы строим модель, мы могли бы решить, что наша модель была достоверной и что априорное распределение возможных значений параметров модели равно pₐ = δ (pᵢ - ¹ / ₆, n - 2) для i ∈ [1, 6]. В этом случае эпистемическая неопределенность не будет приниматься во внимание, потому что предполагается, что мы ничего не можем узнать. Однако, если бы игральные кости были взвешены так, что p₁ = 1 и p₂ = p₃ = p₄ = p₅ = p₆ = 0, то мы бы никогда не получили две шестерки, и наша модель не получила бы поддержки со стороны данные. Вместо этого, если мы выберем другую модель a ′, которая является полиномиальным распределением, но где предварительное распределение возможных значений pᵢ таково, они могут принимать любое значение от 0 к 1 при условии, что ∑ ᵢ pᵢ = 1, тогда нет никаких предполагаемых знаний (в рамках этой конкретной модели). Следовательно, существует очень большая эпистемическая неопределенность из-за недостатка наших знаний, но эта неопределенность может быть уменьшена путем вывода возможных значений параметров при наблюдении за доступными данными.

Субъективный вывод

Мы можем узнать о том, какие значения параметров модели поддерживаются наблюдаемыми данными, используя субъективный вывод (часто называемый байесовским выводом) и, следовательно, уменьшить эпистемическую неопределенность в рамках нашего выбора модели. Используя два равенства условного разложения совместного распределения, Pₐ,, мы можем вычислить апостериорную вероятность того, что в модели a параметры имеют значение v когда наблюдается d ~ P как

Это апостериорное распределение теперь можно использовать в качестве основы новой модели a ′ с совместным распределением вероятностей Pₐ ′, где pₐ ′ = ρₐ, то есть Pₐ ′ = Lₐ · pₐ ′. Обратите внимание, что форма модели не изменилась, только наша уверенность в параметрах модели благодаря поддержке данными - мы можем использовать эту новую модель, чтобы делать более обоснованные прогнозы о распределении данных.

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

Максимальное правдоподобие и максимальная апостериорная оценка

Чтобы подогнать модель к истинному распределению данных, нам нужна мера расстояния между двумя распределениями. Чаще всего используется относительная энтропия (также известная как дивергенция Кульбака-Лейблера (KL)).

Относительная энтропия описывает информацию, потерянную из-за приближения P (d) к Pₐ (d, v). Относительная энтропия обладает некоторыми интересными свойствами, которые не позволяют ей быть идеальной мерой расстояния. Во-первых, это несимметрично, D (PPₐ)D (PₐP), и поэтому его нельзя использовать в качестве метрики. Мы можем взять симметричную комбинацию D (PₐP) и D (PPₐ), но проблемы по-прежнему остаются, например, тот факт, что P и Pₐ должны быть определены в одном домене, E. Другие показатели, такие как расстояние от земного движителя, могут иметь здесь преимущество, поскольку они симметричны и могут быть определены в разных системах координат (и теперь могут быть хорошо аппроксимированы с помощью нейронных сетей при использовании в качестве произвольных функций, а не для прогнозирования параметров модели. ). Однако мы по-прежнему чаще всего рассматриваем относительную энтропию. Переписывая относительную энтропию, мы видим, что можем выразить меру подобия двумя членами

Первый член - это отрицательная энтропия распределения данных, т.е. ожидаемый объем информации, который может быть получен путем наблюдения за результатом, что прямо аналогично энтропии в статистической термодинамике. Второй член - это перекрестная энтропия, H (P, Pₐ),, которая определяет количество информации, необходимой для того, чтобы отличить распределение P от другого распределения P , т. е., сколько отрисовок d ~ P потребуется, чтобы определить, что d был отрисован из P , а не из P ∈. Заметив, что в этой форме относительной энтропии есть только один набор свободных параметров, v, мы можем попытаться приблизить Pₐ к P насколько это возможно за счет минимизации относительной энтропии по отношению к этим параметрам

Но как мы на самом деле это делаем? У нас может не быть доступа ко всему распределению возможных данных для выполнения интеграла. Вместо этого рассмотрите выборочное распределение, s: dSs (d) ∈ [0, 1], где s (d) - нормализованная частота событий из пространства выборки с N условно независимыми значениями d, S E. В этом случае интеграл становится суммой и H (P, Pₐ) ≊ - ∑ s (d) log Pₐ (d, v). Используя условные отношения, мы пишем Pₐ = Lₐ · pₐ, как и раньше, и поэтому перекрестная энтропия равна H (P, Pₐ) ≊ - ∑ s (d) log Lₐ (d | v) −∑ s (d) log pₐ (v ). Поскольку априор не зависит от данных, он просто добавляет аддитивную константу к перекрестной энтропии.

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

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

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

Сравнение моделей

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

Выбрав другую модель a ′ с собственным набором параметров uEᵤ, мы могли бы затем придумать критерий, который описывает, a или a ′ лучше соответствует данным, d. Обратите внимание, что этот критерий не обязательно четко определен . Мы предпочитаем модель, которая точно соответствует данным, но имеет полубесконечное количество параметров, или мы предпочитаем элегантную модель с несколькими параметрами, но с менее подходит? До появления нейронных сетей мы обычно выбирали модель с наименьшим количеством параметров, которая хорошо соответствовала данным и обобщала, чтобы делать последовательные прогнозы будущих событий, но это все еще обсуждается.

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

Нейронные сети как статистические модели

Глубокое обучение - это способ построения моделей распределения данных

Независимо от цели - контролируемого обучения, классификации, регрессии, генерации и т. Д. - глубокое обучение - это просто построение моделей для распределения данных. Для контролируемого обучения и других методов прогнозирования мы рассматриваем наши данные, d, как пару входных данных и целей, d = (x, y). Например, нашими входными данными могут быть изображения кошек и собак, x, сопровождаемые ярлыками, y. Затем мы можем сделать прогноз метки y для ранее невидимого изображения x ′ - это эквивалентно прогнозированию пара соответствующих входных данных и целей, d,, если известна часть d.

Итак, мы хотим смоделировать распределение P с помощью нейронной сети, f: (x, v) ∈ (E, Eᵥ)g = f (x, v)G, где f - функция, параметризованная весами, v, , который принимает входные данные x и выводит некоторые значения g из пространства возможных сетевых выходов G. Форма функции f описывается гиперпараметризацией a, и включает архитектуру, инициализацию, процедуру оптимизации и, что наиболее важно, потери или стоимость функция, Λₐ: (d, v)(E, Eᵥ)Λₐ (y | x, v) ∈ K · [0 , 1]. Функция потерь описывает ненормализованную меру вероятности появления данных, d = (x, y), с ненаблюдаемыми параметрами, v. То есть использование нейронной сети для прогнозирования y при заданном x эквивалентно моделированию вероятности P появления данных. , d, где форма распределения определяется формой и свойствами сети a и значениями ее параметров v. Мы часто отличаем классические нейронные сети (которые делают предсказания целей) от оценок нейронной плотности (которые оценивают вероятность входных данных, т.е. пространство G = [0, 1]) - они, однако, выполняют ту же работу, но распределение из классической нейронной сети может быть оценено только с использованием функции потерь (и обычно не нормализуется для интегрирования до 1, как истинная вероятность). Это проливает свет на значение выходных данных или прогнозов классической нейронной сети - это значения параметров, контролирующих форму распределения вероятностей данных в нашей модели (определяемых выбором гиперпараметров).

Например, при выполнении регрессии с использованием среднеквадратичной ошибки в качестве функции потерь выходной сигнал нейронной сети g = f (x, v) эквивалентен среднему значению обобщенного нормального распределения. с единичной дисперсией. Это означает, что при подаче некоторого ввода x сеть предоставляет оценку среднего из возможных значений y через значения v, параметров, где возможные значения y взяты из обобщенной нормали с единичной дисперсией, т.е. у ~ N (г, I). Обратите внимание, что эта модель для значений y никоим образом не может быть хорошим выбором. Другой пример: при выполнении классификации с использованием вывода softmax мы можем интерпретировать результаты напрямую как pᵢ полиномиального распределения, где ненаблюдаемые параметры модели, v, влияют на Значение этих выходов аналогично параметрам в физической модели влияет на вероятность появления разных данных.

Обладая этими знаниями, мы можем понять оптимизацию сетевых параметров (известную как обучение) как моделирование распределения данных, P. Обычно при классическом обучении сети наш выбор модели допускает любые значения v ~ pₐ = Uniform [-∞, ∞] (хотя мы склонны брать их начальные значения из некоторого нормального распределения). По сути, мы игнорируем любую предварительную информацию о значениях весов, потому что у нас нет никаких предварительных знаний. В этом случае вся информация о распределении данных поступает из вероятности Lₐ. Итак, для обучения мы выполняем оценку максимального правдоподобия параметров сети, которая минимизирует перекрестную энтропию между распределением данных и оцененным распределением из нейронной сети и, следовательно, минимизирует относительную энтропию. Чтобы реально оценить логарифм вероятности для классических нейронных сетей со значениями параметров v, мы можем расширить вероятность некоторых наблюдаемых данных, d, как Lₐ (d | v)Λₐ (y | x, v) s (x), где s (x) - выборочное распределение x , что эквивалентно присвоению нормализованных частот количества раз, когда x появляется в S. Вычисление Λₐ (y | x, v) в каждом y в выборочном распределении при задании соответствующего x, логарифма этой вероятности и суммирование результата дает нам логарифм вероятности выборочного распределения. Максимальное увеличение этого параметра по отношению к параметрам сети v дает нам распределение Pₐ, которое наиболее близко к s (которое, мы надеемся, должно быть близко к P).

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

Следует принять во внимание несколько предостережений. Во-первых, выбор функции потерь определяет статистическую модель - если нет способа, которым функция потерь описывает распределение данных, то статистическая модель распределения данных будет неправильной. Один из способов избежать допущения о распределении - рассмотреть функции потерь, выходящие за рамки среднеквадратичной ошибки, категориальной перекрестной энтропии или абсолютной ошибки - одним из идеальных вариантов было бы расстояние до земного движителя, которое может быть хорошо аппроксимировано определенными типами нейронных сетей и обеспечивает объективную оценку. который имитирует оптимальный транспортный план между распределением данных и статистической моделью, обеспечивая, таким образом, непринятую форму для Pₐ. Также следует отметить, что статистическая модель, использующая нейронную сеть, чрезмерно параметризована. Модель эволюции Вселенной требует всего 6 параметров (в хороший день) - в то время как нейронная сеть будет использовать миллионы неидентифицируемых параметров для гораздо более простых задач. При выборе модели, когда требуется элегантность модели, нейронные сети почти всегда проигрывают. Наконец, сети создаются так, чтобы соответствовать данным, на основе данных - если есть какое-либо смещение в данных, dS, т.е. s не похоже на P, это смещение будет заметным. Физические модели могут избежать этих предубеждений, опираясь на интуицию. Фактически, то же самое можно сделать и с нейронными сетями, но за счет гораздо большей мощности мозга и гораздо большего количества времени, потраченного на написание кода, чем на выбор чего-то вслепую.

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

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