Вишаал Кумар, Викрам Бала и Джеффри Сяо

Футбол — это религия. Есть причина, по которой это самый популярный вид спорта в мире. Но из-за большой базы фанатов среди членов футбольного сообщества ведется много споров по поводу различных аспектов игры: какая национальная лига лучшая? Справедлив ли баланс заработной платы между игроками в разных национальных лигах? Повышает ли репутация команды ценность игрока больше, чем его/ее навыки и выступления?

Все это интересные вопросы, и они часто возникают, когда болельщики говорят о спорте. Помимо самой физической игры, печально известная серия видеоигр FIFA стала очень влиятельной организацией среди членов футбольного сообщества.

FIFA считается самой продаваемой франшизой спортивных видеоигр в мире. Футбол и игроки одержимы игрой. Каждый год фанатам не терпится узнать, каковы рейтинги их любимых игроков в следующей версии FIFA. Часто Electronic Arts (EA), создателей FIFA, ставят под сомнение их рейтинговые решения, и в футбольном сообществе ведется много споров о достоверности этих рейтингов игроков.

Мы подумали, что было бы интересно проанализировать рейтинги игроков и статистику команд, чтобы увидеть некоторые тенденции в том, как EA оценивает своих футболистов. Мы хотели ответить на некоторые из самых обсуждаемых вопросов о футболе:

  • Зависит ли ваша трансферная ценность от лиги, в которой вы играете?
  • Какая национальная лига является наиболее конкурентоспособной (по рейтингу игроков)?
  • Какие аспекты игры больше всего ценит EA?

Помимо изучения интересного вопроса о процессе оценки/ценности EA FIFA, мы также подумали, что было бы интересно изучить, насколько хорошо FIFA выражает нормы и убеждения футбольного сообщества. Соответствует ли FIFA самым популярным ожиданиям или она справедлива при оценке игроков в игре? Мы пытаемся ответить на эти вопросы, используя различные методы машинного обучения, и мы хотим провести вас по пути демистификации алгоритма FIFA.

Шаг 1 — Найдите источник данных

Мы будем использовать набор данных об игроках FIFA, который содержит статистику футболистов от FIFA 17 до FIFA 22. Мы выбрали этот набор данных, потому что он имеет широкий спектр функций, включая атрибуты игроков, а также рыночную стоимость и положения об освобождении. Этот набор данных содержит данные, полученные из Sofifa (база данных, содержащая актуальную информацию о статистике игроков в большинстве итераций FIFA).

Мы также хотели увидеть отношения между футбольными лигами (особенно Большой пятеркой Европы — да, мы понимаем, что тема Большой пятерки Европы — еще одна тема для обсуждения, но мы на самом деле не касаемся этой темы) по другим функциям. К сожалению, приведенный выше набор данных FIFA об игроках не сопоставляет футбольные клубы напрямую с футбольными лигами. В результате мы извлекли сопоставления футбольных клубов с футбольными лигами с соответствующих страниц Википедии.

Шаг 2 — Анализ данных

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

Основной алгоритм следующий:

– Просмотрите всех игроков в каждом наборе данных FIFA
– Для каждого игрока найдите страницу футбольного клуба в Википедии
– Используйте XPath, чтобы извлечь термин «Лига» из информационного поля.

Нашей первой попыткой парсинга футбольных лиг было использование однопоточного подхода. Это был самый простой и короткий путь, но и самый неудачный. С одной стороны, это было невероятно медленно. При наличии около 17000 игроков для каждого из 6 наборов данных этот подход занял более 10 минут для логически простой задачи. Учитывая характер этого проекта (и политику очистки Википедии), мы начали дальнейшую оптимизацию нашего алгоритма.

