20111202 machine learning_nikolenko_lecture01

Post on 22-May-2015

2.131 Views

Category:

Documents

8 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Что такое машинное обучениеБайесовский подход

Введение: AI и байесовский вывод

Сергей Николенко

Computer Science Club, Екатеринбург, 2011

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Outline

1 Что такое машинное обучениеКраткая история AIМашинное обучение: суть

2 Байесовский подходОсновные определенияПримеры

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Первые мысли об искусственном интеллекте

Гефест создавал себе роботов–андроидов, например,гигантского человекоподобного робота Талоса.

Пигмалион оживлял Галатею.

Иегова и Аллах — куски глины.

Особо мудрые раввины могли создавать големов.

Альберт Великий изготовил искусственную говорящуюголову (чем очень расстроил Фому Аквинского).

Начиная с доктора Франкенштейна, дальше AI влитературе появляется постоянно...

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Тест Тьюринга

AI как наука начался с теста Тьюринга (1950).

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

Правда, исходная формулировка была несколько тоньше иинтереснее...

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Тест Тьюринга

Здесь уже очевидно, сколько всего надо, чтобы сделать AI:

обработка естественного языка;представление знаний;выводы из полученных знаний;обучение на опыте (собственно machine learning).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Дартмутский семинар

Термин AI и формулировки основных задач появились в1956 на семинаре в Дартмуте.

Его организовали Джон Маккарти (John McCarthy),Марвин Мински (Marvin Minsky), Клод Шеннон (ClaudeShennon) и Натаниэль Рочестер (Nathaniel Rochester).

Это была, наверное, самая амбициозная грантозаявка вистории информатики.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Дартмутский семинар

Мы предлагаем исследование искусственного интеллектасроком в 2 месяца с участием 10 человек летом 1956 годав Дартмутском колледже, Гановер, Нью–Гемпшир.Исследование основано на предположении, что всякийаспект обучения или любое другое свойство интеллектаможет в принципе быть столь точно описано, что машинасможет его симулировать. Мы попытаемся понять, какобучить машины использовать естественные языки,формировать абстракции и концепции, решать задачи,сейчас подвластные только людям, и улучшать самих себя.Мы считаем, что существенное продвижение в одной илиболее из этих проблем вполне возможно, если специальноподобранная группа учёных будет работать над этим втечение лета.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

1956-1960: большие надежды

Оптимистическое время. Казалось, что ещё немного, ещёчуть-чуть...Allen Newell, Herbert Simon: Logic Theorist.

Программа для логического вывода.Смогла передоказать большую часть Principia Mathematica,кое-где даже изящнее, чем сами Рассел с Уайтхедом.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

1956-1960: большие надежды

Оптимистическое время. Казалось, что ещё немного, ещёчуть-чуть...

General Problem Solver – программа, которая пыталасьдумать как человек;Много программ, которые умели делать некоторыеограниченные вещи (microworlds):

Analogy (IQ-тесты на «выберите лишнее»);Student (алгебраические словесные задачи);Blocks World (переставляла 3D-блоки).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

1970-е: knowledge-based systems

Суть: накопить достаточно большой набор правил изнаний о предметной области, затем делать выводы.Первый успех: MYCIN – диагностика инфекций крови:

около 450 правил;результаты как у опытного врача и существенно лучше,чем у начинающих врачей.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

1980-е: коммерческие применения; индустрия AI

Началось внедрение.

Первый AI-отдел был в компании DEC (Digital EquipmentCorporation);

Утверждают, что к 1986 году он экономил DEC $10 млн. вгод;

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

1990-2010: data mining, machine learning

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

Особенно — с развитием интернета.

Сейчас про AI в смысле трёх законов робототехники ужене очень вспоминают.

// Но роботика — процветает и пользуется machine learningна каждом шагу.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Определение

Что значит — обучающаяся машина? Как определить«обучаемость»?

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Определение

Что значит — обучающаяся машина? Как определить«обучаемость»?

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

Определение очень (слишком?) общее.

Какие конкретные примеры можно привести?

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Чем мы будем заниматься

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

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Основные задачи и понятия машинного обучения

Обучение с учителем (supervised learning) – обучение, вкотором есть некоторое число примеров с правильнымиответами:

