Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Стохастический Градиентный Спуск

Постановка задачи | Задача классификации | Стратегия One-vs.-rest | Multi-label классификация | Методы и алгоритмы, реализованные в программной системе | Инструкция пользователя | Рабочий режим | Тестовый режим | Рабочий режим | Машинный эксперимент |


Читайте также:
  1. Билет № 46. Решения 2 съезда Советов. Начало советской модернизации России. Созыв и Роспуск учредительного собрания. Конституция РСФСР.
  2. Васильевский спуск
  3. Глава 4. Спуск. 1 страница
  4. Глава 4. Спуск. 2 страница
  5. Глава 4. Спуск. 3 страница
  6. Глава 4. Спуск. 4 страница
  7. Градиентный метод

Градиентные методы - это широкий класс оптимизационных алгоритмов, используемых не только в машинном обучении. Здесь градиентный подход будет рассмотрен в качестве способа подбора вектора синаптических весов в линейном классификаторе. Пусть - целевая зависимость, известная только на объектах обучающей выборки:

Найдём алгоритм , аппроксимирующий зависимость . В случае линейного классификатора искомый алгоритм имеет вид:

где играет роль функции активации (в простейшем случае можно положить ).

Согласно принципу минимизации эмпирического риска для этого достаточно решить оптимизационную задачу:

Где - заданная функция потерь.

Для минимизации применим метод градиентного спуска (gradient descent). Это пошаговый алгоритм, на каждой итерации которого вектор изменяется в направлении наибольшего убывания функционала (то есть в направлении антиградиента):

Где - положительный параметр, называемый темпом обучения (learning rate).

Возможны 2 основных подхода к реализации градиентного спуска:

1. Пакетный (batch), когда на каждой итерации обучающая выборка просматривается целиком, и только после этого изменяется. Это требует больших вычислительных затрат.

2. Стохастический (stochastic/online), когда на каждой итерации алгоритма из обучающей выборки каким-то (случайным) образом выбирается только один объект. Таким образом вектор настраивается на каждый вновь выбираемый объект.

Можно представить алгоритм стохастического градиентного спуска в виде псевдокода следующим образом:

Вход:

· - обучающая выборка

· - темп обучения

· - параметр сглаживания функционала

Выход:

1. Вектор весов

Тело:

1) Инициализировать веса

2) Инициализировать текущую оценку функционала:

3) Повторять:

1. Выбрать объект из случайным образом

2. Вычислить выходное значение алгоритма и ошибку:

3. Сделать шаг градиентного спуска

4. Оценить значение функционала:

4) Пока значение не стабилизируется и/или веса не перестанут изменяться.

 

Главным достоинством SGD можно назвать его скорость обучения на избыточно больших данных. Именно это интересно для нас в рамках поставленной перед нами задачи ибо объем входных данных будет весьма велик. В то же время, алгоритм SGD в отличие от классического пакетного градиентного спуска дает несколько меньшую точность классификации. Также алгоритм SGD неприменим при обучении машины опорных векторов с нелинейным ядром.

Выводы

В рамках решаемой задачи нам потребуется воспользоваться алгоритмом преобразования исходных данных TF-IDF, который позволит нам повысить весомость редких событий и снизить вес частых событий. Полученные после преобразования данные мы будем передавать классификаторам, которые подходят для решения стоящей перед нами задачи, а именно: Наивный Байесовский Классификатор или Машина Опорных Векторов с Линейным ядром, обученная по методу стохастического градиентного спуска. Также мы осуществим проверку эффективности Машины Опорных Векторов с нелинейными ядрами, обученной по методу пакетного градиентного спуска. Однако, данный тип классификатора не кажется подходящим для поставленной задачи в силу слишком сложного ядра и склонности к переобучаемости, при которой классификатор плохо справляется с данными, которые не использовались для обучения классификатора.


Дата добавления: 2015-11-16; просмотров: 705 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Наивный Байесовский Классификатор| Предобработка информации

mybiblioteka.su - 2015-2024 год. (0.013 сек.)