새총 으로 포 를 바 꾸 고 python 3 대 선수 들 에 게 빅 데이터 다운 (인자 분석 득점) 을 하여 호 날 두 에 게 합격 기 를 찾 아 준다.

원문 은 '유열 의 기술 블 로그' https://v3u.cn/a_id_176 에서 전재 되 었 다.
유 벤 투 스 는 UEFA 챔피언 스 리그 트로피 가 필요 하 다 는 것 은 잘 알려 져 있 으 며, 호 날 두 도 UEFA 챔피언 스 리그 트로피 를 하나 더 받 아 자신의 명 예 를 위해 금상첨화 하고 싶 어 한다.이탈리아 프로 축구 연맹 (UEFA) 챔피언 스 리그 8 강 에서 프랑스 프로 축구 연맹 (UEFA) 챔피언 스 리그 (UEFA) 챔피언 스 리그 (UEFA) 챔피언 스 리그 (UEFA) 챔피언 스 리그) 팀 리 암 에 게 탈락 해 뼈 아 팠 다. 팀 은 사리 감독 을 해고 하고 명 숙 필 로 와 계약 했다. 하지만 유럽 축구 연맹 (UEFA) 챔피언 스 리그 에서 우승 하려 면 아직 부족 하 다. 팀 에 무엇이 필요 할 까?맞 아, 강력 한 센터 가 필요 해. 사인 센터 이과 가 난감 한 상황 에서 유 벤 투 스 는 강력 한 센터 를 영 입 해 야 해.
문 제 는 새 시즌 을 앞 두 고 코로나 상황 속 에서 팀 의 금융 긴축 속 에서 과연 누가 적 격 한 지원군 인가 하 는 것 이다.이번 에는 Python 3 기반 factor 를 사용 합 니 다.analyzer 라 이브 러 리 는 선 수 를 분석 해 유 벤 투 스 가 가장 잘 어 울 리 는 선 수 를 찾 으 려 했다.
우선 범 위 를 정 하고 불가능 한 계약 을 배제 하 자. 예 를 들 어 바 이 에 른 의 레 반 도 프 스키 나 뜨 거 운 가시 의 해리 케 인, 혹은 레 알 마드리드 의 하 짐 벤 저 마 등 세 사람 은 모두 세계 적 인 센터 이지 만 몸값 등 여러 가지 요인 으로 인해 그들 이 유 벤 투 스에 합류 할 가능성 은 무한 정 제로 에 가 까 워 졌 다.그래, 현실 적 으로 바 르 셀 로 나의 수 아 레 스, 로마 의 철 과, 그리고 말 경주 의 모 라 타 야 말로 가능 한 사람 이다. 수 아 레 스 는 이미 바 르 셀 로 나 와 사이 가 틀 어 졌 고 가출 은 거의 필연 적 이다.모 라 타 는 다음 시즌 에 도 칼 드 론 구장 에 나타 나 지 않 을 것 이다. 철 코 는 로마 에서 잘 지내 고 있 지만 더 높 은 영 예 를 원 하 는 것 이 분명 하 다.
데이터 분석 은 우선 데이터 가 있어 야 한다. 세 시즌 의 경기 데 이 터 를 살 펴 보 자.
먼저 서 갑 에 있 는 수 아 레 스 와 모 라 타 를 살 펴 보 자.
여기 서 센터 의 가장 중요 한 두 가지 데 이 터 를 뽑 아 골 수 와 골 전환 율 을 보면 골 수가 4 개 차이 가 나 는 상황 에서 모 라 타의 골 전환 율 은 14.5% 로 수 아 레 스 의 19% 에 뒤 처 진 것 을 볼 수 있다.
센터 로 서 골 을 넣 는 것 외 에 도 일정한 책동 능력 이 필요 하 다. 그러면 호 날 두 의 뒤 꽂 기 에 도움 을 줄 수 있다.
모 라 타 는 대책 능력 에서 도 수 아 레 스에 게 뒤 처 진 것 을 볼 수 있다. 의 갑 에 있 는 철 과 와 이 과 인의 데 이 터 를 살 펴 보 자.
철 과 는 지난 시즌 공격 능력 이 든 대응 능력 이 든 이과 인 보다 훨씬 강 했다.
지금 우 리 는 고급 데 이 터 를 추출 합 니 다. 여 기 는 골, 전환 율 과 어 시 스 트 를 특징 샘플 로 합 니 다. 물론 원 하신 다 면 다른 특징 도 추가 할 수 있 습 니 다. 여 기 는 간단하게 보 여 드 리 는 것 일 뿐 이지 만 주의해 야 합 니 다. 데이터 모델 링 은 유한 한 참고 가치 만 있 습 니 다. 왜냐하면 선수 들 의 개인 적 인 요소, 예 를 들 어 선수 국적, 선수 스캔들 등 이 있 기 때 문 입 니 다.선수 개인의 목표 포 지 셔 닝 (또는 기대치), 선수 의 부상 경력 과 심각 성 등 은 모두 참고 자료 가 없다.
그래서 우 리 는 순 능력 데 이 터 를 핵심 으로 고려 하고 선수 들 의 이적 몸값 과 연봉 등 원가 요 소 는 연간 원가 계산 을 하지 않 으 며 이론 적 으로 도 주관적 인 측면 에서 이적 뉴스 에 따라 판단 한다 고 할 수 있다.마찬가지 로 선수 와 소속 팀 의 훈련 수준 도 참고 자료 로 삼 지 않 는 다. 아무리 재능 이 높 은 선수 라 도 장기 적 으로 같은 수준 에 있 지 않 은 선수 나 코치 와 함께 훈련 하면 기대치 와 큰 차 이 를 초래 할 수 있 기 때문이다.
데이터 세트 에 데 이 터 를 추가 합 니 다:
import pandas as pd  
import numpy as np  
from pandas import DataFrame,Series  
  
