Segmentation et data mining pour l industrie.

Dimension: px
Commencer à balayer dès la page:

Download "Segmentation et data mining pour l industrie."

Transcription

1 Une solution industrielle complète de data mining Segmentation et data mining pour l industrie. Johan Baltié Franck Coppola Tristan Robet Promotion 2002 Specialisation S.C.I.A. Responsable M. Adjaoute 1

2 TABLE DES MATIÈRES S.C.I.A. promo 2002 Table des matières 1 Pourquoi ce sont des problèmes important? But de ces technologies Intérêt en entreprise État de l art Le data cleaning Suppression des doublons Les autres erreurs La segmentation (clustering) Les différentes possibilité de segmentation Les algorithmes de clustering Le data mining Les algorithmes de découverte de règle d association Les treillis de Galois Proposition d une solution Contraintes posées à la solution Présentation de l architecture générale Entrées et sortie de la solution Les différentes parties L interaction des différentes modules Le module de data cleaning et de transformation de données Le data cleaning La transformation des données Le module de segmentation Formation des classes Détermination du nombre de classes Utilisation industrielle de l algorithme Détection du bruit et des valeurs abérantes Le module de data mining Les chaines, les maillons et les règles associées L usine a maillons Les règles Description d un tour de jeu Présentation détaillée Réponse aux contraintes Annexes Algorithme Expectation Maximization Références. 32 2

3 Une solution industrielle complète de data mining 1 Pourquoi ce sont des problèmes important? L industrie est tous les jours confrontée à des problèmes tels que tous les paramètres ne sont pas connus. Elle recueille des données dans des bases immenses où l unité de base est le Téraoctet avec l espoir de trouver et déterminer quelques uns de ces paramètres. En effet, une entreprise possédant des informations sur les marchés et leur fonctionnement que les autres entreprises n auraient pas posséderait un avantage considérable sur celles-ci. Imaginons une entreprise qui possède des bases de données sur tous ses produits. Toutes ces bases de données sont différentes soit dans leur format, soit dans leur conception,... Il est difficile pour l entreprise de centraliser ses informations sur ses produits car personnes ne connaît tous les produits et les responsables de chacun des produits sont bien évidement trop occupés. Il lui faut donc un outils capable d analyser une base de données sans en connaître les particularités. On ne peut pas dire quel champ peut être considéré comme une classe,... Il faut donc que l outils détermine tous ce qu il peut de la base de données avec un minimum d information. 1.1 But de ces technologies. Le but de ces technologie est d une part de découper une base de données en sous-ensembles consistants (par exemple découvrir des profils communs dans les données) et d autre part de trouver les règles qui régissent cette base de données. En règle générale les technologies faisant des choses semblable demandent des informations sur la base de données (telles que signification de certains champs (cible,... ), valeurs possibles,... ), or dans notre cas nous souhaitons effectuer un traitement sur une base de données totalement inconnues si ce n est par : Le noms de chaque champ. Les valeurs de chaque enregistrement. Le résultat attendu est une analyse de cette base qui permettent ensuite à l entreprise d en apprendre le plus possible sur son domaine. L outil doit présenté un rapport donnant les informations d une manière pratique. Cela signifie qu il doit déterminer seul la pertinence des informations pour présenter en premier les informations lui paraissant capitale. 1.2 Intérêt en entreprise. Les intérêts dans une entreprise sont multiples : Découverte de règles sur le comportement des clients. Création de profils de clients. Découverte de nouvelles modes. Création de transaction type. Découverte de catégorie de clients.... Toutes ces techniques vont donc permettre une maximisation du gain de l entreprise les utilisant. Il y a actuellement un problème et un créneau du fait de l utilisation faible du data mining dans les entreprises et du début de développement. Les entreprises classiques pensent souvent cette technologie trop moderne pour faire ces preuves. Et le fait de devoir monopoliser des gens pour préparer les données et un gros facteur de turn-over. Il est donc très intéressant pour l entreprise de ne pas avoir à expliciter le format et la sémantique de la base de données avant de la faire analyser. Cela permet aussi de diminuer ses coûts. 3

4 S.C.I.A. promo État de l art. Les technologies de data mining, segmentation et de data cleaning ne sont pas toutes très récentes. Certaines ont plus d une dizaine d années. Des travaux d importance ont donc été fait dans ces domaines, travaux qu il est intéressant de prendre en compte pour ne pas refaire les mêmes erreurs. 2.1 Le data cleaning. Un data warehouse où en français entrepôt de données est une copie des données transactionnelles structurée spécialement pour les requêtes et la génération de rapport. Le data warehousing est utilisé par les «preneurs de décisions» et est donc une chose très importante pour la stratégie de l entreprise. Donc il est absolument nécessaire d avoir des données «propres» pour que le processus de décision soit fait correctement. Cela implique que le data cleaning est une phase importante du data warehousing. Il faut voir que beaucoup de techniques de data cleaning son adaptée à la base qu elle traite et nous ne présenteront ici que les solutions qui peuvent fonctionner quelque soit la base de données. Par contre, comme les problèmes peuvent malheureusement arriver sur la plupart des bases, nous les citerons tous, même ceux n ayant actuellement pas de solutions valables. Un exemple de data cleaning particulier et pourtant déjà difficile à résoudre est le suivant : Deux personnes aux noms et adresses totalement différent ont le même numéro de sécurité sociale. Que doit-on faire : Considérer que le numéro de sécurité social est invalide pour l une des deux (dans ce cas on «efface» les deux champs ou l on demande une vérification). Considérer que c est la même personne qui a changé de nom et de domicile. Cet exemple, bien que très rare il faut le reconnaître, montre la difficulté de résolution des problèmes de consistance quand on ne connaît pas tous les paramètres. Le data cleaning est la phase qui consiste à réparer (si possible) les erreurs suivantes : Les données incomplètes, champs manquants,... Les valeurs incorrectes. Les «codes», clés et autres attributs qui doivent être spécifique à un enregistrement et qui pour un raison quelconque ne le sont pas ou sont mal calculés. Les doublons. L informations mal entrée (fautes de frappes,... ), incompréhensible. Plusieurs champs dans le même champ. Formatage de la donnée incompréhensible 1 Code inconnus (produit, postal,... ). Base inconsistante (A et A dans la même base, date et heure invalide, attributs hors domains,... ). Code différents pour la même signification Suppression des doublons La première chose que doit faire un outils de data cleaning est la suppression des doublons. Ces doublons existent parce que les données proviennent souvent de plusieurs points différents et que les contrôles de l intégrité de la base ne sont pas fait correctement. Pour cela la technique basique consiste à trier la base de données et regardé si des valeurs identiques se suivent où non. Pour que cette technique soit efficace, il faut tout d abord générer une clé pour chaque enregistrement et les trier en fonction de cette clé. Cette clé doit avoir la propriété d être identique pour deux t-uples identiques et d être le plus proche possible quand deux t-uples ne varient que très peu. Cela permet en fait de déjà repéré les t-uples potentiellement identiques modulo des erreurs de frappes ou des petites variances. 1 En général, ce type de formatage est fait pour gagner de la place. 4

5 Une solution industrielle complète de data mining 2.2 Les autres erreurs Une fois la clé générée, il suffit de classer les t-uples en fonction de cette clé et de trouver deux clés identiques. Il suffit après d une vérification pour enlever les doublons. Le fait d avoir généré la clé permet de vérifier que certains t-uples n aurait pas de fortes chances d être des versions déformés l un de l autre. Une autre technique de détection d éléments semblable est l emploi de la réduction de la dimension. Cette technique se base sur le fait qu en utilisant des propriétés mathématiques, on peut diminuer le nombre de dimension de champs numérique, on peut comparer plus rapidement les valeurs restantes. La distance obtenue entre deux t-uples réduit sera approchée, mais si l on cherche les doublon exact, la distance entre eux sera toujours de 0. De même si la distance utilisée entre les t-uples réduits est valable, alors il est possible de détecter des t-uples similaires mais non identiques. Pour que la technique de réduction de dimension soit efficace, il faut que le temps de calcul de la comparaison des t-uples complet soit inférieur au temps de calcul des t-uples réduit plus le temps de calcul des transformations. Cela implique que les transformations doivent être très rapide 2. Fig. 1 Les deux moyens de comparer et supprimer les t-uples redondant. 2.2 Les autres erreurs La plupart des autres erreurs pour lesquelles le data cleaning est efficace sont malheureusement corrigé d une façon très spécifique pour chaque base de données. En effet, la consistance demande de savoir quels champs doivent être consistants et de quelle manière, de même pour les codes invalides,... On peut tenter de corriger quelques erreurs, mais il faut à l avance savoir que la technique ne peut en aucun cas être parfaite du fait du manque de connaissances sur les champs. Ces erreurs que l on peut corriger (en plus des doublons) sont principalement les fautes de frappe et d orthographe. Cela s avère par contre très coûteux. Imaginons que l on ai beaucoup de t-uples contenant le mot «sciences» et un 3 contenant le mot «science». Il est dans ce cas raisonnable de penser que l on peut remplacer le deuxième mot par le premier. Effectivement cela peut amener le problème que l on va effacer un nom existant. il faut voir que vu le contexte de notre problème, si l on ne l avait pas effacé, il aurait été considéré comme du bruit et donc retiré. En fait le seul problème que nous soulevons est de potentiellement renforcer une règle qui n a pas lieu de l être de l ordre de ce que l utilisateur considère comme du bruit. Donc on ne génère pas une grosse erreur. 2 Par exemple une transformation rapide de Fourrier, et plus généralement toutes les méthodes de décomposition en composantes principales. 3 Ou plus d un mais dans tous les cas beaucoup moins que le premier. En général pour effectuer le choix, on se base sur un taux que l utilisateur considère comme du bruit. Par exemple, l utilisateur à spécifier que au dessus de 1% ce n est plus du bruit. 5