Вторая попытка была значительным улучшением с точки зрения скорости. Узким местом предыдущего подхода было то, что мы выполняли только один поиск за раз. Используя библиотеку обработки данных с открытым исходным кодом под названием Pandas, мы смогли оптимизировать наш подход и запустить несколько поисков одновременно. Такой подход сократил практическое время работы примерно до 1 минуты. Однако всегда есть компромисс между скоростью и точностью. Хотя этот подход был быстрым, у нас осталось более 200 команд, у которых не было соответствующей лиги. Причина: страницы значений Википедии. Такие термины, как Эвертон, могут относиться не только к футбольному клубу. Поскольку никто из нас не хотел вручную находить лигу для примерно 200 команд, нам нужно было найти другой подход. Вернуться к чертежной доске мы пошли.

Давайте сделаем шаг назад и вернемся к предыдущим подходам. Основной проблемой первого подхода была скорость — чтобы решить ее, мы воспользовались встроенными оптимизациями Pandas. Проблема со вторым подходом заключалась в точности — нам нужен был способ учета страниц значений неоднозначности. К счастью, используя модуль python Википедии, мы можем получить наиболее релевантные страницы по заданному поисковому запросу. Итак, скажем, мы получаем топ-5 наиболее релевантных страниц для команды. Предполагая, что эти команды относительно популярны, если бы мы искали все 5 этих страниц (или пока не найдем совпадение), это должно объяснить отсутствующие клубы выше — и это произошло именно так! Этот обновленный подход оставил нам только 36 несоответствий, при этом работа продолжалась примерно 2–3 минуты.

– Просмотрите всех игроков в каждом наборе данных FIFA
– Для каждого игрока найдите 5 наиболее релевантных страниц по названию его команды
– Если какая-либо из верхних страниц совпадает с фактической страницей клуба, используйте XPath для соскребите термин «Лига» из информационного поля

Шаг 3 — Очистка, структурирование и интеграция

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

  1. Удаление тегов HTML в определенных полях
  2. Удаление значений валюты из таких полей, как заработная плата и стоимость
  3. Преобразование строк в двойные (например: - 1K в 1000 и 1M в 1000000)
  4. Преобразование единиц для соответствия стандартной единице измерения: рост в сантиметрах и вес в килограммах)
  5. Удаление нулевых значений
  6. Удаление столбцов, которые были сочтены ненужными для нашего анализа (например, «Отметить», «Присоединен», «Взаймы» и т. д.)

Шаг 4 — Исследовательский анализ данных (EDA)

Теперь давайте изучим наш набор данных!

FIFA — сложная игра, в которую ежегодно вливаются миллиарды долларов просто для того, чтобы создавать и настраивать различные атрибуты игроков. В нашем EDA мы выбрали небольшое подмножество атрибутов игрока — те, которые показались нам наиболее актуальными и интересными.

attributes = [‘Crossing’,’Finishing’,’Dribbling’,’BallControl’,’Acceleration’,
’SprintSpeed’,’Agility’,’Balance’,’ShotPower’,’Stamina’,’Strength’,
’Vision’]

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

1. Возраст по сравнению с общим

Первым интересным сюжетом, который мы создали, был «Возраст против общего». В последнее десятилетие футбол стал свидетелем большого притока молодых талантов, и мы подумали, что было бы интересно посмотреть, учитывает ли ФИФА опыт при выставлении общего рейтинга игроку.

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

Кроме того, интересно посмотреть, куда попадает большинство игроков. В приведенных ниже результатах мы видим, что наиболее частый возраст — от 22 до 26 лет.

Year 2017, Age = 26, Overall = 55
Year 2018, Age = 24, Overall = 52 
Year 2019, Age = 22, Overall = 52 
Year 2020, Age = 26, Overall = 49 
Year 2021, Age = 26, Overall = 49 
Year 2022, Age = 22, Overall = 46

2. Общий рейтинг против лиги

В течение многих лет эксперты спорили о том, в какой лиге самый высокий уровень игроков. Некоторые утверждают, что Премьер-лига — самая конкурентоспособная лига в мире, но можно с уверенностью сказать, что испанцы, немцы, итальянцы и французы с этим не согласятся. Чтобы развенчать этот миф, мы построили общий рейтинг против лиги. Интересно, что в среднем за последние 5 итераций FIFA Премьер-лига находится в нижней части средних показателей игроков по сравнению с другими лигами Большой пятерки. Однако, ориентируясь на статистику этого года, лигой с самым высоким средним общим рейтингом является Ла Лига, за которой следуют Премьер-лига, Серия А, Бундеслига и Лига 1.