#       
mydata = {  
       '  ':[16,12,16,8],  
       '     ':[19,14,13,10],  
       '  ':[8,2,7,4],  
}  
data = DataFrame(mydata)  
  
data.index=['    ','   ','  ','   ']  
  
print(data)

데이터 매트릭스:
               
      16     19   8  
      12     14   2  
      16     13   7  
       8     10   4

인자 분석 은 원시 데이터 관련 계수 내부 구조 에 대한 연 구 를 통 해 여러 지 표를 서로 관련 이 없고 관측 할 수 없 는 임 의 변수 (즉 인자) 로 전환 시 켜 기 존의 지표의 대부분 정 보 를 추출 하 는 통계 방법 이다.인자 분석 은 먼저 원시 데 이 터 를 표준화 처리 하고 관련 계수 행렬 을 구축 하 며 그 특징 값 과 특징 벡터 를 계산한다. 그 다음 에 그 중에서 특징 값 이 1 보다 큰 특징 값 개 수 를 공공 인자 수 로 선택 하거나 특징 값 의 누적 기여 율 이 80% 이상 에 따라 공공 요 소 를 확정 하고 양 교 또는 경사 교차 인자 부하 행렬 을 구한다.마지막 으로 공인 자 득점 과 종합 득점 을 계산한다.
첫 번 째 단계, 인자 분석 모델 구축:
from factor_analyzer import FactorAnalyzer, Rotator  
  
fa = FactorAnalyzer(rotation=None)  
fa.fit(data)

print(fa.loadings_)