обучающая выборка (training set) – примеры справильными ответами;модель обучается на этой выборке (training phase, learningphase), затем может быть применена к новым примерам(test set);главное – обучить модель, которая не только точки изобучающей выборки объясняет, но и на новые примерыхорошо обобщается (generalizes);иначе – оверфиттинг (overfitting);

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Основные задачи и понятия машинного обучения

Обучение с учителем (supervised learning) – обучение, вкотором есть некоторое число примеров с правильнымиответами:

обычно нам дают просто обучающую выборку – как тогдапроверить, обобщаются ли модели? кросс-валидация;перед тем как подавать что-то на вход, обычно делаютпредобработку, стараясь выделить из входных данныхсамые содержательные аспекты (feature extraction);классификация: есть некоторый дискретный наборкатегорий (классов), и надо новые примеры определить вкакой-нибудь класс;регрессия: есть некоторая неизвестная функция, и надопредсказать её значения на новых примерах.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Основные задачи и понятия машинного обучения

Обучение без учителя (unsupervised learning) – обучение, вкотором нет правильных ответов, только данные:

кластеризация: надо разбить данные на заранеенеизвестные классы по некоторой мере похожести;оценка плотности: надо по данным сделать вывод ораспределении вероятностей, которыми они порождены;визуализация: надо спроецировать данные в размерность2-3, чтобы потом их визуализировать.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Краткая история AIМашинное обучение: суть

Основные задачи и понятия машинного обучения

Обучение с подкреплением (reinforcement learning) –обучение, в котором агент учится из собственных проб иошибок:

многорукие бандиты: есть некоторый набор действий,каждое из которых ведёт к случайным результатам; нужнополучить как можно больший доход;exploration vs. exploitation: как и когда от исследованиянового переходить к использованию того, что уже изучил;credit assignment: конфетку дают в самом конце (выигралпартию), и надо как-то распределить эту конфетку по всемходам, которые привели к победе.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Outline

1 Что такое машинное обучениеКраткая история AIМашинное обучение: суть

2 Байесовский подходОсновные определенияПримеры

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Основные определения

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

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Основные определения

Совместная вероятность – вероятность одновременногонаступления двух событий, p(x , y); маргинализация:

p(x) =∑y

p(x , y).

Условная вероятность – вероятность наступления одногособытия, если известно, что произошло другое, p(x | y):

p(x , y) = p(x | y)p(y) = p(y | x)p(x).

Теорема Байеса – из предыдущей формулы:

p(y |x) =p(x |y)p(y)

p(x)=

p(x |y)p(y)∑y ′ p(x |y ′)p(y ′)

.

Независимость: x и y независимы, если

p(x , y) = p(x)p(y).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

О болезнях и вероятностях

Приведём классический пример из классической областиприменения статистики — медицины.

Пусть некий тест на какую-нибудь болезнь имеетвероятность успеха 95% (т.е. 5% — вероятность какпозитивной, так и негативной ошибки).

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

Пусть некий человек получил позитивный результат теста(тест говорит, что он болен). С какой вероятностью ондействительно болен?

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

О болезнях и вероятностях

Приведём классический пример из классической областиприменения статистики — медицины.

Пусть некий тест на какую-нибудь болезнь имеетвероятность успеха 95% (т.е. 5% — вероятность какпозитивной, так и негативной ошибки).

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

Пусть некий человек получил позитивный результат теста(тест говорит, что он болен). С какой вероятностью ондействительно болен?

Ответ: 16%.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Доказательство

Обозначим через t результат теста, через d — наличиеболезни.

p(t = 1) = p(t = 1|d = 1)p(d = 1)+p(t = 1|d = 0)p(d = 0).

Используем теорему Байеса:

p(d = 1|t = 1) =

=p(t = 1|d = 1)p(d = 1)

p(t = 1|d = 1)p(d = 1) + p(t = 1|d = 0)p(d = 0)=

=0.95× 0.01

0.95× 0.01+ 0.05× 0.99= 0.16.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Вывод

Вот такие задачи составляют суть вероятностного вывода(probabilistic inference).

Поскольку они обычно основаны на теореме Байеса, выводчасто называют байесовским (Bayesian inference).

Но не только поэтому.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Вероятность как частота

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