3. Рост/вес против характеристик игрока

Златан Ибрагимович, Лионель Месси, Криштиану Роналду, Адама Траоре — популярные имена среди болельщиков и игроков, но их отличает не только мастерство, но и рост и вес. Мы подумали, что было бы интересно посмотреть, как рост и вес игрока соотносятся с определенными атрибутами. После построения множества графиков, сравнивающих рост и вес игрока с несколькими атрибутами, мы обнаружили следующие тенденции:

  1. Рост и Сила положительно коррелируют
  2. Рост и ловкость имеют отрицательную корреляцию
  3. Рост и дриблинг имеют отрицательную корреляцию. Позволяет ли более низкий центр масс легче двигаться с мячом? Это очень интересно!
  4. Вес и сила имеют положительную корреляцию — это имеет смысл, поскольку более высокий вес может соответствовать более высокой мышечной массе или массе тела, что позволяет игрокам быть сильнее.
  5. Вес и ловкость имеют отрицательную корреляцию.

4. Заработная плата против лиги

Интересно, что даже когда мы сравнивали средние показатели игроков «большой пятерки», средние значения были очень близки и отличались лишь на несколько знаков после запятой. Однако существует большая разница между средней заработной платой игроков в Премьер-лиге и в других национальных лигах. Это намекает на, казалось бы, высокую репутацию Премьер-лиги и тот факт, что в Премьер-лиге, как известно, гораздо более богатые клубы по сравнению с другими высшими национальными лигами. Жестко ли ФИФА оценивает игроков Премьер-лиги или игрокам Премьер-лиги переплачивают? Это снова интересный вопрос, по которому спорят многие футбольные эксперты.

5. Зарплата и должность

Это очень интересно и подтверждает одну из самых спорных тем в футболе — являются ли нападающие самыми ценными членами команды? Голы важнее отборов, передач и сухих матчей? Как видно, из приведенных выше графиков видно, что CF (центральные нападающие) получают больше всего с большим отрывом. Это ясно показывает, что игроки, которые забивают команды, считаются гораздо более ценными и, следовательно, им платят больше!

6. Общая и ценность

Теперь о менее горячо обсуждаемой теме: общий рейтинг и ценность. Ожидается, что чем лучше или выше рейтинг игрока, тем выше вероятность того, что его будут ценить выше. Приведенные выше графики для FIFA17 и FIFA22 подтверждают это, но также показывают, что существует экспоненциальная зависимость между общим значением и ценностью. Проще говоря, разница между более высокими оценками (т. е. 80–90) вызывает большую дисперсию в стоимости, чем разница между более низкими оценками (т. е. 60–70). Возможно, это связано с тем, что реже можно найти «лучших» игроков, чем посредственных, что приводит к стремительному росту их стоимости.

7. Зарплата и ценность

Как мы и подозревали, игроки с более высокой зарплатой обычно также имеют более высокую трансферную стоимость. FIFA22, кажется, имеет больший разброс с точки зрения заработной платы и стоимости, но этого следует ожидать из-за громких имен футбольного мира. Здесь нет ничего удивительного!

8. Трансферная стоимость против лиги

Чтобы завершить наше путешествие по визуализации трансферной стоимости, мы рассмотрели взаимосвязь между лигами и трансферной стоимостью. После нормализации данных мы видим, что среди «большой пятерки» Лига 1 постоянно находится на самом низком уровне, тогда как Премьер-лига удобно расположилась наверху. Кроме того, в последние годы мы наблюдаем снижение нормализованной трансферной стоимости в Ла Лиге и Серии А. Это может соответствовать большому притоку талантливых игроков в Премьер-лигу по мере роста ее популярности. Например, переходы Криштиану Роналду и Рафаэля Варана из «Ювентуса» и «Реала» (соответственно) в «Манчестер Юнайтед».

