Как доказать, что рейтинг Эло или рейтинг страницы имеют значение для моего набора?


13

У меня есть набор игроков. Они играют друг против друга (попарно). Пары игроков выбираются случайным образом. В любой игре один игрок выигрывает, а другой проигрывает. Игроки играют друг с другом ограниченное количество игр (некоторые игроки играют больше игр, некоторые меньше). Итак, у меня есть данные (кто выигрывает у кого и сколько раз). Теперь я предполагаю, что у каждого игрока есть рейтинг, который определяет вероятность выигрыша.

Я хочу проверить, правда ли это предположение. Конечно, я могу использовать систему рейтинга Эло или алгоритм PageRank для расчета рейтинга для каждого игрока. Но, вычисляя рейтинги, я не доказываю, что они (рейтинги) действительно существуют или что они что-то значат.

Другими словами, я хочу, чтобы у меня был способ доказать (или проверить), что игроки имеют разные сильные стороны. Как мне это сделать?

ADDED

Если быть более точным, у меня 8 игроков и только 18 игр. Итак, есть много пар игроков, которые не играли друг против друга, и есть много пар, которые играли только один раз друг с другом. Как следствие, я не могу оценить вероятность выигрыша для данной пары игроков. Я также вижу, например, что есть игрок, который выиграл 6 раз в 6 играх. Но, возможно, это просто совпадение.


Вы хотите проверить нулевую гипотезу о том, что все игроки имеют одинаковую силу, или проверить соответствие модели силы игрока?
остановка

@onestop: все игроки, имеющие одинаковую силу, были бы невероятными, не так ли? Почему вы предлагаете это в качестве гипотезы?
эндолит

Ответы:


10

Вам нужна модель вероятности.

Идея системы ранжирования заключается в том, что одно число адекватно характеризует способности игрока. Мы можем назвать это число их «силой» (потому что «ранг» уже означает что-то конкретное в статистике). Мы бы предсказали, что игрок A побьет игрока B, когда сила (A) превысит силу (B). Но это утверждение слишком слабое, потому что (а) оно не является количественным и (б) оно не учитывает вероятность того, что более слабый игрок изредка побеждает более сильного игрока. Мы можем преодолеть обе проблемы, предполагая, что вероятность того, что A побьет B, зависит только от разницы в их сильных сторонах. Если это так, то мы можем повторно выразить все сильные стороны, необходимые для того, чтобы разница в сильных сторонах равнялась логическим шансам на победу.

В частности, эта модель

logit(Pr(A beats B))=λAλB

logit(p)=log(p)log(1p)λA

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

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

В частности, вероятность набора игр является продуктом

all gamesexp(λwinnerλloser)1+exp(λwinnerλloser).

λ оценки других являются значениями, которые максимизируют эту вероятность. Таким образом, изменение любой из оценок снижает вероятность от ее максимума. Если оно уменьшается слишком сильно, это не согласуется с данными. Таким образом, мы можем найти доверительные интервалы для всех параметров: они являются пределами, в которых изменение оценок не чрезмерно снижает логарифмическую вероятность. Общие гипотезы могут быть аналогичным образом проверены: гипотеза ограничивает сильные стороны (например, предполагая, что они все равны), это ограничение ограничивает, насколько велика вероятность, и если этот ограниченный максимум слишком далеко от фактического максимума, гипотеза отвергнуто.


В этой конкретной задаче есть 18 игр и 7 бесплатных параметров. В общем, это слишком много параметров: гибкость настолько велика, что параметры можно довольно свободно варьировать без значительного изменения максимальной вероятности. Таким образом, применение механизма ML, вероятно, докажет очевидное, а именно то, что, вероятно, недостаточно данных, чтобы доверять оценкам прочности.


2
sA=exp(λA)AВsA/(sA+sB), (3) Если сыгран полный турнир с круговым турниром (а это не так), рейтинг сильных сторон будет точно совпадать с процентом побед каждого игрока. (4) Качество соответствия связано с потоками на графе с игроками в качестве узлов и играми в качестве ребер.
кардинал