Стандартный пример: бросание монетки.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Вероятность как степень доверия

Мы можем рассуждать о том, «насколько вероятно» то,что

«Единая Россия» победит на думских выборах;«Одиссею» написала женщина;Керенский бежал за границу в женском платье;...

Но о «стремящемся к бесконечности количествеэкспериментов» говорить бессмысленно — экспериментздесь ровно один.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Вероятность как степень доверия

Здесь вероятности уже выступают как степени доверия(degrees of belief). Это байесовский подход к вероятностям(Томас Байес так понимал).

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Прямые и обратные задачи

Прямая задача: в урне лежат 10 шаров, из них 3 чёрных.Какова вероятность выбрать чёрный шар?

Или: в урне лежат 10 шаров с номерами от 1 до 10. Каковавероятность того, что номера трёх последовательновыбранных шаров дадут в сумме 12?

Обратная задача: перед нами две урны, в каждой по 10шаров, но в одной 3 чёрных, а в другой — 6. Кто-то взялиз какой-то урны шар, и он оказался чёрным. Наскольковероятно, что он брал шар из первой урны?

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Прямые и обратные задачи

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

Обратные задачи содержат скрытые переменные (впримере — номер урны, из которой брали шар). Они частопросят по известному поведению построить вероятностнуюмодель.

Задачи машинного обучения обычно являются задачамивторой категории.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Определения

Запишем теорему Байеса:

p(θ|D) =p(θ)p(D |θ)

p(D).

Здесь p(θ) — априорная вероятность (prior probability),p(D |θ) — правдоподобие (likelihood), p(θ|D) —апостериорная вероятность (posterior probability),p(D) =

∫p(D | θ)p(θ)dθ — вероятность данных (evidence).

Вообще, функция правдоподобия имеет вид

a 7→ p(y |x = a)

для некоторой случайной величины y .

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

ML vs. MAP

В статистике обычно ищут гипотезу максимальногоправдоподобия (maximum likelihood):

θML = arg maxθp(D | θ).

В байесовском подходе ищут апостериорное распределение(posterior)

p(θ|D) ∝ p(D |θ)p(θ)

и, возможно, максимальную апостериорную гипотезу(maximum a posteriori):

θMAP = arg maxθp(θ | D) = arg maxθp(D | θ)p(θ).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Постановка задачи

Простая задача вывода: дана нечестная монетка, онаподброшена N раз, имеется последовательностьрезультатов падения монетки. Надо определить её«нечестность» и предсказать, чем она выпадет вследующий раз.

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Постановка задачи

Простая задача вывода: дана нечестная монетка, онаподброшена N раз, имеется последовательностьрезультатов падения монетки. Надо определить её«нечестность» и предсказать, чем она выпадет вследующий раз.

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

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

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Первые замечания

Если у нас есть вероятность ph того, что монетка выпадетрешкой (вероятность орла pt = 1− ph), то вероятностьтого, что выпадет последовательность s, которая содержитnh решек и nt орлов, равна

p(s |ph) = pnhh (1− ph)

nt .

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

Теперь нужно использовать теорему Байеса и вычислитьскрытые параметры.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Пример применения теоремы Байеса

p(ph|s) =p(s |ph)p(ph)

p(s) .

Здесь p(ph) следует понимать как непрерывную случайнуювеличину, сосредоточенную на интервале [0, 1], коей она иявляется. Наше предположение о равномерномраспределении в данном случае значит, что априорнаявероятность p(ph) = 1, ph ∈ [0, 1] (т.е. априори мы незнаем, насколько нечестна монетка, и предполагаем эторавновероятным). А p(s |ph) мы уже знаем.

Итого получается:

p(ph|s) =pnhh (1− ph)

nt

p(s).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Пример применения теоремы Байеса

Итого получается:

p(ph|s) =pnhh (1− ph)

nt

p(s).

p(s) можно подсчитать как

p(s) =∫1

0pnhh (1− ph)

ntdph =

=Γ(nh + 1)Γ(nt + 1)Γ(nh + nt + 2)

=nh!nt !

(nh + nt + 1)!,

но найти arg maxphp(ph | s) = nh

nh+ntможно и без этого.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Пример применения теоремы Байеса