Моделирование: выявление мошенничества в международных футбольных сделках?

Когда мы начали наш EDA, мы наткнулись на статью в NY Times в углу спортивного раздела. Его название: Сколько стоит футболист? Итальянские регулирующие органы спрашивают. В статье объяснялись бухгалтерские маневры, которые некоторые из крупнейших футбольных команд, таких как Барселона и Ювентус, предпринимали для регистрации прибыли в своих балансовых отчетах. Игроки с высокой стоимостью использовались, чтобы помочь командам исправить свой баланс, и регулирующие органы начали обращать на это внимание. Ценность спортсмена даже в НФЛ, НХЛ и НБА всегда вызывала споры и споры. Стареющий ветеран может получить большой контракт только из-за своей репутации, в то время как болельщики могут возмутиться, когда их любимый игрок получит сильно недооцененный контракт. Тем не менее, безусловно, должно быть какое-то объективное измерение диапазона ценности игрока. Это то, что мы решили проверить, чтобы увидеть, есть ли на самом деле средства для прогнозирования трансферной стоимости игрока на основе их различных навыков и других атрибутов.

Таким образом, после построения графиков для, казалось бы, всех возможных комбинаций функций, а также анализа различных тенденций, мы остановились на прогнозировании трансфертной стоимости как на нашей цели в части моделирования нашего анализа. В этом разделе мы обсудим подготовку данных для моделирования, а также 4 разные модели, которые мы создали, пытаясь предсказать трансферную стоимость игрока.

*Примечание. Следует отметить, что трансферная стоимость игрока отличается от функции «зарплата», которую можно увидеть в наших данных. Зарплата – это еженедельная зарплата игрока, а трансфертная стоимость – это сумма денег, за которую можно обменять этого игрока*.

Как EDA повлияло на наше моделирование

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

Подготовка данных

Чтобы подготовить наши данные для моделирования, мы должны были сначала убедиться, что у нас есть нужные функции. Мы подготовили список удаляемых столбцов, которые на самом деле не коррелировали с трансферной ценностью игрока. К ним относятся такие столбцы, как «Номер футболки», «Имя», «Контракт действителен до». Кроме того, поскольку международная репутация очень субъективна в зависимости от того, за какую международную команду вы играете, мы решили убрать и эту колонку.

После удаления этих столбцов нам было поручено преобразовать некоторые категориальные признаки в один горячий вектор в нашей таблице. Некоторые из этих функций включали «Тип телосложения», «Клуб» и «Положение». Кроме того, мы также выполнили обработку, чтобы поместить нашу метку переносимого значения в 10 сегментов, чтобы мы могли обучаться не только на моделях непрерывного прогнозирования, таких как линейная регрессия, но и на моделях, основанных на классификации, таких как классификатор случайного леса и классификатор логистической регрессии. Наконец, мы разделили наши данные на тестовый размер 20% и размер поезда 80% (всего до разделения в наших данных было 97133 строки).

drop_columns = ['ID', 'Name', 'Preferred Foot', 'Jersey Number', 'Contract Valid Until', 'Work Rate', 'Best Position','International Reputation']
cat_columns = ['Nationality', 'League', 'Position', 'Body Type', 'Club']

drop_columns были удалены, а cat_columns были преобразованы в горячие векторы с помощью LabelEncoder() из sklearn.

СПС

Прежде чем мы перейдем к самим моделям, важно обратить внимание на мультиколлинеарность. Мы выполнили PCA для наших 42 признаков и обнаружили, что объясненная дисперсия составляет не менее 99 % для 33 компонентов (обратите внимание, что при пороге 99,5 % почти не было уменьшения размерности, поэтому мы снизили наш стандарт до 99 %). Мы выполнили PCA для наших данных после масштабирования и нормализации данных, чтобы иметь показатель z, равный 1. Хотя мы обучили модель линейной регрессии как на данных PCA, так и на наборе данных без PCA, а также использовали данные PCA для модели логистической регрессии, мы сделали не используйте его для Random Forest. Это связано с тем, что PCA не улучшил производительность ни случайного леса, ни линейной регрессии.

