La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Architecture dapplication Lapprentissage automatique appliqué à larchitecture 3-tiers.

Présentations similaires


Présentation au sujet: "Architecture dapplication Lapprentissage automatique appliqué à larchitecture 3-tiers."— Transcription de la présentation:

1 Architecture dapplication Lapprentissage automatique appliqué à larchitecture 3-tiers

2 Plan de présentation Introduction Larchitecture 3-tiers Lapprentissage automatique Lalgorithme du perceptron Application

3 Introduction Lobjectif de ce cours de vous montrer larchitecture 3-tiers. Comme vous êtes des passionnés, nous allons utiliser un algorithme dIA pour appliquer à larchitecture 3- tiers.(Algorithme du perceptron).

4 Le modèle 3-tiers Son nom provient de l'anglais tier signifiant étage ou niveau. Il s'agit d'un modèle logique d'architecture applicative qui vise à modéliser une application comme un empilement de trois couches logicielles (étages, niveaux, tiers ou strates) dont le rôle est clairement défini :anglaisapplicationlogicielles la présentation des données(GUI, Graphic User Interface ) : correspondant à l'affichage, la restitution sur le poste de travail, le dialogue avec l'utilisateur ; le traitement métier des données ( La couche métier ( BLL, Business Logic Layer)): correspondant à la mise en œuvre de l'ensemble des règles de gestion et de la logique applicative ; et enfin l' accès aux données persistantes ( La couche daccès aux données (DAL, Data Access Layer ) ) : correspondant aux données qui sont destinées à être conservées sur la durée, voire de manière définitive.persistantes BD Utilisateur Couche GUI Couche Métier(BLL) Couche Accès données (DAL)

5 La couche présentation(GUI) BD Utilisateur Couche GUI Couche Métier(BLL) Couche Accès données (DAL)

6 La couche présentation(GUI) Elle correspond à la partie de l'application visible et interactive avec les utilisateurs. On parle d'interface homme machine.applicationinterface homme machine La couche présentation relaie les requêtes de l'utilisateur à destination de la couche métier, et en retour lui présente les informations renvoyées par les traitements de cette couche. Il s'agit donc ici d'un assemblage de services métiers et applicatifs offerts par la couche inférieure. La vue n'effectue aucun traitement, elle se contente d'afficher les résultats des traitements effectués.

7 Couche métier(BLL) BD Utilisateur Couche GUI Couche Métier(BLL) Couche Accès données (DAL)

8 Couche métier(BLL) Elle correspond à la partie fonctionnelle de l'application, celle qui implémente la « logique », et qui décrit les opérations que l'application opère sur les données en fonction des requêtes des utilisateurs, effectuées au travers de la couche présentation.application Les différentes règles de gestion et de contrôle du système sont mises en œuvre dans cette couche. La couche métier offre des services applicatifs et métier à la couche présentation. Pour fournir ces services, elle s'appuie, le cas échéant, sur les données du système, accessibles au travers des services de la couche inférieure. En retour, elle renvoie à la couche présentation les résultats qu'elle a calculés.

9 Couche accès aux données(DLL) BD Utilisateur Couche GUI Couche Métier(BLL) Couche Accès données (DAL)

10 Couche accès aux données(DLL) Cette couche est responsable de la gestion et de l'accès aux données du système. Ces données peuvent être propres au système, ou gérées par un autre système. La couche métier n'a pas à s'adapter à ces deux cas, ils sont transparents pour elle, et elle accède aux données de manière uniforme. Cette couche assure la gestion des données et garantit leur intégrité. Dans le cas typique d'une base de données, c'est le modèle qui la gère. Cette couche offre généralement des méthodes pour mettre à jour ces données (insertion, suppression, changement de valeur). Il offre aussi des méthodes pour récupérer ces données.

11 Communication entre les couches Dans cette approche, les couches communiquent entre elles au travers d'un « modèle d'échange », et chacune d'entre elles propose un ensemble de services rendus. Les services d'une couche sont mis à disposition de la couche supérieure. On s'interdit par conséquent qu'une couche invoque les services d'une couche plus basse que la couche immédiatement inférieure ou plus haute que la couche immédiatement supérieure (chaque couche ne communique qu'avec ses voisins immédiats). BD Utilisateur Couche GUI Couche Métier(BLL) Couche Accès données (DAL)

12 En résumé En résumé, lorsqu'un client envoie une requête à l'application : 1. la requête envoyée depuis la couche présentation est analysée par la couche métier (par exemple un clic de souris pour lancer un traitement de données), 2. la couche métier fait le traitement et demande à la couche daccès aux données de faire les modifications voulues dans la base de données, 3. La couche daccès aux données retourne la mise à jour à la couche métier, qui à son tour, la remettra à la couche présentation.

