2. 1. 분석동기 및 데이터 처리
농구 선수는 5개의 포지션 구분되나,
선수의 플레이 스타일로 포지션을 재정의 후
이를 통해 심도있는 선수분석을 목적
* 데이터 출처
NBA.com
NBAminer.com
Basketball-reference
ESPN.com
Elias Sports Bureau
Spotrac.com
이상치를 제거하기 위해 출전 경기 30경기 이상,
경기당 평균 출전시간 10분 이상의 선수만 선택
총 152개의 변수에서 실제 NBA 기록의 중요도
및 중복되는 부분을 감안하여 90개의 변수
3. 2. Model setup
* Classification 모델 선택
(1) K-means(K-means++)
: 주어진 데이터를 k개의 클러스터로 묶는 알고리즘으로, 각 클러스터와 거리차이의
분산을 최소화 하는 방식
(2) Hierarchical Clustering
: 처음에 n개의 군집으로부터 시작하여 점차 군집의 개수를 줄여나가는 방법
(3) EM Clustering
: 관측되지 않는 잠재변수에 의존하는 확률모델에서 최대가능도를 갖는 매개변수를
찾는 반복적 알고리즘
(4) 가장 결과가 좋은 것? K-means++
→ Silhouette coeffients 값이 제일 높은 k-means ++로 clustering을 진행
4. 3. 클러스터별 labeling
클러스터별 특징을 파악하기 위해서 클러스터의 지표 평균을 내주어 위와 같은 그래프를 구현
총 10가지 포지션에 대해서
각 클러스터별 특징을 잘 드러내는 이름으로 labeling 함
(ex : Aggressive big : 공격 리바운드와 블록, 득점력이 강한 선수 )
5. 4. Apply basketball analysis by clustering data
총 10가지 포지션에 대해서 년도 별 포지션의 증감을 알게 됬으며,
각 포지션 간의 상관관계를 구해서
농구의 시대별 흐름(1990년대, 2000년대 등) 에 따른 포지션 증감에 대해서 알아볼 수 있게 됨
6. 5. 결론 및 추후과제
* 결론
- K-Means 클러스터링을 이용하여 NBA Position에 대해 기존의 5가지의 분류와는
다른 새로운 10가지 포지션으로의 분류를 시행함
- 새롭게 정의한 포지션 별 년도별 흐름 파악 및 포지션별 관계
* 추후과제
- 수비에 관한 구체적인 기록들이 많이 반영되지 않아 향후 수비 관련 지표들에
대해 더 추가하여 반영할 필요가 있음
- 2차 스탯 및 플레이오프 스탯 등을 반영할 수 있는 더 정교한 모델 및 클러스터링
작업과 추가적 데이터 확보