3 способа оценки точности прогноза и выбора оптимальной модели?

Автор: Алексей.

модель прогнозаСуществует множество моделей прогноза, но как выбрать среди них ту, которая наиболее точно сделает прогноз?

Из данной статьи вы узнаете:

  1. Какие способы оценки прогноза вы можете использовать?
  2. Как выбрать оптимальную модель, которая поможет вам сделать максимально точный прогноз?
  3. Как рассчитать показатель "Точность прогноза"?


Какие способы оценки прогнозной модели вы можете использовать:

1.  Оценить отношение фактических продаж к прогнозу;

2. Расчет показателя точность прогноза — оценка на сколько точно выбранная модель описывает анализируемые данные;

3. Графический анализ — строим график и визуально оцениваем адекватность модели прогноза относительно фактических продаж за последний период ;
 

1-й способ — Расчет отношения фактических продаж к прогнозу.

Сначала рассчитываем прогноз разными способами и оцениваем отношение фактических продаж к прогнозу. ВАЖНО протестировать модели не по одному товару или направлению продаж, а сразу взять 10 и более товарных позиций или направлений продаж и рассчитать прогноз по ним на минимум на 3 периода вперед (количество периодов и направления прогноза зависят от ваших задач. Если задача - сделать точный прогноз на 6 месяцев, то рассчитываем прогноз на 6 месяцев несколькими вариантами и оцениваем отношение факта к прогнозу по сумме полугода).

Рассчитаем прогноз 4 способами на полгода. Протестируем следующие модели:

  1. Линейный тренд + сезонность — лист "Линейный" в приложенном файле (см. статью "Как рассчитать прогноз с учетом роста и сезонности в Excel")

  2. Логарифмический тренд + сезонность — лист "Логарифмический" в приложенном файле (см. статью "5 способов расчета значений логарифмического тренда")

  3. Скользящая средняя с сезонностью к 2-м месяцам — лист "Скользящая к 2-м" (см. статью "Как рассчитать прогноз по методу скользящей средней");

  4. Скользящяя средняя с сезонностью к 3-м месяцамлист "Скользящая к 3-м";


Для каждой из 4-х прогнозных моделей в листе "Оценка моделей":

  • Суммируем прогноз по каждой модели за 6 месяцев;

 оценка моделей суммируем прогноз

  • Суммируем фактические продажи, которые мы будем сравнивать с прогнозом;

 сумма фактических продаж за 6 месяцев

  • Рассчитываем отношение факта к прогнозу по каждой позиции для каждой модели;

 отношение фактических продаж к прогнозным

 

  • Рассчитываем по каждой модели среднее отношение факта к прогнозу;

 среднее отклонение факта от прогнозной модели

 

  • Выбираем модель прогноза, которая по показателю "среднее отношение факта к прогнозу" оказалась максимально приближена к 100%;

 оценка модели прогноза

 

Для наших данных самой точной моделью оказалась скользящая средняя к 3-м месяцам с сезонностью, среднее отклонение факта от прогноза 97%.

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

 
 

2-й способ оценки модели прогноза — расчет показателя точность прогноза.

Показатель точность прогноза показывает, на сколько точно выбранная модель прогноза описывает данные. Идея в том, чем точнее выбранная модель описывает фактические данные, тем точнее она сделает прогноз.

Как рассчитать точность прогноза? Рассмотрим на примере расчета для модели прогноза с линейным трендом и сезонностью.

1. Рассчитываем значения прогнозной модели для каждого анализируемого момента времени в прошлом.

Для этого значения тренда для анализируемых периодов умножаем на выровненные коэффициенты сезонности (см. файл с примером)

значения прогнозной модели

2. Рассчитываем ошибку прогнозной модели. Для этого за каждый период от фактических значений вычитаем значения прогнозной модели.

ошибка прогнозной модели

3. Рассчитываем квадратическое отклонение ошибки от значений прогнозной модели (см. файл с примером);

квадратическое отклонение ошибки

 

4. Рассчитываем среднее значение квадратического отклонения, т.е. среднеквадратическое отклонение

среднеквадратическое отклонение

 

5. Точность прогноза = (1- среднеквадратическое отклонение ошибки прогнозной модели)*100 (см. файл с примером).

точность прогноза


 

Показатель точности прогноза выражается в процентах:

  • Если точность прогноза равна 100%, то выбранная модель описывает фактические значения на 100%, т.е. очень точно.

  • Если 0% или отрицательное число, то совсем не описывает, и данной модели доверять не стоит.

 Выбрать подходящую модель прогноза можно с помощью расчета показателя точность прогноза. Модель прогноза, у которой показатель точность прогноза будет ближе к 100%, с большей вероятностью сделает более точный прогноз. Такую модель можно назвать оптимальной для выбранного временного ряда.

 

3. Способ оценки прогнозной модели — визуальный.

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

Линейная модель:

 график с линейной моделью прогноза

 

Логарифмическая модель:

 график с логарифмической моделью прогноза

 

