Table des matières
Aperçu
Remarque : À propos de la NBA
Résultats de prédiction des réactions chimiques
Explication des côtés et des fractions
Prédictions de chimie pour les joueurs vedettes
Prédictions de chimie pour les métiers majeurs de la saison 2022-23
Détails techniques
Qu'est-ce que GNN ?
Qu'est-ce que l'ASC ?
Courbe d'apprentissage et progrès de l'AUC
Ensemble de données
Détails du code
Perspectives d'avenir
Conclusion
Maison développement back-end Tutoriel Python Prédire la chimie des joueurs NBA à l'aide de réseaux de neurones graphiques

Prédire la chimie des joueurs NBA à l'aide de réseaux de neurones graphiques

Jan 08, 2025 pm 12:15 PM

Predicting NBA Player Chemistry Using Graph Neural Networks

Bonjour à tous, je m'appelle sea_turt1e.

Cet article partagera le processus et les résultats de la création d'un modèle d'apprentissage automatique pour prédire l'alchimie des joueurs dans la Ligue nationale de basket-ball (NBA), un sport que j'aime beaucoup.

Aperçu

  • Prédisez la chimie des joueurs à l'aide des réseaux de neurones graphiques (GNN).
  • L'aire sous la courbe (AUC) est utilisée comme mesure d'évaluation.
  • L'AUC à la convergence est d'environ 0,73.
  • Les données d'entraînement couvrent la saison 1996-97 jusqu'à la saison 2021-22, et les données de la saison 2022-23 sont utilisées à des fins de tests.

Remarque : À propos de la NBA

Pour les lecteurs qui ne connaissent pas la NBA, certaines parties de cet article peuvent être difficiles à comprendre. La « réaction chimique » peut être comprise d’un point de vue plus intuitif. De plus, bien que cet article se concentre sur la NBA, la méthode pourrait également être appliquée à d’autres sports et même à la prédiction de la chimie interpersonnelle.

Résultats de prédiction des réactions chimiques

Regardons d'abord les résultats des prédictions. J'entrerai plus en détail sur l'ensemble de données et les détails techniques plus tard.

Explication des côtés et des fractions

Dans la prédiction des réactions chimiques, les bords rouges indiquent de bonnes réactions chimiques, les bords noirs indiquent des réactions chimiques modérées et les bords bleus indiquent de mauvaises réactions chimiques.

La fraction sur le côté représente le score de réaction chimique, allant de 0 à 1.

Prédictions de chimie pour les joueurs vedettes

Voici les prédictions de chimie pour les joueurs vedettes. Le graphique ne contient que des paires de joueurs n'ayant jamais joué pour la même équipe.

Predicting NBA Player Chemistry Using Graph Neural Networks

En regardant les prédictions des joueurs vedettes qui n’ont jamais joué ensemble, les résultats ne sont pas toujours intuitifs.

Par exemple, LeBron James et Stephen Curry ont fait preuve d'une excellente coordination aux Jeux olympiques, ce qui indique une bonne alchimie. D’un autre côté, Nikola Jokic devrait avoir une mauvaise alchimie avec les autres joueurs.

Prédictions de chimie pour les métiers majeurs de la saison 2022-23

Pour rapprocher les prédictions de la réalité, j'ai testé l'alchimie entre les joueurs dans des échanges réels pour la saison 2022-23.

Étant donné que les données de la saison 2022-23 ne sont pas incluses dans les données d'entraînement, les prédictions qui correspondent à des impressions réalistes peuvent indiquer l'efficacité du modèle.

Plusieurs échanges importants auront lieu au cours de la saison 2022-23.

Voici les pronostics pour les joueurs clés dont Kevin Durant, Kyrie Irving et Rui Hachimura.

Predicting NBA Player Chemistry Using Graph Neural Networks

Les prédictions chimiques pour leur nouvelle équipe sont les suivantes :

  • Lakers : Rui Hachimura – LeBron James (bord rouge : bonne alchimie)
  • Suns : Kevin Durant – Chris Paul (Black Side : chimie moyenne)
  • Mavericks : Kyrie Irving – Luka Doncic (côté bleu : mauvaise alchimie)