Вот как мы сделали PCA и масштабирование с помощью некоторых инструментов от sklearn. Мы прикрепили изображение нашего графика объясненной дисперсии, где ось X — это количество признаков, а ось Y — объясненная дисперсия.

Наивный Байес

Сначала мы запустили на наших данных наивный байесовский классификатор, в частности, чтобы увидеть, насколько хорошо он может предсказать, в каком диапазоне (из 10 возможных сегментов с равными диапазонами) может находиться трансферная стоимость игрока. Его точность составила 46,35%, что примерно в 4,5 раза больше. лучше, чем случайное угадывание. Таким образом, модель явно проделала некоторую работу, но она невелика. Не беспокойтесь, у нас есть еще много настраиваемых и интересных моделей для работы!

Линейная регрессия

Давайте перейдем к нашей лучшей и первой модели, модели линейной регрессии! Эта модель использует градиентный спуск для создания линейной модели, которая дает нам непрерывные выходные значения, а не классификации. Таким образом, мы не использовали сегменты значений, созданные в качестве наших меток, а использовали значение передачи, изначально взятое из набора данных, в качестве наших меток здесь. Мы запускали нашу модель как с масштабированными данными PCA, так и без масштабированных данных PCA, чтобы увидеть, какие из них дадут лучшие результаты. Ниже приведен код того, как мы это сделали, а также наши результаты.

Обратите внимание, что для каждого тестового набора мы хронологически построили используемые обучающие наборы. Таким образом, FIFA19, например, был предсказан только с использованием данных за предыдущие годы. Это позволило нам увидеть, меняется ли алгоритм FIFA, который генерирует статистику игроков и другие показатели каждый год, что, возможно, затрудняет нам создание точных прогнозов.

Результаты для данных без PCA (см. выше, какие наборы поездов и тестов использовались):

Test Data Accuracy without PCA for FIFA 18: 0.9065569580480287
Test Data Accuracy without PCA for FIFA 19: 0.9118843390386203
Test Data Accuracy without PCA for FIFA 20: 0.923835636293558
Test Data Accuracy without PCA for FIFA 21: 0.9082690376474717
Test Data Accuracy without PCA for FIFA 22: 0.8439685316620665

Результаты для данных PCA (это результат после обучения и тестирования всех данных за 2017–2022 годы):

Train Data Accuracy On ALL Years with PCA: 0.8766950420015381
Test Data Accuracy On ALL Years with PCA: 0.7951320486481293

Прежде всего, мы заметили, что наши данные с использованием PCA были значительно хуже, чем без PCA. Кроме того, у FIFA22 была гораздо худшая точность прогнозов, чем у любого другого года, и мы заметили эту тенденцию во многих наших моделях, которые также будут рассмотрены ниже. Затем мы хотели посмотреть, какие функции оказали наибольшее влияние на нашу модель. Для каждого года мы построили 10 наиболее важных факторов в модели на основе их коэффициентов в линейной регрессии. Все они были в целом одинаковыми, так что вот один из FIFA 2021.

Случайный лес

Теперь мы погрузимся прямо в знаменитый метод Random Forest! Часто считающиеся одними из наиболее полных классификаторов, случайные леса работают путем создания нескольких меньших оценок (деревьев решений/пней), обучения их до определенной глубины, а затем использования большинства голосов всех пней для создания одного окончательного классификатора (для дополнительную информацию см. в разделе методы ансамбля). Как правило, эта модель дает более точные результаты (хотя с учетом нашего компромисса между скоростью и точностью, полученного ранее, это означает, что случайные леса требуют больших вычислительных ресурсов).

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