13 Avantages Un avantage apporté par ce modèle est la clarté de l'architecture qu'il impose. Cela simplifie la tâche du développeur qui tenterait d'effectuer une maintenance ou une amélioration sur le projet. En effet, la modification des traitements ne change en rien la vue. Par exemple on peut passer d'une base de données de type SQL à XML en changeant simplement les traitements d'interaction avec la base, et les vues ne s'en trouvent pas affectées.SQLXML

14 Exemple Aller chercher les documents dexercice sur le Linterface graphique ( GUI, Graphic User Interface) : Demander le nom dun fichier. Ajouter un bouton pour activer la lecture du fichier Ajouter un RichTextBox pour afficher les résultats La couche métier ( BLL, Business Logic Layer) Vide pour le moment La couche daccès aux données ( DAL, Data Access Layer) Nous allons remplir une structure de données pour les données et une pour les résultats. Résultat: Afficher les données dans le RichTextBox.

15 Apprentissage automatique: Les réseaux de neurones Attention aux coeurs sensibles sabstenir!! La poubelle se trouve près de la porte…

16 Comparaison avec lhumain Le cerveau utilise un réseau très complexe ayant un grand nombre de cellules de base interconnectées. Il y a 100 milliards de neurones et10 15 connexions. Aujourdhui, nous essaierons de créer un neurone informatique.

17 Apprentissage automatique Apprendre cest la capacité de saméliorer à laccomplissement dune tâche en interagissant avec un environnement. Toute question peut être reformulée sous la forme dune question booléenne. Lobjectif sera de conditionner un neurone pour détermine les règles qui régissent une réponse à une question booléenne.

18 Comment apprendre? Dans la vrai vie Lapprentissage se fait grâce à linteraction entre les données et la conception de lapprenant. Lapprennant essait de trouver un modèle(pattern) à travers les données pour en déduire une conclusion. Si lapprenant fait une erreur, il ajuste sa conception en fonction du résultat.

19 Le perceptron Dans ce cours, nous allons utiliser un classificateur de type perceptron. Le perceptron a été inventé en 1957 par Frank Rosenblatt au Cornell Aeronautical Laboratory.1957Frank RosenblattCornell Aeronautical Laboratory Lobjectif de lalgorithme est de construire une bonne fonction h(x) à partir de lobservation dun échantillon dexemples S. Idéalement, nous aurions h(x) =y pour tout exemple (x i ; y)non observé par lalgorithme. i.e., h(x) est une bonne fonction ssi elle prédit bien la valeur de sortie des exemples à venir.

20 Apprentissage automatique sur un échantillon dapprentissage Un algorithme dapprentissage est un algorithme qui a pour fonction dapprendre à répondre à une question à partir dun ensemble S de données contenant un nombre fini m d exemples de la tâche à apprendre. Cet ensemble S se nomme l échantillon dapprentissage (training set) Chaque exemple est constitué dun objet dentrée x i et dune valeur de sortie y

21 Lidée Modéliser un ensemble de données dans un plan cartésien. Essayer de tracer une droite qui séparera correctement les éléments. Voir le document Excel La question est de savoir si une personne est riche?

22 Limite du perceptronperceptron Le perceptron est incapable de distinguer les patterns non séparables linéairement input P0101 input Q1001 ET0001 XOR1100

23 Comment sopère la magie maintenant?

24 Algorithme dapprentissage

25

26 Descente en gradien

27 Algorithme dapprentissage Principales étapes : 1. Initialiser aléatoirement les poids synaptiques 2. Faire passer les observations unes à unes Calculer lerreur de prédiction pour lobservation Mettre à jour les poids synaptiques si nécessaire 3. Jusquà convergence du processus

28 Algorithme dapprentissage

29 3- Descente en gradien 1- Valeur des poids 2- Équation

30 Algorithme dapprentissage Ancienne frontière :

31

32

33 Algorithme dapprentissage Entrée :un échantillon S Pour i = 0... n initialiser aléatoirement les poids w i Faire Pour chacun des exemples dans S Prendre un exemple(x, y vrai ) dans S Calculer la sortie y estimé pour l'entrée x Si y vrai != y estimé Alors Pour i= 0... n w i w i + ConstanteApprentissage × (y vrai y estimé )× x i Fin Pour Fin Répéter Jusquà obtention de la convergence Sortie :Un perceptron P défini par(w 0, w 1,..., w n )

34 La tolérance à lerreur Il peut être avantageux dêtre tolérant à lerreur plutôt que de ne pas trouver de solution… à vous de trouver la bonne méthode de convergence. Selon vous quels sont les possibilités de critère de convergence?

35 Conclusion Larchitecture 3-tiers est un modèle étoffé qui permet aisément la modification et lextension dune application. Le but de lapprentissage automatique est de définir un vecteur de valeur qui permet de définir si oui ou non un vecteur dentré appartient à un groupe ou non.

36 Période de questions Vous avez des questions?


Télécharger ppt "Architecture dapplication Lapprentissage automatique appliqué à larchitecture 3-tiers."

Présentations similaires


Annonces Google