Факти про матч Бундесліги: кількісна оцінка якостей футболіста за допомогою машинного навчання на AWS

Вихідний вузол: 1195672

У футболі, як і в багатьох видах спорту, дискусії про окремих гравців завжди були частиною розваги. «Хто найкращий бомбардир?» або «Хто король захисників?» це питання, які постійно обговорюють фанати, і соціальні мережі підсилюють ці дебати. Тільки врахуйте, що лише Ерлінг Хааланд, Роберт Левандовскі та Томас Мюллер мають разом 50 мільйонів підписників в Instagram. Багато вболівальників знають про неймовірну статистику таких зіркових гравців, як Левандовскі та Хааланд, але подібні історії – лише верхівка айсберга.

Візьміть до уваги, що майже 600 гравців мають контракти в Бундеслізі, і кожна команда має власних чемпіонів — гравців, яких представляють, щоб продемонструвати певні навички в матчі. Подивіться, наприклад, на Міхаеля Грегоріча з ФК «Аугсбург». На момент написання цієї статті (21-й тур) він забив п’ять голів у сезоні 21/22, що не змусило б когось згадати його в розмові про великих бомбардирів. Але давайте подивимося ближче: якщо ви накопичите очікувані значення голів (xGoals) усіх гольових моментів, які мав Грегорич у цьому сезоні, ви отримаєте цифру 1.7. Це означає, що він перевиконував свої удари по воротах на +194%, забивши на 3.2 голи більше, ніж очікувалося. Для порівняння, Левандовскі перевершив лише на 1.6 м’яча (+7%). Який подвиг! Очевидно, що Грегорич привносить в Аугсбург особливу майстерність.

Отже, як нам пролити світло на всі приховані історії про окремих гравців Бундесліги, їхні навички та вплив на результати матчів? Увійдіть у новий матч Bundesliga Match Fact на базі AWS під назвою Skill. Навички були розроблені шляхом поглибленого аналізу DFL і AWS для визначення гравців із навичками в чотирьох конкретних категоріях: ініціатор, фінішер, виграш м’яча та спринтер. Ця публікація містить глибоке занурення в ці чотири навички та обговорює, як вони реалізовані в інфраструктурі AWS.

Ще один цікавий момент полягає в тому, що досі Факти матчів Бундесліги розроблялися незалежно один від одного. Skill — це перший Факт про матчі Бундесліги, який поєднує результати кількох Фактів матчів Бундесліги в режимі реального часу за допомогою потокової архітектури, побудованої на Amazon Managed Streaming Kafka (Amazon MSK).

ініціатор

Ініціатор — це гравець, який виконує велику кількість цінних перших і других передач. Щоб визначити та кількісно оцінити цінність цих передач, ми представили нову метрику xAssist. Він розраховується шляхом відстеження останньої та передостанньої передачі перед ударом по воротах і призначенням відповідного значення xGoals для цих дій. Хороший ініціатор створює можливості за складних обставин, успішно виконуючи передачі з високим рівнем складності. Щоб оцінити, наскільки складно виконати певний пропуск, ми використовуємо наш існуючий xPass модель. У цьому показнику ми навмисно виключаємо навіси та штрафні, щоб зосередитися на гравцях, які створюють гольові моменти своїми точними передачами під час відкритої гри.

Оцінка майстерності розраховується за такою формулою:

Давайте розглянемо як приклад поточного ініціатора рангу 1 Томаса Мюллера. Він зібрав значення xAssist 9.23 на момент написання цієї статті (21-й тур), що означає, що його паси наступним гравцям, які кинули по воротах, створили загальне значення xGoal 9.23. Коефіцієнт xAssist за 90 хвилин становить 0.46. Це можна розрахувати на основі його загального ігрового часу поточного сезону, який є чудовим — понад 1,804 хвилини ігрового часу. У другій передачі він отримав загальне значення 3.80, що означає 0.19 секунди передачі за 90 хвилин. Загалом 38 із 58 його перших передач були складними передачами. І як друга передача, 11 з його 28 передач також були складними. Завдяки цій статистиці Томас Мюллер вилетів на перше місце в рейтингу ініціаторів. Для порівняння в наступній таблиці представлено значення поточної трійки лідерів.