Остальное также было относительно простым — с этими лучшими параметрами мы передали их в RandomForestClassifier, подогнали к обучающим данным, а затем оценили тестовые данные. В конечном счете, наша модель случайного леса показала себя достаточно хорошо, обеспечив точность 75% по вышеуказанным гиперпараметрам.

Accuracy for Random Forest Model: 0.7576053945539712

Логистическая регрессия

На финальную модель! Здесь мы решили запустить несколько логистических регрессий, чтобы снова смоделировать и предсказать взаимосвязь между атрибутами игрока и трансферной стоимостью. Логистическая регрессия обычно используется для категориальных данных, когда мы хотим назначить запись определенному сегменту. Хотя трансфертная стоимость является непрерывной переменной, мы можем аппроксимировать непрерывную переменную, создав несколько корзин — вычислив прогнозируемую трансфертную стоимость, а затем назначив ее соответствующему диапазону корзин.

Для целей этой модели мы выбрали размер сегмента 10. Как и в случае с моделями линейной регрессии, мы сначала хотели рассматривать каждый набор данных FIFA как тестовый набор, используя для обучения все предыдущие годы.

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

pipe = Pipeline(steps=[('Scale',StandardScaler()),('PCA',PCA()),('LogReg',LogisticRegression(max_iter=100, penalty='l2'))])

В конце концов, точность прогнозов колебалась в пределах 65%, за исключением FIFA22, точность которой составляла около 50%. Вот это на самом деле неплохо! Помните, что мы не работаем с бинарным классификатором — вместо этого у нас есть 10 сегментов. Это означает, что если бы мы случайным образом угадывали метку, мы ожидали бы точность около 10 %, что намного ниже, чем в нашей модели.

Accuracy for FIFA 18 (based on previous years):  0.6290490513651087
Accuracy for FIFA 19 (based on previous years):  0.6357539315448658
Accuracy for FIFA 20 (based on previous years):  0.6818243426402819
Accuracy for FIFA 21 (based on previous years):  0.6825070639609555
Accuracy for FIFA 22 (based on previous years):  0.49523062851169475

Наконец, мы объединили данные за все годы FIFA в один большой набор данных и провели над ним логистическую регрессию. Вместо того, чтобы разбивать его по годам, мы хотели просто посмотреть, можем ли мы точно предсказать трансфертную стоимость, игнорируя, за какой год были получены наши данные. При той же настройке пайплайна регрессионная модель имела точность около 66 %, что очень похоже на большинство предыдущих погрешностей. На самом деле кажется, что более низкая точность FIFA 22 не имела такого большого эффекта, как предполагалось.

Accuracy for Logistic Regression (based on all years): 0.6616564575075925

Все модели

Давайте сделаем шаг назад и посмотрим, что мы имеем здесь. Во-первых, в обоих случаях, когда мы использовали предыдущие данные FIFA для прогнозирования следующего года, FIFA22 показала самую низкую точность прогнозов. Мы подозреваем, что это может быть связано с несколькими жалобами, которые EA получает по поводу отсутствия баланса в игровом процессе, что приводит к совершенно другой структуре рейтинга (возможно, EA прислушивается).

Выводы

И вот оно! Мы решили ответить на пару вопросов, и после визуализации данных и их моделирования мы обнаружили несколько интересных вещей. Например, стоимость трансфера коррелирует с уровнем мастерства в лиге. Учитывая случайного игрока в Премьер-лиге против случайного игрока в Лиге 1, трансферная стоимость игрока Премьер-лиги обычно будет выше, чем у игрока Лиги 1.

В целом, мы нашли интересную информацию о том, как EA подходит ко всей проблеме рейтинга для своих игр. Мы полностью раскрыли, как EA присваивает рейтинги игрокам? Пока нет, но мы в начальной точке. EA явно вкладывает миллионы долларов в свои рейтинговые алгоритмы, поэтому мы едва коснулись того, что они делают. Тем не менее, приятно видеть, что некоторые факторы имеют большее значение для алгоритма, чем другие. До скорого!

Ссылка на полный EDA здесь.