(продолжение) У Лестера Р. Форда-младшего даже есть статья, в которой обсуждается подходящий алгоритм, основанный на этой идее, в амер. Ежемесячная математическая статья 1957 года, написанная в честь его отца.
кардинал

4

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

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

Такой точный тест доступен в Stata с помощью команды симметрии . В этом случае синтаксис будет:

symmetry winner loser, exact

Без сомнения, это также реализовано в других пакетах статистики, с которыми я менее знаком.


(+1) Забавно, я только что понял, что эту команду Stata можно использовать для теста передачи / неравновесия в генетике :) Я обсуждал пакеты R в предыдущем ответе stats.stackexchange.com/questions/5171/… .
хл

Действительно, TDT - это одно из приложений, которые обсуждались в справке Stata, которую я связал выше. Это также контекст, в котором я впервые наткнулся на этот тест. Спасибо за ссылку на этот предыдущий вопрос - похоже, я был занят другими вопросами, когда он был опубликован.
остановка

Хотя этот вопрос относится к проверке гипотез, его акцент делается на вопросе правильности подбора: эффективно ли единственная числовая (скалярная) сила моделирует результаты матчей между игроками?
whuber

1

Вы проверили некоторые публикации Марка Гликмана? Те кажутся актуальными. http://www.glicko.net/

Под стандартным отклонением рейтингов подразумевается ожидаемая ценность игры. (Это стандартное отклонение фиксируется на определенном числе в базовом Elo и является переменным в системе Glicko). Я говорю ожидаемое значение, а не вероятность выигрыша из-за ничьих. Ключевыми вещами, которые нужно понять относительно ваших рейтингов Elo, является исходное допущение распределения (например, нормальное или логистическое) и предполагаемое стандартное отклонение.

Логистическая версия формул Эло предполагает, что ожидаемое значение разницы рейтингов в 110 очков составляет 0,63, например, игрок А с 1330 и игрок Б с 1220.

http://en.wikipedia.org/wiki/Elo_rating_system (Хорошо, это ссылка на Википедию, но я уже потратил слишком много времени на этот ответ.)

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

На этом этапе, следующее, что я хотел бы сделать, это проверить это графически, расставив промежутки от низкого до высокого и суммируя ожидаемые и фактические результаты. Таким образом, в первых 5 играх у нас может быть 2 очка, а ожидаемые - 1,5. В первых 10 играх у нас может быть 8 очков, ожидаемые очки 8,8 и т. Д.

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


1

Вероятно, наиболее известным примером для проверки того, насколько точным является метод оценки в рейтинговой системе, были шахматные рейтинги «Эло против остального мира» на соревнованиях по Kaggle , структура которых была следующей:

Участники тренируют свои рейтинговые системы, используя тренировочный набор из более чем 65 000 недавних результатов для 8 631 топ-игрока. Затем участники используют свой метод, чтобы предсказать результат еще 7809 игр.

Победителем стал Эло ++ .

Теоретически, это хорошая схема тестирования для ваших нужд, даже если 18 совпадений не являются хорошей базой для тестирования. Вы даже можете проверить различия между результатами для различных алгоритмов (вот сравнение между rankade , нашей системой ранжирования и наиболее известными, включая Elo , Glicko и Trueskill ).


0

Вы хотите проверить гипотезу о том, что вероятность результата зависит от совпадения. ЧАС0Таким образом, каждая игра, по сути, является броском монеты.

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

Если вас интересует качество рейтинговой системы Elo для вашей игры, простой способ - провести 10-кратную перекрестную проверку прогнозирующей эффективности модели Elo (которая фактически предполагает, что результаты не были выявлены, но я ' Я проигнорирую это) и сравниваю это с монетой.


Чтобы быть более конкретным. У меня 8 игроков и только 18 игр. Итак, есть много пар игроков, которые не играли друг с другом, и было много пар, которые играли только друг с другом. Как следствие, я не могу оценить вероятность выигрыша для данной пары игроков. Я также вижу, например, что есть игрок, который выиграл 6 раз в 6 играх. Но, может быть, это просто совпадение.
Роман
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.