Skip to content

speech 2019dec

Valerii Zuev edited this page Dec 21, 2019 · 10 revisions

Текст выступления на защите курсовой работы. Декабрь 2019

Отведённое время: 5 минут (6 пунктов - на каждый чуть меньше минуты). ЕА просит сфокусироваться на том, что сделали мы.

Слайды к выступлению (Google Drive)

Отчёт по курсовой (PDF, Google Drive) - почти наисвежайший вариант

Вступление

  1. О предметной области (плитки Брайля) В конце позапрошлого века Луи Брайль дал возможность незрячим читать - изобрел рельефно-точечный шрифт,в котором каждая буква есть 6 точек. Как часть создания системы обучения азбуке Брайля мы решали задачу распознавания символа по его черно-белой фотографии.

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

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

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

Перцептрон

Пусть входной вектор . Перцептроном называют модель вида . Значение функции - 0 либо 1 (негативный/позитивный класс). Таким образом, перцептрон формирует в пространстве входных данных гиперплоскость, определяемую вектором нормали w и смещением b. Для мультиклассовой классификации нужны несколько перцептронов, для каждого из которых негативный класс - все, кроме выбранного.

Для обучения перцептрона вводится функция стоимости (функция потерь) - среднеквадратичное отклонение аргументов ступенчатой функции от истинного значения класса (0 или 1). Аргументы функции стоимости - параметры W и b. Минимум функции стоимости соответствует минимально возможному числу ошибок. На слайде показана граница, сформированная перцептроном при обучении на демонстрационных двумерных данных (т. о. перцептрон имеет три параметра) и проекция графика функции стоимости на двумерное пространство.

Градиентный спуск

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

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

Логистическая регрессия, или сигмоидальный нейрон - модель, во многом похожая на перцептрон. Отличие состоит в том, что функция Хевисайда заменяется сигмоидой . Сигмоида может принимать значения от 0 до 1; значение функции соответствует вероятности попадания в позитивный класс. Из соображений статистики для сигмоидального нейрона выбирается особая функция стоимости, называемая кросс-энтропией. Её градиенты также легко вычисляются аналитически, поэтому для обучения снова применяется градиентный спуск.

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

Нейросеть

Нейронная сеть - это суперпозиция нескольких слоёв нейронов, как правило, сигмоидальных. Входами следующего слоя служат выходы предыдущего. У каждого нейрона есть вектор весов; удобно слой определять матрицей, где строка - транспонированный вектор весов одного нейрона. Тогда вектор входов следующего слоя - (формула).

На данный момент реализована демонстрационная версия системы. На слайде показана граница, сформированная на демо-данных, классификация в два класса. Нейросеть может формировать нелинейные границы; это плюс.

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

Заключение

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

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