.. xAssist xAssistper90 xSecondAssist xSecondAssistper90 DifficultPassesAssisted DifficultPassesAssisted2 Оцінка фіналу
Томас Мюллер – 1 ранг 9.23 0.46 3.80 0.18 38 11 0.948
Серж Гнабрі – 2 ранг 3.94 0.25 2.54 0.16 15 11 0.516
Флоріан Вірц – 3 ранг 6.41 0.37 2.45 0.14 21 1 0.510

Фінішер

Фінішер — це гравець, який надзвичайно добре забиває голи. Має високу ефективність ударів і забиває багато голів відповідно до свого ігрового часу. Навичка базується на фактично забитих голах і їх різниці з очікуваними голами (xGoals). Це дозволяє нам оцінити, чи добре використовуються шанси. Припустимо, що у двох нападаючих однакова кількість голів. Чи однаково вони сильні? Або один з них забиває за легких обставин, а інший фінішує за складних? На це можна відповісти за допомогою ефективності кидка: якщо забиті голи перевищують кількість голів xGoals, гравець має надвисоку ефективність і є ефективнішим кидком, ніж у середньому. Через величину цієї різниці ми можемо кількісно визначити, наскільки ефективність стрільця перевищує середню.

Оцінка майстерності розраховується за такою формулою:

Що стосується фінішу, ми більше зосереджуємося на голах. Нижченаведена таблиця дає більш детальний огляд поточної трійки лідерів.

.. Цілі Голів за 90 ShotEfficiency Оцінка фіналу
Роберт Левандовскі – 1 ранг 24 1.14 1.55 0.813
Ерлінг Хааланд – 2 ранг 16 1.18 5.32 0.811
Патрік Шик – 3 ранг 18 1.10 4.27 0.802

У цьому сезоні Роберт Левандовскі забив 24 голи, що виводить його на перше місце. Хоча Хааланд має вищу ефективність кидка, цього все одно недостатньо, щоб Халанд був першим у рейтингу, оскільки ми надаємо більшу вагу забитим м’ячам. Це вказує на те, що Левандовскі отримує високу вигоду як від якості, так і від кількості отриманих результативних передач, хоча він забиває виключно добре. Патрік Шик забив на два голи більше, ніж Хааланд, але має нижчу результативність голів за 90 хвилин і нижчу ефективність ударів.

Спринтер

Спринтер має фізичну здатність досягати високих максимальних швидкостей, і робить це частіше за інших. Для цього ми оцінюємо середню максимальну швидкість у всіх іграх поточного сезону гравця та включаємо серед інших показників частоту спринтів за 90 хвилин. Спринт зараховується, якщо гравець біжить з мінімальною швидкістю 4.0 м/с протягом більше двох секунд і досягає максимальної швидкості щонайменше 6.3 м/с протягом цього часу. Тривалість спринту характеризується часом між першим і останнім моментом, коли було досягнуто порогу 6.3 м/с, і має тривати принаймні 1 секунду для підтвердження. Новий спринт можна вважати таким, що відбувся лише після того, як темп знову впав нижче порогу 4.0 м/с.

Оцінка майстерності розраховується за такою формулою:

Формула дозволяє нам оцінити багато способів, як ми можемо дивитися на спринт гравців, і піти далі, ніж просто дивитися на максимальну швидкість, яку досягають ці гравці. Наприклад, Єремія Сент-Жюст має поточний рекорд сезону 36.65 км/год. Однак, якщо ми подивимося на частоту його спринтів, ми виявимо, що він спринтує лише дев’ять разів у середньому за матч! З іншого боку, Альфонсо Девіс може бути не таким швидким, як Сент-Жюст (максимальна швидкість 36.08 км/год), але виконує приголомшливі 31 спринт за матч! Він спринтує набагато частіше з набагато вищою середньою швидкістю, відкриваючи простір для своєї команди на полі.

Переможець м'яча

Гравець із цією здатністю спричиняє втрату м’яча команді суперника, як загалом, так і відповідно до свого ігрового часу. Він виграє велику кількість наземних і повітряних дуелей, часто краде або перехоплює м’яч, створюючи сам безпечний контроль м’яча та можливість для своєї команди контратакувати.

Оцінка майстерності розраховується за такою формулою:

На момент написання цієї статті володарем м’яча за перше місце є Даніло Соарес. Всього на його рахунку 235 захисних дуелей. З 235 захисних поєдинків він виграв 75, перемігши суперників у очному поєдинку. Він перехопив 51 м’яч цього сезону на своїй ігровій позиції захисника, що дало йому коефіцієнт виграшу близько 32%. У середньому він перехоплював 2.4 м'ячі за 90 хвилин.

Приклад майстерності

Skill Bundesliga Match Fact дозволяє нам розкрити здібності та сильні сторони гравців Бундесліги. Рейтинг навичок привертає увагу до гравців, які раніше могли бути непоміченими в рейтингах звичайних статистичних даних, таких як голи. Для прикладу візьмемо такого гравця, як Майкл Грегорич. Грегорич є нападником ФК «Аугсбург», який станом на 21-й тур посів шосте місце в рейтингу гравців. Наразі він забив п’ять голів, що не поставить його на перше місце в рейтингу бомбардирів. Але це вдалося йому лише за 663 зіграні хвилини! Одним із таких голів став пізній зрівняльний рахунок на 97-й хвилині, який допоміг Аугсбургу уникнути виїзної поразки в Берліні.

За допомогою Skill Bundesliga Match Fact ми також можемо розпізнати різні якості кожного гравця. Одним із прикладів цього є зірка Дортмунда Ерлінг Хааланд, який також отримав значок спринтера та фінішера та наразі посідає шосте місце серед спринтерів Бундесліги.

Усі ці показники базуються на даних про переміщення гравців, даних, пов’язаних із голами, даними, пов’язаними з діями м’яча, і даними, пов’язаними з пасами. Ми обробляємо цю інформацію в конвеєрах даних і витягуємо необхідну релевантну статистику для кожного навику, що дозволяє нам розраховувати розвиток усіх показників у режимі реального часу. Багато вищезгаданих статистичних даних нормалізуються за часом на полі, що дає змогу враховувати гравців, які мають мало ігрового часу, але грають надзвичайно добре. Комбінації та ваги показників об’єднуються в один бал. Результатом є рейтинг для всіх гравців за навичками чотирьох гравців. Гравці, які потрапили в топ-10, отримують значок навичок, щоб допомогти вболівальникам швидко визначити виняткові якості, які вони привносять у свої команди.

Реалізація та архітектура

Факти про матчі Бундесліги, які були розроблені до цього моменту, не залежать один від одного й покладаються лише на надходження позиційних даних і даних про події, а також на власні розрахунки. Однак це змінюється для нової Bundesliga Match Fact Skill, яка розраховує рейтинг навичок на основі даних, створених існуючими Match Facts, як-от xGoals або xPass. Результат однієї події, можливо, неймовірний гол із низькими шансами на потрапляння, може мати значний вплив на рейтинг навичок фінішера. Тому ми створили архітектуру, яка завжди забезпечує найновіші рейтинги навичок щоразу, коли відбувається оновлення основних даних. Щоб отримати оновлення навичок у режимі реального часу, ми використовуємо Amazon MSK, керований сервіс AWS для Apache Kafka, як рішення для потокового передавання даних і обміну повідомленнями. Таким чином, різні Факти матчів Бундесліги можуть повідомляти про останні події та оновлення в режимі реального часу.

Базова архітектура Skill складається з чотирьох основних частин:

  • An Безсерверний кластер Amazon Aurora зберігає всі результати наявних фактів збігу. Сюди входять, наприклад, дані про кожну передачу (наприклад, xPass, гравець, передбачуваний отримувач) або кидок (xGoal, гравець, гол), які відбулися з моменту появи Фактів про матчі Бундесліги.
  • Центральний AWS Lambda функція записує вихідні дані Bundesliga Match Fact у базу даних Aurora та сповіщає інші компоненти про оновлення.
  • Лямбда-функція для кожної окремої навички обчислює рейтинг навичок. Ці функції запускаються щоразу, коли доступні нові дані для розрахунку конкретної навички.
  • Кластер Amazon MSK Kafka служить центральною точкою зв’язку між усіма цими компонентами.

