Скачать презентацию Введение в компьютерное зрение Владимир Вежневец Антон Скачать презентацию Введение в компьютерное зрение Владимир Вежневец Антон

b40c7abcd28a2a5e7d02f1aea4fba821.ppt

  • Количество слайдов: 69

 «Введение в компьютерное зрение» Владимир Вежневец, Антон Конушин Александр Вежневец МГУ ВМК, Graphics «Введение в компьютерное зрение» Владимир Вежневец, Антон Конушин Александр Вежневец МГУ ВМК, Graphics & Media Lab, Осень 2006

План лекции n Деревья классификации n Байесовский подход к классификации n «Наивный» Байесовский классификатор План лекции n Деревья классификации n Байесовский подход к классификации n «Наивный» Байесовский классификатор (Idiot Bayes) n Нормальный дискриминантный анализ n Нейронные сети n Метод опорных векторов n Комитетные методы n n Bagging Boosting

Вопросы с предыдущей лекции n Почему не рассказываем про обучение «на лету» ? n Вопросы с предыдущей лекции n Почему не рассказываем про обучение «на лету» ? n Почему же скользящий контроль лучше повторного удерживания?

Обучение на лету n Модель: n n Множество действий A n n Множество состояний Обучение на лету n Модель: n n Множество действий A n n Множество состояний S Скалярный «выигрыш» r В каждый момент времени t : n n Агент получает свое состояние и набор возможных действий Агент выбирает действие и получает «выигрыш» Требуется максимизировать выигрыш n Ясно, что выигрыш можно оптимизировать «жадно» и «дальнесрочно» - определяется задачей

Особенности n Нет готовых ответов, есть «запоздалый выигрыш» n n n Применение n n Особенности n Нет готовых ответов, есть «запоздалый выигрыш» n n n Применение n n Требует от системы возможности постоянно получать отклик о качестве работы (выигрыш); Зачастую, невозможное требование для коммерческих систем компьютерного зрения; Игры; Робот в лабиринте; Частичная видимость среды; Для задач допускающих формулировку в виде задач обучения с учителем применение обучения «на лету» дает заведомо худший результат!

Почему же скользящий контроль лучше повторного удерживания? n Основной довод скользящего контроля: n n Почему же скользящий контроль лучше повторного удерживания? n Основной довод скользящего контроля: n n Каждый элемент гарантированно попадет в контрольную выборку хотя бы один раз Довод 5 -2 контроля: n n Тренировочные выборки абсолютно декоррелированы (не пересекаются) Каждый прецедент учувствует в тренировке и контроля ровно по 5 раз

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

Деревья классификации Classification trees Деревья классификации Classification trees

Деревья классификации Модель алгоритма n n Двоичное дерево Узлы: n n Связи: n n Деревья классификации Модель алгоритма n n Двоичное дерево Узлы: n n Связи: n n Помечены некоторым предикатом Помечены Листья: n Помечены ответами из Y *Вопрос: кто помнит, что такое предикат?

Деревья классификации Модель алгоритма n Выходом классификатора является значение листа, полученного при обходе: n Деревья классификации Модель алгоритма n Выходом классификатора является значение листа, полученного при обходе: n n n Начинаем от корня Переходим в тот узел, в который ведет связь помеченная значением предиката в текущем узле Заканчиваем, попав в лист

Пример ВАЖНО: каждый лист определяет собой область пространства Х Пример ВАЖНО: каждый лист определяет собой область пространства Х

Деревья классификации Пример работы Деревья классификации Пример работы

Деревья классификации Модель алгоритма: пространство поиска n Количество ветвлений - сильно влияет на сложность Деревья классификации Модель алгоритма: пространство поиска n Количество ветвлений - сильно влияет на сложность алгоритма и соответственно на размерность Вапника-Червоненкиса и склонность к переобучению n Предикаты – обычно, используются пороги по проекциям на оси координат (на элементы вектора признаков)

Деревья классификации Метод обучения n Введем меру «неоднородности» для листа дерева n Пусть, при Деревья классификации Метод обучения n Введем меру «неоднородности» для листа дерева n Пусть, при обходе дерева до вершины m из тренировочной выборке «доходят» Nm прецедентов; Из них Nmy прецедентов принадлежат классу y n Пусть, n Тогда «неоднородность» листа m - n

