
Baseline — NBA Game and Data Analysis
Baseline — 계산 근거를 보여주는 NBA 분석
⚠ NBA 통계 분석 전용 — 베팅이나 도박 관련 조언은 제공하지 않습니다. 아래의 모든 수치는 명시적인 불확실성 범위를 가진 모델링된 확률이며, 선택이나 추천이 아닙니다. 이 도구는 행동 라벨을 부여하지 않으며 결과를 확정적으로 제시하지 않습니다.
하는 일
Baseline은 NBA 경기를 공개된 NBA 통계만으로 재현 가능한 통계 분석으로 바꿉니다. 경기를 요청하면 모델링된 스코어, 홈 마진, 스프레드, 토털, 승률, 중앙 60% 범위가 나옵니다. 선수를 요청하면 예상 출전 시간과 함께 모델링된 득점, 리바운드, 어시스트, 3점슛, PRA가 나옵니다.
차이는 숫자 뒤에 무엇이 있는지에 있습니다. 모든 분석에는 모델 버전, 데이터 기준 시점(cutoff), 기준 시즌이 붙고, 아직 경기가 없는 시즌에는 폴백했다는 사실을 명시하는 플래그가 붙습니다. 표를 쓰는 것은 결정론적 렌더러이며 언어 모델이 문장을 즉흥적으로 쓰는 것이 아니므로, 같은 기준 시점의 같은 요청은 같은 답을 돌려줍니다.
언제 쓰는가
- 특정 경기의 프리게임 판단. "10월 23일 레이커스 대 76ers, 모델은 어떻게 보나?" 분위기가 아니라 공개 통계에서 나온 스코어, 마진, 승률을 원할 때.
- 새 로스터의 새 시즌. 로스터는 매 여름 바뀝니다. Baseline은 지난 시즌 팀을 조용히 재사용하는 대신 현재 로스터와 각 선수의 NBA 이력으로 240분 로테이션을 다시 구성합니다.
- 출전 시간 근거가 있는 선수 수치. 출전 시간이 추정치를 움직이고, 기재된 동료 상태가 그 시간을 재분배합니다. 그래서 "이 숫자가 왜 이렇지?"에 실제 답이 있습니다.
- 숫자를 설명해야 할 때. 수치의 출처를 설명해야 하는 분석가, 기자, 판타지 플레이어에게는 기준 시점, 기준 시즌, 로테이션, 전체 JSON이 함께 제공됩니다.
작동 방식
- 로테이션 구성. 미래 경기의 경우 CLI가 두 팀의 공개된 대상 시즌 로스터와 각 선수의 전 시즌 NBA 이력을 가져온 뒤, 10명·240분, 선수당 최대 38분의 로테이션을 추정합니다.
- 사전값 축소. 선수의 온코트 공격 레이팅, 수비 레이팅, 페이스를
0.60 × min(1, prior_player_minutes / 1200)로 전 시즌 리그 평균 쪽으로 축소한 다음, 추정 로테이션 분으로 가중합니다. - 로스터와 팀 혼합. 로스터 프로필은 이전 팀 프로필과
clamp(0.90 − 0.45 × retained_prior_rotation_minutes_share, 0.45, 0.90)로 혼합됩니다. 지난 시즌 로테이션이 더 많이 사라질수록 모델은 새 로스터를 더 신뢰합니다. 로스터 변동은 신뢰도 라벨이 아니라 숫자 자체를 바꿉니다. - 실제 경기 반영. 두 팀이 경기를 치르면 관측 프로필이
games / (games + 12)가중으로 섞입니다. 1경기 표본은 숫자를 거의 움직이지 않습니다. - 득점으로 변환. 각 공격을 리그 평균을 기준으로 상대 수비와 맞붙이고, 모델링된 페이스로 환산한 뒤 홈 코트와 알려진 휴식으로 조정합니다.
- 불확실성 정량화. 잔차의 정규분포에서 승률과 요청한 임계값 확률을 산출합니다. 로스터 변동과 NBA 이력이 없는 선수는 숨기지 않고 범위를 넓힙니다.
무엇이 다른가
- 실제로 누가 뛰는지를 모델링합니다. 대부분의 빠른 분석은 지난 시즌 팀 레이팅을 재사용합니다. Baseline은 공개 로스터와 각 선수의 이력으로 현재 로스터 로테이션을 구성하고, 공식 부상 보고서에 누군가 결장으로 올라오면 그 240분을 재분배합니다.
- 숫자는 재현됩니다. CLI가 보고서를 렌더링하고 실행마다 모델 버전, 기준 시점, 기준 시즌, 폴백 플래그를 찍습니다. 분석을 다시 돌려 같은 값에 도달하거나, JSON을 열어 추적할 수 있습니다. 기억으로 답하는 채팅 모델은 둘 다 못 합니다.
- 출처를 밝히고 값을 라벨링합니다. 팀·선수 통계는 ESPN 공개 통계에서, 부상 상태는 허용 목록 도메인의 타임스탬프가 찍힌 NBA 공식 부상 보고서 PDF에서 가져옵니다. 그 출처가 공개하지 않는 것 — 개별 레이팅과 사용률 — 은 여기서 명시된 공식으로 계산하며, 공개값이 아니라 계산값으로 라벨링합니다. 필요한 로스터나 출처를 구할 수 없으면 실행은 실패하고 그렇게 말합니다. 다른 출처로 조용히 대체하거나 추측하지 않습니다.
예시
입력: game --home PHI --away BOS --season 2026-27 --as-of 2026-11-10 (선택: --margin-threshold 4.5 또는 --total-threshold 224.5)
출력: 경기 제목과 세 개의 Markdown 표 — 스코어, 홈 마진과 중앙 60% 범위, 토털, 승률, 출전 가능 여부, 기준 시즌, 신뢰도를 담은 모델/컨텍스트 표; 모델링된 강점, 약점, 주요 영입과 이탈, 100 포제션당 공격/수비/넷 인원 효과를 담은 두 팀 로스터 표; 신인 선수의 출전 시간과 역할 신호, 출전 가능 여부에 따른 출전 시간 및 박스스코어 변화를 담은 두 팀 인원 영향 표.
해당 명령의 출력 예시는 필라델피아 113.2, 보스턴 115.3, 홈 마진 −2.0, 승률 0.4426 — 보스턴의 근소한 우위로, 억지로 단정한 예측이 아니라 모델이 말한 그대로입니다.
입력 형식
- 두 팀과 날짜를 지정하는 자연어 요청
- 시즌 선택(
2025-26,2026-27)과 명시적 대상 날짜--as-of - 선수 이름, 팀 지정 여부는 선택
- 선택적 스탯 지정:
pts,reb,ast,fg3m,pra,all - 사용자가 직접 주는 선택적 임계값 — 마진, 토털, 또는 선수 스탯 하나
- NBA 공식 부상 보고서 PDF로 가는 선택적 직접 URL(
official.nba.com또는ak-static.cms.nba.com이어야 함) - 선택적 수동 시나리오 조정(포인트)
- 중국어 또는 영어로 렌더링된 Markdown 표, 또는
--format json/--output으로 전체 JSON
커버리지와 데이터 깊이
출처: ESPN 공개 통계, 그리고 허용 목록 도메인의 타임스탬프가 찍힌 NBA 공식 부상 보고서 PDF.
- 팀 프로필 — 공격 레이팅, 수비 레이팅, 넷 레이팅, 페이스, 경기 수
- 최근 흐름 — 시즌 중 혼합에 쓰는 구단의 최근 N경기
- 휴식 맥락 — 구단 자체의 경기 로그와 날짜
- 선수 경기 이력 — 경기당 출전 시간, 득점, 리바운드, 어시스트, 3점슛, 날짜
- 선수 역할·사용률 사전값 — 시즌 출전 시간, 레이팅, 사용률. 개별 레이팅과 사용률은 공개값이 아니라 여기서 계산합니다
- 36분당 박스 레이트 — 득점, 리바운드, 어시스트, 3점슛
- 일정 — 경기 ID, 날짜, 홈/원정 배정
- 로스터 — 대상 시즌 로스터. 과거 시즌은 그 시즌 자체 통계로 재구성합니다
- 출전 가능 여부 — 타임스탬프가 찍힌 NBA 공식 부상 보고서 PDF
하지 않는 것
- 숫자를 어떻게 쓸지는 알려주지 않습니다. 임계값은 사용자가 주는 것이고, 도구는 그 위의 모델 확률만 돌려주며 행동 라벨을 붙이지 않습니다.
- 스타팅 파이브나 출전 시간 제한을 확인해 주지 않습니다. 공식 보고서는 라인업을 증명하지 않으므로, 공식 확인 출처를 제공하지 않는 한 이 항목은 이용 불가로 남습니다.
- 학습된 앙상블이 아닙니다. 하이퍼파라미터 피팅, 상대별 선수 수비, 이동·고도·심판 변수, 플레이바이플레이 포제션은 없습니다.
- 아직 캘리브레이션되지 않았습니다. 모델 자체의 검증 상태는 가중치와 불확실성 항이 워크포워드로 학습되지 않았다고 밝힙니다. 표본이 작거나 출전 가능 여부가 불명확할 때는 신뢰도를 낮게 보십시오.
- 과거 로스터의 포지션이나 등번호는 주지 않습니다. 과거 경기의 로스터는 그 시즌 자체 통계로 재구성합니다 — 출전 시간을 기록한 모든 선수입니다. 따라서 누가 뛰었는지에는 정확하고, 포지션과 등번호는 추측하지 않고 이용 불가라고 분명히 말합니다.