Итого получается:

p(ph|s) =pnhh (1− ph)

nt

p(s).

Но это ещё не всё. Чтобы предсказать следующий исход,надо найти p(heads|s):

p(heads|s) =∫1

0p(heads|ph)p(ph|s)dph =

=

∫1

0

pnh+1h (1− ph)

nt

p(s)dph =

=(nh + 1)!nt !

(nh + nt + 2)!· (nh + nt + 1)!

nh!nt !=

nh + 1nh + nt + 2

.

Получили правило Лапласа.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Пример применения теоремы Байеса

Итого получается:

p(ph|s) =pnhh (1− ph)

nt

p(s).

Это была иллюстрация двух основных задач байесовскоговывода:

1 найти апостериорное распределение нагипотезах/параметрах:

p(θ | D) ∝ p(D |θ)p(θ)

(и/или найти гипотезу максимального правдоподобияarg maxθp(θ | D));

2 найти апостериорное распределение исходов дальнейшихэкспериментов:

p(x | D) ∝∫θ∈Θ

p(x | θ)p(D |θ)p(θ)dθ.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Поиск скрытых параметров

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

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

Требуется найти наиболее правдоподобные неизвестныепараметры этих распределений.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Гауссиан

Начнём с нормального (гауссовского) распределения. Унего два параметра:

p(x) =1

σ√2π

e−(x−µ)2

2σ2 .

Функция правдоподобия данных x1, . . . , xn:

p(x1, . . . , xn|µ, σ) =1

(σ√2π)n

e−∑n

i=1(xi−µ)2

2σ2 .

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Нормальное распределение

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Гауссиан: достаточные статистики

Заметим, что функция эта зависит от двух параметров, ане от n:

p(x1, . . . , xn|µ, σ) =1

(σ√2π)n

e−S+n(�x−µ)2

2σ2 ,

где

�x =x1 + . . .+ xn

n, S =

n∑i=1

(�x − xn)2.

Параметры �x и S называются достаточными статистиками(sufficient statistics).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Гауссиан: ГМП

Какие параметры лучше всего описывают данные?

Перейдём, как водится, к логарифму:

ln p(x1, . . . , xn|µ, σ) = −n ln(σ√2π) −

S + n(�x − µ)2

2σ2 .

Как выяснить, при каких параметрах функцияправдоподобия максимизируется?

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Гауссиан: ГМП

Какие параметры лучше всего описывают данные?

Перейдём, как водится, к логарифму:

ln p(x1, . . . , xn|µ, σ) = −n ln(σ√2π) −

S + n(�x − µ)2

2σ2 .

Как выяснить, при каких параметрах функцияправдоподобия максимизируется?

Взять частные производные и приравнять нулю.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Гауссиан: ГМП

По µ:∂ ln p∂µ

= −nσ2 (µ− �x).

То есть в гипотезе максимального правдоподобия µML = �x ,независимо от S .

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

Для этого мы продифференцируем по lnσ — полезныйприём на будущее. Кстати, dxn

d(ln x) = nxn.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Гауссиан: ГМП

∂ ln p∂ lnσ

= −n +

∑ni=1(xi − µ)

2

σ2 .

Следовательно, в гипотезе максимального правдоподобия

σML =

√∑ni=1(xi − µ)2

n.

Упражнение.1 Найти ожидание оценки σML и убедиться, что она смещена.2 Оценить ошибку в полученных нами значениях (найти

доверительные интервалы).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Несколько гауссианов

Теперь то же самое для нескольких гауссианов сразу.

Даны несколько точек x1, . . . , xn, но они принадлежатсмеси гауссианов с разными µk (пусть σ будет одна и таже).

Обозначим коэффициенты смеси через wk (вероятностьтого, что точка порождена гауссианом со средним µk).

Тогда распределение будет

p(x |w,µ, σ2) =∑k

wkN (x | µk , σ2).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Несколько гауссианов

Мы будем ещё говорить о том, как находить параметрымаксимального правдоподобия в смесях распределенийвроде этой;

p(x1, . . . , xn | w,µ, σ2) =

n∏i=1

p(xi |w,µ, σ2) =

n∏i=1

∑k

wkN (xi | µk , σ2).