공공 인자 와 기 존의 변수 지표 간 의 관련 정 도 는 인자 부하 값 에 의 해 나타 나 는데 초기 인자 부하 행렬 구조 가 간단명료 하지 않 기 때문에 각 인자 의 의미 가 뚜렷 하지 않다.이 를 위해 방 차 최대 법 을 사용 하여 각 변 수 를 특정한 인자 에 비교적 높 은 부하 가 생기 게 하고 나머지 인자 에 부하 가 비교적 적다.
그러나 공공 인자 와 기 존의 변수 지표 간 의 관련 정 도 는 인자 부하 값 에 의 해 나타 나 는데 초기 인자 부하 행렬 구조 가 간단명료 하지 않 기 때문에 각 인자 의 의미 가 뚜렷 하지 않다.이 를 위해 방 차 최대 법 을 사용 하여 각 변 수 를 특정한 인자 에 비교적 높 은 부하 가 생기 게 하고 나머지 인자 에 부하 가 비교적 적 으 며 특징 데이터 의 교체 수렴 을 통 해 회전 후 인자 부하 행렬 을 얻 을 수 있다.
rotator = Rotator()  
print("     :
", rotator.fit_transform(fa.loadings_))

그 다음 에 우 리 는 변수의 방 차 를 간단하게 볼 수 있다. 즉, 모든 원시 변수 가 모든 공통 인자 의 부 하 량 의 제곱 합 이다. 즉, 원시 변수 방 차 에서 공통 인자 가 결정 하 는 비율 을 말한다.변수의 방 차 는 공동 인자 와 유일한 인자 로 구성 된다.공통점 은 원시 변수 분산 에서 공동 인자 에 의 해 해 해 석 될 수 있 는 부분 을 나타 낸다. 공통점 이 클 수록 변 수 는 인자 에 의 해 설명 되 는 정도 가 높다. 즉, 인자 가 이 변 수 를 해석 할 수 있 는 분산 이 많다 는 것 이다.공통 적 인 의 미 는 원시 변 수 를 공통 인자 로 대체 하면 원시 변수의 정보 가 보존 되 는 정 도 를 설명 하 는 데 있다.
print(fa.get_communalities())

인자 관련 행렬 과 특징 값 도 볼 수 있 습 니 다.
print(fa.get_eigenvalues())

물론 우리 의 최종 목적 은 인자 모델 에 따라 각 선수 에 대해 종합 적 으로 점 수 를 매 기 는 것 이다. 마지막 으로 각 인자 의 분산 기여 율 이 3 개의 인자 분산 기여 율 에서 차지 하 는 비중 을 가중치 로 가중 하여 각 선수 의 종합 득점 F 를 얻 는 것 이다. 즉,:
def F(factors):  
    return sum(factors*fa.get_factor_variance()[1])

그 다음 에 행렬 에서 순서대로 계산 할 수 있다.


scores = []  
for i in range(len(fa.transform(data))):  
    new = F(fa.transform(data)[i])  
    scores.append(new)  
  
print(scores)


값 배열 가 져 오기:
[0.7294004536510521, -0.2958329655707666, 0.530110265958429, -0.9636777540387146]

그리고 우 리 는 원 행렬 에 데 이 터 를 추가 할 수 있 습 니 다.
data['    '] = scores
print(data)

새 행렬 가 져 오기:
                         
      16     19   8  0.729400  
      12     14   2 -0.295833  
      16     13   7  0.530110  
       8     10   4 -0.963678

또한 새 필드 열 에 따라 정렬 하여 데이터 보 여주 기 편 하도록 지정 할 수 있 습 니 다.
data = data.sort_values(by='    ',ascending=False)

정렬 된 행렬 가 져 오기:
                         
      16     19   8  0.729400  
      16     13   7  0.530110  
      12     14   2 -0.295833  
       8     10   4 -0.963678

원 하신 다 면 행렬 을 시각 적 으로 조작 할 수 있 습 니 다. 여기 서 수평 막대 그래프 를 예 로 들 면:
import matplotlib.pyplot as plt  
import matplotlib  
  
matplotlib.rcParams['font.sans-serif'] = ['SimHei']  
matplotlib.rcParams['axes.unicode_minus'] = False  
  
  
plt.barh(range(4), scores, height=0.7, color='steelblue', alpha=0.8)    
plt.yticks(range(4), ['    ','   ','  ','   '])  
plt.xlim(-1,2)  
plt.xlabel("  ")  
plt.title("    ")  
for x, y in enumerate(scores):  
    plt.text(y + 0.2, x - 0.1, '%s' % y)  
plt.show()

종합 평 점 에 따 르 면 수 아 레 스 는 최고의 선택 이 었 다. 물 러 나 서 철 과 를 구 했다. 세 번 째 선택 은 모 라 타 였 다. 어쨌든 이들 세 사람의 종합 능력 은 팀 내 이과 인 보다 강 했다. 이런 측면 에서 모 라 타 를 선택 하 더 라 도 이과 인 을 잔류 시 키 는 것 보다 더 좋 은 선택 이 었 다.
결어: 반드시 지적 해 야 할 것 은 선수 특징 이 형 성 된 데이터 결 과 는 결정 을 내 리 는 주요 근거 가 되 어 서 는 안 되 고 참고 로 만 존재 할 수 있다 는 것 이다. 데이터 에 지나치게 의존 하면 역 효 과 를 얻 을 수 있다. 예 를 들 어 축구계 의 '데이터 전술의 대가' 라 고 불 렸 던 베 니 트 스 는 데이터 에 따라 첫 번 째 진형 의 조작 이 시 끄 러 웠 는데 지금 은?미 드 필 더 리그 에 섞 여 있 을 수 밖 에 없다.본 논문 이 발표 한 2020 년 9 월 24 일 새벽 까지 유 벤 투 스 클럽 은 임대 형식 으로 모 라 타 를 영 입 했 고 수 아 레 스 는 600 만 파 운 드 를 마드리드, 철 코 로 이적 했다.유 벤 투 스 는 인자 분석 모델 점수 가 높 지 않 은 모 라 타 를 선 택 했 는데, 모 라 타 는 호 날 두 의 꿈 을 이 룰 수 있 을 까?새 시즌 챔피언 스 리그 에서 누가 소 귀 를 잡 습 니까?지 켜 보 자.
원문 은 '유열 의 기술 블 로그' https://v3u.cn/a_id_176 에서 전재 되 었 다.

좋은 웹페이지 즐겨찾기