Что такое bias в прогнозировании
MAD, Bias и MAPE – Ключевые Показатели Эффективности для измерения точности прогноза продаж
Вы здесь
В этой статье я поделюсь методикой измерения точности прогноза продаж, которая применяется во многих западных компаниях и позволяет достаточно объективно оценить качество прогнозирования. В частности, данные показатели используются компанией Reckitt Benckiser, в которой я имел честь работать почти 6 лет.
Очевидно, что повышение точности прогнозирования и уменьшение ошибки прогноза улучшают многие бизнес-показатели цепи поставок, начиная от сервиса клиентов и уровня запасов, заканчивая более стабильной работой производства и более предсказуемой закупочной деятельностью. Это особенно актуально в условиях кризиса, когда эффективность становится, пожалуй, основным конкурентным преимуществом.
Именно поэтому описанные ниже показатели можно использовать как KPI функции Demand Planning так и KPI сотрудников, которые отвечают за подготовку прогноза продаж.
Так что же такое MAD, Bias и MAPE?
Bias (англ. – смещение) демонстрирует на сколько и в какую сторону прогноз продаж отклоняется от фактической потребности. Этот индикатор показывает, был ли прогноз оптимистичным или пессимистичным. То есть, отрицательное значение Bias говорит о том, что прогноз был завышен (реальная потребность оказалась ниже), и, наоборот, положительное значение о том, что прогноз был занижен. Цифровое значение показателя определяет величину отклонения (смещения).
MAD (Mean Absolute Deviation) – среднее абсолютное отклонение
n – количество периодов оценки
Это показатель можно также выразить в процентах:
MAPE (Mean Absolute Percentage Error)
n – количество периодов оценки
At – фактическая потребность за период времени t
Пример расчета MAD:
Методы оценки качества прогноза
Часто при составлении любого прогноза — забывают про способы оценки его результатов. Потому как часто бывает, прогноз есть, а сравнение его с фактом отсутствует. Еще больше ошибок случается, когда существуют две (или больше) модели и не всегда очевидно — какая из них лучше, точнее. Как правило одной цифрой (R 2 ) сложно обойтись. Как если бы вам сказали — этот парень ходит в синей футболке. И вам сразу все стало про него ясно )
Остатки
Суровые MSE и R 2
Когда нам требуется подогнать кривую под наши данные, то точность этой подгонки будет оцениваться программой по среднеквадратической ошибке (mean squared error, MSE). Рассчитывается по незамысловатой формуле
где n-количество наблюдений.
Соотвественно, программа, рассчитывая кривую подгонки, стремится минимизировать этот коэффициент. Квадраты остатков в числителе взяты именно по той причине, чтобы плюсы и минусы не взаимоуничтожились. Физического смысла MSE не имеет, но чем ближе к нулю, тем модель лучше.
Вторая абстрактная величина это R 2 — коэффициент детерминации. Характеризует степень сходства исходных данных и предсказанных. В отличии от MSE не зависит от единиц измерения данных, поэтому поддается сравнению. Рассчитывается коэффициент по следующей формуле:
где Var(Y) — дисперсия исходных данных.
Безусловно коэффициент детерминации — важный критерий выбора модели. И если модель плохо коррелирует с исходными данными, она вряд ли будет иметь высокую предсказательную силу.
MAPE и MAD для сравнения моделей
Среднее абсолютное отклонение (mean absolute deviation, MAD) определяется как частное от суммы остатков по модулю к числу наблюдений. То есть, средний остаток по модулю. Удобно? Вроде да, а вроде и не очень. В моем примере MAD=43. Выраженный в абсолютных единицах MAD показывает насколько единиц в среднем будет ошибаться прогноз.
MAPE призван придать модели еще более наглядный смысл. Расшифровывается выражение как средняя абсолютная ошибка в процентах (mean percentage absolute error, MAPE).
где Y — значение исходного ряда.
Выражается MAPE в процентах, и в моем случае означает, что в модель может ошибаться в среднем на 16%. Что, согласитесь, вполне допустимо.
Наконец, последняя абсолютно синтетическая величина — это Bias, или просто смещение. Дело в том, что в реальном мире отклонения в одну сторону зачастую гораздо болезненнее, чем в другую. К примеру, при условно неограниченных складских помещениях, важнее учитывать скачки реального спроса вверх от спрогнозированных значений. Поэтому случаи, где остатки положительные относятся к общему числу наблюдений. В моем случае 44% спрогнозированных значений оказались ниже исходных. И можно пожертвовать другими критериями оценки, чтобы минимизировать этот Bias.
Можете попробовать это сами в Excel и
Numbers
Интересно узнать — какие методы оценки качества прогнозирования вы используете в своей работе?
MAD, Bias и MAPE – Ключевые Показатели Эффективности для измерения точности прогноза продаж
Вы здесь
В этой статье я поделюсь методикой измерения точности прогноза продаж, которая применяется во многих западных компаниях и позволяет достаточно объективно оценить качество прогнозирования. В частности, данные показатели используются компанией Reckitt Benckiser, в которой я имел честь работать почти 6 лет.
Очевидно, что повышение точности прогнозирования и уменьшение ошибки прогноза улучшают многие бизнес-показатели цепи поставок, начиная от сервиса клиентов и уровня запасов, заканчивая более стабильной работой производства и более предсказуемой закупочной деятельностью. Это особенно актуально в условиях кризиса, когда эффективность становится, пожалуй, основным конкурентным преимуществом.
Именно поэтому описанные ниже показатели можно использовать как KPI функции Demand Planning так и KPI сотрудников, которые отвечают за подготовку прогноза продаж.
Так что же такое MAD, Bias и MAPE?
Bias (англ. – смещение) демонстрирует на сколько и в какую сторону прогноз продаж отклоняется от фактической потребности. Этот индикатор показывает, был ли прогноз оптимистичным или пессимистичным. То есть, отрицательное значение Bias говорит о том, что прогноз был завышен (реальная потребность оказалась ниже), и, наоборот, положительное значение о том, что прогноз был занижен. Цифровое значение показателя определяет величину отклонения (смещения).
MAD (Mean Absolute Deviation) – среднее абсолютное отклонение
n – количество периодов оценки
Это показатель можно также выразить в процентах:
MAPE (Mean Absolute Percentage Error)
n – количество периодов оценки
At – фактическая потребность за период времени t
Пример расчета MAD:
Точность прогнозирования
Любому человеку, который занимается прогнозированием продаж, важно и необходимо оценивать корректность своих прогнозов. Для этого существует такой показатель, как «Точность прогнозирования». В данной статье именно о нем я и расскажу.
Хочу обратить внимание на то, что в некоторых компаниях данный показатель называют «Аккуратность прогнозирования». Не могу сказать, что это неправильно, но в данной статье будет фигурировать именно «Точность прогнозирования». Ведь мы оцениваем насколько точно наш прогноз совпадает с фактическими значениями, а не аккуратность, с которой мы его высчитывали.
Точность прогнозирования — это показатель, который характеризует качество прогноза. Он отражает насколько сформированный прогноз совпадает с истинными фактическими значениями.
«Точность прогнозирования»: формула, разновидности «ошибок прогноза».
Итак, чтобы рассчитать точность прогнозирования, необходимо сначала рассчитать ошибку прогнозирования в процентах, а затем, вычесть ее из 100%:
В качестве основной ошибки для расчета точности прогнозирования мы будем использовать Взвешенную Абсолютную Процентную Ошибку (WAPE — Weighted Absolute Percent Error), которая рассчитывается по формуле:
То есть: сумма всех отклонений прогноза от факта по модулю, деленное на сумму всех фактов и умноженное на 100%.
Важно! Если ошибка прогнозирования больше 100%, то точность прогнозирования всегда будет равна 0%.
Вообще, помимо WAPE (которую также называют MAD-Mean Ratio), существует множество ошибок, которые мы можем использовать в качестве основной ошибки для расчета точности прогнозирования. Например:
И так далее (более подробно смотрите здесь). Однако при расчете точности прогнозирования, WAPE — наиболее оптимальный вариант ошибки, так как он наименее чувствителен к выбросам и искажениям, а также интуитивно-понятен и прост в расчете. В общем, WAPE — наш выбор!
Итоговая формула примет вид:
Про другие ошибки здесь я писать не буду, потому что и использовать мы их не будем, но если у Вас есть желание ознакомиться с ними, рекомендую к прочтению статьи «A survey of forecast error measures» и «Another look at measures of forecast accuracy», а также книгу «Forecasting: Principles and Practice». К сожалению, русскоязычной информации на просторах всемирной сети на эту тематику не очень много, поэтому для изучения материала необходимы минимальные знания английского языка.
Примеры расчета точности прогнозирования:
Итак, формула расчета точности у нас есть, теперь мы перейдем непосредственно к примеру расчета:
Все просто. У нас есть исходные данные: SKU, факт продаж и прогноз продаж. Для каждого SKU мы находим отклонения по модулю (|факт-прогноз|), а затем суммируем их, получаем 126. Затем суммируем все фактические показатели, получаем 468. Находим ошибку прогнозирования: делим сумму отклонений на сумму фактических показателей — 126/468 = 0,269, то есть 27%. И вычитаем значение ошибки прогнозирования из 100% и получаем точность 73%. Средний результат.
Также, бывают ситуации, когда необходимо рассчитать не общую точность по всем номенклатурам, а отдельно по каждому клиенту (или номенклатурной группе, или по каналам продаж и т.д.). На таблице ниже изображен изображен именно такой пример:
Суть расчетов не меняется, только теперь находим сумму отклонений и сумму фактов для каждого из клиентов по отдельности. Для первого клиента ошибка прогнозирования равна 126/468 = 27%, соответственно точность равна 73% (то же самое, что и в первом примере), а для второго клиента ошибка прогнозирования равна 206/662 = 31%, и точность равна 69%.
В общем-то и все. Мы нашли точность прогнозирования отдельно для списка SKU и отдельно по каждому клиенту. Важно(!) помнить некоторые правила:
Файл с примерами из статьи можно скачать здесь.
Bias Vs. Variance
Bias и Variance – это две основные ошибки прогноза, которые чаще всего возникают во время модели машинного обучения. Машинное обучение решает многочисленные проблемы, которые нас беспокоят. С помощью машинного обучения мы можем выполнять действия, которые раньше нам не удавалось выполнить.
Поскольку машинное обучение решает большинство проблем, мы сталкиваемся с различными проблемами. Эти прогнозы могут быть угрожающими и будут влиять на результат режима. Вот почему мы должны понимать и решать эти предсказания.
Чтобы спроектировать модель машинного обучения, нам необходимо передать все важные данные, чтобы модель могла делать прогнозы и самостоятельно разрабатывать новые данные. Варианты сделают подходящую модель отличной от заданных вами параметров. Разбираться с вариациями и Байасами неудобно, так как вы не можете запустить свою модель или продемонстрировать навыки модели, если только результаты не будут точными.
Обучение под наблюдением
Комбинация между Bias и Variance применима только при контролируемом машинном обучении. Самое главное, вы используете эти прогнозы в прогнозном моделировании. Этот компромисс прерывает ошибку прогнозирования, так что вы можете проанализировать, как работает ваш алгоритм.
Каждая модель машинного обучения включает в себя алгоритм, который вы тренируете с помощью соответствующих данных. Алгоритм повторяет ту же самую модель и расширяет возможности модели, создавая новые данные на основе тренировочных данных.
Существуют различные алгоритмы, которые Вы можете выбрать для своих моделей машинного обучения. Некоторые из этих алгоритмов:
– Нейронные сети
– Деревья принятия решений
– SVM
– Линейная регрессия
Все вышеперечисленные алгоритмы отличаются друг от друга. Стиль работы алгоритма и то, как они обрабатывают данные, отличаются друг от друга. Количество Вариантов и Байаса создает наиболее важное различие между этими алгоритмами.
Итоговая модель
После того, как вы определились с алгоритмом и параметрами, которые вы используете для вашего проекта, вы готовите окончательную модель, вставляя данные. Вы предоставляете много данных для модели машинного обучения. Теперь Вам необходимо обучить эти наборы данных и продолжать тестирование до тех пор, пока Вы не начнете находить какие-то результаты. Модель поможет сгенерировать прогноз на основе предыдущих данных и разработать новые данные.
Типы ошибок прогнозирования
Алгоритм модели машинного обучения будет включать в себя эти три вида ошибок прогнозирования:
– Вариант
– Bias
– Неснижаемая ошибка
Что такое Биас?
Разница между количеством целевого значения и прогнозом модели называется Bias. Вы можете изменить Bias проекта, изменив алгоритм или модель. Когда предположения, которые вы используете в модели, просты, вы испытаете Bias.
Вы можете получить среднее значение прогноза, повторив процесс построения модели и проведя процесс выборки. Вы можете извлечь данные повторной выборки из модели, так как она использует набор данных для обучения и генерирует точные результаты. Вы можете выполнить повторную выборку с помощью различных методов, таких как бутстраппинг и K-складка.
При повторной выборке данных вы влияете на Bias. Вы обнаружите высокий уровень Bias, измеряя разницу между истинными значениями данных выборки и средним значением прогноза. Если модель является Bias, то вы столкнетесь с моделью недооценки. Каждая модель включает в себя некоторое смещение.
Вы найдете высокий уровень Bias в линейном алгоритме. Вот почему эти алгоритмы ускоряют процесс машинного обучения. Вы также найдете Bias в анализе линейной регрессии из-за реальной проблемы, с которой простая модель не может справиться. Низкий Бай в нелинейном алгоритме. Простая модель имеет больше Байаса.
Что такое Вариант?
С помощью Variance вы можете найти количество целевой функции, которое необходимо скорректировать, если алгоритм использует различные обучающие наборы. Для простоты можно сказать, что дисперсия помогает понять разницу между случайными переменными и ожидаемыми значениями. Дисперсия не поможет Вам найти общую точность, но Вы можете найти нерегулярность модели при использовании различных прогнозов из различных обучающих наборов данных.
Дисперсия может привести к переупорядочиванию. В этом случае даже небольшая вариация вызовет огромные проблемы в наборе данных. При наличии модели с высокой вариативностью наборы данных будут генерировать случайный шум, а не целевую функцию. Ваша модель должна иметь возможность понимать разницу между переменными и входными данными результата.
Однако, когда модель имеет низкую Variance, прогноз модели о данных выборки близок. При ошибке дисперсии прогноз целевой функции будет сильно меняться.
Если алгоритм имеет низкую Variance, то в модели будет происходить логистическая регрессия, линейная регрессия и линейный дискриминантный анализ. С другой стороны, при высокой Variance, вы будете испытывать k-близких соседей, деревья принятия решений и поддержку векторных машин.
Неустранимая ошибка
Нельзя уменьшить невосполнимую ошибку или шум. Это случайные данные, которые модель использует для составления нового прогноза. Эти данные можно рассматривать как неполный набор функций, некорректную задачу или присущую ей случайность.
Почему Бизнес и Варианты существенны.
Алгоритм машинного обучения, который вы используете для вашего проекта, будет использовать эти статистические или математические модели. С помощью этих вычислений он может привести к двум типам ошибок:
Reducible Error (Сокращаемая ошибка) – Вы можете минимизировать и контролировать эту ошибку для повышения точности и эффективности результатов.
Несокращаемая ошибка – Эти ошибки естественны, и вы не можете устранить эти неопределенности.
Вы можете уменьшить Биоизменения и вариации, так как это сводимые к минимуму ошибки. Чтобы уменьшить эти ошибки, необходимо выбрать модель, обладающую подходящей гибкостью и сложностью. Кроме того, вы можете использовать подходящие данные для обучения модели и уменьшить эти ошибки. Это поможет вам добиться точности модели.
Заключение
Биоразнообразие и вариативность являются основными элементами машинного обучения, которые вы должны изучить и понять. Вы должны использовать эти компоненты в контролируемом машинном обучении. При обучении работе с машинами под наблюдением алгоритм учится на основе набора учебных данных и генерирует новые идеи и данные. Вам необходимо поддерживать баланс между Bias и Variance, помогая вам разработать модель обучения работе с машиной, которая дает точные результаты.
Независимо от того, какой алгоритм вы используете для разработки модели, вы изначально найдете Variance и Bias. Когда вы изменяете один компонент, это влияет на другой. Таким образом, вы не сможете свести оба компонента к нулю. Если вы это сделаете, то это вызовет другие проблемы. Вот почему вам нужно использовать смещение против дисперсии. Чтобы спроектировать безошибочную модель, необходимо сделать обе эти компоненты заметными