Методы оценки качества прогноза

    Часто при составлении любого прогноза — забывают про способы оценки его результатов. Потому как часто бывает, прогноз есть, а сравнение его с фактом отсутствует. Еще больше ошибок случается, когда существуют две (или больше) модели и не всегда очевидно — какая из них лучше, точнее. Как правило одной цифрой (R2) сложно обойтись. Как если бы вам сказали — этот парень ходит в синей футболке. И вам сразу все стало про него ясно )

    В статьях о методах прогнозирования при оценке полученной модели я постоянно использовал такие аббревиатуры или обозначения.
    • R2
    • MSE
    • MAPE
    • MAD
    • Bias

    Попробую объяснить, что я имел в виду.

    Остатки


    Итак, по порядку. Основная величина, через которую оценивается точность прогноза это остатки (иногда: ошибки, error, e). В общем виде это разность между спрогнозированными значениями и исходными данными (либо фактическими значениями). Естественно, что чем больше остатки тем сильнее мы ошиблись. Для вычисления сравнительных коэффициентов остатки преобразуют: либо берут по модулю, либо возводят в квадрат (см. таблицу, колонки 4,5,6). В сыром виде почти не используют, так как сумма отрицательных и положительных остатков может свести суммарную ошибку в ноль. А это глупо, сами понимаете.

    Суровые MSE и R2


    Когда нам требуется подогнать кривую под наши данные, то точность этой подгонки будет оцениваться программой по среднеквадратической ошибке (mean squared error, MSE). Рассчитывается по незамысловатой формуле

    где n-количество наблюдений.

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

    Вторая абстрактная величина это R2 — коэффициент детерминации. Характеризует степень сходства исходных данных и предсказанных. В отличии от MSE не зависит от единиц измерения данных, поэтому поддается сравнению. Рассчитывается коэффициент по следующей формуле:

    где Var(Y) — дисперсия исходных данных.

    Безусловно коэффициент детерминации — важный критерий выбора модели. И если модель плохо коррелирует с исходными данными, она вряд ли будет иметь высокую предсказательную силу.

    MAPE и MAD для сравнения моделей


    Статистические методы оценки моделей вроде MSE и R2, к сожалению, трудно интерпретировать, поэтому светлые головы придумали облегченные, но удобные для сравнения коэффициенты.

    Среднее абсолютное отклонение (mean absolute deviation, MAD) определяется как частное от суммы остатков по модулю к числу наблюдений. То есть, средний остаток по модулю. Удобно? Вроде да, а вроде и не очень. В моем примере MAD=43. Выраженный в абсолютных единицах MAD показывает насколько единиц в среднем будет ошибаться прогноз.

    MAPE призван придать модели еще более наглядный смысл. Расшифровывается выражение как средняя абсолютная ошибка в процентах (mean percentage absolute error, MAPE).

    где Y — значение исходного ряда.

    Выражается MAPE в процентах, и в моем случае означает, что в модель может ошибаться в среднем на 16%. Что, согласитесь, вполне допустимо.

    Наконец, последняя абсолютно синтетическая величина — это Bias, или просто смещение. Дело в том, что в реальном мире отклонения в одну сторону зачастую гораздо болезненнее, чем в другую. К примеру, при условно неограниченных складских помещениях, важнее учитывать скачки реального спроса вверх от спрогнозированных значений. Поэтому случаи, где остатки положительные относятся к общему числу наблюдений. В моем случае 44% спрогнозированных значений оказались ниже исходных. И можно пожертвовать другими критериями оценки, чтобы минимизировать этот Bias.

    Можете попробовать это сами в Excel и Numbers

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

    Подробности на блоге
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 16

      0
      Поправьте, пожалуйста, опечатку — mean squared error.

      За статью спасибо, очень интересно было читать — как раз сейчас я ищу подобные способы прогнозирования.
        0
        Спасибо. Поправил. Надеюсь вам пригодится в работе )
        0
        все в общем ясно, статья хорошая.
        но:
        1. сформулируйте задачу. ЗАЧЕМ это? для обучения, для эксперта, для визуализации, для метрики? это же совсем разные случаи, и разные спектры решений
        2. какой прикладной смысл в описанных вами штуках? хабр все же довольно профильный ресурс. вы пишете в персональный блог, хотя можете и в тематический. кстати — приглашаю: http://habrahabr.ru/blog/artificial_inte…
        3. я не специалист в области оценки прогноза, но и в кд, и вообще — пользовался. скажите, что из написанного вами отсутствует в вики и учебниках по матстату/матметодам?
          0
          Степан, спасибо за вопросы. У меня есть мнение, что любая статья - это уже кем-то написанное, сформулированное и опубликованное. В ином случае это просто новость. Либо научное исследование. Цель этой статьи, и некоторых других из блога - квинтэссенция методов анализа данных в понятной и доступной форме.
          За приглашение спасибо.
          Вот только я не понял - вы за то, чтобы на Хабре были такие статьи, или против?
            0
            я — за. потому что полезно и не копипаст. по крайней мере приложенные файлики.
            а статьи бывают разные, и тут тоже. я не считаю достижением найти и удачно вставить в хабр чужой контент. пусть это юмор, новость или кусок кода. я уважаю тех, кто пишет о личном опыте, больше тех, кто публикует ежедневные извлечения из ит-таблоидов.
            а на вопросы ответите? и все же, почему личный блог?
              0
              На самом деле, когда я опубликовал первую статью на Хабре, мне сказали: "Зачем вы этот здесь постите, это совершенно не тот профиль." Честно говоря, я хочу, чтоб статья попадала в тематику. Я присоединился к блогу ИИ, но не могу сказать, что моя статья об этом. Хотя, бесспорно, ИИ меня тоже очень интересует и, возможно, я смогу написать что-то полезное.
              Поэтому пока личный блог.
                0
                каждому важно найти интересное или полезное себе. имхо это интересно единицам, полезно и того меньшему числу людей. напишите следующую статью в духе: допустим, вы делаете то-то. и это у вас получается хорошо, но вот из-за кривости такого-то не получается изумительно. при помощи некоторых приемов мы сделаем так, что у вас будет получаться великолепно. тогда вставит многим
                имхо
                  0
                  Вы правы. Я думал об этом.
          –1
          Вчера...
          Иван: Завтра будет дождь?
          Вася: Нет.
          Олег: Да.
          Сегодня дождь.
          Вася: Иван, помнишь ты вчера про дождь спашивал? Так вот согласно R2, MSE, MAPE, MAD и байесу я ошибся.
          Иван: Какого черта я тебя послушал, и насрать на твои оценки - зонтик все равно дома.

          в чем смысл? Иван теперь знает, что Вася хреновый синоптик и слушает тепель только Олега?
            0
            Про "насрать на твои оценки" - смешно. Остальное - так себе :)
              0
              Прогноз вещь априорная и естетвенно требовать его оценку качества до его совершения, иначе напоминает размахивание кулаками после драки. Или на основе этих апостериорных оценок мы узнаем какая модель лучше, и, надеясь, что в будущем она будет вести себя также, слепо ей верим?
                –1
                ну почему же? Все ведь понимают, что это прогноз.
                Вот одна модель может ошибиться три раза из десяти, другая один раз. На основе этого мы можем выбрать более подходящую модель. А ошибки - они всегда будут (теоретически)
            0
            Если честно, критерий Bias мне показался также малоинформативным; в него можно заложить (помимо оценки количества отклонений больше/меньше), еще и степень отклонения.
              0
              Bias - это вспомогательный критерий. В каких-то ситуациях он не нужен, а где-то крайне необходим. Любой аналитик может синтезировать себе еще десяток коэффициентов для оценки.
                0
                Согласен :) кстати, отличный блог... прочитал от корки до корки; жалко только, что так мало.
                  0
                  Спасибо. Над блогом будем работать ;)

            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

            Самое читаемое