6 2.3 La segmentation ( clustering). S.C.I.A. promo 2002 Il est aussi possible, en utilisant la même technique d ignorer les t-uples qui nous semble être du bruit. Par exemple, la présence une fois d une valeur différente dans un champs alors que toutes les autres valeurs sont présentes très souvent. La même remarque que précédement s applique. 2.3 La segmentation (clustering) Les différentes possibilité de segmentation. La segmentation de base de données est au premier abord utile pour générer ce que l on peut appeler des «profils», que ce soit pour des être humains, ou quoique ce soit d autre. Un profil est un cas typique auquel on peut rapprocher les autres éléments de la classe générée. En terme mathématique on appelle cette notion centroïde 4, et un centroïde de la classe C est donné par la formule : ( ) min d (c, x) c C (1) x C Ces profils peuvent don permettre d économiser de la place pour stocker une base quand on a juste besoin de son modèle. En effet, il suffit de connaître les centroïdes de toutes les classes pour connaître pour tout nouvel élément la classe à laquelle il appartient. Les centroïdes ne sont pas la seule façon de sauvegarder des classes. C est le moyen de stockage le moins coûteux en place et le plus pratique pour connaître la classe d appartenance d un point mais comment faire pour savoir si une donnée arrivant ne peut pas être considérée comme du bruit? Dans ce cas, on utilise le stockage sous forme de Gaussienne à n paramètre où n est le nombre de dimensions des t-uples. Ce modèle revient en fait à stocker une «ellipse» qui va englober toutes les données que l on considère comme non bruitées. L espérance de la Gausienne est en fait notre centroïde et par contre on rajoute un paramètre sa variance en dimension n qui sera le «rayon 5» de notre ellipsoïde. Cette approche permet de connaître la probabilité qu une donnée soit du bruit avec la formules de la fonction de répartition de la Gaussienne à n dimension (avec x i la ième coordonnée du point testé, θ i la variance de notre classe et µ i son espérance) : 1 n 2 π n i=1 i=1 θ e (x i µ i )2 θ i 2 (2) i En industrie les deux modèles sont utilisés mais différemment. Le premier modèle est, nous l avons vu, utilisé quand on recherche simplement les profils de la base, on décrit en fait le Voronoï de l espace de la base. Avec ce modèle cela signifie qu un élément de la base de donnée appartient forcément à une classe. C est pour cela qu on été créé les deuxièmes type de modèles qui permettent de caractérisé le bruit. Les modèles que nous venons de voir sont qualifiés de plats, ce qui signifie que les classes obtenues forment n ont pas plus d importance les unes que les autres (cela signifie qu il n y a pas de classes contenant des classes). Dans le cas des k-moyennes, on a même une partition de l ensemble de départ, ce qui signifie que l on ne peut pas avoir deux classes C 1 et C 2 telles que x un élément de la base de données appartienne à C 1 et à C 2. Pourtant, il existe des modèles dit hiérarchiques (voir figure 3 page 7), c est-à-dire que les classes peuvent être représentées sous la forme d une forêt. Chaque noeud classe ayant pour fils d autres classes ou des éléments de la base. Les classes feuilles ont quant à elle un ensemble d éléments de la base d associés. Les modèles hiérarchiques sont très utilisés lorsqu il s agit de représenter les données par différents niveau de granularités. Cela s avère aussi très pratique lorsque l on veut un nombre très limité de classe visible en une fois (en général un nombre inférieur à 7). 4 En géométrie cette notion est appelée barycentre. 5 Le terme rayon n a le sens géométrique qu en dimension 2 et 3. 6

7 Une solution industrielle complète de data mining 2.3 La segmentation ( clustering). Fig. 2 On voit ici l intérêt de la segmentation. On a généré à partir de ces nuages de points trois centroïdes (les croix) associés chacun à une classe. Il suffit donc pour tout nouveau point (ici le carré), de calculer la distance aux centroïdes (afficher sur le schéma à coté de celui-ci) et le point appartient à la classe du centroïde le plus proche. On peut aussi y voir des formes de Gaussiennes caractérisant la distribution de la données et qui permettent de savoir quand les données arrivants sont en fait du bruit. Fig. 3 Un exemple de classification hiérarchique. Ces différents types de modèles correspondent donc à différent besoin. Nous allons maintenant voir comment les générer Les algorithmes de clustering. L approche la plus courante de la segmentation des données est algorithmique. Il existe toute fois plusieurs algorithmes différents et pour chacun des types de segmentation que nous avons vue. Pour générer des classes plates, il existe plusieurs algorithmes. Nous allons présenter le principal algorithme qui combien un nombre très important de variantes, l algorithme des k-moyennes. k-moyennes Le principe de cette algorithme est de placer n points au hasard dans l espace de la base de données. On considère ensuite ces points comme des centroïdes. Or ils ne sont pas bien placés du fait de la distribution aléatoire choisie. Le but de cet algorithme est donc de placer ces centroïdes correctement de manière à créer un Voronoï. Pour cela, on calcule pour chaque point le centroïde le plus proche. Une fois ceci fais pour tous les points, on recalcule la position de chacun des centroïdes en appliquant la formule que nous avons vu plus haut. On a donc ré-affecter les centroïdes, et l on recommence a déterminer l appartenance de chaque point à tel ou tel centroïde et l on recommence à calculer la valeur des nouveaux centroïdes. 7

8 2.3 La segmentation ( clustering). S.C.I.A. promo 2002 Le calcul s arrête quand entre deux passes un nombre de points inférieur au nombre total de point multiplier par un pourcentage p donné en paramètre ont changé de centroïde. En résumé, on effectue donc la boucle suivante : 1. Calcul du centroïde le plus proche pour le point i 2. Si il y a eu un changement de classe, on recalcul de la nouvelle position des deux centroïdes affectés par ce changement, celui de la nouvelle classe et celui de l ancienne. 3. On recommence avec le point i + 1 Les variantes de cet algorithme se situe au niveau du calcul des centroïde qui peut être progressif (c»est-à-dire qu au fur et à mesure que les point sont affecté à un centroïde, on recalcul sa position) ou alors être recalculé à la fin du parcours de la base. D autres variantes sont possibles avec l utilisation exclusive de point de la base ou non comme centroïdes,... Il existe aussi des améliorations de cet algorithme avec, par exemple, une version flou dont le but est de ne pas créer une frontière entre deux classe, mais plutôt de permettre à deux classes de se chevaucher. Cet algorithme est appelé Fuzzy k-means. Son principe est de prendre en plus un paramètre de degré de flou f [0... 1] entre les classes. Cela revient donc à changer la boucle vue précédement et la remplacer par : 1. On calcul les centroïdes des classes auxquelles le point i appartient. Pour cela, on effectue la boucle suivante : On prend le centroïde c, on calcul la distance de i à c. Si la distance pour c est la plus petite alors on remplace notre minimum et on enlève de la liste d appartenance tous centroïdes c dont la distance est supérieur à f d(c, i) > d(c, i). Si la distance pour c n est pas le minimum, que celui si est le centroïde m alors, si f d(c, i) > d(m, i), on rejette c, sinon on le met dans la liste d appartenance. 2. Ensuite on recalcule les nouveaux centroïdes de chaque classe impliquée. Pour cela on modifie légèrement la formule en associant un poids à chaque point lors de son affectation au centroïde. Ce poids pour le point i est de 1 si la distance au centroïde c de cette classe est le minimum de toutes les distances aux centroïdes et du rapport d(m,i) d(c,i) avec m le centroïde le plus proche de i : min ( x C w x d (c, x) ) c C (3) Expectation Maximization Cet algorithme (voir [EM], [EM1]) est directement issu du domaine des probabilités. Son but est de trouver la distribution de probabilité d un ensemble de données en utilisant une somme de courbe Gaussienne. Les courbes Gaussiennes sont définies par la formule que nous avons vue (voir 2 page 6). Le modèle total pour n courbes Gaussiennes, c est-à-dire la probabilité d avoir x est obtenu en faisant : p(x) = n w h f (x ψ h ) (4) h=1 Dans cette formule w h est le nombre d éléments associés à la classe et f h (x) = f (x ψ h ) est la fonction de densité de la h ième courbe dont les paramètres sont ψ h = (θ h, µ h ) avec θ h la variance et µ h l espérance de la courbe h. L algorithme trouve donc ψ = ψ 1,..., ψ n qui approxime le mieux la distribution. Pour cela il utilise l appartenance d un point x à une classe h qui est : w h (x) = w h f h (x ψ h ) n i=1 w i f i (x ψ i ) (5) 8

