Поле не заполнено.
'%1' не похож на адрес электронной почты.
Пожалуйста, заполните это поле.
Значение поля должно содержать как минимум %1 символов.
Значение не должно быть длиннее %1 символов.
Значение поля не совпадает с полем '%1'
Введен неверный символ. Допустимые символы:'%1'.
Ожидается число.
Ожидается положительное число.
Ожидается целое число.
Ожидается положительное целое число.
Значение должно быть в диапазоне [%1 .. %2]
Символ '%1' уже присутствует в наборе допустимых символов.
Значение поля должно быть меньше %1.
Первым символом должна быть буква латинского алфавита.
Вс
Пн
Вт
Ср
Чт
Пт
Сб
Январь
Февраль
Март
Апрель
Май
Июнь
Июль
Август
Сентябрь
Октябрь
Ноябрь
Декабрь
век
до Н.Э.
Возникла ошибка при импорте данных в строке:%1. Значение: '%2'. Ошибка: %3
Невозможно определить разделитель полей. Для разделения полей можно использовать следующие символы: Tab, точку с запятой (;) или запятую (,).
%3.%2.%1%4
%3.%2.%1%4 %6:%7
с.ш.
ю.ш.
в.д.
з.д.
да
нет
минут
минут
минута
минуты
минуты
минуты
минут
минут
минут
минут
минут
минут
минут
час
часа
часа
часа
часов
часов
часов
часов
часов
часов
часов
дней
день
дня
дня
дня
дней
дней
дней
дней
дней
дней
дней
месяц
месяца
месяца
месяца
месяцев
месяцев
месяцев
месяцев
месяцев
месяцев
месяцев
год
года
года
года
лет
лет
лет
лет
лет
лет
лет
назад
HTML код со ссылки на эту страницу
  1. Внешний вид
    1. Пример
  2. Закрыть
Калькуляторы
  1. Расчет экспоненциально сглаженного среднего
  2. Изменение веса значения при экспоненциальном сглаживании
  3. Постоянная средняя - график
  4. Сохранить в Мои калькуляторы
Получить код ссылкиДобавить на мой сайтДобавить закладку
  1. delicious
  2. google
  3. bobrdobr
  4. memori
  5. mrwong
  6. yandex
  7. myscoop
Отправить
  1. Создан 2009-11-11 21:30:15
  2. пользователем Timur

Онлайн калькулятор: Экспоненциальное сглаживание

Рейтинг:ПлоховатоНичего особенногоВполне приличноДовольно хорошоОтлично!Голосов:
Я тут было собрался написать еще одну статью о технических индикаторах, и рассказать про экспоненциальное скользящее среднее (exponential moving average, EMA), однако, получилось так, что изучая теорию этого индикатора, я наткнулся на довольно интересные вещи, относящиеся все-таки больше к статистике, нежели к рынку акций или forex.

Поскольку на этом сайте статистика уже затрагивалась, я решил написать отдельную статью на эту тему, а именно, статью, посвященную методу экспоненциального сглаживания (exponential smoothing) в анализе рядов динамики (time series)

Тема рядов динамики уже затрагивалась в статье Сезонные колебания. Индексы сезонности. Метод постоянной средней, и там было сказано, в частности, что расчет средних индексов сезонности методов постоянной средней может применяться для рядов динамики, где отсутствуют какие-либо тенденции повышения/понижения, либо же они незначительны. Иными словами, наблюдаемая величина колеблется около какого-то постоянного значения.

Что это значит? Это значит, что постоянное среднее, оно постоянное, и поэтому не может захватить тенденцию.
Проиллюстрируем это графиком
 Постоянная средняя - график
  1. Рассчитать
  2. Ряд динамики
    1. Сохранить Отменить
    Импортировать данные
    1. OK Отменить
    Добавить Импортировать данные


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

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

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

Теперь опишем это определение формулами.
Традиционно обозначим наблюдаемую величину как y, а сглаженное среднее как S.
Тогда,
S_1 не определено
S_2 = y_1
S_3 = \alpha y_2 + (1-\alpha)S_2

и, обобщенно

S_t = \alpha y_{t-1} + (1-\alpha)S_{t-1}

где, \alpha принимает значение из диапазона [0;1)

Откуда берется экспонента - раскроем предыдущие средние

