Обучение в реальном времени — различия между версиями
(Новая страница: «'''Обучение в реальном времени''' (англ. ''online machine learning'') {{---}} вид машинного обучения, при ко…») |
|||
Строка 1: | Строка 1: | ||
− | '''Обучение в реальном времени''' (англ. ''online machine learning'') {{---}} вид машинного обучения, при котором данные поступают в последовательном порядке и используются для обновления лучшего предсказания на каждом шаге. | + | '''Обучение в реальном времени, онлайн-обучение''' (англ. ''online machine learning'') {{---}} вид машинного обучения, при котором данные поступают в последовательном порядке и используются для обновления лучшего предсказания на каждом шаге. |
+ | |||
+ | [[Файл:BatchVsOnline.PNG|420px|thumb|right|Разница между пакетным и онлайн-обучением]] | ||
== Общая информация == | == Общая информация == | ||
− | [[Файл: | + | [[Файл:OnlineLearningTaxonomy.PNG|420px|thumb|right|Классификация методов онлайн-обучения]] |
Алгоритмы пакетного обучения обладают рядом критических недостатков из-за необходимости обучать модель с нуля при получении новых данных: низкая эффективность по времени и памяти, плохая масштабируемость для крупных систем. Онлайн-обучение преодолевает эти проблемы, поскольку модель обновляется на основе поступающих в каждый момент времени данных. Благодаря этому, алгоритмы онлайн-обучения гораздо более эффективны в приложениях, где данные не только имеют большой размер, но и поступают с высокой скоростью. | Алгоритмы пакетного обучения обладают рядом критических недостатков из-за необходимости обучать модель с нуля при получении новых данных: низкая эффективность по времени и памяти, плохая масштабируемость для крупных систем. Онлайн-обучение преодолевает эти проблемы, поскольку модель обновляется на основе поступающих в каждый момент времени данных. Благодаря этому, алгоритмы онлайн-обучения гораздо более эффективны в приложениях, где данные не только имеют большой размер, но и поступают с высокой скоростью. | ||
При онлайн-обучении для построения модели необходим один проход по данным, что позволяет не сохранять их для последующего доступа в процессе обучения и использовать меньший объем памяти. Обработка одного объекта за раз также значительно упрощает реализацию алгоритма онлайн-обучения. Однако изменение вида входных данных, выход сервера из строя и многие другие причины могут привести к прекращению корректной работы системы. Оценить качество работы системы при онлайн-обучении сложнее, чем при пакетном: не возможности получить репрезентативный тестовый набор данных. | При онлайн-обучении для построения модели необходим один проход по данным, что позволяет не сохранять их для последующего доступа в процессе обучения и использовать меньший объем памяти. Обработка одного объекта за раз также значительно упрощает реализацию алгоритма онлайн-обучения. Однако изменение вида входных данных, выход сервера из строя и многие другие причины могут привести к прекращению корректной работы системы. Оценить качество работы системы при онлайн-обучении сложнее, чем при пакетном: не возможности получить репрезентативный тестовый набор данных. | ||
+ | |||
+ | В зависимости от типа обратной связи существующие методы онлайн-обучения можно разделить на три группы: | ||
+ | |||
+ | * Онлайн-обучение с учителем (англ. ''supervised online learning'') | ||
+ | * Онлайн-обучение с частичным привлечением учителя (англ. ''online learning with limited feedback'') | ||
+ | * Онлайн-обучение без учителя (англ. ''unsupervised online learning'') | ||
+ | |||
+ | == Математическая основа == | ||
+ | |||
+ | === Функция ожидаемого риска (Expected Risk Function) === | ||
+ | |||
+ | |||
+ | |||
+ | <tex>J (w) \stackrel{\triangle}{=} E_z\ Q(z,w) \stackrel{\triangle}{=} \int Q(z,w)\,\mathrm{d}P(z) </tex> | ||
+ | |||
+ | |||
+ | === Пакетный градиентный спуск (Batch Gradient Descent) === | ||
+ | |||
+ | |||
+ | <tex> J (w) \thickapprox \hat{J_L}(w) \stackrel{\triangle}{=} \frac{1}{L} \sum_{n=1}^L Q(z_n,w) </tex> | ||
+ | |||
+ | |||
+ | <tex> w_{t+1} = w_t - \gamma_t \bigtriangledown_w \hat{J_L}(w_t) = w_t - \gamma_t\ \frac{1}{L} \sum_{i=1}^L \bigtriangledown_w\ Q(z_i,w_t)\ </tex> | ||
+ | |||
+ | |||
+ | [[Файл:BatchGradientDescent.PNG|420px|thumb|right|Пакетный градиентный спуск]] | ||
+ | |||
+ | === Градиентный спуск в реальном времени (Online Gradient Descent) === | ||
+ | |||
+ | [[Файл:OnlineGradientDescent.PNG|420px|thumb|right|Градиентный спуск в реальном времени]] | ||
+ | |||
+ | == Примеры == | ||
+ | |||
+ | === Adaline === | ||
+ | |||
+ | [[Файл:Adaline.PNG|420px|thumb|right|Widrow’s Adaline]] | ||
+ | |||
+ | === Многослойные сети === | ||
+ | |||
+ | === Перцептрон === | ||
+ | |||
+ | [[Файл:RosenblattPerceptron.PNG|420px|thumb|right|Перцептрон Розенблатта состоит из фиксированной предварительной обработки и обучаемого порогового элемента]] | ||
+ | |||
+ | === Метод k-средних === | ||
+ | |||
+ | [[Файл:KMeansOnline.PNG|420px|thumb|right|Метод k-средних отправляет заранее определенное количество центроидов кластера, чтобы минимизировать ошибку]] | ||
+ | |||
+ | == Источники информации == |
Версия 21:21, 20 апреля 2020
Обучение в реальном времени, онлайн-обучение (англ. online machine learning) — вид машинного обучения, при котором данные поступают в последовательном порядке и используются для обновления лучшего предсказания на каждом шаге.
Общая информация
Алгоритмы пакетного обучения обладают рядом критических недостатков из-за необходимости обучать модель с нуля при получении новых данных: низкая эффективность по времени и памяти, плохая масштабируемость для крупных систем. Онлайн-обучение преодолевает эти проблемы, поскольку модель обновляется на основе поступающих в каждый момент времени данных. Благодаря этому, алгоритмы онлайн-обучения гораздо более эффективны в приложениях, где данные не только имеют большой размер, но и поступают с высокой скоростью.
При онлайн-обучении для построения модели необходим один проход по данным, что позволяет не сохранять их для последующего доступа в процессе обучения и использовать меньший объем памяти. Обработка одного объекта за раз также значительно упрощает реализацию алгоритма онлайн-обучения. Однако изменение вида входных данных, выход сервера из строя и многие другие причины могут привести к прекращению корректной работы системы. Оценить качество работы системы при онлайн-обучении сложнее, чем при пакетном: не возможности получить репрезентативный тестовый набор данных.
В зависимости от типа обратной связи существующие методы онлайн-обучения можно разделить на три группы:
- Онлайн-обучение с учителем (англ. supervised online learning)
- Онлайн-обучение с частичным привлечением учителя (англ. online learning with limited feedback)
- Онлайн-обучение без учителя (англ. unsupervised online learning)
Математическая основа
Функция ожидаемого риска (Expected Risk Function)
Пакетный градиентный спуск (Batch Gradient Descent)