По последним периодам видно, что линейная модель более точно описывает данные за последние месяцы, и она, вероятнее всего, сделает более точный прогноз.

Какую модель прогноза выбрать?

1. Которая на основании тестирования на реальных данных для выбранного промежутка времени (месяца, 3-х месяцев, полугода, года) будет делать максимально точный прогноз, т.е. отношение факта к прогнозу будет близко к 1 или 100%.

2. Модель, которая будет максимально точно описывать фактические данные, т.е. показатель точность прогноза будет приближаться к 1, но не всегда модели точно описывающие данные делают адекватные прогнозы (это надо понимать и оценивать графически).

3. Модель, которой визуально вы больше доверяете с точки зрения описания входящих данных и продления прогнозной модели в будущее.

Для повышения точности прогноза я в своей практике стараюсь использовать 3 этих способа параллельно:
  • По завершении прогнозного периода и в промежутках всегда оцениваю отношение фактических продаж к прогнозу.

  • При построении прогноза анализирую показатель "среднеквадратическое отклонение" и рассчитываю показатель "точность прогноза" для оценки данных и модели.

  • А также на график вывожу анализируемые данные и прогнозную модель, для визуального контроля.

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

С помощью программы Forecast4AC PRO вы можете рассчитать показатель точность прогноза автоматически.

Также Forecast4AC умеет автоматически выбирать оптимальную модель прогноза для каждого временного ряда.

+ одним нажатием строить график "Анализируемые данные + модель прогноза", на котором вы можете оценить, как соотносятся между собой:

  • анализируемые данные;

  • выбранный тренд;

  • модель прогноза;

как в анализируемом периоде, так и в будущем. 

Точных прогнозов!

Присоединяйтесь к нам!

Скачивайте бесплатные приложения для прогнозирования и бизнес-анализа:

Novo Forecast - прогноз в Excel - точно, легко и быстро!

  • Novo Forecast Lite - автоматический расчет прогноза в Excel.
  • 4analytics - ABC-XYZ-анализ и анализ выбросов в Excel.
  • Qlik Sense Desktop и QlikView Personal Edition - BI-системы для анализа и визуализации данных.

Тестируйте возможности платных решений:

  • Novo Forecast PRO - прогнозирование в Excel для больших массивов данных.

Получите 10 рекомендаций по повышению точности прогнозов до 90% и выше.

Зарегистрируйтесь и скачайте решения

Статья полезная? Поделитесь с друзьями

 

Комментарии   

#9 Алексей 06.12.2017 08:56
Цитирую Алексей:
[
2) 1-ошибка/Факт = Точность.

Так в данном случае точность и будет в процентах.
Да, точно, не обратил внимание, что вы ошибку делите на факт. Так тоже можно) Все можно, главное понимать, что делаешь и для чего)
Цитировать
#8 Алексей 06.12.2017 06:55
Цитирую Алексей:
Цитирую Алексей:

Коллеги, почему нельзя просто:
1) ABS (Прогноз-Факт) = Ошибка;
2) 1-ошибка/Факт = Точность.
??????

Заранее благодарю


Алексей, добрый день!

Точность измеряется в процентах, поэтому ошибку тоже необходимо получить в процентах.

А если говорить про упрощение, то можно и без точности, просто ошибку оценить:
1) ABS (Прогноз-Факт) = Ошибка;

Так в данном случае точность и будет в процентах.
Цитировать
#7 Алексей 06.12.2017 06:54
Цитирую Алексей:
Цитирую Алексей:

Коллеги, почему нельзя просто:
1) ABS (Прогноз-Факт) = Ошибка;
2) 1-ошибка/Факт = Точность.
??????

Заранее благодарю


Алексей, добрый день!

Точность измеряется в процентах, поэтому ошибку тоже необходимо получить в процентах.

А если говорить про упрощение, то можно и без точности, просто ошибку оценить:
1) ABS (Прогноз-Факт) = Ошибка;

Цитирую Алексей:
Цитирую Ярослав:
Здравствуйте,

Так в данном случае точность и будет в процентах

Спасибо за Ваши статьи. Они очень помогают. Но у меня есть вопросы.
1. Будет ли корректным расчет точности прогноза по первому способу. Возьмем пример: факт. значения: 4 и 8.
значения по 1-му прогнозу: 2 и 10, по 2-му прогнозу: 3 и 7. По данному способу отношение факта к 1-му прогнозу покажет точность 100% (и он будет более точным), а ко 2-му прогнозу - 120%. На самом деле 2-й прогноз более точный. Почему для оценки точности не взять % отклонения прогноза от факта по каждому значению ряда и потом вычислить среднее отклонение.
2. Вопрос по вычислению СКО. Почему в некоторых других источниках в формуле расчета СКО сумма квадратов отклонений делится на количество значений n, а у Вас на n-1.

Заранее спасибо за ответ


Ярослав, здравствуйте.

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

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

2. На n мы делим, если рассматривается вся генеральная совокупность данных.

На n-1, если анализируется не весь массив имеющихся данных, а определенная выборка.

Чаще это выборка, поэтому n-1

