Вы находитесь на странице: 1из 16

RAPPORT

DE PROJET

14-12-2016
BALLON D’OR PREDICTION

Sehra ABARHRIR
Mohamed EL HAMDANI
Zakariyae HADDINI


SOMMAIRE

INTRODUCTION ------------------------------------------------------------------------------- 3
METHODES ------------------------------------------------------------------------------- 3
Difficultés ------------------------------------------------------------------------------- 3

Base de données -------------------------------------------------------------------- 4


ARBRE DECISIONNEL ----------------------------------------------------------------------- 6
WEKA ------------------------------------------------------------------------------------------------- 7
COMMENT ÇA MARCHE ? ----------------------------------------------------------------- 8
SCIKIT-LEARN --------------------------------------------------------------------------------- 11
COMMENT ÇA MARCHE ? --------------------------------------------------------------- 11
IMPLEMENTATION ------------------------------------------------------------------------ 14
Outils de développement ---------------------------------------------------- 14
CONCLUSION ----------------------------------------------------------------------------------- 16

2

INTRODUCTION
La FIFA Ballon d'or est une récompense attribuée
au meilleur joueur de football de l'année. L’idée de
« Ballon d’or prediction » est d’essayer de prédire la
liste des joueur sélectionnés par la FIFA, dont le
gagnant du ballon d’or de l’année courante et
sélectionné par le vote des 208 sélectionneurs des
pays membres de la FIFA, en se basant sur les résultats
des années précédentes.


METHODES
• Difficultés

Comme la collecte des données, nous avons


essayé de trouver une api qui nous permettra
d’extraire les données détaillées des joueurs de
plusieurs saisons, la chose qui était impossible (à
part les services payants), ce qui nous a obligé à
collecter les données nous-même.

3
• Base de données

La première étape était de collecter les


données, et trouver une base de données avec les
informations des joueurs durant les années
précédentes n’était pas évident. Et pour
surmonter le problème, nous avons construit
notre propre base de données, on se basant sur
le site « whoscored.com », en inspectant le
résultat des requêtes, qui était en « JSON », et le
transformer en CSV, afin de l’injecter dans la base
de données, en utilisant un Bash.

Figure1 : CSV files

4
Figure1 : Code Bash

Figure1 : Bash exécution

5
Et pour automatiser la procédure, nous avons
utilisé Automator (sur MacOs).

ARBRE

DECISIONNEL
Un arbre de décision est un outil d'aide à la
décision représentant un ensemble de choix sous
la forme graphique d'un arbre. Les différentes
décisions possibles sont situées aux extrémités
des branches (les « feuilles » de l'arbre), et sont
atteints en fonction de décisions prises à chaque
étape.
Dans notre cas, nous utilisons l’arbre de
décision pour prédire la première sélection des
joueurs pour le titre du Ballon d’or.


6

WEKA
Waikato Environment for Knowledge
Analysis, Weka, est une suite de logiciels
d'apprentissage automatique. Écrite en Java,
développée à l'université de Waikato en
Nouvelle-Zélande. Weka est un logiciel libre
disponible sous la Licence publique générale
GNU (GPL), portable car il est entièrement
implémenté en Java et donc fonctionne sur
quasiment toutes les plateformes modernes, et
en particulier sur quasiment tous les systèmes
d'exploitation actuels, et contient une collection
complète de préprocesseurs de données et de
techniques de modélisation.





Figure1 : Weka GUI Chooser

7
COMMENT ÇA
MARCHE ?

Initialement, l’idée était d’alimenter


l’application Weka, (la version graphique), avec
la base de données exportée en CSV, ces
données-là qui sont des joueurs des anciens
saisons, avec une colonne qui différencie ceux
qui ont étaient sélectionnés.

8
Après nous spécifions cet attribut qui fera la
différence a la sortie, pour que le programme
puisse générer l’arbre de décision.

9
Pour générer l’arbre, nous indiquons
l’algorithme que le programme utilisera, et
l’attribut sur lequel il se basera.

Après la génération de l’arbre, nous mettons


en œuvre le code équivalent à l’arbre, et nous
l’appliquons sur la base de données des joueurs
de l’année courante, afin de recevoir la liste des
joueurs qui pourraient être sélectionnés pour
gagner le Ballon d’or.

10

SCIKIT-LEARN
Scikit-learn1 est une bibliothèque Python
dédiée à l'apprentissage automatique. Elle est
développée par de nombreux contributeurs
notamment dans le monde académique par des
instituts français d'enseignement supérieur et de
recherche comme Inria et Telecom ParisTech.
Elle comprend notamment des fonctions pour
estimer des forêts aléatoires et des régressions
logistiques.

COMMENT ÇA

MARCHE ?
En effet, cette bibliothèque a le même
objectif que l’application « WEKA », elle nous a
aidé à construire l’arbre décisionnel à partir de
notre fichier de données « CSV ». Dans un
premier temps, on doit avoir la bibliothèque


1 Réf : https://fr.wikipedia.org/wiki/Scikit-learn

11
« Pandas » qui nous permet de charger les
données depuis le fichier « CSV ». Après avoir
réussi à charger ces données on les transmettre
à l’algorithme de génération de l’arbre
décisionnel afin d’obtenir le pseudo code
représentant cet dernier dans le langage
d’implémentation de notre choix.

Figure1 : Chargement de fichier CSV avec Pandas

12
Figure1 : Génération du pseudo code PHP de l’arbre décisionnel

13
IMPLEMENTATION

• Outils de développement

1. PYTHON-PHP5 - HTML5 – CSS3


2. Twitter Bootstrap
BootStrap2 est un Framework qui facilite
et accélère le développement Front-End. Il
inclue une base CSS très complète (au format
LESS) configurée à partir d’un fichier de
variables un ensemble de conventions de
structure HTML et de nommage de classes des
librairies JavaScripts simples pour les
fonctions les plus courantes.
3. MySQL
MySQL3 est un serveur de bases de
données relationnelles SQL, développé dans
un souci de performances élevées en lecture,
ce qui signifie qu'il est davantage orienté vers
le service de données déjà en place que vers

2 Réf : http://spipr.nursit.com/bootstrap
3 Réf : http://fr.wikipedia.org/wiki/MySQL

14
celui de mises à jour fréquentes et fortement
sécurisées. Il est multithread et multi-
utilisateur. C'est un logiciel libre développé
sous double licence en fonction de l'utilisation
qui en est faite : dans un produit libre ou dans
un produit propriétaire.
4. PhpMyAdmin
PhpMyAdmin4 est une interface
d'administration pour le SGBD MySQL. Il est
écrit en langage PHP et s'appuie sur le serveur
HTTP Apache. Il permet d'administrer les
éléments suivants :
o Les bases de données.
o Les tables et leurs champs (ajout,
suppression, définition du type).
o Les index, les clés primaires et étrangères.
o Les utilisateurs de la base et leurs
permissions.
o Exporter les données dans divers formats
(CSV, XML, PDF, OpenDocument, Word,
Excel et LaTeX).

4 Réf : http://doc.ubuntu-fr.org/phpmyadmin

15

CONCLUSION
Notre projet consistait en le développement
d’une application de prédiction de la liste des
joueur sélectionnés par la FIFA.
Pour la mise en œuvre d’un tel projet nous
avons choisi d’adopter un arbre décisionnel et
nous avons commencé par la collecte des
données. Ensuite, nous avons générer notre
arbre décisionnel afin d’aborder enfin la phase
de la réalisation qui consiste en la mise en œuvre
de l’application proposée.

16

Вам также может понравиться