ПРЕДВАРИТЕЛЬНОЕ ИССЛЕДОВАНИЕ МЕТОДОВ МАШИННОГО ОБУЧЕНИЯ В ПРОГНОЗИРОВАНИИ РЕЗУЛЬТАТОВ АНГЛИЙСКОЙ ПРЕМЬЕР-ЛИГИ
Введение
Футбол — самый популярный вид спорта во всем мире, в него играют 250 миллионов игроков в более чем 200 странах. Аналитические прогнозы всегда были в сфере спорта. Если быть более точным, аналитика в области футбола — это метод создания значимой информации и принятия решений, на основе которых можно действовать, используя данные, связанные с футболом. Данные включают в себя что угодно, начиная от того, сколько голов забила команда, и заканчивая множеством факторов, таких как расстояние, пройденное игроком в ходе матча, или количество сыгранных передач, а также сколько из них были точными, а также сколько из них тех, которые создали шанс для своей команды забить и так далее.
В каждом футбольном турнире формируются группы, и команды играют по 2 матча с каждой другой командой в своей лиге — один на своем домашнем поле, а другой на домашнем стадионе соперника. Каждый такой матч имеет 3 выполнимых исхода: победа хозяев, матч заканчивается вничью или победа команды гостей.
Учитывая такой формат, естественно, что существует множество онлайн фэнтези-лиг, букмекерских контор и других, которые пытаются предсказать конечный результат каждого матча. В ходе этой работы была предпринята попытка выявить факторы, влияющие на исход матча, и одновременно предсказать результаты любого матча, используя эти факторы.
Наиболее важной составляющей верного прогноза является правильный набор данных для футбольных матчей. В этой статье мы рассмотрим версию футбольного прогноза, представленную в виде задачи классификации с целевым признаком, состоящего из 3 классов: победа хозяев, победа гостей и ничья.
Исходы спортивных матчей трудно предсказать, часто их дополняют неожиданности. Футбол, в частности, является примечательным примером, поскольку матчи имеют фиксированную продолжительность (как и в теннисе, в котором играют с ракетками до тех пор, пока игрок не выиграет).
Однако из-за малой результативности игр (менее 3 голов за игру в среднем по английской премьер-лиге за последние 15 лет) присутствует элемент случайности, связанный с количеством голов, забитых в матче. Необходимо выяснить, может ли применение машинного обучения обеспечить лучшую и более проницательную информацию для футбольной аналитики. Это делает результаты матчей несовершенной мерой эффективности команды и, следовательно, неполным показателем для прогнозирования будущих результатов.
В этой статье представлены модели для прогнозирования исхода футбольных матчей в английской премьер-лиге. Был подготовлен набор данных прошлых сезонов для различных классификаторов машинного обучения. Были проведены сравнения между алгоритмами, и будет рассмотрен тот, который оказался наиболее точным, т.е. имеющим более надежную точность прогноза. Классы целевого признака: победа хозяев (H), победа в гостей (A), ничья (D).
Описание набора данных
Прогноз делается на основе данных прошлых игр за последние сезоны. Мы получили набор данных, который содержит данные, начиная с 2000 года.
• Season – матч сезон;
• DateTime – соответствие даты и времени (гггг-мм-дд чч:мм:сс);
• HomeTeam – домашняя команда;
• Awayteam – команда гостей;
• FTHG – количество голов команды хозяев;
• FTAG – количество голов команды гостей;
• FTR – результат матча (H=победа хозяев, D=ничья, A=победа в гостей);
• HTHG – забитые голы командой хозяев до перерыва;
• HTAG – забитые голы командой гостей до перерыва;
• Referee – судья матча;
• HS – количество ударов по мячу командой хозяев;
• AS – количество ударов по мячу командой гостей;
• HST – количество ударов команды хозяев в створ ворот;
• АSТ – количество ударов команды гостей в створ ворот;
• HC – количество угловых команды хозяев;
• AC – количество угловых команды гостей;
• HF – количество фолов, совершенных командой хозяев;
• AF – количество фолов, совершенных командой гостей;
• HY – количество желтых карточек, полученных командой хозяев;
• AY – количество желтых карточек, полученных командой гостей;
• HR – количество красных карточек, полученных командой хозяев;
• AR – количество красных карточек, полученных командой гостей.
Всего получается 22 признака. Общее количество записей в наборе данных 8289.
Рис. 1. Набор данных АПЛ.
Предварительная обработка данных
Одни признаки менее значимы или несущественны для прогнозирования результата. Поэтому очистка данных включает в себя сохранение только тех признаков, которые подходят для прогноза. Были преобразованы категориальные данные в закодированные, в соответствии с требованиями реализованных алгоритмов машинного обучения. Пропуски заполнены средними значениями по каждой команде. Добавлены новые признаки, которые высчитывают скользящее среднее по каждому признаку как команды хозяев, так и команды гостей. Размер окна равен 10.
Исследовательский анализ
В нашем первоначальном исследовательском анализе было обнаружено, что команда хозяев явно имеет преимущество над командой гостей.
Рис. 2. Распределение целевого признака.
Кроме того, было замечено, что статистика личных встреч сама по себе не является очень надежным фактором для прогнозирования конечного результата футбольного матча. Сочетание других факторов, таких как количество голов в лиге и результат первого тайма, оказывает существенное влияние на конечный результат.
Моделирование
Были реализованы следующие три алгоритма: ансамблевый метод (XGBoost), логистическая регрессия (LogisticRegression), метод опорных векторов (SVM).
Логистическая регрессия (LogisticRegression) — это метод машинного обучения, который используется для решения проблем классификации. Это прогностический аналитический метод, основанный на идее вероятности. Алгоритм классификации логистическая регрессия используется для прогнозирования вероятности категориальной зависимой переменной. Зависимая переменная в логистической регрессии — это двоичная переменная с данными, закодированными как 1 (да, правда, нормально, успех и т. д.) или 0 (нет, ложь, ненормально, неудача и т. д.). В данном случае используется функция softmax, которая позволяет оценивать вероятности более 2 классов.
Метод опорных векторов (SVM) — это модель машинного обучения, которая полезна для регрессионного анализа и задач классификации. Она подпадает под категорию так называемого контролируемого обучения машинного обучения, т.е. обучения с учителем. Метод опорных векторов основан на идее поиска наилучших гиперплоскостей, которые делит набор данных на столько частей, сколько всего у нас классов.
XGBoost расшифровывается как Extreme Gradient Boosting основан на алгоритме деревьев решений с градиентным бустингом. XGBoost применяет лучший метод регуляризации для уменьшения переобучения. Также “xgboost” это библиотека с открытым исходным кодом, которая предоставляет алгоритмы машинного обучения на основе методов градиентного бустинга. XGBClassifier это класс библиотеки xgboost предназначенный для классификации, совместимый с API sci-kit-learn.
Эксперимент
Исследование проводится для получения наилучшей точности. В этой статье мы оперируем данными последних сезонов АПЛ. Это делается для того, чтобы определить, влияет ли количество обучающих данных на точность прогноза. Ниже приведена точность каждой модели с оптимизированными гиперпараметрами с помощью GridSearchCV.
Логистическая регрессия: оценка F1 и точность для тестового набора: 0,46 и 0,6.
Машина опорных векторов (SVM): оценка F1 и точность для тестового набора: 0,47 и 0,59.
Классификатор XGB: оценка F1 и точность для тестового набора: 0,45 и 0,6.
Рис. 3. Графики roc-кривых трех методов.
В ходе предварительного исследования методов машинного обучения в прогнозировании результатов футбольных матчей были проанализированы и сравнены три модели: логистическая регрессия, машина опорных векторов (SVM) и классификатор XGB.
Результаты показали, что все три модели достигли сопоставимых результатов в точности прогнозирования, которая составила около 0,6 для всех моделей. Оценка F1 также оказалась на уровне 0,45-0,47, что указывает на достаточно неплохую способность моделей к предсказанию результатов футбольных матчей.
В итоге для данного набора данных можно использовать более простую модель для прогнозирования – логистическую регрессию или метод опорных векторов, которые значительно быстрее обучаются по сравнению с ансамблевой моделью.
Заключение
Спортивная аналитика — это быстро развивающаяся область, и с развитием алгоритмов машинного обучения машинное обучение можно использовать и в этой области. Наша цель состояла в том, чтобы создать модель, которая могла бы эффективно предсказывать результат футбольного матча, которую затем можно было бы использовать в различных областях, таких как анализ производительности, индустрия ставок и фэнтези-лиги. Игра в футбол зависит не только от цифр, но и от игроков и других факторов. Кроме того, футбол — непредсказуемый вид спорта, и в сочетании с тем фактом, что игры обычно мало результативны, ожидать очень высокой точности невозможно. Это исследование можно дополнительно улучшить, приняв во внимание другие факторы, такие как статистика здоровья игроков или анализ настроений из социальных сетей.