Деревья классификации Метод обучения n Пусть, дана обучающая выборка n Строим от корня: n Деревья классификации Метод обучения n Пусть, дана обучающая выборка n Строим от корня: n n n Если текущая вершина однородная, то она лист; алгоритм останавливается Если же нет, делаем разбиение, минимизирующие «неоднородность» Для каждой из получившихся вершин повторяем процедуру

Особенности n Плюсы n Минусы Просто и наглядно n n Плохо аппроксимирует сложные поверхности Особенности n Плюсы n Минусы Просто и наглядно n n Плохо аппроксимирует сложные поверхности n n В общем случае, требует сложных алгоритмов «обрезания» для контроля сложности Легко анализируемо n Быстро работает n Легко применяется для задач со множеством классов и к регрессии

Иллюстрация Верный источник как Недо- так пере-обучения! Иллюстрация Верный источник как Недо- так пере-обучения!

Байесовская стратегия классификации Bayesian classification Байесовская стратегия классификации Bayesian classification

Статистическая формулировка n n Пусть – вероятностное пространство Пусть мера пространства P n Множество Статистическая формулировка n n Пусть – вероятностное пространство Пусть мера пространства P n Множество прецедентов выбрано случайно и независимо согласно распределению P (случайная выборка); для них известны ответы n Требуется построить отображение

Статистическая формулировка Бинарная классификация n Эмпирический риск: n Общий риск: n n рассчитать невозможно Статистическая формулировка Бинарная классификация n Эмпирический риск: n Общий риск: n n рассчитать невозможно требуется минимизировать

Байесовский классификатор n Предположения: n n n Известна функция правдоподобия: Известны априорные вероятности: Принцип Байесовский классификатор n Предположения: n n n Известна функция правдоподобия: Известны априорные вероятности: Принцип максимума апостериорной вероятности: Правдоподобие – условная вероятность наблюдения Вероятность класса Формула Байеса Вероятность наблюдения

Пример: Какова вероятность увидеть на улице динозавра? Идя по улице вы видите такую сцену: Пример: Какова вероятность увидеть на улице динозавра? Идя по улице вы видите такую сцену: (это и есть наблюдение х) Вычислим вероятность того, что наблюдая такую сцены мы действительно видим динозавра Правдоподобие – вероятность того, что будь это действительно динозавр наблюдение было бы таким Априорная вероятность встретить динозавра Априорная вероятность увидеть такую сцену

Пример: Какова вероятность увидеть на улице динозавра? Априорная вероятность встретить динозавра Пусть : Правдоподобие Пример: Какова вероятность увидеть на улице динозавра? Априорная вероятность встретить динозавра Пусть : Правдоподобие – вероятность того, что будь это действительно динозавр наблюдение было бы таким Априорная вероятность увидеть такую сцену