Ces résultats semblent assez précis compte tenu de la dynamique de la saison 2022-23. (Même si les choses ont changé pour les Suns et les Mavericks la saison suivante.)

Détails techniques

Ensuite, j'expliquerai les aspects techniques, y compris le framework GNN et la préparation des ensembles de données.

Qu'est-ce que GNN ?

GNN (Graph Neural Network) est un réseau conçu pour traiter des données structurées sous forme de graphiques.

Dans ce modèle, les « réactions chimiques entre joueurs » sont représentées sous forme d'arêtes de graphique, et le processus d'apprentissage est le suivant :

  • Côté direct : La paire de joueurs avec le plus grand nombre de passes décisives.
  • Côté négatif : Une paire de joueurs avec un nombre de passes décisives inférieur.

Pour les bords négatifs, le modèle donne la priorité aux « coéquipiers avec de faibles passes décisives » et affaiblit l'influence des « joueurs d'équipes différentes ».

Qu'est-ce que l'ASC ?

AUC (aire sous la courbe) fait référence à l'aire sous la courbe ROC et est utilisée comme mesure pour évaluer les performances du modèle.

Plus l’AUC est proche de 1, plus la précision est élevée. Dans cette étude, l'ASC du modèle était d'environ 0,73, soit un résultat moyen à supérieur à la moyenne.

Courbe d'apprentissage et progrès de l'AUC

Voici la courbe d'apprentissage et la progression de l'AUC au cours du processus de formation :

Predicting NBA Player Chemistry Using Graph Neural Networks

Ensemble de données

La principale innovation réside dans la construction du jeu de données.

Pour quantifier l’alchimie, je suppose que « passes décisives élevées » signifie une bonne alchimie. Sur la base de cette hypothèse, l'ensemble de données est structuré comme suit :

  • Côté positif : Joueurs avec un nombre élevé de passes décisives.
  • Côté négatif : Joueurs avec peu de passes décisives.

De plus, les coéquipiers avec un faible nombre de passes décisives sont explicitement considérés comme ayant une mauvaise alchimie.

Détails du code

Tous les codes sont disponibles sur GitHub.

En suivant les instructions du README, vous devriez être en mesure de reproduire le processus de formation et de tracer les graphiques décrits ici.

https://www.php.cn/link/867079fcaff2dfddeb29ca1f27853ef7

Perspectives d'avenir

Il y a encore place à l'amélioration et je prévois d'atteindre les objectifs suivants :

  1. Élargir la définition de la réaction chimique
    • Incorporez des facteurs au-delà des aides pour capturer plus précisément les relations entre les joueurs.
  2. Améliorer la précision
    • Améliorer l'AUC grâce à de meilleures méthodes de formation et à des ensembles de données élargis.
  3. Traitement intégré du langage naturel
    • Analysez les interviews des joueurs et les publications sur les réseaux sociaux pour ajouter de nouvelles perspectives.
  4. Écrire un article en anglais
    • Publiez du contenu en anglais pour toucher un public international plus large.
  5. Développement d'une interface graphique pour la visualisation de graphiques
    • Créez une application Web qui permet aux utilisateurs d'explorer de manière interactive l'alchimie des joueurs.

Conclusion

Dans cet article, je décris mes tentatives pour prédire la chimie des joueurs NBA.

Bien que le modèle soit encore en développement, j'espère obtenir des résultats plus intéressants avec de nouvelles améliorations.

Bienvenue pour laisser vos réflexions et suggestions dans la zone de commentaires !


Si vous avez besoin d'améliorations supplémentaires, faites-le-moi savoir !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
Nordhold: Système de fusion, expliqué
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1671
14
Tutoriel PHP
1276
29
Tutoriel C#
1256
24
Python vs C: courbes d'apprentissage et facilité d'utilisation Python vs C: courbes d'apprentissage et facilité d'utilisation Apr 19, 2025 am 12:20 AM