А пока просто – что мы сделаем, если найдём этипараметры? Как называется эта задача?

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Несколько гауссианов

Мы будем ещё говорить о том, как находить параметрымаксимального правдоподобия в смесях распределенийвроде этой;

p(x1, . . . , xn | w,µ, σ2) =

n∏i=1

p(xi |w,µ, σ2) =

n∏i=1

∑k

wkN (xi | µk , σ2).

А пока просто – что мы сделаем, если найдём этипараметры? Как называется эта задача?Мы решим задачу кластеризации: разделим данные (понаиболее правдоподобной компоненте смеси) на хорошоопределённые (в данном случае гауссовские) кластеры.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Регрессия

Третий пример – регрессия:обучающая выборка – несколько точек x = {x1, . . . , xN } снаблюдениями неизвестной функции t = {t1, . . . , tN };мы хотим понять, что это была за функция y(x), ипредсказать новые значения y(x);давайте будем просто искать функцию в виде многочлена:

y(x ,w) = w0 + w1x + w2x2 + . . .+ wdxd =

d∑j=0

wjx j .

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Регрессия

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

выберем функцию ошибки – обычно выбираютсреднеквадратическое отклонение

E (w) =12

N∑n=1

(y(xn,w) − tn)2;

будем её минимизировать – возьмём производные инайдём минимум (или будем к нему двигатьсяградиентным спуском);в результате получатся оптимальные коэффициентымногочлена данной степени.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Регрессия

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

E ′(w) =12

N∑n=1

(y(xn,w) − tn)2 +

λ

2‖w‖2 .

Всё это выглядит странно – почему такая функцияошибки? почему такой регуляризатор? откуда брать λ?..

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Регрессия

Теперь давайте попробуем рассмотреть то же самое сбайесовских позиций:

сделаем (очень естественное) предположение о том, чтоошибка в данных распределена нормально:

p(t | x ,w, σ2) = N (t | y(x ,w), σ2);

запишем правдоподобие тестовой выборки (предполагаянезависимость тестовых примеров):

p(t | x ,w, σ2) =

N∏n=1

N (tn | y(xn,w), σ2);

теперь (проверьте!) максимизация правдоподобияэквивалентна минимизации среднеквадратической ошибки.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Регрессия

Но и это ещё не всё – давайте добавим априорноераспределение:

введём априорное распределение

p(w | σ2w ) = N (w | 0, σ2

w ) ∝ e− 1

2σ2wwTw

;

теперь апостериорное распределение выглядит как

p(w | x, t, σ2, σ2w ) ∝ p(t | x ,w, σ2)p(w | σ2

w );

и поиск MAP-гипотезы эквивалентен (проверьте!)минимизации среднеквадратической ошибки срегуляризатором λ ‖w‖2 для λ = σ2

σ2w.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Байесовская регрессия

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Классификация

Теперь – о задаче классификации. Пусть есть несколькоклассов {Ck }, и мы хотим узнать, к какому классупринадлежит x.

Небайесовский подход – придумать функцию f (x)(дискриминант), которая будет выдавать метку класса k(пример: расстояние до разделяющей поверхности).

Байесовский подход – оценить распределения p(x | Ck) поотдельности для каждого класса Ck , а затеммаксимизировать апостериорную вероятность:

k∗ = arg maxkp(Ck | x) = arg maxkp(x | Ck)p(Ck).

Ну, или просто напрямую искать p(Ck | x), если это проще.

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Классификация

Чем байесовский подход лучше:если нужно минимизировать меняющиеся риски(коэффициенты при p(Ck | x) меняются), не нужнопереобучать модель;можно скомпенсировать несбалансированные априорныераспределения;можно совместить разные модели – если есть p(Ck | x) иp(Ck | y), можно предположить условную независимость(наивный байес) и подсчитать

p(Ck | x,y) ∝ p(x,y | Ck)p(Ck) ∝

p(x | Ck)p(y | Ck)p(Ck) ∝p(Ck | x)p(Ck | y)

p(Ck).

Сергей Николенко Введение: AI и байесовский вывод

Что такое машинное обучениеБайесовский подход

Основные определенияПримеры

Thank you!

Спасибо за внимание!

Сергей Николенко Введение: AI и байесовский вывод

top related