9 Une solution industrielle complète de data mining 2.3 La segmentation ( clustering). La qualité d un ensemble de paramètre θ est donnée par la formule (où D est la base de données) : L (ψ) = ( n ) log w i f (x ψ i ) x D i=1 (6) Contrairement à ce qui est marqué cette formule n est utilisée que pour un ensemble restreint des éléments de la base de données, car sinon le coup du calcul serait trop important. on appelle cet ensemble restreint l ensemble de test. L algorithme Expectation Maximization en lui même fonctionne comme suit : 1. On initialise les n ψ soit au hasard soit par une approximation rapide On a donc une base de données D, avec m éléments 7, à l itération i on à les paramètres des courbes ψ i. On calcule ψ i+1 pour l itération i + 1 de la manière suivante : Pour chaque éléments x D, on calcule son appartenance à chacune des classes en utilisant la formule 5 page 8, on obtient donc les valeurs wh i (x) qui mesure l appartenance du point x à la classe h pour l itération i. On met les paramètres des courbes gaussiennes à jour, pour la classe h on utilise les formules : µ i+1 h = x D wi h (x) x x D wi h (x) (7) θ i+1 h = x D wi h (x) (x µ i+1 ) (x µ j+1 h h ) T x D wi h (x) (8) x T signifie transposée de x car les paramètres sont ici de dimension d où d est le nombre de champs de la base. 3. Le critère d arrêt est ici que L ( ψ i ) L ( ψ i+a) ɛ ou ɛ est un paramètre de l algorithme. Cet algorithme n peut être efficace que si l on prend des t-uples aléatoirement dans la base. Il ne peut pas être efficace sur une base de données complète utilisée à la fois pour calculer les nouveaux ψ et pour vérifier que la condition d arrêt n est pas atteinte. Il nous faut de ce que l on appelle une base d apprentissage et une base de test. On trouvera en 4.1 page 28, le code complet de l algorithme Expectation Maximization 8 et inspiré du code sur le site [EM1]. L algorithme de segmentation hiérarchique basique Les algorithmes de segmentation hiérarchique sont aussi très nombreux. Nous allons ici présenter le plus simple d entre eux. Cet algorithme prend en paramètre le nombre de classe racine que l on souhaite avoir ainsi que la base de données. Il se déroule ensuite comme suit : 1. Si le nombre d objets dans la base est inférieur ou égal au nombre d objets racine souhaité, on s arrête. 2. Sinon, on prend les deux objets de la base qui sont les plus proches le on les fusionne en une classe, dont le centroïde va remplacer les deux éléments de la base. 3. On retourne en 1 avec la base mise à jour. Cet algorithme va donc créer un hiérarchie de classes composées chacune de deux éléments. Kohonen Kohonen est un réseaux de neurones dont le but est de segmenter un espace est Kohonen. Le but premier était de réduire le nombre de points nécessaire pour «qualifier» un ensemble sans toutefois perdre sa topologie. Le principe de ce réseau est assez algorithmique et il n a de réseaux de neurones que la liaisons entre les poids. Il n existe pas de notion de fonction d activation, retropropagation... Nous l avons toutefois classé dans les réseaux de neurones du fait de la proposition de Kohonen était dans ce domaine. 6 Une approximation rapide peut-être faite en prenant p points au hasard pour chaque classe et en calculant espérance et variance. 7 Cela signifie que l on ne prend pas forcément non plus la base de données en entier, on peut se contenter d éléments pris au hasard. 8 Ce programme de test a été fait en Java du fait de la rapidité de développement d un programme de test dans ce langage. 9

10 2.4 Le data mining. S.C.I.A. promo 2002 Le principe est le suivant : 1. En paramètre, on donne le nombre de classes désirées n ainsi que la base de données et on crée n vecteurs à d dimensions ou d est la taille d un t-uple. Ces vecteurs représenteront les centroïdes, ils sont ordonnés et numérotés. 2. On présente tour à tour tous les éléments de la base de données (ou de la base d apprentissage seulement). 3. Pour tout élément x, on cherche le centroïde de la classe la plus proche de x et on le rapproche de x proportionnellement à sa distance à x. 4. Ensuite, on prend les autres centroïdes et on les rapproche de x proportionnellement à leur distance à x et inversement proportionnellement à la valeur absolue de la différence de leur numéro de classe. On multiplie la distance de déplacement d un coefficient α qui diminue tour après tour pour atteindre 0, ce qui arrête la boucle. Cet approche est donc plus algorithmique que connexioniste. Elle est utilisée dans Intelligent Miner d I.B.M Le data mining. On peut découper le data mining en trois parties, suivant si la technique utilisée génère : Des arbres décisions, dans le cas d apprentissage supervisé où l on a un champ de la base représentant une classe «cible» et que l on souhaite apprendre comment détecter l appartenance à cette classe en posant minimum de question possible. Des règles permettant, toujours dans le cadre d apprentissage supervisé avec une classe «cible», d avoir une couverture maximale en un minimum de règles 9. Des règles d associations, dans le cas d apprentissage non supervisé, qui permette de déterminer des implications et correspondances 10. Ce type de règle est très différent du précédent dans le sens où le précédent ne donne que des informations avec en conclusion les valeurs de la classe cible et que ces règles donnent n importe quelle valeur en conclusion. Ici, nous nous intéressons au dernier types de technologies de data mining. En effet, comme dans les supposition que nous avons faites nous ne savons rien sur la base de données, il est difficile de passer tous les champs en supposant qu ils sont des champs cibles. Nous cherchons donc des moyens de découvrir des «associations rules» dans notre base de données Les algorithmes de découverte de règle d association. Le principe de ces algorithmes est simple. Pour l explicité nous allons prendre comme cas d études un supermarché. Supposons que nous avons n clients et un ensemble de produit P composé de m produits. Chaque client i achète les produits de P i qui est un sous-ensemble de P. La seule information utilisée pour déterminer des propriétés à propos des clients est la collection P 1, P 2,..., P n. Une «règle d association» est une règle de la forme A B où A et B sont des sous-ensembles de P et B 0. Un client i satisfait cette règle si et seulement si A B P i. Le support de cette règle est le nombre de clients qui satisfont cette règle divisé par le nombre total de clients. La confiance de cette est le nombre de clients qui satisfont cette règle sur le nombre total de clients i qui ont A P i. Si A B a k élément, on dit que la règle est d ordre k. Les règles d association qui ont à la fois un support et une confiance très large peuvent être construit avec de simples algorithmes. Pourtant dès que la base de données devient grande des méthodes plus efficaces sont nécessaire. 9 Ces règles sont très utiles dans le cas de systèmes experts et tout autre système dit «à base de règle» 10 Ces règles sont très utilisées dans les supermarchés et analyses de sites Web,