Свойства классификатора n Модель алгоритма и метод обучение строго не определены (не нужны даже Свойства классификатора n Модель алгоритма и метод обучение строго не определены (не нужны даже обучающая выборка) – классификатор строится непосредственно по функциям априорных вероятностей и правдоподобия данным «свыше» n Дает наименьший общий риск (состоятелен) при выполнении предположений

Практическое применение n На практике, функция правдоподобия и априорные вероятности обычно не известны; n Практическое применение n На практике, функция правдоподобия и априорные вероятности обычно не известны; n Для применения Байесвокого подхода на практике требуется каким либо образом их оценить n n Зачастую, предполагается что объекты принадлежат какомуто статистическому распределению, параметры которого оцениваются на обучающей выборке; Априорные оценки так же вычисляются на обучающей выборке

 «Наивный» Байесовский классификатор n Пусть, множество X является конечным n n Множество цветов «Наивный» Байесовский классификатор n Пусть, множество X является конечным n n Множество цветов в системе RGB Набор логических атрибутов (наличие в письме того или иного слова) n Для каждого значения из X по обучающей выборке оценим функцию правдоподобия n Так же, оценим априорную вероятности

 «Наивный» Байесовский классификатор Сегментация кожи n Для всех возможных цветов по обучающей выборке «Наивный» Байесовский классификатор Сегментация кожи n Для всех возможных цветов по обучающей выборке строится таблица правдоподобия и рассчитывается априорная вероятность

Нормальный дискриминантный анализ Normal discriminant analyzes Нормальный дискриминантный анализ Normal discriminant analyzes

Нормальный дискриминантный анализ n Предположения: n Функции правдоподобия имеют нормальное распределение: n Дана обучающая Нормальный дискриминантный анализ n Предположения: n Функции правдоподобия имеют нормальное распределение: n Дана обучающая выборка прецедентов (случайных и независимых)

Нормальное распределение n Поверхность, на которой точки имеют равную вероятность представляет собой эллипсоид n Нормальное распределение n Поверхность, на которой точки имеют равную вероятность представляет собой эллипсоид n Мат. ожидание – центр эллипса, ковариационная матрица – матрица поворота и растяжения (задает оси эллипса)

Расчет разделяющей поверхности n Обозначим: n Запишем уравнение разделяющей поверхности (на этой поверхности вероятности Расчет разделяющей поверхности n Обозначим: n Запишем уравнение разделяющей поверхности (на этой поверхности вероятности равны): С=const(x) n Распишем:

Расчет разделяющей поверхности Расчет разделяющей поверхности

Расчет разделяющей поверхности Поверхность становится квадратичной! Расчет разделяющей поверхности Поверхность становится квадратичной!

Модель алгоритма n Классификатор строится в виде некоторой поверхности, отвечающей принципу максимума апостериорной вероятности Модель алгоритма n Классификатор строится в виде некоторой поверхности, отвечающей принципу максимума апостериорной вероятности n Поверхность зависит только от параметров распределений – пространство поиска

Метод обучения n Для построения классификатора требуется по обучающей выборке оценить параметры распределений n Метод обучения n Для построения классификатора требуется по обучающей выборке оценить параметры распределений n С учётом их случайности и независимости, можно применять стандартный механизм оценки параметров из математической статистики n Например, метод максимального правдоподобия

Свойства классификатора n В случае точной оценки параметров распределений и априорных вероятностей является Байесовским Свойства классификатора n В случае точной оценки параметров распределений и априорных вероятностей является Байесовским (дает минимум общего риска); n Строит простую для вычисления поверхность (линейную или квадратичную); n Делает сильное предположение о нормальности распределений n В случае невыполнения предположений даёт непредсказуемый результат

Советы по практическому применению n Проверить классы на нормальность! n n В случае наличия Советы по практическому применению n Проверить классы на нормальность! n n В случае наличия выбросов использовать робастные оценки n n Хи-квадрат статистика MLESAC Аккуратно оценить априорные вероятности

Развитие метода n Обобщение на множество классов n Введение риска Развитие метода n Обобщение на множество классов n Введение риска

Нейронные сети Neural Networks Нейронные сети Neural Networks

Нейоронные сети n Предпосылка: n n Известно, что биологические системы (люди, животные) прекрасно справляются Нейоронные сети n Предпосылка: n n Известно, что биологические системы (люди, животные) прекрасно справляются со сложными задачами распознавания образов; Основная идея: n Применить знания о работе мозга (людей, животных) для решения задач распознавания образов;

Биологические нейронные сети n 1872 -1895 гг. n n Понятие нейрона и нейронной сети; Биологические нейронные сети n 1872 -1895 гг. n n Понятие нейрона и нейронной сети; Первые предположения о принципе работы;

Биологический нейрон Биологический нейрон

Биологический нейрон Биологический нейрон

Биологический нейрон Передача импульса Дендриты Например, могут быть присоединены к рецепторам Аксон Может быть Биологический нейрон Передача импульса Дендриты Например, могут быть присоединены к рецепторам Аксон Может быть присоединен к мышцам

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

Модель кибернетического нейрона Синаптические веса Блок преобразования Входной сигнал Выходной сигнал Блок суммирования Mc. Модель кибернетического нейрона Синаптические веса Блок преобразования Входной сигнал Выходной сигнал Блок суммирования Mc. Culloch, W. and Pitts, W. (1943)

Персептрон Розенблата Модель алгоритма Слой нейронов Входной сигнал Кибернетический нейрон Порог Выходной сигнал Функция Персептрон Розенблата Модель алгоритма Слой нейронов Входной сигнал Кибернетический нейрон Порог Выходной сигнал Функция преобразования - линейная Rosenblatt (1962) *Вопрос: зачем x 0 ?

Персептрон Розенблата Модель алгоритма n Свойства n Линейная классификация n Легко обобщается на множество Персептрон Розенблата Модель алгоритма n Свойства n Линейная классификация n Легко обобщается на множество классов ?

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

Персептрон Розенблата Метод обучения n Особенности обучения n n Прецеденты выучиваются по очереди Оптимизируется Персептрон Розенблата Метод обучения n Особенности обучения n n Прецеденты выучиваются по очереди Оптимизируется эмпирический риск Процесс сходится к некоторому локальному минимуму Зависит от начальной точки

Многослойный персептрон Rumelhart et al. (1986) Многослойный персептрон Rumelhart et al. (1986)

Настройка методом обратного распространения ошибки Основная идея n Ошибку на последнем слое можно рассчитать Настройка методом обратного распространения ошибки Основная идея n Ошибку на последнем слое можно рассчитать явно n Ошибку на промежуточном слое, распространим с последнего с текущими весами n Фактически, сеть запускается «наоборот» и вместо сигнала распространяется ошибка n Для её минимизации применяется градиентный спуск n Подробнее http: //cgm. graphicon. ru/content/view/57/66/

Многослойный персептрон Производная ошибки по весу Rumelhart et al. (1986) Многослойный персептрон Производная ошибки по весу Rumelhart et al. (1986)

Проблема локальных минимумов Локально оптимальны классификатор (локальный минимум) Идеальный классификатор (глобальный минимум) Проблема локальных минимумов Локально оптимальны классификатор (локальный минимум) Идеальный классификатор (глобальный минимум)

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

Где почитать подробней: n Вежневец А. «Популярные нейросетевые архитектуры» сетевой журнал «Графика и Мультимедиа» Где почитать подробней: n Вежневец А. «Популярные нейросетевые архитектуры» сетевой журнал «Графика и Мультимедиа» n n Вежневец А. «Нестандартные нейросетевые архитектуры» сетевой журнал «Графика и Мультимедиа» n n http: //cgm. graphicon. ru/content/view/57/66/ http: //cgm. graphicon. ru/content/view/62/66/ Ресурс Сергея Терехова посвященный нейронным сетям n http: //alife. narod. ru/lectures/index. html

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

Метод опорных векторов Support Vector Machine Метод опорных векторов Support Vector Machine

SVM 1. Максимизация отступа А почему бы не брать ту, которая равно и максимально SVM 1. Максимизация отступа А почему бы не брать ту, которая равно и максимально удалена от обоих классов? Прямых, разделяющих точки, может быть множество

SVM 2. Опорные вектора Измениться ли разделяющая поверхность? Прецеденты, которые нельзя убрать без изменения SVM 2. Опорные вектора Измениться ли разделяющая поверхность? Прецеденты, которые нельзя убрать без изменения поверхности

SVM Случай линейной разделимости n Задача формулируется как поиск гиперплоскости максимально от выпуклой оболочки SVM Случай линейной разделимости n Задача формулируется как поиск гиперплоскости максимально от выпуклой оболочки классов n Как выяснилось, такую гиперплоскость всегда можно записать в виде линейной комбинации «опорных векторов» - прецедентов, принадлежащих выпуклой оболочке

SVM Случай линейной разделимости n Задачу поиска такой гиперплоскости можно записать как задачу оптимизации: SVM Случай линейной разделимости n Задачу поиска такой гиперплоскости можно записать как задачу оптимизации: Глобальный минимум находится методом квадратичного программирования Чисто геометрическая задача

SVM Случай линейной разделимости n Плюсы n Глобальный минимум n Теоретически доказана минимальность оценки SVM Случай линейной разделимости n Плюсы n Глобальный минимум n Теоретически доказана минимальность оценки общего риска (Вапник) n Требует знания только скалярных произведений n Минусы n Работает только для линейно разделимых классов

SVM Случай шума n Просто переформулируем оптимизационную задачу, допустив ошибку, но штрафуя за неё: SVM Случай шума n Просто переформулируем оптимизационную задачу, допустив ошибку, но штрафуя за неё: Регулирует баланс точности и толерантности

SVM Случай нелинейной разделимости SVM Случай нелинейной разделимости

SVM Случай нелинейной разделимости n Идея «ядровых» преобразований: n n Отобразить данные в пространство, SVM Случай нелинейной разделимости n Идея «ядровых» преобразований: n n Отобразить данные в пространство, в котором разделяющая поверхность будет линейной (или близкой к линейной) Ядровые преобразования можно быстро вычислять для скалярных произведений, даже при бесконечной размерности целевого пространства

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

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

Коммитетные методы Classifier ensembles Коммитетные методы Classifier ensembles