Як довести, що рейтинг "Ело" або "Рейтинг сторінки" має значення для мого набору?


13

У мене є набір гравців. Вони грають один проти одного (попарно). Пари гравців вибираються випадковим чином. У будь-якій грі виграє один гравець, а інший програє. Гравці грають один з одним обмеженою кількістю ігор (деякі гравці грають більше ігор, інші менше). Отже, у мене є дані (хто перемагає проти кого і скільки разів). Тепер я припускаю, що кожен гравець має рейтинг, який визначає ймовірність виграшу.

Я хочу перевірити, чи справді це припущення є правдою. Звичайно, я можу використовувати систему оцінювання Elo або алгоритм PageRank для розрахунку рейтингу для кожного гравця. Але, обчислюючи рейтинги, я не доводжу, що вони (рейтинги) насправді існують або що вони щось означають.

Іншими словами, я хочу мати спосіб довести (або перевірити), що гравці мають різні сили. Як я можу це зробити?

ДОБАВЛЕНО

Якщо бути конкретнішим, у мене є 8 гравців і лише 18 ігор. Отже, є багато пар гравців, які не грали один проти одного, і є багато пар, які грали один раз один з одним. Як наслідок, я не можу оцінити ймовірність виграшу для даної пари гравців. Я також бачу, наприклад, що є гравець, який виграв 6 разів у 6 іграх. Але, можливо, це просто збіг.


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

@onestop: Усі гравці, що мають однакову силу, були б дуже неймовірними, чи не так? Чому ви пропонуєте це як гіпотезу?
ендоліт

Відповіді:


10

Вам потрібна модель вірогідності.

Ідея системи ранжування полягає в тому, що одне число адекватно характеризує здібності гравця. Ми можемо назвати це число їх "силою" (тому що "ранг" вже означає щось конкретне в статистиці). Ми б прогнозували, що гравець A переможе гравця B, коли сила (A) перевищить силу (B). Але це твердження занадто слабке, оскільки (а) воно не є кількісним і (б) воно не враховує можливості слабшого гравця, який періодично б'є сильнішого гравця. Ми можемо подолати обидві проблеми, припустивши, що ймовірність того, що A б'є B, залежить лише від різниці в їх сильних сторонах. Якщо це так, то ми можемо повторно виразити всі сильні сторони, необхідні, щоб різниця в сильних сторонах дорівнювала шансам на виграш.

Конкретно ця модель є

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

де, за визначенням, - коефіцієнт журналу, і я написав для сили гравця A тощо.logit(p)=log(p)log(1p)λA

Ця модель має стільки ж параметрів, скільки гравців (але є одна менша ступінь свободи, оскільки вона може визначати лише відносні сильні сторони, тому ми б фіксували один з параметрів довільним значенням). Це своєрідна узагальнена лінійна модель (у сімействі Біноміальних, з logit-посиланням).

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

Зокрема, ймовірність набору ігор є продуктом

всі ігридосвід(λпереможець-λневдаха)1+досвід(λпереможець-λневдаха).

Після фіксації значення однієї з , оцінки інших - це значення, які максимально збільшують цю ймовірність. Таким чином, варіювання будь-якої з оцінок знижує ймовірність від її максимуму. Якщо вона зменшена занадто сильно, це не відповідає даним. Таким чином ми можемо знайти довірчі інтервали для всіх параметрів: вони є межами, в яких зміна оцінок не надто зменшує ймовірність журналу. Загальні гіпотези можна аналогічно перевірити: гіпотеза обмежує сильні сторони (наприклад, якщо припустити, що вони всі рівні), це обмеження обмежує, наскільки велика ймовірність може отримати, і якщо цей обмежений максимум занадто далеко не перевищує фактичного максимуму, гіпотеза відхилено.λ


У цій конкретній проблемі є 18 ігор та 7 безкоштовних параметрів. Загалом, це занадто багато параметрів: є стільки гнучкості, що параметри можна досить вільно змінювати, не змінюючи максимальної ймовірності сильно. Таким чином, застосування механізму ML може виявити очевидне, а це те, що, ймовірно, недостатньо даних для впевненості в оцінках міцності.


2
(+1) Щоб допомогти ОП у додатковому пошуку за цією моделлю, ось кілька додаткових моментів. (1) Цю модель часто називають моделлю Бредлі-Террі (хоча вона приходить хоча б до деякої роботи Зермело). (2) Вважаючи , передбачена можливість розуміли є . (3) Якщо буде проведено турнір з повним кругообігом (що тут не так), рейтинг сильних сторін точно збігатиметься із відсотками виграшу кожного гравця. (4) Корисність придатності пов'язана з потоками по графіку з гравцями як вузлами та іграми як ребрами. A B s A / ( s A + s B )сА=досвід(λА)АБсА/(сА+сБ)
кардинал

(продовження) Лестер Р. Форд-молодший навіть у статті американець обговорював відповідний алгоритм, заснований на цій ідеї . Математична п'єса щомісяця з 1957 року написана на честь батька.
кардинал

4

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

Налаштуйте дані таким чином, щоб у вас були дві змінні: "переможець" та "програв", що містять ідентифікатор переможця та програвача для кожної гри, тобто кожне "спостереження" - це гра. Потім ви можете створити таблицю на випадок виграшів та програв. Ваша нульова гіпотеза полягає в тому, що ви очікуєте, що ця таблиця буде симетричною (в середньому протягом повторних турнірів). У вашому випадку ви отримаєте таблицю 8 × 8, де більшість записів дорівнює нулю (відповідає гравцям, які ніколи не зустрічалися), тобто. таблиця буде дуже рідкою, тому майже точно буде потрібний «точний» тест, а не посилання на асимптотику.

Такий точний тест доступний у Stata за допомогою команди симетрії . У цьому випадку синтаксис буде таким:

symmetry winner loser, exact

Без сумніву, він також реалізований в інших статистичних пакетах, з якими я менш знайомий.


(+1) Це смішно, я щойно зрозумів, що ця команда Stata може бути використана для тесту на передачу / нерівновагу в генетиці :) Я обговорював R-пакети у попередній відповіді, stats.stackexchange.com/questions/5171/… .
chl

Дійсно, TDT - це одна програма, про яку йдеться у довідці щодо Stata, про яку я посилався вище. Це також контекст, в якому я вперше зіткнувся з цим випробуванням. Дякуємо за посилання на попередній Q - схоже, я був зайнятий іншими питаннями, коли він був розміщений.
onestop

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

1

Ви перевірили деякі публікації Марка Глікмана? Ці здаються актуальними. http://www.glicko.net/

Неявне в стандартному відхиленні оцінок - це очікувана цінність гри. (Це стандартне відхилення фіксується на певному числі в базовому Ело та змінному в системі Гліко). Я кажу, що очікуване значення, а не ймовірність виграшу через нічиї. Ключові речі, про які слід розуміти незалежно від рейтингів Elo, - це базове припущення щодо розподілу (наприклад, нормальне або логістичне) та прийняте стандартне відхилення.

Логістична версія формул Elo дозволяє припустити, що очікуване значення різниці рейтингів у 110 балів становить .653, наприклад, гравця A з 1330 та гравця B з 1220.

http://en.wikipedia.org/wiki/Elo_rating_system (Гаразд, це посилання у Вікіпедії, але я вже витратив надто багато часу на цю відповідь.)

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

На даний момент, наступне, що я би зробив, - це перевірити це графічно, упорядкувавши прогалини від низьких до високих та підсумовуючи очікувані та фактичні результати. Отже, за перші 5 ігор ми можемо мати загальну кількість балів 2, а очікувані бали - 1,5. За перші 10 ігор у нас може бути 8 балів, а очікуваних 8,8 і т.д.

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


1

Напевно, найвідомішим прикладом для тестування того, наскільки точним є метод оцінювання в рейтинговій системі, були шахові рейтинги - Ело проти змагань решти світу по Kaggle , структура яких була такою:

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

Переможцем став Elo ++ .

Теоретично це гарна тестова схема для ваших потреб, теоретично, навіть якщо 18 матчів не є хорошою базою тесту. Ви навіть можете перевірити відмінності між результатами для різних алгоритмів (ось порівняння між ранговою позицією , нашою системою ранжирування та найбільш відомими, включаючи Ело , Гліко та Труескілл ).


0

Н0

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

Якщо вас цікавить якість системи оцінювання Elo для вашої гри, простим методом було б запустити 10-кратне перехресне оцінювання на прогнозовану ефективність моделі Elo (яка насправді передбачає, що результати не є iid, але я ' проігнорую це) і порівнюючи це з монетним переворотом.


Щоб бути більш конкретним. У мене 8 гравців і всього 18 ігор. Отже, є багато парних гравців, які не грали один з одним, і є багато пар, які грали лише один з одним. Як наслідок, я не можу оцінити ймовірність виграшу для певної пари гравців. Я також бачу, наприклад, що є гравець, який вигравав 6 разів у 6 іграх. Але може бути, це просто збіг.
Роман
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.