Наступна діаграма ілюструє цей робочий процес. Кожен факт матчу Бундесліги негайно надсилає повідомлення про подію Kafka щоразу, коли відбувається оновлення події (наприклад, оновлене значення xGoals для події кидка). Функція Lambda центрального диспетчера автоматично запускається щоразу, коли Bundesliga Match Fact надсилає таке повідомлення та записує ці дані до бази даних. Потім він надсилає ще одне повідомлення через Kafka, що містить нові дані, назад до Kafka, що служить тригером для функцій розрахунку індивідуальних навичок. Ці функції використовують дані цієї тригерної події, а також базового кластера Aurora, щоб обчислити та опублікувати найновіші рейтинги навичок. Щоб отримати детальнішу інформацію про використання Amazon MSK у цьому проекті, зверніться до публікації в блозі Set Piece Threat.

Підсумки

У цьому дописі ми продемонстрували, як новий інструмент Bundesliga Match Fact Skill дає змогу об’єктивно порівнювати гравців Бундесліги за чотирма основними параметрами гравців, спираючись на колишні незалежні факти матчів Bundesliga Match Facts і поєднуючи їх у реальному часі. Це дозволяє коментаторам і вболівальникам розкрити раніше непомічені здібності гравців і пролити світло на ролі, які виконують різні гравці Бундесліги.

Новий «Факт про матч Бундесліги» є результатом поглибленого аналізу, проведеного футбольними експертами Бундесліги та дослідниками даних AWS для визначення та класифікації якостей футболістів на основі об’єктивних даних про ефективність. Значки навичок гравців відображаються в складі та на сторінках із інформацією про гравців у додатку Bundesliga. У трансляції навички гравців надаються коментаторам через пошук історії даних і візуально показується вболівальникам під час заміни гравця та коли гравець піднімається до відповідної топ-10 рейтингу.

Ми сподіваємося, що вам сподобається цей абсолютно новий факт про матч Бундесліги, і він надасть вам нові знання про гру. Щоб дізнатися більше про партнерство між AWS і Бундеслігою, відвідайте сайт Бундесліга на AWS!


Про авторів

Саймон Рольфес Зіграв за збірну Німеччини 288 матчів у Бундеслізі, забив 41 гол і зіграв за збірну Німеччини. Наразі Рольфес обіймає посаду спортивного директора в Bayer 26 Leverkusen, де контролює та розвиває список професійних гравців, відділ скаутингу та розвиток молоді клубу. Саймон також пише щотижневі колонки на Bundesliga.com про останні факти матчів Бундесліги на основі AWS

Луук Фігдор є старшим спеціалістом зі спортивних технологій у команді професійних послуг AWS. Він працює з гравцями, клубами, лігами та медіа-компаніями, такими як Бундесліга та Формула-1, щоб допомогти їм розповідати історії за допомогою даних за допомогою машинного навчання. У вільний час він любить вивчати все про розум і перетин психології, економіки та ШІ.

Паскаль Кюнер є розробником хмарних програм у групі професійних послуг AWS. Він працює з клієнтами в різних галузях, щоб допомогти їм досягти бізнес-результатів за допомогою розробки додатків, DevOps та інфраструктури. Він дуже захоплений спортом і любить грати в баскетбол і футбол у вільний час.

Тарек Хашемі є консультантом AWS Professional Services. Його навички та сфери знань включають розробку додатків, науку про дані, машинне навчання та великі дані. Перебуваючи в Гамбурзі, він підтримує клієнтів у розробці додатків на основі даних у хмарі. До приходу в AWS він також був консультантом у різних галузях, таких як авіація та телекомунікації. Він захоплений тим, щоб допомогти клієнтам під час подорожі даних/ШІ до хмари.

Якуб Міхальчик є спеціалістом з обробки даних у Sportec Solutions AG. Кілька років тому він обрав математику замість гри у футбол, оскільки дійшов висновку, що останнє у нього недостатньо добре. Тепер він поєднує обидві ці пристрасті у своїй професійній кар’єрі, застосовуючи методи машинного навчання, щоб краще зрозуміти цю прекрасну гру. У вільний час він любить грати в міні-футбол, дивитися кримінальні фільми та слухати музику з фільмів.

Хав'єр Поведа-Пантер є дослідником даних для спортивних клієнтів у регіоні EMEA в команді AWS Professional Services. Він дозволяє клієнтам у сфері глядацьких видів спорту впроваджувати інновації та використовувати свої дані, забезпечуючи високоякісну роботу користувачів і вболівальників за допомогою машинного навчання та науки про дані. У вільний час він займається різними видами спорту, музикою та ШІ.

Часова мітка:

Більше від AWS Машинне навчання