분석 - 트랙 선호도
들어가며
한 달 전, 락스 윤찬희 코치님이 저에게 인스타 DM을 보내왔습니다. 그동안의 밴픽 분석은 사실상 각 팀이 트랙 별로 픽과 밴을 몇 번 했는 지 정도밖에 보고 있지 않았는데, 각 선택이 선픽/선밴이었는지, 후픽/후밴이었는지, 어떤 트랙이 남은 상황에서 선택된 것인지를 고려하여 더 잘 수치화할 수 있는 방법이 없겠냐는 질문이었습니다. 간단한 통계적인 모형은 얼른 만들었고, 지난 시즌 분석까지는 일찌감치 마쳤지만 이번 시즌에 대해 얘기하기에는 데이터가 부족해서 포스팅을 미루고 있었습니다. 인스타에 티저만 올렸었죠.
제로섬 포인트 방식
그 사이에 카트라이더 갤러리에 “누리”님이 간단한 포인트 방식을 만들어서 올리셨습니다 (8강 풀리그 최종 결과). 픽의 경우 선택할 수 있었던 나머지 트랙에서 1점씩을 빼서 그만큼의 점수를 픽된 트랙에 더하고, 밴의 경우 선택할 수 있었던 나머지 트랙에서 1점씩을 더한 뒤에 그만큼의 점수를 밴된 트랙에서 빼는 제로섬 방식입니다. 8강 풀리그의 경우 다음과 같이 점수가 적용됩니다.
선밴선픽 팀 | 후밴후픽 팀 | |
---|---|---|
밴 1 | -10 | 0 |
밴 2 | 1 | -9 |
픽 1 | 9 | 1 |
픽 2 | 0 | 8 |
밴 3 | 0 | -6 |
밴 4 | -5 | 1 |
픽 3 | 1 | 5 |
픽 4 | 4 | 0 |
나머지 | 0 | 0 |
이 지표는 각 선택의 상황이 반영된 최초의 지표라는 의의가 있고, 사용하기 쉽고, 데이터가 부족한 상황에서도 어느 정도 쓸 수 있다는 장점이 있지만 각 상황에 부여된 포인트가 통계적으로 큰 의미를 갖기는 어렵다는 단점이 있습니다.
로짓 모형
제가 사용한 모형은 간단한 로짓 모형입니다. S를 선택할 수 있는 트랙들의 집합이라고 하고 팀의 트랙 선호도를 x_i로 나타낼 때, 각 팀이 어떤 트랙을 고를 확률을 P(트랙 i를 픽 | S) = exp(x_i)/(\Sigma_{j \in S} exp(x_j)), P(트랙 i를 밴 | S) = exp(-x_i)/(\Sigma_{j \in S} exp(-x_j))로 나타내는 모형입니다. 어떤 트랙을 픽할 확률은 exp(x_i)에 비례하게 되어 x_i가 클수록 픽할 확률이 높아지고, 밴할 확률은 exp(-x_i)에 비례하게 되어 x_i가 작을수록 밴할 확률이 높아지는 것이죠. 이런 류의 모형은 여러 개의 보기를 주고 가장 선호하는 선택지와 가장 비선호하는 선택지를 고르게 하는 방식의 설문조사를 분석하는 방식인 Best-worst scaling에서도 사용됩니다.
최대가능도 방법
그렇다면 모형의 모수인 x_i들의 값은 어떻게 구할까요? 여기에는 최대가능도 방법을 사용합니다. 주어진 x_i들에 대해 관측된 데이터가 나올 확률을 가능도라고 하는데, 이 가능도를 최대로 만드는 x_i를 찾는 방식입니다. 즉, 확률 모형에서 데이터가 나올 확률이 가장 높은 x_i를 모수로서 추정하는 것이죠. 구현에는 R 패키지 mlogit이 사용되었습니다.
식별 가능성 (identifiability)
여기까지의 설명에는 한 가지 문제점이 있습니다. x_i가 정해졌을 때 모든 트랙의 x_i들에 같은 숫자를 더해도 정확히 같은 확률 모형이 된다는 점이죠. 분자, 분모에 같은 수를 곱하면 같은 수가 될 뿐이니까요. 때문에 x_i를 구할 때는 일단 마지막 트랙의 x_i값을 0으로 고정하고 x_i값을 구합니다. 그리고 해석의 용이성을 위해 각 팀 별로 구해진 x_i들에서 그 평균을 빼서 x_i들의 평균이 0이 되게끔 조정해 주었습니다.
2022 시즌 1 (8강 풀리그 26경기까지)
스피드전
AX | BD | DDK | GP | KDF | LSB | LTE | PS | 종합 | |
---|---|---|---|---|---|---|---|---|---|
브라질 | 1.206 | -2.539 | 2.457 | -0.683 | 0.879 | -0.445 | -0.709 | 0.117 | -0.106 |
동이문 | 1.018 | 1.374 | -1.994 | 0.696 | -0.123 | -0.438 | -0.594 | 0.237 | 0.132 |
운다 | -1.178 | -1.729 | 1.179 | -0.142 | -2.124 | 0.597 | 1.378 | 0.995 | -0.150 |
폭우 | 1.522 | -0.918 | 1.708 | 0.343 | -1.893 | -0.786 | 0.332 | 0.689 | 0.198 |
설산 | -0.822 | 1.205 | -0.500 | -1.383 | 2.135 | 2.462 | 0.419 | -0.235 | 0.075 |
캐슬 | -1.414 | 1.785 | 2.774 | 0.704 | 0.361 | 0.024 | 1.223 | -1.004 | 0.254 |
부산 | 0.602 | 2.231 | -2.797 | 0.526 | -1.386 | -0.560 | -0.835 | -2.443 | -0.262 |
부비트랩 | -0.517 | -0.075 | -0.398 | -0.644 | 2.548 | -1.075 | -0.683 | -0.742 | -0.182 |
포오공 | 0.026 | 0.002 | 1.435 | -0.045 | -1.751 | 1.240 | 0.487 | 0.714 | 0.139 |
로비 | -0.441 | -1.336 | -3.864 | 0.628 | 1.355 | -1.018 | -1.018 | 1.671 | -0.098 |
좌표 | 1.344 | 0.725 | -2.393 | -1.100 | 0.776 | 0.556 | -1.400 | 1.886 | 0.069 |
아이템전
AX | BD | DDK | GP | KDF | LSB | LTE | PS | 종합 | |
---|---|---|---|---|---|---|---|---|---|
박쥐성 | 0.980 | -0.847 | -0.700 | -0.556 | 1.332 | -1.182 | -0.056 | 0.996 | 0.102 |
광삼지 | -1.047 | 2.004 | -0.217 | 1.808 | -1.538 | -1.757 | -0.617 | -2.251 | -0.313 |
용암굴 | -0.263 | 0.270 | -1.348 | -0.569 | -0.484 | -0.181 | 0.945 | 1.738 | 0.018 |
수상비행장 | 0.143 | -1.483 | 0.389 | 0.053 | 1.022 | 0.429 | 0.549 | 0.928 | 0.168 |
댐대결 | -0.422 | 0.076 | -0.287 | -0.967 | -0.437 | -1.357 | -1.834 | 2.339 | -0.468 |
시계탑 | -0.975 | -0.528 | -1.486 | -0.153 | -0.448 | 0.973 | -0.470 | -0.748 | -0.365 |
하프 | 0.748 | -0.955 | 0.905 | 1.096 | -1.714 | 0.930 | 1.118 | -0.641 | 0.132 |
병마용 | -0.083 | 1.480 | -0.127 | 2.498 | 0.719 | 0.127 | -0.146 | -1.492 | 0.260 |
인천 | -0.234 | 1.158 | 1.320 | -1.373 | 0.580 | 2.003 | 0.640 | -0.764 | 0.375 |
전주 | 1.153 | -1.175 | 1.550 | -1.838 | 0.969 | 0.016 | -0.128 | -0.104 | 0.091 |
심술 | 2.503 | -0.123 | -1.987 | -0.921 | 1.378 | -2.310 | 0.198 | -1.234 | -0.188 |
2021 시즌 2 (포스트시즌 포함)
스피드전
AF | BD | DYN | LSB | ROX | SGA | TBP | THR | 종합 | |
---|---|---|---|---|---|---|---|---|---|
바닷길 | -0.352 | 0.099 | -0.834 | -0.778 | 1.220 | -1.602 | 0.525 | 0.524 | -0.101 |
송수관 | 1.240 | -1.275 | 3.602 | -0.810 | 0.348 | 1.257 | -1.078 | -3.243 | -0.061 |
브로디 | 0.524 | 0.695 | 0.574 | 0.413 | 0.541 | -1.246 | 0.705 | 1.258 | 0.352 |
두바이 | -0.674 | -0.476 | 0.668 | 0.986 | -1.070 | 0.955 | 1.605 | 1.076 | 0.211 |
황산 | -0.477 | -2.138 | -0.997 | -0.070 | 0.832 | 1.028 | 0.844 | 4.082 | 0.180 |
제우스 | -0.283 | 1.526 | -1.679 | -0.566 | -0.715 | 1.133 | -2.142 | -1.939 | -0.198 |
산타 | -1.240 | 0.096 | -1.930 | 1.577 | -0.223 | -1.098 | 2.434 | 2.269 | -0.068 |
병마용 | 1.101 | -0.697 | 4.149 | 0.698 | -1.163 | -1.566 | 1.257 | -0.811 | 0.239 |
상어섬 | 0.402 | 3.477 | -2.802 | -1.725 | 0.996 | -0.174 | -2.387 | -2.398 | -0.335 |
광삼지 | -0.240 | -1.307 | -0.751 | 0.274 | -0.767 | 1.313 | -1.762 | -0.817 | -0.220 |
감시탑 | 0.087 | -0.853 | 2.206 | -1.222 | -1.575 | 1.207 | -0.941 | -0.304 | -0.134 |
아이템전
AF | BD | DYN | LSB | ROX | SGA | TBP | THR | 종합 | |
---|---|---|---|---|---|---|---|---|---|
루이 | 1.455 | 1.416 | 0.196 | 2.001 | 1.064 | -1.276 | -0.174 | -2.320 | 0.405 |
역톱니 | 0.790 | 0.152 | -0.362 | -0.912 | 1.531 | 1.549 | 0.361 | -1.312 | 0.314 |
용광로 | 0.653 | 0.251 | -0.332 | -0.943 | 0.542 | -0.214 | -1.092 | 0.006 | -0.089 |
금광 | -0.941 | 1.241 | 0.186 | -0.253 | 0.530 | -1.847 | 1.065 | 1.505 | 0.079 |
성소 | 0.256 | -0.253 | -0.622 | 1.125 | -1.283 | 1.126 | -0.395 | 2.152 | 0.141 |
붕붕 | 0.510 | -1.577 | 0.363 | 2.222 | -0.592 | -0.598 | -0.938 | 0.852 | 0.119 |
빛의길 | -0.523 | -1.462 | 0.327 | 0.436 | -2.197 | 0.432 | 3.244 | 3.062 | 0.044 |
우당탕 | 0.650 | 1.702 | -1.254 | -0.796 | 0.029 | -0.057 | -3.122 | -2.586 | -0.558 |
더스트 | -1.877 | -1.235 | 0.755 | -1.494 | -1.069 | 1.558 | 1.230 | -1.357 | -0.303 |
스핑크스 | -0.972 | -0.236 | 0.742 | -1.387 | 1.444 | -0.674 | -0.178 | -0.003 | -0.150 |
유령 | 0.679 | 0.130 | 1.514 | 1.961 | -0.605 | -1.019 | -1.382 | 1.179 | 0.229 |
이 결과는 제로섬 포인트와 대략적인 경향성은 비슷하나 약간의 차이가 있습니다. 예를 들어 LSB 스피드전의 경우, 제로섬 포인트는 이 팀이 두바이를 산타보다 선호한다는 결과를 보여주지만 실제로 둘 모두를 선택할 수 있는 상황에서 LSB는 세 번 산타를 두바이보다 먼저 선택했고, 두바이를 산타보다 먼저 선택한 것은 한 번 뿐이라는 점에서 로짓 모형이 밴픽 상황을 더 잘 고려한다는 것을 알 수 있습니다. 다만, 각 팀마다 풀 리그 내내 하는 불과 28번씩의 선택에 관한 자료만으로 10개의 모수를 추정하는 것이 어려운 경우도 있다는 문제가 있습니다. ~~다행히도 대부분의 경우 안정적인 결과가 나왔지만 진성 상어섬 덕후 블레이즈의 스피드전에서는 그러지 못했습니다. ~~
결과: 2021 시즌 1 (포스트시즌 포함)
스피드전
AF | CLG | EST | FZ | HLE | LY | ROX | SB | 종합 | |
---|---|---|---|---|---|---|---|---|---|
용운하 | 1.025 | 1.972 | 0.909 | -0.431 | -3.827 | 1.989 | 0.032 | 0.747 | 0.382 |
운다 | -1.213 | 1.863 | 0.250 | -0.905 | 2.035 | 0.032 | -1.078 | -0.918 | -0.200 |
메카닉 | -1.443 | 1.404 | 1.340 | 0.346 | -3.017 | 0.993 | -1.212 | 0.050 | -0.178 |
헬점 | 1.533 | -1.283 | -0.777 | -1.396 | 1.762 | -1.092 | 1.069 | 0.350 | 0.059 |
팩두공 | 0.587 | -3.297 | -0.855 | 0.054 | -2.895 | -0.509 | -0.577 | 2.348 | -0.272 |
상어섬 | 0.551 | -0.842 | -0.293 | 0.144 | -0.667 | -1.566 | 0.944 | -1.137 | -0.133 |
역로비 | 0.691 | 0.671 | 0.345 | -0.705 | 3.130 | 0.892 | -0.326 | -1.291 | 0.159 |
협곡 | -1.731 | -0.488 | -0.918 | 2.893 | 3.479 | -0.739 | 1.148 | -0.148 | 0.183 |
부빙 | 0.141 | -2.792 | -0.849 | -0.255 | -0.172 | -3.060 | 0.053 | -0.170 | -0.468 |
아이템전
AF | CLG | EST | FZ | HLE | LY | ROX | SB | 종합 | |
---|---|---|---|---|---|---|---|---|---|
수도원 | -0.221 | 0.537 | -0.125 | 0.886 | -1.528 | -0.878 | 1.553 | 1.375 | 0.250 |
금광 | -1.699 | 1.326 | -0.772 | 2.352 | -1.219 | -0.753 | -1.095 | -0.080 | -0.378 |
아즈텍 | 0.293 | 1.298 | -1.392 | 1.577 | 1.251 | 0.171 | -1.090 | -0.592 | 0.039 |
스포츠공원 | 0.946 | -1.621 | -0.679 | -1.654 | -1.215 | 1.689 | -0.132 | 1.243 | 0.056 |
하역장 | -1.216 | -2.294 | 2.781 | -1.476 | -0.122 | -0.046 | 0.378 | -0.264 | -0.314 |
역하프 | 1.543 | -1.605 | 0.002 | -0.090 | 0.156 | 1.047 | -1.099 | -1.137 | -0.172 |
카드 | 1.432 | 0.125 | 1.308 | -0.151 | 0.800 | -1.279 | 1.132 | -0.484 | 0.448 |
화산점프 | -1.077 | 2.235 | -1.123 | -1.444 | 1.878 | 0.049 | 0.353 | -0.060 | 0.071 |
병마용 | 1.147 | 1.207 | -0.524 | -0.863 | 1.297 | 0.710 | -1.013 | 0.294 | 0.218 |
수정 내역: 2022/4/9 2021 시즌 2 포스트시즌과 2022 시즌 1 8강 26경기까지의 자료 업데이트. 수퍼컵은 자료 부족으로 인해 다루지 않습니다.