Académique Documents
Professionnel Documents
Culture Documents
*********
MINISTERE DE L’ENSEIGNEMENT SUPÉRIEUR ET DE
LA RECHERCHE SCIENTIFIQUE
(MESRS)
***********
UNIVERSITE NATIONALE DES SCIENCES TECHNOLOGIES, INGÉNIERIE ET MATHÉMATIQUES
(UNSTIM)
************
ECOLE NATIONALE DE GÉNIE MATHÉMATIQUE ET MODÉLISATION
(ENSGMM)
*********
STAGE ACADÉMIQUE 2022
Plan
Avant-propos
Le présent rapport a été réalisé à l'issue d’un stage de découverte effectué au sein de l’entreprise
GREENTECHSERVICES située à Cotonou ZOGO dans le but de clore ma deuxième année en classe
d’ingénieur à l'Ecole Nationale Supérieure de Génie Mathématique et Modélisation (ENSGMM).
L’expérience et les interventions de mon maître de stage ont été très utiles pour recadrer mon
expérience en entreprise. Ce rapport de stage a pour objectif de rendre compte de mon séjour au
sein de cette entreprise.
Remerciements
Avant tout développement sur cette expérience professionnelle, il apparaît opportun de commencer
ce rapport de stage par des remerciements, à ceux qui m’ont guidé au cours de ce stage, et même à
ceux qui ont eu la gentillesse de faire de ce stage un moment profitable. A cet effet, j’adresse mes
remerciements :
Résumé
Introduction
L’objectif ici est de présenter le résultat de l’application web réalisée et non de tergiverser sur
toutes les analyses statistiques qui ont été faites avant de construire le modèle proprement dit.
Ainsi, après la construction du modèle, nous l’avons intégré dans l’application proprement dite
grâce au framework Streamlit. Voici le résultat :
La capture de gauche montre bien des slides qui permettent à l’utilisateur de choisir les valeurs
données des variables, et dans la capture de gauche, nous avons un tableau qui affiche
systématiquement les entrées de l’utilisateur, et puis l’application affiche la catégorie de la fleur qui
répond aux valeurs entrées. Autrement dit, une interprétation des captures précédentes est la
suivante : Le type de fleur ayant 6.40, 3.14, 5.25 et 0.94 comme respectivement sepal length, sepal
width, petal length et petal width est setosa.
Deuxième Web App : Dans ce projet, nous développerons et évaluerons les performances et le
pouvoir prédictif d'un modèle entraîné set testé sur des données collectées dans des maisons de
la banlieue de Boston. Une fois que nous aurons obtenu un bon ajustement, nous utiliserons ce
modèle pour prédire la valeur monétaire d'une maison située dans la région de Boston. Un
modèle comme celui-ci serait très précieux pour un agent immobilier qui pourrait utiliser les
informations fournies au quotidien.
d) Mission 4 : Apprendre à créer de site web avec Django
La première des choses que j’ai eu à faire dans ce projet est la création d’un “projet”. Ce
dernier un package Python – c'est-à-dire un répertoire de code – qui contient tous les
paramètres d'une instance de Django. Cela inclut la configuration de la base de données, les
options spécifiques à Django et les paramètres spécifiques à l'application.
Une vue (en anglais, views) est une fonction responsable du rendu d'une page.
Un modèle Django est simplement un document texte ou une chaîne Python balisée à l'aide du
langage de modèle Django. Certaines constructions sont reconnues et interprétées par le moteur
de gabarit. Les principales constructions sont les variables et les balises.
Un modèle est rendu avec un contexte. Le rendu remplace les variables par leurs valeurs, qui
sont recherchées dans le contexte, et exécute les balises. Tout le reste est sorti tel quel.
Afin d'organiser les données du stockage de votre app, django vous offre l'outil nommé modèle
(django model).
● Un modèle abrite sous forme des classes les noms des tables et des champs
(attributs) des données du stockage.
● Chaque modèle correspond à une seule table de base de données.
● Chaque modèle est une classe Python qui hérite de django.db.models.Model.
● Chaque attribut du modèle représente un champ de base de données.
4. Django Admin
L'un des aspects les plus importants de Django est qu'il contient une interface de contrôleur
d'administration automatisée par défaut. Le site de l'administrateur Django lit les métadonnées
de vos modèles pour fournir un lien rapide et modulaire pour gérer le contenu de votre site.
L'administrateur est activé sur le modèle de projet par défaut créé via la commande startproject.
5. L’ORM
ORM signifie Object Relational Mapper. L'objectif principal d'ORM est d'envoyer des données
entre une base de données et des modèles dans une application. Il établit une relation entre la
base de données et un modèle. Ainsi, ORM mappe les attributs d'objet aux champs d'une table.
Le principal avantage de l'utilisation d'ORM est qu'il rend l'ensemble du processus de
développement rapide et sans erreur. Essentiellement, cela élimine le besoin d'écrire du code
SQL.
6. Le routage URL
Une application Web se compose de plusieurs pages et chaque page a son propre itinéraire. Un
itinéraire peut être défini comme une URL qui affiche une page Web particulière sur le
navigateur. Django nous permet de router les URL comme nous le souhaitons et sans limitation
de framework
Nous avons juste cité quelques grandes lignes dans le déroulement d’un projet Django, mais
par-dessus tout ça, j’ai eu à retenir que l'arborescence des dossiers dans un projet Django sont
d’une importance capitale.
Au cours de ces 2 mois de stage, j'ai appris énormément de choses tant au niveau théorique,
pratique que social. En effet, la disponibilité des ressources (notamment la connexion internet)
et les directives de mon maître de stage m’ont permis de tirer le meilleur de moi-même. Les
exigences face à la qualité du travail produit me poussaient à remettre en cause perpétuellement
tout ce que je faisais afin de les améliorer du mieux possible. Enfin, j’ai également appris à
respecter les différents processus administratifs et à me soumettre aux besoins de mes
supérieurs. Au cours de ces quelques semaines réalisées au sein de l’entreprise
« GREENTECHSERVICES », j’ai pu acquérir plusieurs compétences que sont :
b) Solutions
Afin de mener avec succès les tâches qui m’ont été confiées, j’ai su m'adapter aux situations et
j’ai pu trouver des solutions aux différents problèmes rencontrés.
Ainsi, dans le cadre de mes études des mathématiques appliquées, j’ai eu la chance d’effectuer un
stage au sein de l’entreprise « GREENTECHSERVICES ». Cette expérience a été très enrichissante car
elle m'a permis de découvrir en contexte les réalités du terrain, ainsi que les différentes missions et
postes qui contribuent à son développement. En participant au quotidien à la vie de l’entreprise et en
interagissant avec ses différents acteurs, j’ai pu appréhender les différents enjeux du Machine
Learning soulevés au sein de l’entreprise. De plus, j'ai pu acquérir diverses compétences, développer
un modèle de Machine Learning et faire de petits web App avec « streamlit » et comprendre les
notions basiques pour la gestion d’une application web avec Django. Ce stage m'a donc permis de me
réaliser à quel point les notions théoriques acquises en cours étaient indispensables. L’entreprise au
sein de laquelle j’ai pu évoluer fait face à des problèmes réels de mathématiques appliquées, à savoir
les problèmes d’optimisation. Fort de cette expérience et ayant désormais une idée plus claire de
l’utilité des mathématiques appliquées, j’aimerais dorénavant pouvoir m’orienter vers le Machine
Learning et la modélisation numérique.