Cette conférence a pour objet de partager avec les participants le processus d'intégration d'un système de Machine Learning (ML) dans une application Java / Scala. Elle s'adresse aux développeurs qui souhaitent inclure des services de recommandation en ligne, d'analyse de risque ou d'intelligence client mais qui n'ont pas de connaissances particulières en ML. Nous aborderons :
Le processus global : Choix des échantillons d'apprentissage et de test, sélection de l'algorithme de machine learning, évaluation et optimisation du modèle
La préparation de l'échantillon de données : Les critères de choix des données à collecter, le volume à injecter, les transformations à réaliser en amont de l'application de l'algorithme de ML
La sélection et la construction du modèle : Cette section parcoure les catégories d'algorithmes disponibles dans MLLib et présente les principales règles de sélection et d'ajustement en fonction de l'objectif.
L'évaluation et l'optimisation du modèle : Cette section présente les métriques d'évaluation de la performance prédictive des modèles ML ainsi que les diagrammes D3.js de visualisation adaptés.
Spark and Mesos cluster optimization was discussed. The key points were:
1. Spark concepts like stages, tasks, and partitions were explained to understand application behavior and optimization opportunities around shuffling.
2. Application optimization focused on reducing shuffling through techniques like partitioning, reducing object sizes, and optimizing closures.
3. Memory tuning in Spark involved configuring storage and shuffling fractions to control memory usage between user data and Spark's internal data.
4. When running Spark on Mesos, coarse-grained and fine-grained allocation modes were described along with solutions like using Mesos roles to control resource allocation and dynamic allocation in coarse-grained mode.
PSUG #52 Dataflow and simplified reactive programming with Akka-streamsStephane Manciot
This document discusses using Akka streams for dataflow and reactive programming. It begins with an overview of dataflow concepts like nodes, arcs, graphs, and features such as push/pull data, mutable/immutable data, and compound nodes. It then covers Reactive Streams including back pressure, the asynchronous non-blocking protocol, and the publisher-subscriber interface. Finally, it details how to use Akka streams, including defining sources, sinks, and flows to create processing pipelines as well as working with more complex flow graphs. Examples are provided for bulk exporting data to Elasticsearch and finding frequent item sets from transaction data.
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015Stephane Manciot
This document discusses packaging and deploying a Java EE application using Docker and Ansible. It covers using Docker for portability, fast image building, and performance benefits compared to VMs. It discusses using Dockerfiles to package applications, exposing ports, mounting volumes, and setting default commands. It addresses challenges like service discovery and load balancing using an ambassador pattern. Ansible is covered for orchestration, provisioning, deployment, its advantages like being agentless and using YAML playbooks with roles and templates. The document provides examples of Dockerfiles, building images, running containers, and Ansible inventory, playbooks and roles to deploy applications on infrastructure.
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearchMourad DACHRAOUI
Retour d'experience sur l'utilisation de spray dans le cadre de Mogobiz. Explication de la technique du "Magnet Pattern" et présentation des bénéfices de l'utilisation de Rx.
http://j.mp/psug43Xebia
Cette conférence a pour objet de partager avec les participants le processus d'intégration d'un système de Machine Learning (ML) dans une application Java / Scala. Elle s'adresse aux développeurs qui souhaitent inclure des services de recommandation en ligne, d'analyse de risque ou d'intelligence client mais qui n'ont pas de connaissances particulières en ML. Nous aborderons :
Le processus global : Choix des échantillons d'apprentissage et de test, sélection de l'algorithme de machine learning, évaluation et optimisation du modèle
La préparation de l'échantillon de données : Les critères de choix des données à collecter, le volume à injecter, les transformations à réaliser en amont de l'application de l'algorithme de ML
La sélection et la construction du modèle : Cette section parcoure les catégories d'algorithmes disponibles dans MLLib et présente les principales règles de sélection et d'ajustement en fonction de l'objectif.
L'évaluation et l'optimisation du modèle : Cette section présente les métriques d'évaluation de la performance prédictive des modèles ML ainsi que les diagrammes D3.js de visualisation adaptés.
Spark and Mesos cluster optimization was discussed. The key points were:
1. Spark concepts like stages, tasks, and partitions were explained to understand application behavior and optimization opportunities around shuffling.
2. Application optimization focused on reducing shuffling through techniques like partitioning, reducing object sizes, and optimizing closures.
3. Memory tuning in Spark involved configuring storage and shuffling fractions to control memory usage between user data and Spark's internal data.
4. When running Spark on Mesos, coarse-grained and fine-grained allocation modes were described along with solutions like using Mesos roles to control resource allocation and dynamic allocation in coarse-grained mode.
PSUG #52 Dataflow and simplified reactive programming with Akka-streamsStephane Manciot
This document discusses using Akka streams for dataflow and reactive programming. It begins with an overview of dataflow concepts like nodes, arcs, graphs, and features such as push/pull data, mutable/immutable data, and compound nodes. It then covers Reactive Streams including back pressure, the asynchronous non-blocking protocol, and the publisher-subscriber interface. Finally, it details how to use Akka streams, including defining sources, sinks, and flows to create processing pipelines as well as working with more complex flow graphs. Examples are provided for bulk exporting data to Elasticsearch and finding frequent item sets from transaction data.
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015Stephane Manciot
This document discusses packaging and deploying a Java EE application using Docker and Ansible. It covers using Docker for portability, fast image building, and performance benefits compared to VMs. It discusses using Dockerfiles to package applications, exposing ports, mounting volumes, and setting default commands. It addresses challenges like service discovery and load balancing using an ambassador pattern. Ansible is covered for orchestration, provisioning, deployment, its advantages like being agentless and using YAML playbooks with roles and templates. The document provides examples of Dockerfiles, building images, running containers, and Ansible inventory, playbooks and roles to deploy applications on infrastructure.
Paris Scala User Group #43 - Spray (Magnet Pattern) + RxScala / ElasticSearchMourad DACHRAOUI
Retour d'experience sur l'utilisation de spray dans le cadre de Mogobiz. Explication de la technique du "Magnet Pattern" et présentation des bénéfices de l'utilisation de Rx.
http://j.mp/psug43Xebia
Scala io2013 : Our journey from UML/MDD to Scala macrosebiznext
This document discusses moving from UML modeling to using Scala macros to define a domain-specific language (DSL) for modeling database entities and queries. It describes issues with UML like lack of efficiency and impedance mismatch. Scala macros allow defining a DSL that is compiled into type-checked code and avoids runtime overhead. An example DSL defines entities, relationships, constraints and generates corresponding Slick code. The implementation uses both dynamic and macro features to allow type-checked queries defined at the call site. The DSL approach reduced code and improved delivery time over the UML-based workflow.
Le Machine Learning, sous-ensemble de l'Intelligence Artificielle, est la discipline donnant à un ordinateur la capacité d'apprendre sans avoir été explicitement programmé, en se basant sur des données d'entrée.
Systèmes de recommandations, détection de fraude, prédiction de ventes, segmentation de clients: ses champs d'applications sont nombreux. Venez découvrir à travers cette présentation ce qui se cache derrière ces mots, quels algorithmes existent, comment ils fonctionnent, avec quels outils, dans quel cas et comment les utiliser.
Par Yoann Benoit & Alban Phelip, consultants Xebia
La vidéo de la conférence est à retrouver sur : http://www.xebicon.fr/programme.html
Machine learning, deep learning et search : à quand ces innovations dans nos ...Antidot
FORCE EST DE CONSTATER QUE DURANT CES 10 DERNIÈRES ANNÉES, IL N'Y A PAS EU D'ÉVOLUTION DANS LE DOMAINE DES MOTEURS DE RECHERCHE POUR LES ENTREPRISES. ET POURTANT LA TOILE BRUISSE DE LA RÉVOLUTION DU MACHINE LEARNING.
Ces nouvelles approches mathématiques révolutionnent le traitement de l'information. Les géants du web s'en sont saisis depuis quelques années déjà et les premiers résultats sont là. Votre recherche Web est plus personnalisée, elle prédit plus qu'elle ne trouve, elle anticipe.
Mais les travailleurs du savoir dans les entreprises classiques n'ont pas encore accès à ces innovations. Ont-ils été oubliés ?
La recherche d'information en entreprise est-elle condamnée à exploiter des technologies du 20ème siècle ?
William Lesguillier, responsable de l'offre Valorisation des Données chez Antidot, revient sur l'intérêt de ces approches de machine learning afin de comprendre à quoi elles servent. A travers divers retours d'expériences, nous illustrerons ce qu'elles apportent dans la recherche d'information.
Nous ouvrirons enfin les portes du laboratoire d'Antidot pour présenter les derniers travaux de recherche sur les algorithmes de pertinence. l
Mix it2014 - Machine Learning et Régulation NumériqueDidier Girard
Le machine learning est la science qui permet à un algorithme d’apprendre sans avoir été explicitement programmé pour cela. Elle est utilisée par les acteurs de la nouvelle économie pour le traitement de gros volumes de données, dans la traduction automatique, la reconnaissance de la parole, la classification de consommateur, la construction de réputation, ou la prévision des trafics. C’est la “régulation numérique”.
Nous parlerons des champs d’application du machine learning par les gros acteurs du numérique, de ses fondements mathématiques, des grands familles d’algorithmes et des outils disponibles pour mettre en pratique.
Découvrez les bases pour comprendre cette science et mesurer le potentiel des possibilités de son utilisation.
Que faire quand vous avez du mal à trier et prioriser des informations ? La solution s'appelle Machine Learning. Le principe est simple : faire faire les apprentissages à une application pour qu'elle puisse classer, categoriser ou caracteriser différentes informations, sans les connaître initialement. Cela s'applique au spam, aux traductions ou même à la qualité de code. Le Machine Learning est parfois difficile à prendre en main avec de gros projets, alors nous verrons comment en faire sur des données plus modestes, et plus accessibles.
Azure Machine Learning Studio allows users to quickly create and deploy predictive models as analytics solutions in the cloud. Predictive analytics uses machine learning techniques like statistical analysis to analyze data, identify patterns and trends, and forecast future events. The Azure Machine Learning Studio demo illustrates how to work with different data sources and formats, prepare the data through cleaning and filtering, and build and evaluate machine learning models using algorithms like logistic regression, decision trees, and neural networks. The models can then be deployed as web services and accessed through a web application.
Building highly scalable website requires to understand the core building blocks of your applicative environment. In this talk we dive into Jahia core components to understand how they interact and how by (1) respecting a few architectural practices and (2) fine tuning Jahia components and the JVM, you will be able to build a highly scalable service
Fundamentals of Managing the Data Center Life Cycle for OwnersSchneider Electric
Just as good genes do not guarantee health and well-being, a
good design alone does not ensure a data center is well-built and will remain efficient and available over the course of its life span.
For each phase of the data center’s life cycle, proper care and action must be taken to continuously meet the business needs of the facility. This presentation describes the five phases of the data center life cycle, identifies key tasks and pitfalls, and offers practical advice to facility owners and management.
The course introduces students to data mining in its interdisciplinary nature, with the goal of being exposed to and being able to obtain variety of data, process them, quickly find one’s feet, and perform exploratory analysis as a basis for drawing conclusions for decision-making and/or subsequent automation and prediction employing machine learning models.
The Machine Learning course follows the Data Mining course with introducing students to the most widely used machine learning algorithms and building machine learning models for prediction, decision-making, and/or automation of data analysis in a computer program /application.
Si la baisse de la productivité est effective dans toutes les économies développées... elle est particulièrement marquée en France. Au niveau national, cet essoufflement touche tous les secteurs, et plus particulièrement celui de l’industrie, usuellement caractérisé par des gains de productivité élevés. Depuis la crise Covid, le secteur industriel contribue pour 35 % environ à cette perte, alors qu’il ne représente que 9,3 % de la valeur ajoutée nationale brute en 2023. Dans ce contexte, est-il possible de mener une politique de réindustrialisation du pays sans y associer un objectif de hausse des gains de productivité ?Non rappelle ce Cube. Au contraire, ces deux objectifs, jusqu’alors indépendants l’un de l’autre, sont désormais deux défis à relever conjointement. En analysant les différents explications à la baisse de celle-ci observée en France et dans les autres économies développées, ce Cube suggère que l’augmenter en parallèle d’une politique de réindustrialisation sous-entend une réallocation des facteurs de production vers les entreprises industrielles à fort potentiel. Elle suppose également une une meilleure affectation des ressources.
Scala io2013 : Our journey from UML/MDD to Scala macrosebiznext
This document discusses moving from UML modeling to using Scala macros to define a domain-specific language (DSL) for modeling database entities and queries. It describes issues with UML like lack of efficiency and impedance mismatch. Scala macros allow defining a DSL that is compiled into type-checked code and avoids runtime overhead. An example DSL defines entities, relationships, constraints and generates corresponding Slick code. The implementation uses both dynamic and macro features to allow type-checked queries defined at the call site. The DSL approach reduced code and improved delivery time over the UML-based workflow.
Le Machine Learning, sous-ensemble de l'Intelligence Artificielle, est la discipline donnant à un ordinateur la capacité d'apprendre sans avoir été explicitement programmé, en se basant sur des données d'entrée.
Systèmes de recommandations, détection de fraude, prédiction de ventes, segmentation de clients: ses champs d'applications sont nombreux. Venez découvrir à travers cette présentation ce qui se cache derrière ces mots, quels algorithmes existent, comment ils fonctionnent, avec quels outils, dans quel cas et comment les utiliser.
Par Yoann Benoit & Alban Phelip, consultants Xebia
La vidéo de la conférence est à retrouver sur : http://www.xebicon.fr/programme.html
Machine learning, deep learning et search : à quand ces innovations dans nos ...Antidot
FORCE EST DE CONSTATER QUE DURANT CES 10 DERNIÈRES ANNÉES, IL N'Y A PAS EU D'ÉVOLUTION DANS LE DOMAINE DES MOTEURS DE RECHERCHE POUR LES ENTREPRISES. ET POURTANT LA TOILE BRUISSE DE LA RÉVOLUTION DU MACHINE LEARNING.
Ces nouvelles approches mathématiques révolutionnent le traitement de l'information. Les géants du web s'en sont saisis depuis quelques années déjà et les premiers résultats sont là. Votre recherche Web est plus personnalisée, elle prédit plus qu'elle ne trouve, elle anticipe.
Mais les travailleurs du savoir dans les entreprises classiques n'ont pas encore accès à ces innovations. Ont-ils été oubliés ?
La recherche d'information en entreprise est-elle condamnée à exploiter des technologies du 20ème siècle ?
William Lesguillier, responsable de l'offre Valorisation des Données chez Antidot, revient sur l'intérêt de ces approches de machine learning afin de comprendre à quoi elles servent. A travers divers retours d'expériences, nous illustrerons ce qu'elles apportent dans la recherche d'information.
Nous ouvrirons enfin les portes du laboratoire d'Antidot pour présenter les derniers travaux de recherche sur les algorithmes de pertinence. l
Mix it2014 - Machine Learning et Régulation NumériqueDidier Girard
Le machine learning est la science qui permet à un algorithme d’apprendre sans avoir été explicitement programmé pour cela. Elle est utilisée par les acteurs de la nouvelle économie pour le traitement de gros volumes de données, dans la traduction automatique, la reconnaissance de la parole, la classification de consommateur, la construction de réputation, ou la prévision des trafics. C’est la “régulation numérique”.
Nous parlerons des champs d’application du machine learning par les gros acteurs du numérique, de ses fondements mathématiques, des grands familles d’algorithmes et des outils disponibles pour mettre en pratique.
Découvrez les bases pour comprendre cette science et mesurer le potentiel des possibilités de son utilisation.
Que faire quand vous avez du mal à trier et prioriser des informations ? La solution s'appelle Machine Learning. Le principe est simple : faire faire les apprentissages à une application pour qu'elle puisse classer, categoriser ou caracteriser différentes informations, sans les connaître initialement. Cela s'applique au spam, aux traductions ou même à la qualité de code. Le Machine Learning est parfois difficile à prendre en main avec de gros projets, alors nous verrons comment en faire sur des données plus modestes, et plus accessibles.
Azure Machine Learning Studio allows users to quickly create and deploy predictive models as analytics solutions in the cloud. Predictive analytics uses machine learning techniques like statistical analysis to analyze data, identify patterns and trends, and forecast future events. The Azure Machine Learning Studio demo illustrates how to work with different data sources and formats, prepare the data through cleaning and filtering, and build and evaluate machine learning models using algorithms like logistic regression, decision trees, and neural networks. The models can then be deployed as web services and accessed through a web application.
Building highly scalable website requires to understand the core building blocks of your applicative environment. In this talk we dive into Jahia core components to understand how they interact and how by (1) respecting a few architectural practices and (2) fine tuning Jahia components and the JVM, you will be able to build a highly scalable service
Fundamentals of Managing the Data Center Life Cycle for OwnersSchneider Electric
Just as good genes do not guarantee health and well-being, a
good design alone does not ensure a data center is well-built and will remain efficient and available over the course of its life span.
For each phase of the data center’s life cycle, proper care and action must be taken to continuously meet the business needs of the facility. This presentation describes the five phases of the data center life cycle, identifies key tasks and pitfalls, and offers practical advice to facility owners and management.
The course introduces students to data mining in its interdisciplinary nature, with the goal of being exposed to and being able to obtain variety of data, process them, quickly find one’s feet, and perform exploratory analysis as a basis for drawing conclusions for decision-making and/or subsequent automation and prediction employing machine learning models.
The Machine Learning course follows the Data Mining course with introducing students to the most widely used machine learning algorithms and building machine learning models for prediction, decision-making, and/or automation of data analysis in a computer program /application.
Si la baisse de la productivité est effective dans toutes les économies développées... elle est particulièrement marquée en France. Au niveau national, cet essoufflement touche tous les secteurs, et plus particulièrement celui de l’industrie, usuellement caractérisé par des gains de productivité élevés. Depuis la crise Covid, le secteur industriel contribue pour 35 % environ à cette perte, alors qu’il ne représente que 9,3 % de la valeur ajoutée nationale brute en 2023. Dans ce contexte, est-il possible de mener une politique de réindustrialisation du pays sans y associer un objectif de hausse des gains de productivité ?Non rappelle ce Cube. Au contraire, ces deux objectifs, jusqu’alors indépendants l’un de l’autre, sont désormais deux défis à relever conjointement. En analysant les différents explications à la baisse de celle-ci observée en France et dans les autres économies développées, ce Cube suggère que l’augmenter en parallèle d’une politique de réindustrialisation sous-entend une réallocation des facteurs de production vers les entreprises industrielles à fort potentiel. Elle suppose également une une meilleure affectation des ressources.
Dans un contexte où la transmission et l'installation d'agriculteurs sont des enjeux cruciaux pour la profession agricole, de nouveaux agriculteurs s'installent chaque année et, parmi eux, certains Bac+5 ou plus. Les cursus des écoles d'ingénieurs n'ont pas vocation à former de futurs agriculteurs. Pourtant, certains apprenants ayant suivi ces cursus BAC + 5, qu'ils soient ou non issus du milieu agricole, tentent l'aventure de l'entrepreneuriat agricole. Qui sont-ils ? Quelles sont leurs motivations et visions ? Comment travaillent-ils ?
2. ANALYTICS
¢ La
découverte
de
pa5erns
dans
les
données
¢ S’appuie
sur
l’analyse
et
l’agréga=on
de
datasets
conséquents
¢ Pour
extraire
des
faits
du
passé
¢ Prédire
des
tendances
¢ En
u=lisant
le
machine
learning
3. CAS
D’UTILISATION
¢ Recommanda=on
¢ Classifica=on
de
contenu
en
groupes
prédéfinis
¢ Regroupement
de
contenus
similaires
¢ Iden=fica=on
de
topics
clefs
¢ Détec=on
de
fraude
et
d’anomalies
¢ Ranking
4. DE
LA
DONNÉE
À
LA
CONNAISSANCE
¢ De
la
donnée
à
¢ la
connaissance
— Dois-‐je
accorder
ce
crédit
à
ce
client
sur
la
base
de
ses
bilans
?
— Ce
film
est-‐il
un
film
d’humour
?
— Ce
mail
est-‐il
un
spam
?
Données
Hypothèses
ML
Connaissance
5. TYPES
D’APPRENTISSAGE
¢ Appren=ssage
Supervisé
— Classifica=on
¢ Le
résultat
est
un
valeur
parmi
N
sans
ordre
quelconque
et
dans
un
ensemble
prédéfini
¢ Exemple
:
Ce
film
est-‐il
un
film
d’horreur
ou
un
film
d’ac=ons
ou
un
film
roman=que
¢ Prédire
le
label
de
nouvelles
données
à
par=r
des
labels
des
données
existantes
— Régression
¢ Le
résultat
est
une
valeur
dans
un
ensemble
de
valeurs
con=nues
¢ Exemple
:
Quel
est
le
prix
prévisionnel
de
cet
appartement
dans
les
6
prochains
mois
?
¢ Appren=ssage
non
supervisé
— Clustering
¢ Les
données
en
entrée
de
l’algorithme
d’appren=ssage
ne
sont
pas
labellisées
¢ Grouper
les
données
en
fonc=on
de
leur
similarité
6. APPRENTISSAGE
SUPERVISÉ
¢ Prédire
les
labels
de
données
futures
à
par=r
de
labels
de
données
existantes
Salaire
Statut
Propriétaire
OK/KO
100
Célibataire
Oui
OK
120
Marié
Non
OK
100
Divorcé
Non
KO
80
Célibataire
Non
KO
70
Marié
Non
KO
100
Célibataire
Oui
OK
x
y
Con=nue
Catégorie
Binaire
Label
x1
x2
x3
7. DÉMARCHE
Echan=llon
labélisé
Sous-‐Echan=llon
labélisé
Sous-‐Echan=llon
dont
le
label
a
été
occulté
Algorithme
d’appren=ssage
Modèle
Performance
¢ Le
modèle
génère
les
prédic=ons
¢ Le
modèle
est
corrigé
lorsque
les
prédic=ons
sont
erronées
¢ Le
modèle
est
considéré
sa=sfaisant
lorsque
le
niveau
de
précision
est
considéré
comme
étant
sa=sfaisant
80%
20%
Training
set
Test
set
10. LE
MEILLEUR
ARBRE
DE
DÉCISION
OK
3
KO
3
Impureté
=
0,5
Statut
Statut
?
Marié
Célibataire
/
Divorcé
OK
1
2
KO
1
2
Gini
(marié)
=
1-‐
((1/2)2
+
(1/2)2)
=
0,5
Gini(Cél/Div)
=
1-‐((2/4)2
+
(2/4)2)
=
0,5
Impureté
=
((1+1)/6)
*
Gini(marié)
+
((2+2)/6)
*
Gini(Cél/Div)
=
0,5
1
1
2
2
Marié
Célibataire
/
Divorcé
U=lisa=on
de
l’index
Gini
OK
KO
OK
KO
11. LE
MEILLEUR
ARBRE
DE
DÉCISION
Propriétaire
?
Oui
Non
OK
2
1
KO
0
3
Gini
(Oui)
=
1-‐
((2/2)2
+
(0/2)2)
=
0
Gini(Non)
=
1-‐((1/4)2
+
(3/4)2)
=
0,375
Impureté
=
((2+0)/6)
*
Gini(Oui)
+
((1+3)/6)
*
Gini(Non)
=
0,25
Marge
d’erreur
1
-‐
max(2/2,
0/2)
=
0
1
–
max(1/4,
3/4)
=
0,25
OK
3
KO
3
Impureté
=
0,5
Propriétaire
2
0
1
3
Oui
Non
U=lisa=on
de
l’index
Gini
12. LE
MEILLEUR
ARBRE
DE
DÉCISION
Propriétaire
?
Oui
Non
OK
2
1
KO
0
3
Entropie(Oui)
=
-‐(2/2)log2
(2/2)
–
(0/2)log2(0/2)
=
0
Entropie(Non)
=
-‐(1/4)log2(1/4)
–
(3/4)log2(3/4)
=
0,5
+
0,31
=
0,81
Gain=
((2+0)/6)
*
Entropie(Oui)
+
((1+3)/6)
*
Entropie(Non)
=
0,4
Marge
d’erreur
1
-‐
max(2/2,
0/2)
=
0
1
–
max(1/4,
3/4)
=
0,25
OK
3
KO
3
Impureté
=
0,5
Propriétaire
2
0
1
3
Oui
Non
U=lisa=on
de
l’entropie
13. ARBRE
DE
DÉCISION
¢ Comment
est
construit
l’arbre
de
décision
— Recherche
de
la
meilleure
condi=on
de
segmenta=on
¢ En
s’appuyant
sur
l’impureté
— Qu’est
ce
que
la
mesure
d’impureté
¢ Mesure
la
qualité
de
la
sépara=on
¢ La
segmenta=on
s’arrête
lorsque
:
— Tous
les
échan=llons
d’un
nœud
appar=ennent
à
la
même
classe
— Il
n’y
a
plus
de
nouveaux
a5ributs
¢ Classifica=on
à
la
majorité
— Il
n’y
a
plus
d’échan=llons
à
classer
¢ Quelle
technique
Gini
ou
Entropie
?
— La
li5érature
:
¢ Gini
pour
les
a5ributs
con=nus,
l’entropie
pour
les
catégories
¢ L’entropie
moins
performante
?
— Mon
avis
:
¢ Essayer
les
deux
et
choisir
celle
qui
fonc=onne
le
mieux.
14.
15. CLASSIFICATION
NAÏVE
BAYÉSIENNE
¢ Théorème
de
Bayes
— p(y|x)
=
p(x|y)
p(y)
—
p(x)
¢ p(y|x)
— Probabilité
que
x
soit
de
la
classe
y
¢ p(x|y)
— Quelle
est
dans
l’échan=llon
labellisé,
la
probabilité
que
x
soit
dans
la
classe
y
¢ p(y)
¢ Quelle
est
dans
l’échan=llon
labellisé,
la
probabilité
d’occurrence
de
la
classe
y
¢ p(x)
=
¢ quelle
est
dans
l’échan=llon
labellisé,
la
probabilité
d’occurrence
de
x
16.
17. CLASSIFICATION
NAÏVE
BAYÉSIENNE
Statut
OK/KO
Célibataire
OK
Marié
OK
Divorcé
KO
Célibataire
KO
Marié
KO
Célibataire
OK
P(OK|Célibataire)
=
p(Célibataire|OK)
p(OK)
p(Célibataire)
P(OK|oui)
=
2/3
*
3/6
=
0,67
3/6
18. CLASSIFICATION
NAÏVE
BAYÉSIENNE
Client
Salaire
Statut
Propriétaire
OK/KO
C1
100
=
2
Célibataire
Oui
OK
C2
120
=
2
Marié
Non
OK
C3
100
=
2
Divorcé
Non
KO
C4
80
=
1
Célibataire
Non
KO
C5
70
=
1
Marié
Non
KO
C6
100
=
2
Célibataire
Oui
OK
C7
90
=
1
Marié
Non
p(x|y)
=
p(x1|y)
p(x2|y)
p(x3|y)
p(C7|OK)
=
p(1|OK)
p(Marié|OK)
p(Non|OK)
=
0
*
0.5
*
0.25
22. RÉGRESSION
LOGISTIQUE
Client
Salaire
Statut
Propriétaire
OK/KO
C(X)
PI
(Score)
C1
100
Célibataire
Oui
OK
1,99
0,87
C2
120
Marié
Non
OK
1,3
0,55
C3
100
Divorcé
Non
KO
-‐2,7
0,12
C4
80
Célibataire
Non
KO
-‐1,5
0,01
C5
70
Marié
Non
KO
-‐0,38
0,42
C6
100
Célibataire
Oui
OK
-‐0,49
0,21
23. RÉGRESSION
LOGISTIQUE
–
LA
COURBE
ROC
Client
Salaire
Statut
Propriét
aire
OK/KO
C(X)
PI
(Score)
TVP
TFP
C1
100
Célib.
Oui
OK
1,99
0,87
1/3
=
0,33
0/3
=
0
C2
120
Marié
Non
OK
1,3
0,55
2/3
=
0,66
0/3
=
0
C5
70
Marié
Non
KO
-‐0,38
0,42
2/3
=
0,66
1/3
=
0,33
C6
100
Célib.
Oui
OK
-‐0,49
0,21
3/3
=
1
1/3
=
0,
33
C3
100
Divorc
é
Non
KO
-‐2,7
0,12
3/3
=
1
2/3
=
0,66
C4
80
Célib.
Non
KO
-‐1,5
0,01
3/3
=
1
3/3
=
1
AUC
>
0.9
AUC
AUC
=
0.5
Pas
de
discrimina=on
0.7
<
AUC
<
0.8
Discrimina=on
acceptable
0.8
<
AUC
<
0.9
Discrimina=on
excellente
AUC
>=
0.9
Discrimina=on
excellente
0,33
0,66
1
0,33
0,66
1
TVP
TFP
24. RÉGRESSION
LOGISTIQUE
–
COURBE
RAPPEL
-‐
PRÉCISION
Client
Salair
e
Statut
Propriét
aire
OK/KO
C(X)
PI
(Score)
Rappel
Précision
C1
100
Célib.
Oui
OK
1,99
0,87
1/3
=
0,33
1/1
=
1
C2
120
Marié
Non
OK
1,3
0,55
2/3
=
0,66
2/2
=
1
C5
70
Marié
Non
KO
-‐0,38
0,42
2/3
=
0,66
2/3
=
0.66
C6
100
Célib.
Oui
OK
-‐0,49
0,21
3/3
=
1
3
/
4
=
0.75
C3
100
Divorcé
Non
KO
-‐2,7
0,12
3/3
=
1
3
/
5
=
0.6
C4
80
Célib.
Non
KO
-‐1,5
0,01
3/3
=
1
3
/
6
=
0.5
0,33
0,66
1
0,33
0,66
1
Précision
Rappel
¢ PR
versus
ROC
— PR
plus
adaptée
lorsque
les
classes
sont
très
déséquilibrées
?
25.
26. MACHINE
À
VECTEUR
DE
SUPPORT
m
f(x)
=
y
=
a0
+
a1
x1
+
a2
x2
+
a3
x3
27. RÉGRESSION
LINÉAIRE
¢ Classifica=on
— La
classe
est
une
variable
discrète
¢ La
régression
— La
classe
est
une
valeur
con=nue
¢ Dans
les
deux
cas
nous
sommes
toujours
dans
l’appren=ssage
supervisé.
¢ Exemple
— Quelle
sera
la
fréquenta=on
du
Stade
de
France
lors
de
la
prochaine
coupe
d’Europe
28.
29. APPRENTISSAGE
NON
SUPERVISÉ
CLUSTERING
–
PLUS
PROCHES
VOISINS
¢ Les
données
en
entrée
ne
sont
pas
labélisées
¢ Le
clustering
— va
perme5re
de
regrouper
les
données
similaires
en
cluster
¢ Objec=fs
— Réduire
la
distance
entre
deux
points
du
clusters
— Méthode
de
distance
u=lisée
:
Distance
euclidienne
UQlisateur
Age
Enfants
U1
38
2
U2
25
0
U3
45
3
U4
28
0
Distance
entre
U1
et
U2
=
racine2(
(38-‐25)2
+
(2-‐0)2)
=
13
Distance
entre
U1
et
U3
=
7
31. CLUSTERING
:
APPRENTISSAGE
NON
SUPERVISÉ
Feature/Item
P1
P2
P3
P4
CPU
3.2
2.7
1.4
2.9
SSD
1
1
0
0
Disque
1To
512G
512G
1To
RAM
32Go
16Go
8Go
64G
¢ Objec=f
— Calculer
la
distance
entre
les
items
en
pondérant
les
valeurs
des
features
— Distance
entre
deux
documents
permet
d’iden=fier
des
plagiats
par
exemple
32.
33. COLLABORATIVE
FILTERING
ALTERNATING
LEAST
SQUARES
SW1
SW2
V1
V2
U1
4
4
U2
5
5
U3
1
U1000
4
1
¢ Objec=f
— Bâ=r
une
matrice
de
rang
inférieur
qui
perme5e
de
faire
de
la
recommanda=on
38. DÉMARCHE
¢ Choix
des
données
— Le
choix
des
données
de
training
et
de
tests
s’appuie
sur
la
connaissance
mé=er
¢ Choix
des
critères
— Le
choix
des
critères
implique
également
de
la
connaissance
mé=er
¢ Choix
des
algorithmes
— Classifica=on
?
Régression
?
— Label
ou
non
ou
mixte
?
— Propor=on
de
classes
fortement
asymétriques
— L’objec=f
est
de
prédire
une
probabilité
?
topN
?
¢ Tuning
des
paramètres
des
algorithmes
en
testant
¢ Tout
automa=ser
pour
avoir
un
historique
précis
des
résultats
obtenus
39. SYNTHÈSE
¢ Appren=ssage
supervisé
— Classifica=on
¢ Arbre
de
décision
¢ Classifica=on
Bayésienne
naïve
¢ Régression
logis=que
¢ Support
à
vecteur
de
machine
— Régression
¢ Régression
linéaire
— Collabora=ve
Filtering
¢ Alterna=ng
Least
Squares
¢ Appren=ssage
non
supervisé
— Clustering
¢ K-‐plus
proches
voisins