Модель оценки

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

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

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

Исход ОчкиПобеда (Положение)2Победа (Овертайм)2Поражение (Овертайм)1Поражение (Положение)0

Примечание: эта модель также будет предсказывать потери в овертайме, поскольку команды получат 1 очко за поражение в ОТ.

Выбор данных

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

  • Насколько точны данные?
  • Насколько надежен источник/источники?
  • Имеют ли эти данные всю статистику (функции), которые мне нужны?
  • Менее часто используемые статистические данные могут быть трудно найти.
  • В каком формате предоставляются данные?
  • Данные бесплатны или есть стоимость
  • Сколько потребуется очистки данных?

В некоторых сценариях может потребоваться использование данных из нескольких источников. Для повышения эффективности этой первоначальной модели мы берем данные из SportWise by Rolling Insights, который предоставляет исторические данные по НХЛ, а также другим основным видам спорта, которые можно загрузить в формате .csv.

Объединение разрозненных источников данных в Microsoft Azure Machine Learning Studio возможно, но это сложный и сложный процесс. Для размера этого набора данных было проще очистить данные вручную; с поиском и заменой в excel. Рекомендуется предварительное объединение наборов данных.

В этом эксперименте использовались данные НХЛ за 2020 и 2021 годы, чтобы предсказать результаты на 2022 год.

Начальная эксплуатация для прогнозирования побед НХЛ с использованием прогноза временных рядов

Шаг к созданию прогноза временных рядов:

  • Собраны/форматированы данные команды НХЛ и загружены в Azure ML.
  • Построенная модель со всеми функциями (столбцами) и целевым значением Wins
  • Запуск модели (обучение) для определения значимости функций в отношении командных побед и лучшего (наиболее эффективного) алгоритма машинного обучения для набора данных.
  • Функции можно ранжировать по значимости для цели (победы)
  • Для определения эффективности модели можно использовать различные показатели.
  • Нормализованная среднеквадратическая ошибка и показатель R в квадрате используются для определения эффективности алгоритма.

Начальная совокупная важность характеристик указывает на то, что голы за, голы против за игру, PDO являются тремя наиболее важными характеристиками:

Нормализованное среднеквадратичное значение (NRMSE) показало, что алгоритм VotingEnsemble считается наиболее эффективным.

Для этого была создана конечная точка в реальном времени с использованием автоматически сгенерированного кода Python на портале Azure. Который был использован с небольшими изменениями для создания прогнозов НХЛ на 2022 год.

Бонус: советы по машинному обучению Microsoft Azure

  • Даты — используйте полные даты (ММ/ДД/ГГГГ)
  • Выполните как можно больше манипуляций с данными перед загрузкой набора данных в Azure.
  • Определите соглашения об именах перед запуском моделей (рабочая область, эксперимент, вычислительный экземпляр, конечные точки).
  • Отдельным прогонам модели автоматически присваиваются имена — записывайте отдельные имена
  • Вычислительный экземпляр ограничен в ресурсах — запускайте только одну модель за раз
  • Для прогноза временных рядов потребуются все известные поля для прогнозирования — необходимо удалить все неизвестные поля.
  • AutoML против конструктора
  • AutoML запускает все алгоритмы (можно исключить или указать особенности)
  • AutoML позволяет редактировать и повторно отправлять модель, в то время как Designer требует клонирования модели, а затем нового запуска для обучения.
  • Модель в конструкторе быстрее обучается, так как всего 1 алгоритм
  • Критерии выхода — позволяет установить критерии выхода (например, время и другие).
  • Одно из значений по умолчанию — выход, если показатели не улучшаются за последние 20 итераций.
  • Во время тренировочного прогона — проверьте вкладки модели и дочернего прогона.
  • Индикаторы, показывающие вероятность отказа

Если вам нужны исторические данные для собственных прогностических моделей, мы бесплатно предоставляем данные НХЛ, НФЛ, MLB и НБА. Попробуйте SportWise для личного использования или DataFeeds для коммерческого доступа к API.