11 Une solution industrielle complète de data mining 2.4 Le data mining. APriori La plus simple est l algorithme connus sous le nom d «APriori». Cet algorithme est basé sur la construction de sous-ensemble de P qui sont présent chez beaucoup de client (support important), en les joignant ensuite pour obtenir des sous-ensemble de cardinalité plus importante mais avec des supports toujours aussi grand. Pour faire ceci APriori introduit la notion de k-itemset qui sont les sous-ensembles de P où k est la cardinalité. On appelle ensuite I k l ensemble des k-itemsets. Cet algorithme prend en paramètre 2 valeurs de type pourcentage et une base de données. Le premier paramètre de type pourcentage est appelé s est c est la valeur minimale du support des règles que cet algorithme doit générer. L algorithme commence par générer l ensemble S de tous les 1-itemset dont le support est supérieur ou égal à s : S = i I 1 / support(i) s (9) Ensuite il va assembler les k-itemset appartenant à S et contenant exactement k 1 éléments en commun et ne garder, parmi les k + 1-itemset générés que ceux dont le support est supérieur ou égal à s. Ainsi si l on a les 4-itemset A, B, C, D et A, B, C, E l algorithme va générer le 5-itemset A, B, C, D, E et vérifier sont support. L algorithme recommence ensuite jusqu à ne plus pouvoir générer de k-itemset. Il utilise donc le fait que si un k-itemset à un support s tout k + 1-itemset aura un support s 1 s et que donc si s est inférieur au seuil fixé, s + 1 le sera aussi. Une fois les k-itemset générés, il faut les transformer en règle. Or un k-itemset A, B, C, D peut produire les règles : A B C D (10) A B D C (11) A C D B (12) B C D A (13) Et on ne considère ici que les règles ayant pour conclusion un seul item du k-itemset, ce qui n est pas une obligation et, dans le cas contraire, on augmente alors les possibilités... Donc il nous faut ensuite supprimer les règles n exprimant pas quelque chose que l utilisateur jugera important. Cette importance accordée par l utilisateur est matérialisé par le coefficient de confiance minimal qu il rentre en deuxième paramètre de type pourcentage à l algorithme. Il ne garde ensuite que les règle ayant un taux de confiance supérieur à ce seuil. Dans APriori cette phase ne bénéficie pas d algorithmie où d heuristique qui mérite que l on s y attarde. On génère toutes les règles et l on parcours une fois la base pour calculer la confiance de chaque règle, ou l on utilise les données déjà disponible (du fait que la confiance peut s exprimer par un ratio de supports). Il faut noter que bien évidement la deuxième technique doit être employée dans le cadre d une application industrielle, bien qu elle soit un peu plus compliquée à mettre en place. Les reproches que l on fait à cet algorithmes sont que bien qu il génère moins de k-itemsets, il fait une passe pour chaque type de k-itemset (voir figure 4 page 12). Cela implique, sur les grosses bases de données des temps de calculs très important par passe. Améliorations de la séléction de k-itemset D autres algorithmes que APriori existe. Pour la première partie, la sélection de k-itemsets, ils proposent des raffinements et améliorations de l heuristique utilisée par APriori. 11

12 2.4 Le data mining. S.C.I.A. promo 2002 Fig. 4 APriori doit effectuer 3 passes pour evaluer les 3-itemset. Pruning Le pruning 11 (voir [AIS93]), qui consiste à supprimer les k-itemset dont le support est trop faible (technique de base de APriori) est étendu en anticipant les règles à faible support. Pour cela, plusieurs techniques sont utilisées, le pruning peut-être : Basé sur le nombre de t-uples qu il reste dans la base : Lors du passage en revue des t-uples dans la base, si une règle i à, à ce niveau de la base, un support s i < s et que même si tous les t-uples restant sont valide cette règle s i restera inférieur à s, alors on arrête de compter pour cette règle et ses extensions. Basé sur la détection de caractéristique : dans ce type de pruning, on effectue une phase de pré-processing où l on détermine les t-uples ayant certaines caractéristiques simple 12 (par exemple ayant p 1 comme produit). On garde en mémoire toutes les caractéristiques qui sont présente dans un nombre de t-uples tel que le support de toute règle contenant cette caractéristique sera inférieur au support s minimal. Ainsi, à la génération d un k-itemset, il suffit de vérifier qu une seule de ces caractéristiques sauvegardée est présente pour ne pas avoir à évaluer le support de cette règle et la supprimer directement. Diminution des passes Les heuristique pour la diminution des passes sont des améliorations très importantes. en effet, nous avons vu que le principal reproche fait à APriori est le fait que pour générer un k-itemset, il a fait k passes. Certains algorithmes (voir [BMUT97]) proposent des moyens de limiter ce nombres de passes. Par exemple, l algorithme de Dynamic itemset Counting propose un moyen basé sur un paramètre supplémentaire M qui représente un nombre de champs qui est jugé assez important par rapport à la base pour être significatif 13. Dans cet algorithme, les k-itemsets peuvent être qualifiés de quatre façons : Les k-itemsets dont on est sur qu il sont en dessous du seuil de support s (représentés sur les figures suivantes par des cercles). Les k-itemsets dont on est sur qu il sont au dessus du seuil de support s (représentés par des carrés). Les k-itemsets dont on suppose qu ils sont en dessous du seuil de support s (représentés par des cercles en pointillés). Les k-itemsets dont on suppose qu ils sont au dessus du seuil de support s (représentés par des carrés en pointillés). L algorithme se déroule comme suit : 1. On marque tous les 1-itemsets avec des cercles en pointillés (voir figure 5 page 13). 2. On passe M champs de la base en comptant pour tous les k-itemsets marqués en pointillés (que ce soit par un carré ou par un cercle). 11 En français «élagage». 12 Ici, on entend par simple que l on peut déterminer en une seule passe de base de données 13 Un tel nombre peut être calculé par l ordinateur par en fonctions du nombre d»éléments dans la base et de la répartition statistique des données au prix d un passage supplémentaire de la base (bien que l on puisse profiter de ce passage pour calculer les 1-itemset) 12

13 Une solution industrielle complète de data mining 2.4 Le data mining. 3. Si un cercle en pointillé à un rapport nombre de champs le vérifiant sur nombre de champs comptés actuellement supérieur à s, on le passe en carré avec des pointillés. Si un des sur-ensembles 14 de ce k-itemset n a dans ces sous-ensembles que des carrés (pointillés ou non), on le passe en cercle pointillé (voir figures 6 page 13 et 7 page 13). 4. Si un k-itemset a été compté au travers de toute la base, on le passe en ligne continue (qu il soit carré ou cercle). 5. Si on est arrivé à la fin de la base, on réinitialise la lecture de la base de manière à recommencer au début (voir figure 8 page 14). 6. On s arrête quand il n y a plus de k-itemset en pointillés, sinon on retourne en 2. Fig. 5 Le démarrage de l algorithme DIC. Fig. 6 L état du treillis après M transactions. Fig. 7 L état du treillis après 2 M transactions. La structure utilisée dans cet algorithme pour garder en mémoire les références entre champs est un treillis (représenté par un graphe). Pour avoir une implémentation efficace en terme d occupation mémoire, on ne procède pas comme sur les figures 5 page 13, 6 page 13, 7 page 13 et 8 page 14, mais on construit le treillis au fur et à mesure que des k-itemsets deviennent «accessible», c est-à-dire que l on peut commencer à les compter. En fait on travail sur des arbres de hachage, qui permettent des accès très rapide aux données. Ce sont en fait des tables de hachage imbriquées qui représente chacune un niveau d un k-itemset (voir figure 9 page 14). 14 Les sur-ensembles de E sont les ensembles dont E est un sous-ensemble. 13

14 2.4 Le data mining. S.C.I.A. promo 2002 Fig. 8 L état du treillis après une passe complète de la base. Fig. 9 La structure d arbres de hachage utilisée dans l algorithme DIC. Il peuvent être utilisé comme des tables de hachage imbriquées ou bien parcouru. Améliorations des règles En ce qui concerne la génération des règles à partir des k-itemset, des reproches ont aussi été fait. En effet les règles sont générées et gardées si et seulement si leur taux de confiance est supérieur au seuil c. Or, il s avère que ce taux de confiance n est pas forcément une bonne mesure de l intérêt d une règle pour l utilisateur. C est plutôt la mesure de la justesse d une règle. Prenons un exemple de problème lié à ce taux de confiance. Si deux variables sont totalement indépendantes au niveau statistique, cela signifie que : P (A B) P (A) P (B A) P (B) = P (B) (14) = P (A) (15) Donc La confiance de la règle A B vaut P (B). Or le fait que ces deux variables soient indépendante signifie qu il n existe pas de relations entre A et B. Donc si B est présent de manière importante, on aura une règle vrai mais qui ne signifie pas grand chose. Pour palier à ceci, il faut arriver à prendre en compte la valeur de P (B) lors du calcul de l intérêt (et non plus de la confiance) d une règle. Pour cela, il existe plusieurs mesure qui peuvent remplacer la confiance : 14

15 Une solution industrielle complète de data mining 2.4 Le data mining. La mesure de co-occurrence, son but est de mesurer la liaison entre A et B. L inconvénient de cette mesure est qu elle est totalement symétrique et que donc elle ne mesure aucunement l implication : Co(A, B) = P (A B) P (A) P (B) (16) Pour mesurer l implication, une autre formule se base sur la réécriture de A B en A B. La formule est : P (A) (1 P (B)) P (A B) Cette formule donne des valeurs dans 1 à + et possède les propriétés suivantes : Si A et B sont indépendant, alors elle retourne toujours une valeur de 1 Si A B est une règle qui arrive 100temps, alors le score retourné par cette mesure est de + obligeant sa sélection quelque soit le seuil c. Cette mesure n est pas symétrique et marque donc bien l implication. Elle possède néanmoins le défaut de devoir obliger le programmeur à gérer la division par zéro et l infini. De plus sa valeur n est que difficilement traduisible en pourcentage Les treillis de Galois issu des mathématiques, les treillis de Galois sont un domaine en pleine expansion. Encore peu formaliser, ils offrent des potentialités pour la découverte de règles d association. Le principe des treillis de Galois est de proposer une hiérarchie de concepts basés sur les propriétés des objets. On a des couples (X, X ) où X est l ensemble des objets qui ont (entre autres) les propriétés X, et X l ensemble des propriétés communes aux objets de X. On peut générer des règles en remarquant que l on a une règle A n i=1 (F i A) où A est un noeud possédant n fils numérotés de F 1 à F n et où l opération F i A retourne l ensemble F i sans les éléments appartenant à A. Dans la figure 10 page 15, on peut donc avoir la règle c a (f h). (17) Fig. 10 Un exemple de treillis de galois. Les treillis peuvent être mis à jour de manière incrémentale par des algorithmes un peu coûteux en temps, mais encore raisonnable. Cela permet donc de mettre à jour la base sans devoir tout reconstruire le treillis ou les règles comme certains algorithmes. 15

16 2.4 Le data mining. S.C.I.A. promo 2002 La pertinence des règles peut se mesurer plus facilement car avec quelques modification, on remplace les numéros des instances par des comptes du nombre de t-uples possédant la valeur. Cela permet de calculer la pertinence des règle d une manière très rapide. Un autre avantage de cet algorithme est la possibilité de générer des règles avec des «ou» dedans, ce qui permet d avoir de manière exhaustive ce qu implique d un élément. De plus, comme on ne souhaite pas toujours voir de manière exhaustive, car cela nuit à la pertinence des règles, il est possible d effectuer du prunning à la génération des règles et de ne garder que celle dont la confiance est supérieur à un certains pourcentage. Cela revient à calculer la cardinalité des fils et de multiplié celle du père par le dit pourcentage. Par contre, le gros défaut des treillis est d être presque entièrement en mémoire. Cela implique qu ils ne peuvent que difficilement fonctionner pour des grosses bases de données. 16

17 Une solution industrielle complète de data mining 3 Proposition d une solution. 3.1 Contraintes posées à la solution. Comme nous l avons déjà vu les premières contraintes sont le fait que la base de données est totalement inconnues au départ. Que ce soit au niveau du format ou du contenu, nous ne pouvons nous baser sur aucune information telle que champ cible,... Une autre contrainte est bien évidement un temps de réponse correct. Si la plupart des algorithmes de data mining sont efficaces en temps dans le cadre d apprentissage supervisé, des qu il s agit d apprentissage non supervisé, les résultats chute beaucoup. Il nous faut donc palier à cette inconvénient pour concevoir une technique permettant un temps de réponse correct. Il est aussi très important de pouvoir faire bénéficier notre solution des connaissances que quelqu un pourrait avoir sur la base de données. En effet, ce n est pas parce que nous présupposons qu il n y a pas de connaissances que c est toujours le cas. Il arrive que quelqu un ait les connaissances et le temps et la compétence pour les rentrer dans la solution. Dans ce cas, il serait bête de ne pas en profiter. De plus un point important est la non réaction de notre solution face au bruit. Cela signifie qu il ne faut pas que le bruit ou les valeurs abérantes influe sur le résultat (au niveau des règles d association principalement). 3.2 Présentation de l architecture générale. Nous allons tout d abord présenter l architecture globale de cette solution, c est-à-dire les entrées et les sorties, les différentes parties, leurs buts et comment elles interagissent entre elles Entrées et sortie de la solution. Tout d abord la solution va prendre en entrée : Une vecteur contenant le nom des champs. La base de données (où plutôt un moyen de communiquer avec, car on ne charge pas la base de données complète en mémoire). Les paramètres des différents modules. Ces paramètres sont optionnels et indépendants de toute base de données, mais comme il est possible de tuner différentes parties de la solution, autant le permettre. Ces différents paramètres seront explicités dans leurs modules respectifs. Les connaissances potentielles et totalement optionnelles sur la base de données. Comme nous l avons dit il peut être intéressant quand les connaissances existent et peuvent être fournies de les utiliser. Tous les paramètres optionnels sont, quand il ne sont pas mis, soit ignorés (pour le cas des connaissances sur la base), soit remplacés par des valeurs par défaut (pour les différents tune de chaque module). les sorties de la solutions sont, quant à elle : Une série de classes générées dans la base. Des règles d associations pour chacune des classes. Des règles d associations valables sur toutes les classes. L intérêt de sortir des règles d association par classe est de permettre de différencier les domaines d applications des règles. Par exemple, dans le cas d un magasin, on va générer des classes qui permettront de différencier les sociétés des particuliers. Il est donc stupide, maintenant que l on sait faire l différence entre eux d essayer d appliquer les règles des sociétés lorsque l on à affaire à un particulier. Toujours dans le cas d un magasin, il suffit d appliqué le modèle sortie pour savoir si un client est une société ou un particulier et donc pouvoir charger les règles qui correspondent Les différentes parties. Notre solution se compose de plusieurs parties. Chacune d entre elle à ses fonctionnalités et elles interagissent entre elles, quelque fois à plusieurs niveaux, par rapport à la sortie de la solution. 17

18 3.2 Présentation de l architecture générale. S.C.I.A. promo 2002 Le premier module est celui de data cleaning et transformation de données. Comme le data cleaning n est pas toujours rentable, cette partie est optionnelle et nous verrons que c est un paramètre de la solution pour tuner ce module. la partie transformation de la base essaye de normaliser la base de manière à ce que les algorithmes puissent ensuite travailler de manière efficace. Le module suivant est le module de segmentation. Son but est de générer les classes de la manière la plus intelligente possible. Le troisième et dernier module est celui dédier à la découverte de règle d association. Il va générer les règles à la fois pour les classes et les règles globales L interaction des différentes modules. Ces modules sont bien évidement en relation. il serait stupide de les faire travailler indépendemment. Leur agencement est montrer sur la figure 11 page 18. Fig. 11 L architecture générale de la solution. Le module de data cleaning et de transformation est bien entendu en aval de tout autre module, car sont but est de préparer et d adapter la base au processing qui seront ensuite effectués dessus. Le module de segmentation et le module de génération des règles d associations sont liés du fait que le second travail sur les résultats du premier. Par contre le module de génération des règles travail aussi sur les données nettoyées et transformées et non pas que sur les sorties du module de segmentation. Les sorties sont en provenance directes des deux derniers modules. Nous allons maintenant pouvoir détailler le fonctionnement des différents modules. 18

19 Une solution industrielle complète de data mining 3.3 Le module de data cleaning et de transformation de données. 3.3 Le module de data cleaning et de transformation de données. Comme nous l avons présenté ce module se découpe en deux partie, une optionnelle dont le but est de nettoyer la base de donnés du plus d erreurs possible, et une partie obligatoire s occupant de gérer la normalisation de la base de données de manière à travailler sur un schéma identique Le data cleaning. Les données industrielles sont souvent bruitées. Il va nous falloir déterminer le plus possible le bruit des données pour le corriger. Comme les résultats de cette phase sont quelques fois inutiles (par exemple lorsque l on connaît avec certitudes les sources des données et que l on sait qu elles sont très peu bruités), cette phase est optionnelle et la solution prend donc un paramètre spécifiant si oui ou non l on effectue ce data cleaning. Par défaut, on considère que ce data cleaning a une raison d être et nous l effectuons. Pour déterminer quelles valeurs doivent être corrigée, il faut connaître le nombre de représentant de chaque valeur pour chaque champ. Cela revient à parcourir une fois la base de données et à compter les occurrences de chaque valeur pour chaque champ. Pour diminuer la mémoire prise, à cette étape les valeurs du type entier ou flottant ne sont pas prises en compte 15. Chaque champ va donc avoir un tableau de valeurs avec leurs nombres d occurences associées. Il est donc ensuite aisé de comparé des tableaux pour voir si il ne partagerais pas une importante plage de valeur. Le pourcentage de valeurs partagées peut aussi être un paramètre de ce module. Ce pourcentage est un seuil qui signifie que s il est dépassé, les deux champs peuvent être considérés comme ayant les mêmes valeurs d utilisées. Dans ce cas la, on fusionne les tableau des deux champs en un seul pour cette phase. Dans les tableaux restant, on calcul ensuite la distance de Hamming 16 entre les chaînes de caractères que sont les valeurs. Cette distance nous permet de dire que si deux chaînes de caractères sont proche, alors l une risque d être la déformation de l autre. On procède itérativement en calculant la distance par rapport à la première valeur, puis pour la deuxième,... Par contre, quand une distance est calculée on la multiplie par la cardinalité normalisée 17 de la valeur la moins grande des deux valeurs impliquées dans la distance et on la compare à un paramètre du module qui défini en dessous de quel seuil on considère que deux données sont similaires. Cela nous permet de considérer deux valeurs très proches comme similaires même si la cardinalité de la moins représentée est importante. De la même manière des chaînes un peu plus différentes mais dont la deuxième n est pas du tout représentée seront sous le seuil. Si la valeur calculée est en dessous du seuil, on fusionne les valeurs en : 1. Mettant à jour la base de données. 2. Ajoutant le nombre d occurences de la valeur la moins représentée à la plus représentée. 3. Supprimant la valeur la moins représentée du tableau La transformation des données. Pour être exploitable par les modules suivants, notre base de données doit être normalisée. Cela signifie que l on doit respecter un format que ces modules comprennent, au moins pour le chargement de la base. Pour cela, on va se servir d une partie des informations qui ont été générée lors de la phase de data cleaning et si cette phase n a pas été faite, générer e dont nous avons besoin, c est-à-dire principalement des tableaux référençant les valeurs de chaque champs. De la même manière que l on a regroupé les valeurs lors de la phase de data cleaning si elle a été faite, ici, on cherche à éliminer des valeurs. Pour cela on considère un seuil d importance s qui est spécifié par l utilisateur si il le souhaite 18 et toutes les valeurs qui apparaissent moins de s fois la cardinalité de la valeur la plus représentée sont supprimées. 15 En effet, on ne saurait les traiter comme on le fait avec les chaînes de caractères 16 La distance de Hamming est le nombre de bits différents entre deux chaines. 17 La cardinalité normalisée d une valeur correspond à la cardinalité de cette valeur sur la cardinalité de la valeur la plus représentée pour ce champ. 18 Dans le cas contraire on prend une valeur par défaut. 19

20 3.3 Le module de data cleaning et de transformation de données. S.C.I.A. promo 2002 Une autre chose à faire est de ramener les valeurs continues entières mais présente sur des intervalles trop grand dans des domaines raisonnables, par le biais d une discrétisation. Des informations peuvent être fournies lors de cette étape pour spécifier des champs dont on veut forcer ou empêcher la discrétisation. Cela nous permet de générer des champs discrets qui sont exploitables lors de la génération de règles d association. Le but du jeu est de générer une table où les valeurs des champs sont booléennes. Un article fait ou ne fait pas partie du ticket de course, par exemple. Pour ce faire, on va générer une colonne par valeur possible. On va donc avoir un nombre de champs très important. C est pour cette raison que nous avons précédement effectuer une suppression de toutes les valeurs trop faiblement représentées, pour ne pas surcharger le nombre de champs. Il nous faut ensuite passer la table sous la nouvelle forme. pour cela plusieurs solution s offrent à nous, suivant la façon dont la table est initialement construite : 1. Si la table est déjà dans la forme que l on souhaite lui donner (c est à dire une colonne identifiant et des colonnes booléennes plus quelques colonnes annexes que l on peut ou non ignorer), on ne la modifie pas. 2. Dans beaucoup de cas, la table contient 2 colonnes : Une pour un identifiant de transaction L autre pour un identifiant de produit Dans ce cas, la transformation est basique, mais on a en général besoin de savoir quelle est la colonne de l identifiant et quelle est celle des produits. Nous verrons comment le déterminer plus loin. 3. La table peut représenter une liste de produit acheter (par exemple quand le nombre de produit acheté à un maximum connu et faible). Dans ce cas, la transformation est plus difficile et nécessite des suppositions. 4. La présence de nombre entier peut souvent dénoter un identifiant de produit mais dans ce cas, la plage n est pas importante. Elle peut aussi déterminer tout autre chose (que nous ne savons pas mais devons prendre en compte) et dans ce cas, il est possible qu une discrétisation 19 nous permette de sortir des informations. Une fois discrétisé, les différents intervalles nous servent comme des valeurs différentes pour la nouvelle table. Cette phase de détection de l utilisation d un champ est à étudier attentivement. 5. Un nombre flottant est obligatoirement discrétisé, car nous ne saurions pas comment le traiter. De même pour les entiers, la discrétisation nous permet ensuite de traiter les valeurs comme des champs pour la nouvelle table. Table à 2 champs Nous l avons vu le but du jeu est de déterminer quelle colonne est l identifiant. Pour cela nous devons nous baser sur plusieurs heuristiques : Si une colonne est un entier et l autre une chaîne de caractère, alors la première est l identifiant de transaction. Si les deux colonnes sont des entiers, on par du principe qu il y a plus de transactions que de produits 20 et la colonne ayant le plus grand nombre d éléments de valeurs différentes. Une fois la colonne de l identifiant trouvée, on procède comme sur la figure 12 page 21. Table à plus de deux champs Dans ce cas, on considère que chaque ligne est une transaction, on va donc attribuer un numéro par ligne et ensuite générer les champs à valeur booléenne comme tout à l heure (voir figure 13 page 21). Cette façon de faire est la transformation basique d une table à plus de 2 colonnes. Par exemple, il est possible qu il y ait des identifiants de transaction et dans ce cas, il nous faut des précisions de l utilisateur. On ne peut donc automatiquement détecter ceci. L utilisateur a donc la possibilité de préciser une colonne identifiant si il le souhaite, cela peut nous permettre de transformer la base de manière plus propre. 19 Au sens création d intervalles, c est-à-dire gestion d un grand nombre de valeurs ordonnées. 20 Cette hypothèse est en fait toujours vérifiée (sauf cas vraiment exceptionnels) pour la simple raison que si il a moins de transaction que de produits, cela signifie que beaucoup de produits ne se vendent pas du tout. Or un magasin type grande surface a assez de client pour vendre de tout ces produits au moins une fois. De plus un magasins ayant plus de produits différents que de client n est pas économiquement viable. 20

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Alain Rakotomamonjy - Gilles Gasso. INSA Rouen -Département ASI Laboratoire PSI Introduction au Data-Mining p. 1/25 Data-Mining : Kèkecé? Traduction : Fouille de données. Terme

Plus en détail

Le Data Mining au service du Scoring ou notation statistique des emprunteurs!

Le Data Mining au service du Scoring ou notation statistique des emprunteurs! France Le Data Mining au service du Scoring ou notation statistique des emprunteurs! Comme le rappelle la CNIL dans sa délibération n 88-083 du 5 Juillet 1988 portant adoption d une recommandation relative

Plus en détail

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007 Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................

Plus en détail

La classification automatique de données quantitatives

La classification automatique de données quantitatives La classification automatique de données quantitatives 1 Introduction Parmi les méthodes de statistique exploratoire multidimensionnelle, dont l objectif est d extraire d une masse de données des informations

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Data Mining. Vincent Augusto 2012-2013. École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto.

Data Mining. Vincent Augusto 2012-2013. École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto. des des Data Mining Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne 2012-2013 1/65 des des 1 2 des des 3 4 Post-traitement 5 représentation : 6 2/65 des des Définition générale Le

Plus en détail

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes. Promotion X 004 COURS D ANALYSE DES STRUCTURES MÉCANIQUES PAR LA MÉTHODE DES ELEMENTS FINIS (MEC 568) contrôle non classant (7 mars 007, heures) Documents autorisés : polycopié ; documents et notes de

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Optimisation, traitement d image et éclipse de Soleil

Optimisation, traitement d image et éclipse de Soleil Kléber, PCSI1&3 014-015 I. Introduction 1/8 Optimisation, traitement d image et éclipse de Soleil Partie I Introduction Le 0 mars 015 a eu lieu en France une éclipse partielle de Soleil qu il était particulièrement

Plus en détail

Notice d utilisation

Notice d utilisation Notice d utilisation Gestion des Dossiers et des Bases de Données Sommaire Préambule 1. Accès à la gestion des Dossiers et des Bases de Données 1.1 Accès «Ecole» 1.2 Accès «Entreprise» 1.3 Modification

Plus en détail

données en connaissance et en actions?

données en connaissance et en actions? 1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)

Plus en détail

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI 1 Déroulement d un projet en DATA MINING, préparation et analyse des données Walid AYADI 2 Les étapes d un projet Choix du sujet - Définition des objectifs Inventaire des données existantes Collecte, nettoyage

Plus en détail

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique Objectifs Clustering On ne sait pas ce qu on veut trouver : on laisse l algorithme nous proposer un modèle. On pense qu il existe des similarités entre les exemples. Qui se ressemble s assemble p. /55

Plus en détail

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

Complément d information concernant la fiche de concordance

Complément d information concernant la fiche de concordance Sommaire SAMEDI 0 DÉCEMBRE 20 Vous trouverez dans ce dossier les documents correspondants à ce que nous allons travailler aujourd hui : La fiche de concordance pour le DAEU ; Page 2 Un rappel de cours

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

Rapport de Stage. Titre : Clustering à l aide d une représentation supervisée

Rapport de Stage. Titre : Clustering à l aide d une représentation supervisée Nicolas Creff Du 1er février au 31 juillet 2011 Promotion 2011 Majeure SCIA Rapport de Stage Titre : Clustering à l aide d une représentation supervisée Sujet : Personnalisation de scores à l aide de la

Plus en détail

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING» LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING» Gilbert Saporta Professeur de Statistique Appliquée Conservatoire National des Arts et Métiers Dans leur quasi totalité, les banques et organismes financiers

Plus en détail

Rapport d'analyse des besoins

Rapport d'analyse des besoins Projet ANR 2011 - BR4CP (Business Recommendation for Configurable products) Rapport d'analyse des besoins Janvier 2013 Rapport IRIT/RR--2013-17 FR Redacteur : 0. Lhomme Introduction...4 La configuration

Plus en détail

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée. ANALYSE 5 points Exercice 1 : Léonie souhaite acheter un lecteur MP3. Le prix affiché (49 ) dépasse largement la somme dont elle dispose. Elle décide donc d économiser régulièrement. Elle a relevé qu elle

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Gilles Gasso, Stéphane Canu INSA Rouen -Département ASI Laboratoire LITIS 8 septembre 205. Ce cours est librement inspiré du cours DM de Alain Rakotomamonjy Gilles Gasso, Stéphane

Plus en détail

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES Dominique LAFFLY Maître de Conférences, Université de Pau Laboratoire Société Environnement Territoire UMR 5603 du CNRS et Université de Pau Domaine

Plus en détail

Les algorithmes de base du graphisme

Les algorithmes de base du graphisme Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............

Plus en détail

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring Année académique 2006-2007 Professeurs : Marco Saerens Adresse : Université catholique de Louvain Information Systems

Plus en détail

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Chapitre VIII. Les bases de données. Orientées Objet. Motivation Chapitre VIII Motivation Le modèle relationnel connaît un très grand succès et s avère très adéquat pour les applications traditionnelles des bases de données (gestion) Les bases de données Orientées Objet

Plus en détail

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes. Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis

Plus en détail

Chapitre 1 Qu est-ce qu une expression régulière?

Chapitre 1 Qu est-ce qu une expression régulière? Chapitre 1 Qu est-ce qu une expression régulière? Les ordinateurs n ont pas du tout la même conception des textes que nous : pour nous, un texte est un ensemble d idées couchées sur papier. Nous nous en

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

TD n o 8 - Domain Name System (DNS)

TD n o 8 - Domain Name System (DNS) IUT Montpellier - Architecture (DU) V. Poupet TD n o 8 - Domain Name System (DNS) Dans ce TD nous allons nous intéresser au fonctionnement du Domain Name System (DNS), puis pour illustrer son fonctionnement,

Plus en détail

Initiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr

Initiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr Initiation à Excel Frédéric Gava (MCF) gava@univ-paris12.fr LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne 61 avenue du Général de Gaulle 94010 Créteil cedex Plan de cette année

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Classification non supervisée

Classification non supervisée AgroParisTech Classification non supervisée E. Lebarbier, T. Mary-Huard Table des matières 1 Introduction 4 2 Méthodes de partitionnement 5 2.1 Mesures de similarité et de dissimilarité, distances.................

Plus en détail

Ebauche Rapport finale

Ebauche Rapport finale Ebauche Rapport finale Sommaire : 1 - Introduction au C.D.N. 2 - Définition de la problématique 3 - Etat de l'art : Présentatio de 3 Topologies streaming p2p 1) INTRODUCTION au C.D.N. La croissance rapide

Plus en détail

Angles orientés et trigonométrie

Angles orientés et trigonométrie Chapitre Angles orientés et trigonométrie Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Trigonométrie Cercle trigonométrique. Radian. Mesure d un angle orienté, mesure principale.

Plus en détail

Poker. A rendre pour le 25 avril

Poker. A rendre pour le 25 avril Poker A rendre pour le 25 avril 0 Avant propos 0.1 Notation Les parties sans * sont obligatoires (ne rendez pas un projet qui ne contient pas toutes les fonctions sans *). Celles avec (*) sont moins faciles

Plus en détail

Correction du Baccalauréat S Amérique du Nord mai 2007

Correction du Baccalauréat S Amérique du Nord mai 2007 Correction du Baccalauréat S Amérique du Nord mai 7 EXERCICE points. Le plan (P) a une pour équation cartésienne : x+y z+ =. Les coordonnées de H vérifient cette équation donc H appartient à (P) et A n

Plus en détail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé Baccalauréat S ntilles-guyane 11 septembre 14 Corrigé EXERCICE 1 6 points Commun à tous les candidats Une entreprise de jouets en peluche souhaite commercialiser un nouveau produit et à cette fin, effectue

Plus en détail

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense» Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges

Plus en détail

Les indices à surplus constant

Les indices à surplus constant Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté

Plus en détail

L apprentissage automatique

L apprentissage automatique L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer

Plus en détail

INF6304 Interfaces Intelligentes

INF6304 Interfaces Intelligentes INF6304 Interfaces Intelligentes filtres collaboratifs 1/42 INF6304 Interfaces Intelligentes Systèmes de recommandations, Approches filtres collaboratifs Michel C. Desmarais Génie informatique et génie

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

Jeux mathématiques en maternelle. Activités clés. Jeu des maisons et des jardins (Yvette Denny PEMF)

Jeux mathématiques en maternelle. Activités clés. Jeu des maisons et des jardins (Yvette Denny PEMF) Activités clés NIVEAU : PS/MS Jeu des maisons et des jardins (Yvette Denny PEMF) Compétences Construire les premiers nombres dans leur aspect cardinal Construire des collections équipotentes Situation

Plus en détail

Mathématiques financières

Mathématiques financières Mathématiques financières Table des matières 1 Intérêt simple 1 1.1 Exercices........................................ 1 2 Intérêt composé 2 2.1 Taux nominal, taux périodique, taux réel.......................

Plus en détail

Probabilités Loi binomiale Exercices corrigés

Probabilités Loi binomiale Exercices corrigés Probabilités Loi binomiale Exercices corrigés Sont abordés dans cette fiche : (cliquez sur l exercice pour un accès direct) Exercice 1 : épreuve de Bernoulli Exercice 2 : loi de Bernoulli de paramètre

Plus en détail

Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques : MTH EN JEN 2013-2014 Elèves de seconde, première et terminale scientifiques : Lycée Michel Montaigne : HERITEL ôme T S POLLOZE Hélène 1 S SOK Sophie 1 S Eteindre Lycée Sud Médoc : ROSIO Gauthier 2 nd PELGE

Plus en détail

0DWKpPDWLTXHVGHO DUJHQW. édité par Mr. G.Moumoulidis (OTE)

0DWKpPDWLTXHVGHO DUJHQW. édité par Mr. G.Moumoulidis (OTE) 3/$,78'RF) 0DWKpPDWTXHVGHO DUJHQW HW OHVpWXGHVWHFKQTXHVpFRQRPTXHV édité par Mr. G.Moumoulidis (OTE) 8,2,7(5$7,2$/('(67(/(&2008,&$7,26,7(5$7,2$/7(/(&2008,&$7,28,2 8,2,7(5$&,2$/'(7(/(&208,&$&,2(6 - - 0DWKpPDWTXHVGHO

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

Feuille TD n 1 Exercices d algorithmique éléments de correction

Feuille TD n 1 Exercices d algorithmique éléments de correction Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments

Plus en détail

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

Plus en détail

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories : La vision nous permet de percevoir et d interpreter le monde qui nous entoure. La vision artificielle a pour but de reproduire certaines fonctionnalités de la vision humaine au travers de l analyse d images.

Plus en détail

Les algorithmes de fouille de données

Les algorithmes de fouille de données Février 2005 Les algorithmes de fouille de données DATAMINING Techniques appliquées à la vente, aux services client, interdictions. Cycle C Informatique Remerciements Je remercie les personnes, les universités

Plus en détail

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal La demande Du consommateur Contrainte budgétaire Préférences Choix optimal Plan du cours Préambule : Rationalité du consommateur I II III IV V La contrainte budgétaire Les préférences Le choix optimal

Plus en détail

Leçon N 4 : Statistiques à deux variables

Leçon N 4 : Statistiques à deux variables Leçon N 4 : Statistiques à deux variables En premier lieu, il te faut relire les cours de première sur les statistiques à une variable, il y a tout un langage à se remémorer : étude d un échantillon d

Plus en détail

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

UML (Diagramme de classes) Unified Modeling Language

UML (Diagramme de classes) Unified Modeling Language UML (Diagramme de classes) Unified Modeling Language Sommaire Introduction Objectifs Diagramme de classes Classe (Nom, attribut, opération) Visibilité et portée des constituants d une classe Association

Plus en détail

Statistiques Descriptives à une dimension

Statistiques Descriptives à une dimension I. Introduction et Définitions 1. Introduction La statistique est une science qui a pour objectif de recueillir et de traiter les informations, souvent en très grand nombre. Elle regroupe l ensemble des

Plus en détail

Ne laissez pas le stockage cloud pénaliser votre retour sur investissement

Ne laissez pas le stockage cloud pénaliser votre retour sur investissement Ne laissez pas le stockage cloud pénaliser votre retour sur investissement Préparé par : George Crump, analyste senior Préparé le : 03/10/2012 L investissement qu une entreprise fait dans le domaine de

Plus en détail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

Plus en détail

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur

Plus en détail

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Cours Base de données relationnelles. M. Boughanem, IUP STRI Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),

Plus en détail

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

TP 2 Réseaux. Adresses IP, routage et sous-réseaux TP 2 Réseaux Adresses IP, routage et sous-réseaux C. Pain-Barre INFO - IUT Aix-en-Provence version du 24/2/2 Adressage IP. Limites du nombre d adresses IP.. Adresses de réseaux valides Les adresses IP

Plus en détail

La fonction exponentielle

La fonction exponentielle DERNIÈRE IMPRESSION LE 2 novembre 204 à :07 La fonction exponentielle Table des matières La fonction exponentielle 2. Définition et théorèmes.......................... 2.2 Approche graphique de la fonction

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................

Plus en détail

Pourquoi archiver les emails

Pourquoi archiver les emails Pourquoi archiver les emails Objectif du document Ce document a pour objectif d'expliquer la nécessité et le bien-fondé de l'archivage des emails. Il a été écrit par Alain Heurtebise, Directeur Général

Plus en détail

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

Plus en détail

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème Chapitre IX L intégration de données Le problème De façon très générale, le problème de l intégration de données (data integration) est de permettre un accès cohérent à des données d origine, de structuration

Plus en détail

C f tracée ci- contre est la représentation graphique d une

C f tracée ci- contre est la représentation graphique d une TLES1 DEVOIR A LA MAISON N 7 La courbe C f tracée ci- contre est la représentation graphique d une fonction f définie et dérivable sur R. On note f ' la fonction dérivée de f. La tangente T à la courbe

Plus en détail

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels Activité 4 Tour de cartes Détection et correction des erreurs Résumé Lorsque les données sont stockées sur un disque ou transmises d un ordinateur à un autre, nous supposons généralement qu elles n ont

Plus en détail

La valeur présente (ou actuelle) d une annuité, si elle est constante, est donc aussi calculable par cette fonction : VA = A [(1-1/(1+k) T )/k]

La valeur présente (ou actuelle) d une annuité, si elle est constante, est donc aussi calculable par cette fonction : VA = A [(1-1/(1+k) T )/k] Evaluation de la rentabilité d un projet d investissement La décision d investir dans un quelconque projet se base principalement sur l évaluation de son intérêt économique et par conséquent, du calcul

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

A.-M. Cubat PMB - Import de lecteurs - Généralités Page 1 Source : http://amcubat.be/docpmb/import-de-lecteurs

A.-M. Cubat PMB - Import de lecteurs - Généralités Page 1 Source : http://amcubat.be/docpmb/import-de-lecteurs A.-M. Cubat PMB - Import de lecteurs - Généralités Page 1 Diverses méthodes d import de lecteurs Les données (noms, prénoms, adresses. des lecteurs) proviennent en général du secrétariat, et se trouvent

Plus en détail

Théorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France

Théorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France Théorie et Codage de l Information (IF01) exercices 2013-2014 Paul Honeine Université de technologie de Troyes France TD-1 Rappels de calculs de probabilités Exercice 1. On dispose d un jeu de 52 cartes

Plus en détail

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG Exploitations pédagogiques du tableur en STG Académie de Créteil 2006 1 EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG Commission inter-irem lycées techniques contact : dutarte@club-internet.fr La maquette

Plus en détail

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1 Christophe CANDILLIER Cours de DataMining mars 2004 age 1 1. Introduction 2. rocessus du DataMining 3. Analyse des données en DataMining 4. Analyse en Ligne OLA 5. Logiciels 6. Bibliographie Christophe

Plus en détail

Chapitre 1 : Évolution COURS

Chapitre 1 : Évolution COURS Chapitre 1 : Évolution COURS OBJECTIFS DU CHAPITRE Savoir déterminer le taux d évolution, le coefficient multiplicateur et l indice en base d une évolution. Connaître les liens entre ces notions et savoir

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Apprentissage par renforcement (1a/3)

Apprentissage par renforcement (1a/3) Apprentissage par renforcement (1a/3) Bruno Bouzy 23 septembre 2014 Ce document est le chapitre «Apprentissage par renforcement» du cours d apprentissage automatique donné aux étudiants de Master MI, parcours

Plus en détail

EXCEL TUTORIEL 2012/2013

EXCEL TUTORIEL 2012/2013 EXCEL TUTORIEL 2012/2013 Excel est un tableur, c est-à-dire un logiciel de gestion de tableaux. Il permet de réaliser des calculs avec des valeurs numériques, mais aussi avec des dates et des textes. Ainsi

Plus en détail

Cours 1 : introduction

Cours 1 : introduction Cours 1 : introduction Modèle entité-association Exemple : Deux entités (produit et dépôt) sont mises en relation (stock). Une entité doit être constituée d un identifiant et peut être complétée par des

Plus en détail

Correction du baccalauréat STMG Polynésie 17 juin 2014

Correction du baccalauréat STMG Polynésie 17 juin 2014 Correction du baccalauréat STMG Polynésie 17 juin 2014 EXERCICE 1 Cet exercice est un Q.C.M. 4 points 1. La valeur d une action cotée en Bourse a baissé de 37,5 %. Le coefficient multiplicateur associé

Plus en détail

Métriques de performance pour les algorithmes et programmes parallèles

Métriques de performance pour les algorithmes et programmes parallèles Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and

Plus en détail

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) PLANIFICATION DE TÂCHES DANS MS PROJECT IFT702 Planification en intelligence artificielle Présenté à M. Froduald KABANZA

Plus en détail

Baccalauréat ES/L Métropole La Réunion 13 septembre 2013 Corrigé

Baccalauréat ES/L Métropole La Réunion 13 septembre 2013 Corrigé Baccalauréat S/L Métropole La Réunion 13 septembre 2013 Corrigé A. P. M.. P. XRCIC 1 Commun à tous les candidats Partie A 1. L arbre de probabilité correspondant aux données du problème est : 0,3 0,6 H

Plus en détail

Date : 18.11.2013 Tangram en carré page

Date : 18.11.2013 Tangram en carré page Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

Introduction aux SGBDR

Introduction aux SGBDR 1 Introduction aux SGBDR Pour optimiser une base Oracle, il est important d avoir une idée de la manière dont elle fonctionne. La connaissance des éléments sous-jacents à son fonctionnement permet de mieux

Plus en détail

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» Corrigé Cours de Mr JULES v3.3 Classe de Quatrième Contrat 1 Page 1 sur 13 CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» «Correction en rouge et italique.» I. Les nombres décimaux relatifs.

Plus en détail

TSTI 2D CH X : Exemples de lois à densité 1

TSTI 2D CH X : Exemples de lois à densité 1 TSTI 2D CH X : Exemples de lois à densité I Loi uniforme sur ab ; ) Introduction Dans cette activité, on s intéresse à la modélisation du tirage au hasard d un nombre réel de l intervalle [0 ;], chacun

Plus en détail