Data Scientist зарешал: составить зависимость вероятности ДТП от стажа вождения и внешних факторов



    Считается, что большую часть процессов дата саентист выполняет с помощью готовых библиотечных решений. Но в реальности в типовых задачах нужно уметь проверить, насколько подходит выбранный метод и при необходимости модифицировать его под свои условия. Вместе с Петром Лукьянченко, преподавателем высшей математики для Data Science в OTUS, а в прошлом Team Lead Analytics в Lamoda, мы разбираем, как математика выручает в реальных бизнес-задачах.



    Первая из трех частей этой темы посвящена регрессионному анализу.

    Бизнес-задача: Каршеринговой компании нужно выявить зависимость, как серия факторов — стаж вождения, погода, состояние автомобиля и дорожного покрытия, трафик, населенность города и т.д — влияют на вероятность попадания в ДТП.

    Для Data Scientist эта задача выглядит так: Вычислить уравнение зависимости одного набора наблюдений от набора других параметров.

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

    Как спасает математика


    Начнем с описания зависимости для одного фактора — стажа вождения. В модели классической парной линейной регрессии задействуются два коэффициента. Первый коэффициент α (альфа) — безусловное значение, когда была бы просто общая вероятность ДТП вне зависимости от каких-либо параметров, просто по стечению обстоятельств. Второй коэффициент β (бета) определяет чувствительность фактора стажа вождения на вероятность ДТП. Коэффициент β также называется наклоном в уравнении зависимости. А так как всегда будут факторы, которые мы забыли или не смогли учесть, мы должны добавить в уравнение некую ошибку Ui.

    Получаем уравнение: yi=α+βxi+Ui.



    Собственно, задачей аналитика является поиск таких коэффициентов, при которых ошибка Ui была наименьшей.

    Разновидностей расчета ошибок довольно много. Самая популярная за счет своей простоты абсолютная ошибка — отклонение предсказанного значения от абсолютного значения. Общая ошибка в этом случае является суммой модулей. Проблема модуля заключается в том, что эта функция не дифференцируема на всем пространстве чисел. Тогда математики придумали взять непрерывную трансформацию, чтобы обобщить ошибку, и стали суммировать квадраты таких отклонений. Так как эта функция непрерывна, мы можем применить оптимизацию по Лагранжу (оптимизацию функции двух переменных). Вычислив производные функции по α и по β, находим точки экстремумов, потом классифицируем их через свойство Гессиана (по правилу Гессе). Образуется два коэффициента α’ и β’, соответствующие методу наименьших квадратов. Он лежит в основе теоремы Гаусса-Маркова, которая является самой оптимальной моделью парной регрессии. Полученные ей оценки являются лучшими и их результаты перебить никакими другими методами невозможно.



    Масштабируем процесс


    Теперь мы переходим к тому, что на вероятность попадания в ДТП влияет множество других параметров, которые могут быть выражены в количественной оценке. Получается, что Y зависит от n-го числа переменных X. Чтобы не повторять однотипное вычисление всех коэффициентов α и β для каждого параметра, мы переходим к матричному уравнению зависимости. Аккуратно проведя дифференцирование, можно получить матрицу коэффициентов, таким образом, парное уравнение регрессии мы обобщаем до многомерного.

    Ошибка — ключ к разгадке


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

    Итак, какие знания высшей математики нам понадобились для построения сложной зависимости вероятности ДТП от набора факторов:

    1. Мат. анализ для оптимизации функции регрессии
    2. Линейная алгебра, т.е. определение, свойства и дифференцирование матриц, для перехода от парной регрессии к многомерной
    3. Анализ и подбор типа распределения ошибки. Например, специалист может взять распределение обобщенное нормально, бета-распределение или распределение Стьюдента. Особенно необходимо это в случаях, когда нет хорошей выборки и когда ее нельзя улучшить. А так же когда нарушается условие теоремы Гаусса-Маркова и появляется необходимость иначе строить уравнение регрессии или использовать другие методы классификации и оценки вероятности.

    Умение работать с математическим аппаратом — важное преимущество Data Scientist, позволяющее ему проверять результаты и решать нетипичные задачи. В следующей статье мы поговорим про математические решения для рекомендательных сервисов. А пока приглашаем на курсы по математике для Data Science, которые стартуют уже на этой неделе.

    Для базового курсастарт 29 января — достаточно знаний школьной программы, для продвинутогостарт 31 января — требуются знания 1-2 курсов института.

    Успевайте записаться и пройти вступительное тестирование.
    OTUS
    Цифровые навыки от ведущих экспертов

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

      +4
      Думал будет статистика :(
        +1
        Не слишком ли просто, линейным регрессом такое обобщать? Плюс, статья никак не связана с заголовком и постановкой задачи, плюс нет решения и результатов.
          0
          • Мальчик, хочешь конфетку?
          • Да!
          • Смотри мальчик, конфетки делаются так. Сначала надо вырастить сахарную свеклу… бла-бла-бла… Теперь мальчик ты знаешь как сделать конфетку. А еще я могу рассказать, как сделать фантик для конфетки, но уже за денюжку.
            +2
            самореклама да и только. поддерживаю комментаторов выше

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

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