Аналитик создал нейросеть для прогнозов на базе карточек FIFA и получил ROI 11%

Аналитик создал нейросеть для прогнозов на базе карточек FIFA и получил ROI 11%

Специалист по анализу данных Channel 4 Брэдли Грэнтэм разработал предиктивную модель для АПЛ на основе карточек FIFA. Коэффициенты взяты по линии закрытия Pinnacle.  

В прошлом году мне захотелось немного поиграться с xG-моделью и заодно попрактиковаться в программировании на Python. Меня вдохновили Майкл Кейли (Michael Caley) и Тед Кнутсон (Ted Knutson), за которыми я активно слежу в твиттере.

На мой взгляд, xG — просто фантастика. Но, как и другие футбольные метрики, теория ожидаемых голов имеет свои недостатки.

Во-первых, она не учитывает составы команд. Если у «Челси» не играл Азар, то xG команды был чуть ниже среднего показателя.

Во-вторых, в начале сезона, когда приходят новые игроки, xG не может измерить, какой эффект новички окажут на игру команды.

И, наконец, пока еще нет xG-модели, которая бы качественно обобщала данные по 5 топ-лигам Европы (это как раз то, над чем я сейчас работаю).

Я опоздал со своей xG-моделью — подобное существовало уже 4-5 лет, и моя модель не демонстрировала чего-то принципиально нового. Я хотел создать то, что: а) помогало прогнозировать исходы матчей; б) было новым; в) использовало данные об игроках.

Я почти не видел имплементации нейросетей в футбол. Так что я создал что-то подобное в Tensorflow (программная библиотека Google для развития нейронных сетей), чтобы предугадывать результаты игр на основании стартовых составов.

Данные

Наиболее очевидный рейтинг футболистов — база FIFA от EA Sport. Она обновляется ежегодно, она едина для всех лиг и достаточно точна. Я использовал только общий рейтинг, хотя, возможно другие параметры (защита, атака и т.д.) дали бы более точные результаты.

Я собрал рейтинги игроков АПЛ за последние 5 лет с сайта fifaindex.com. Мне нужна была информация, в каких матчах они принимали участие, я использовал ресурс betstudy.com, где собрана информация о фамилии, номере и национальности каждого, кто играл в АПЛ.

Фамилии из баз FIFA и Betstudy не всегда совпадали, поэтому я использовал комбинацию из фамилии, номера, команды и национальности. Я получил 22 рейтинга на каждый матч: 11 домашних игроков и 11 гостевых с показателями от 50 до 100 за все игры последних 5 сезонов Премьер-Лиги.

прогнозирование по карточкам фифа 1

На примере выше стартовый состав Челси: Куртуа, Мозес, Рюдигер, Алонсо, Кристенсен, Аспиликуэта, Фабрегас, Канте, Азар, Мората, Виллиан.

Что обозначают нули

Но используя только эти числа, мы теряем информацию о схеме команды. Когда слабые команды играют с сильными, они склонны парковать автобус, выпуская больше защитников.

Поэтому для каждого стартового состава я создал вектор из 18 позиций (пример выше). В этом векторе первая клетка определяет вратаря, следующие 6 — рейтинги защитников. Если защитников, к примеру, всего 4, то две клетки остаются пустыми (значение 0). Следующие 7 позиций для полузащитников и, наконец, последние, 4 — для атаки. То по схеме выше ясно, что «Челси» играл 5-2-3.

Подобная структура помогала учитывать игровые схемы. Если в составе 6 защитников, то вероятнее всего команда сыграет от обороны. В нейронную сеть попадает 36-мерный вектор (18 домашних ячеек и 18 гостевых), что позволяет учитывать домашнее преимущество.

На последнем этапе я загрузил в модель результаты игр и коэффициенты, которые взял с football-data.co.uk, где их бережно собирает Джозеф Бухдаль (Joseph Buchdahl).

Модель с обучением

На картинке — архитектура нейронной сети

прогнозирование по карточкам фифа 2

После сбора и форматирования данных необходимо определить внутреннюю структуру сети. Я тренировал нейросеть на сезонах с 2013/14 по 2016/17, чтобы потом протестировать модель на сезоне 2017/2018. Из 1540 игр я оставил 50 для финальной проверки.

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

Тестирование

Для тестирования я взял банкролл в 100 фунтов и по критерию Келли высчитал оптимальный размер ставки. Я избегал ставок на коэффициенты больше 3.2 и не делал прогнозы, если мои вероятности были лучше букмекерских менее чем на 2%.

По итогам тестов за сезон-2017/2018 ROI составил 11% — замечательный показатель. Я переобучил модель несколько раз, провел еще новые тесты, но результат оставался стабильным. Вот несколько конкретных цифр:

  • выиграно 50% ставок;
  • средний коэффициент на Pinnacle — 2,37;
  • средний прогнозный (вычисленный моделью) коэффициент — 2,01;
  • средний валуй — 7,23%, с максимальным значением 21,3%.

ROI, безусловно, зависит от случая, но цифры в любом случае выглядят многообещающими. Для наглядности я отобразил рост банкролла и суммы ставок на графике.прогнозирование по карточкам фифа 3

Сезон-2018/2019

Вдохновившись отличными результатами, я решил проверить модель в боевых условиях. Перед сезоном-2018/19 я переобучил модель, загрузив в нее сезон-2017/18. Оставались важные нюансы — угадать стартовые составы и схемы игры для каждой команды. Это не так и сложно в начале чемпионата, но к весне меняется очень многое.

Для сезона-2018/19 я планировал использовать карточки из FIFA-2017/2018. Это не критично, но было много игроков, чьи показатели значительно изменились за год (тот же Салах). Оставалось ждать новой FIFA с актуальными рейтингами.

Еще один минус — трансферное окно еще было открыто после старта чемпионата, и обновления составов продолжались.

Я просимулировал сезон миллион раз (на ноутбуке это заняло около 8 минут) и подсчитал среднее количество очков, побед, поражений и ничьих. Затем я высчитал процент, как часто команды финишировали первыми, в первой четверке, в зоне вылета.

прогнозирование по карточкам фифа 4

Получив первые результаты, я немного проиграл с моделью, например, допустив уход Азара, я ставил вместо него Виллиана (рейтинг 91 против 84). Это приводило к тому, что «Челси» недобирал 4 очка по итогам сезона.

Или убирал из «МЮ» Де Хеа и ставил в ворота Ромеро — манкунианцы к концу сезона набирали на 3 очка меньше.

В целом, я очень доволен работой модели. Это неидеальный способ моделирования футбольного матча. Футбол гораздо сложнее: тренер, мотивация, погода, стадия сезона, график, удача. Тем не менее, исследование получилось занимательным. Я хочу настроить модель на использование Smarkets API, чтобы ставки делались автоматически.

P.S. Статья была написана летом 2018 года, и мы можем сравнить смоделированные результаты с настоящими. Чемпионство «МС» не вызывало сомнений, а вот «Ливерпуль» был недооценен — только 5-е место. С зоной вылета все неплохо — модель верно предсказала вылет «Кардиффа» и «Хаддерсфилда», а вот слабое выступление «Фулхэма» высчитать не удалось.

Переведено с сайта towardsdatascience.com

05.06.2026 • 14:37
Понравился материал?
381
Ученый Стивен Хокинг перед чемпионатом мира 2014 года давал прогнозы на футбол специально для одного из британских букмекеров

Нашли ошибку? Сообщите нам

Подпишись на наши новости одним кликом: