Логістична регресія та структура набору даних


17

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

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

Будь-яка допомога, яку ви можете надати, буде дуже вдячна!

З повагою.


Важке запитання! Я здогадуюсь, що це допоможе дізнатися більше, ніж я, про процеси підрахунку (і більше, ніж робить Wikipedia: en.wikipedia.org/wiki/Counting_process )
onestop

Чи маєте Ви доступ до журналу ASA Chance? Мені здається, в минулому році з’явилася відповідна стаття, про хокей чи інший вид спорту.
rolando2

Я намагаюся переформулювати проблему (стимулювати дискусію?): Скажімо, у нас є набір дискретних станів у грі (наприклад, у tic-tac-toe). Тепер розумно створити одну модель для кожної держави (можливо, використовуючи логістичну регресію) для прогнозування результату. Тепер ТУТ у нас теж гра, але з безперервними станами (тобто ігровий час). Питання ОП зараз полягає в тому, як: а) розрізнити час на кінцеві задані стани або б) як побудувати модель, параметри якої залежать (!) Від поточного часу гри. Має бути хтось, хто вже вирішив цю "загальну" проблему.
steffen

Відповіді:


9

Зробіть логістичну регресію з коваріатами "час гри" та "голи (команда господарів) - голи (гостьова команда)". Вам знадобиться ефект взаємодії в цих умовах, оскільки 2-гольовий відрив на таймі матиме набагато менший ефект, ніж 2-гольовий відрив із залишеною лише 1 хвилиною. Ваша відповідь - "перемога (домашня команда)".

Не тільки припустити , лінійність для цього підходять плавно змінюється модель коефіцієнта для ефекту «цілей (господарів поля) - цілі (відстань команди)», наприклад , в R можна використовувати mgcv«s gamфункцію з модельною формулою типу win_home ~ s(time_remaining, by=lead_home). Зробіть lead_homeкоефіцієнт, щоб ви отримали різний ефект time_remainingдля кожного значення lead_home.

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


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

1
Будьте обережні з незалежністю, що формується, включивши кілька часових відрізків. Випадкова (багаторівнева) модель може допомогти.
Едуардо Леоні

1
@ Едуардо: Я погоджуюся, що залежність не моделюється і що це дещо проблематично, дякую, що вказав на це. Я не впевнений, як допоможуть випадкові ефекти - оскільки бінарний результат win_homeпостійний на рівні групування (тобто для всіх часових відрізків для будь-якої відповідності це або 0, або 1), включаючи, наприклад, випадковий перехоплення для матчів просто призведе до величезних проблем з розділенням у цьому контексті.
фабі

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

6

Я б почав моделювати дані з іграшкової моделі. Щось на зразок:

n.games <- 1000
n.slices <- 90

score.away <- score.home <- matrix(0, ncol=n.slices, nrow=n.games)

for (j in 2:n.slices) {
  score.home[ ,j] <- score.home[ , j-1] + (runif(n.games)>.97)
  score.away[ ,j] <- score.away[ , j-1] + (runif(n.games)>.98)
}

Тепер нам є з чим пограти. Ви також можете використовувати необроблені дані, але я вважаю, що моделювання даних дуже корисно для продумування.

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

score.dif <- score.home-score.away

windf <- data.frame(game=1:n.games, win=score.home[ , n.slices] > score.away[, n.slices])

library(reshape)
library(ggplot2)

dnow <- melt(score.dif)
names(dnow) <- c('game', 'time', 'dif')
dnow <- merge(dnow, windf)

res <- ddply(dnow, c('time', 'dif'), function(x) c(pwin=sum(x$win)/nrow(x)))

qplot(time, dif, fill=pwin, data=res, geom='tile') + scale_color_gradient2() 

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

Сюжет


1

Ознайомтеся з думками про статистику у футбольних аутсайдерів , а також у книзі « Математика» для натхнення.

Хлопці футбольних аутсайдерів роблять передбачення гри на основі кожної гри у футбольній грі.

Вінстон у математиці використовує деякі методи, такі як динамічне програмування.

Ви також можете розглянути інші алгоритми, такі як SVM.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.