Python est plus facile à apprendre et à utiliser, tandis que C est plus puissant mais complexe. 1. La syntaxe Python est concise et adaptée aux débutants. Le typage dynamique et la gestion automatique de la mémoire le rendent facile à utiliser, mais peuvent entraîner des erreurs d'exécution. 2.C fournit des fonctionnalités de contrôle de bas niveau et avancées, adaptées aux applications haute performance, mais a un seuil d'apprentissage élevé et nécessite une gestion manuelle de la mémoire et de la sécurité.

Python et temps: tirer le meilleur parti de votre temps d'étude Python et temps: tirer le meilleur parti de votre temps d'étude Apr 14, 2025 am 12:02 AM

Pour maximiser l'efficacité de l'apprentissage de Python dans un temps limité, vous pouvez utiliser les modules DateTime, Time et Schedule de Python. 1. Le module DateTime est utilisé pour enregistrer et planifier le temps d'apprentissage. 2. Le module de temps aide à définir l'étude et le temps de repos. 3. Le module de planification organise automatiquement des tâches d'apprentissage hebdomadaires.

Python vs. C: Explorer les performances et l'efficacité Python vs. C: Explorer les performances et l'efficacité Apr 18, 2025 am 12:20 AM

Python est meilleur que C dans l'efficacité du développement, mais C est plus élevé dans les performances d'exécution. 1. La syntaxe concise de Python et les bibliothèques riches améliorent l'efficacité du développement. Les caractéristiques de type compilation et le contrôle du matériel de CC améliorent les performances d'exécution. Lorsque vous faites un choix, vous devez peser la vitesse de développement et l'efficacité de l'exécution en fonction des besoins du projet.

Apprendre Python: 2 heures d'étude quotidienne est-elle suffisante? Apprendre Python: 2 heures d'étude quotidienne est-elle suffisante? Apr 18, 2025 am 12:22 AM

Est-ce suffisant pour apprendre Python pendant deux heures par jour? Cela dépend de vos objectifs et de vos méthodes d'apprentissage. 1) Élaborer un plan d'apprentissage clair, 2) Sélectionnez les ressources et méthodes d'apprentissage appropriées, 3) la pratique et l'examen et la consolidation de la pratique pratique et de l'examen et de la consolidation, et vous pouvez progressivement maîtriser les connaissances de base et les fonctions avancées de Python au cours de cette période.

Python vs C: Comprendre les principales différences Python vs C: Comprendre les principales différences Apr 21, 2025 am 12:18 AM

Python et C ont chacun leurs propres avantages, et le choix doit être basé sur les exigences du projet. 1) Python convient au développement rapide et au traitement des données en raison de sa syntaxe concise et de son typage dynamique. 2) C convient à des performances élevées et à une programmation système en raison de son typage statique et de sa gestion de la mémoire manuelle.

Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux? Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux? Apr 27, 2025 am 12:03 AM

PythonlistSaReparmentofthestandardLibrary, tandis que les coloccules de colocède, tandis que les colocculations pour la base de la Parlementaire, des coloments de forage polyvalent, tandis que la fonctionnalité de la fonctionnalité nettement adressée.

Python: automatisation, script et gestion des tâches Python: automatisation, script et gestion des tâches Apr 16, 2025 am 12:14 AM

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

Python pour le développement Web: applications clés Python pour le développement Web: applications clés Apr 18, 2025 am 12:20 AM

Les applications clés de Python dans le développement Web incluent l'utilisation des cadres Django et Flask, le développement de l'API, l'analyse et la visualisation des données, l'apprentissage automatique et l'IA et l'optimisation des performances. 1. Framework Django et Flask: Django convient au développement rapide d'applications complexes, et Flask convient aux projets petits ou hautement personnalisés. 2. Développement de l'API: Utilisez Flask ou DjangorestFramework pour construire RestulAPI. 3. Analyse et visualisation des données: utilisez Python pour traiter les données et les afficher via l'interface Web. 4. Apprentissage automatique et AI: Python est utilisé pour créer des applications Web intelligentes. 5. Optimisation des performances: optimisée par la programmation, la mise en cache et le code asynchrones

See all articles