S_t = \alpha y_{t-1} + (1-\alpha)S_{t-1} = \alpha y_{t-1} + (1-\alpha)[\alpha y_{t-2} + (1-\alpha)S_{t-2}] = \alpha y_{t-1} + (1-\alpha)[\alpha y_{t-2} + (1-\alpha)[\alpha y_{t-3} + (1-\alpha)S_{t-3}]]
S_t = \alpha y_{t-1} + \alpha(1-\alpha)y_{t-2} + \alpha(1-\alpha)^{2}y_{t-3} + (1-\alpha)^{3}S_{t-3}

и, обобщенно

S_t=\alpha\sum_{i=1}^{t-2}(1-\alpha)^{i-1}y_{t-i} + (1-\alpha)^{t-2}S_2, для t > 2

Таким образом, веса перед y - это бесконечно убывающая геометрическая прогрессия с множителем 1-\alpha
И чем дальше S, тем меньше на нее влияют начальные значения.

Предположим, что y_1=1000, посмотрим, как меняется его вклад для различных S.
 Изменение веса значения при экспоненциальном сглаживании
  1. Рассчитать
    1. Значение y1: 


Для S2 берется как есть, а вот в S3 при коэффициенте альфа равном 0.5, вклад y1 будет всего только 250, в S4 - 125, и так далее.

При этом большое значение имеет выбор коэффициента \alpha. Если поиграться с параметром "a" в калькуляторе (см. выше), то становится ясно, что чем выше его значение, тем быстрее отсчет фактически перестает влиять на сглаженное среднее, и наоборот - чем ниже, тем дольше сохраняется его влияние.

Соответственно, при малых \alpha, метод получения S2 оказывает большое влияние на результат. Присвоение S_2=y_1 это только один из методов. В качестве альтернативы начальным значением может выступать простое среднее по первым нескольким значениям y, например.

Но как же выбрать \alpha? Какой показатель больше всего подходит для моделирования данного ряда динамики? Никаких математических формул по точному расчету \alpha нет. Этот показатель чаще всего выбирается методом подбора, или методом "проб и ошибок" (англ. trial and errors). Я еще пару раз видел название "метод научного тыка" :)

Метод заключается в том, что берется несколько значений \alpha и потом среди них выбирается одно лучшее. Что же является критерием "лучшести" в нашем случае?

Таким критерием является минимизация среднеквадратической ошибки (mean of squared errors). Ошибка - это отклонение фактического значения от прогнозного. Для каждого значения S ее возводят в квадрат, чтобы избавиться от влияния знака, и затем вычисляют среднее по всем значениям. Тот показатель \alpha, для которого среднее значение минимально и является лучшим из нескольких.

Теперь пару слов про прогнозирование.

Следующее значение ряда прогнозируется прямо по формуле
S_{forecast} = \alpha y_{last} + (1-\alpha)S_{last}

В случае если надо получить прогноз на большее число отсчетов, используется техника под названием bootstrapping (даже не знаю, какой адекватный русский термин здесь подойдет). Последнее известное значение "y" принимается за константу, и используется в рекурсивной формуле

S_{forecast+n} = \alpha y_{origin} + (1-\alpha)S_{forecast+n-1}

Теперь применим полученные знания при расчете сглаженного среднего для графика, приведенного в начале статьи. Чтобы было интереснее, рассчитаем сглаженное среднее сразу для трех значений \alpha, и заодно посчитаем среднеквадратическую ошибку.

На графике для справки показано следующее прогнозируемое значение, т.е. сглаженные средние продлены на один отсчет дальше фактических данных.

 Расчет экспоненциально сглаженного среднего
  1. Ряд динамики
    1. Сохранить Отменить
    Импортировать данные
    1. OK Отменить
    Добавить Импортировать данные
  2. Рассчитать
    1. Среднеквадратическая ошибка 1: 
    2. Среднеквадратическая ошибка 2: 
    3. Среднеквадратическая ошибка 3: 


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



Материал доступен на условиях Creative Commons Attribution/Share-Alike License 3.0 (Unported) Creative Commons Attribution/Share-Alike License 3.0 (Unported)
 

Комментарии

  1. Защита от спама
  2. Отправить комментарий
  1. Калькуляторы на эту тему
  2. Аналитические показатели динамики
  3. Определение числа групп при построении гистограммы
  4. Коэффициент корреляции Пирсона
  5. Частотный анализ текста. Пример написания калькулятора
  6. Двойное экспоненциальное сглаживание
  1. Реклама