Если есть вопросы, пишите, буду рад помочь.

Хорошего вам дня!

Коллеги, почему нельзя просто:
1) ABS (Прогноз-Факт) = Ошибка;
2) 1-ошибка/Факт = Точность.
??????

Заранее благодарю
Цитировать
#6 Алексей 05.12.2017 11:25
Цитирую Алексей:

Коллеги, почему нельзя просто:
1) ABS (Прогноз-Факт) = Ошибка;
2) 1-ошибка/Факт = Точность.
??????

Заранее благодарю


Алексей, добрый день!

Точность измеряется в процентах, поэтому ошибку тоже необходимо получить в процентах.

А если говорить про упрощение, то можно и без точности, просто ошибку оценить:
1) ABS (Прогноз-Факт) = Ошибка;
Цитировать
#5 Алексей 05.12.2017 10:54
Цитирую Алексей:
Цитирую Ярослав:
Здравствуйте,

Спасибо за Ваши статьи. Они очень помогают. Но у меня есть вопросы.
1. Будет ли корректным расчет точности прогноза по первому способу. Возьмем пример: факт. значения: 4 и 8.
значения по 1-му прогнозу: 2 и 10, по 2-му прогнозу: 3 и 7. По данному способу отношение факта к 1-му прогнозу покажет точность 100% (и он будет более точным), а ко 2-му прогнозу - 120%. На самом деле 2-й прогноз более точный. Почему для оценки точности не взять % отклонения прогноза от факта по каждому значению ряда и потом вычислить среднее отклонение.
2. Вопрос по вычислению СКО. Почему в некоторых других источниках в формуле расчета СКО сумма квадратов отклонений делится на количество значений n, а у Вас на n-1.

Заранее спасибо за ответ


Ярослав, здравствуйте.

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

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

2. На n мы делим, если рассматривается вся генеральная совокупность данных.

На n-1, если анализируется не весь массив имеющихся данных, а определенная выборка.

Чаще это выборка, поэтому n-1

Если есть вопросы, пишите, буду рад помочь.

Хорошего вам дня!

Коллеги, почему нельзя просто:
1) ABS (Прогноз-Факт) = Ошибка;
2) 1-ошибка/Факт = Точность.
??????

Заранее благодарю
Цитировать
#4 +1 Алексей 15.02.2016 08:58
Цитирую Василий:
Странно, что в статье ни слова про ту же модель Хольта Уинтерса, хотя зачастую она дает наибольшую точность.

Василий, при автоматическом подсчете возможно, но для Хольта Винтерса есть сложности с подбором коэффициентов сглаживания... Так что Хольт-Винтерс - это больше машинная модель, особенно на большом массиве данных... А цель статьи другая
Цитировать
#3 Василий 15.02.2016 06:34
Странно, что в статье ни слова про ту же модель Хольта Уинтерса, хотя зачастую она дает наибольшую точность.
Цитировать
#2 +1 Алексей 19.01.2015 14:28
Цитирую Ярослав:
Здравствуйте,

Спасибо за Ваши статьи. Они очень помогают. Но у меня есть вопросы.
1. Будет ли корректным расчет точности прогноза по первому способу. Возьмем пример: факт. значения: 4 и 8.
значения по 1-му прогнозу: 2 и 10, по 2-му прогнозу: 3 и 7. По данному способу отношение факта к 1-му прогнозу покажет точность 100% (и он будет более точным), а ко 2-му прогнозу - 120%. На самом деле 2-й прогноз более точный. Почему для оценки точности не взять % отклонения прогноза от факта по каждому значению ряда и потом вычислить среднее отклонение.
2. Вопрос по вычислению СКО. Почему в некоторых других источниках в формуле расчета СКО сумма квадратов отклонений делится на количество значений n, а у Вас на n-1.

Заранее спасибо за ответ


Ярослав, здравствуйте.

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

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

2. На n мы делим, если рассматривается вся генеральная совокупность данных.

На n-1, если анализируется не весь массив имеющихся данных, а определенная выборка.

Чаще это выборка, поэтому n-1

Если есть вопросы, пишите, буду рад помочь.

Хорошего вам дня!
Цитировать
#1 Ярослав 19.01.2015 12:14
Здравствуйте,

Спасибо за Ваши статьи. Они очень помогают. Но у меня есть вопросы.
1. Будет ли корректным расчет точности прогноза по первому способу. Возьмем пример: факт. значения: 4 и 8.
значения по 1-му прогнозу: 2 и 10, по 2-му прогнозу: 3 и 7. По данному способу отношение факта к 1-му прогнозу покажет точность 100% (и он будет более точным), а ко 2-му прогнозу - 120%. На самом деле 2-й прогноз более точный. Почему для оценки точности не взять % отклонения прогноза от факта по каждому значению ряда и потом вычислить среднее отклонение.
2. Вопрос по вычислению СКО. Почему в некоторых других источниках в формуле расчета СКО сумма квадратов отклонений делится на количество значений n, а у Вас на n-1.

Заранее спасибо за ответ
Цитировать

Добавить комментарий