SlideShare a Scribd company logo
1 of 17
kNN: k plus proches
voisins
“DIS MOI QUI SONT TES AMIS, JE TE DIRAIS QUI TU ES”
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 1
Sommaire
• A retenir
• Principe pour la discrimination (classification)
• Principe pour la prévision (regression)
• Notion de distance
• Conseil
• Dilemme biais-variance
• R packages
• Exercices
• Bibliographie
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 2
A retenir (1/2)
• kNN: pour effectuer une discrimination ou une prévision
• Méthode d’apprentissage* supervisée
• Méthode non paramétrique
• (*) lazy learner ou instance-based learning:
• aucun modèle n’est induit à partir d’exemples
• Insensible aux points aberrants
• On réexécute l'algorithme pour chercher de nouveaux voisins à chaque fois que l'on veut classer
un nouvel individu.
• Forte consommation en CPU
• Big Data : spark-knn disponible; SparkR ?
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 3
A retenir (2/2)
• Le voisinage d'un point est l'ensemble des autres points qui sont à une certaine distance de lui
• Les résultats dépendent de deux critères:
• Le nombre k: combien de voisins à retenir ?
• Quelle distance considérée ?
• Applications
• discriminer de documents indexés dans un moteur de recherche
• géomarketing: anticiper le CA d’un nouveau magasin basé sur d’autres points de vente semblables
• recommandations de produit à un individu basées sur d’autres individus semblables
• appétence, attrition
• …
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 4
Principe pour la discrimination
• La discrimination d’un individu se ramène à un calcul de probabilité simple: la nombre de
voisins appartenant à la classe sur le total de k voisins
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 5
k=3
individu à classer
individu appartenant à la classe cible « c1 »
3 cas
possibles
33%
66%
100%
Principe pour la discrimination
• La discrimination d’un individu se ramène à un calcul de probabilité simple: la nombre de
voisins appartenant à la classe sur le total de k voisins
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 6
k=3
3 cas
possibles
33%
66%
100%
Attention aux classes (ou évènements) rares ! Exemple: si le
nombre d’individus appartenant à c1 ne représente que 7%
de vos données d’apprentissage, alors prenez un k large. Si
vous souhaitez avoir une chance d’observer 10 individus de
c1 dans chaque voisinage alors prenez k = 10/0.07 = 142.
Principe pour la prévision
• La prévision d’un individu se ramène à un calcul de moyenne (peut être pondérée) des valeurs
de la réponse quantitative de ses k voisins
• Si l’on suppose que les k=3 voisins les plus proches sont ceux indiqués ci-dessus,
alors la prévision de Y pour l’individu cible sera la moyenne de (110, 80, 100)
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 7
k=3
X1 X2 Y (réponse)
150 30 100
90 35 110
100 55 70
80 34 80
80 30 100
ensemble d’apprentissage
X1 X2 Y
85 33 ?
ensemble test
individu
Notion de distance
• Propriétés de base d'une distance :
• d(A,A) = 0
• d(A,B) = d(B,A)
• d(A,B) ≤ d(A,C) + d(C,B)
• Types de distances
• Euclidienne
• Cosinus
• Manhattan
• …
• Implémentation
• R knn() euclidienne
• distance customisée
• voir ?dist
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 8
Entre 2 vecteurs de Rn
Entre 2 vecteurs de R2
Conseil (1/2)
• Afin de calculer la distance entre observations les variables X doivent être quantitatives
• Par conséquent, en cas de variables X qualitatives (factors) on va créer des variables-modalité
• pour une variable qualitative avec m modalités on définit m-1 variables-modalité
• Une variable-modalité ne possède que 2 valeurs:
• 0 si l’observation ne prend pas la valeur de la modalité
• 1 si l’observation prend la valeur de la modalité
• Exemple:
• soit la variable qualitative X1 (température) avec les modalités {« chaud », « tiède », « froid »}
• on crée alors les 2 variables modalités suivantes:
• chaud = 0 ou 1
• tiède = 0 ou 1
• si une observation prend la modalité « froid » alors les variables-modalité prennent les valeurs
• chaud=0
• tiède=0
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 9
Conseil (2/2)
• Normalisation pour X quantitatif
• min-max
• données centrées et réduites: voir ?scale
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 10
normalize <- function(x) {
return ((x - min(x)) / (max(x) - min(x)))
}
Dilemme biais - variance
• La complexité de kNN est déterminé par 1 / k
• Une augmentation de k (donc diminution de la complexité)
• augmente le biais: on risque d’ignorer des détails (schémas, patterns) importants dans les données
d’apprentissage
• diminue la variance: comme on est moins sensible aux données bruitées alors meilleure généralisation
• quid de k = nombre total d’observations
• Une diminution de k (donc augmentation de la complexité)
• diminue le biais
• augmente la variance
• quid de k = 1
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 11
Evaluation et validation
• Rappel
• Evaluation du modèle: quantification de sa performance.
• Validation du modèle: l'assurance que le modèle fonctionnera en production comme il a fonctionné
durant l'apprentissage.
• kNN pour la discrimination
• Evaluation: AUC pour l’ensemble d’apprentissage et AUC+ROC pour l’ensemble de validation
• Validation: AUC+ROC pour l’ensemble de test
• kNN pour la prévision
• Evaluation: MSE pour l’ensemble d’apprentissage et de validation
• Validation: MSE pour l’ensemble de test
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 12
R packages
• Le package « class » possède la fonction knn()
• ?knn
• knn(train, test, cl, k = 1, l = 0, prob = FALSE, use.all = TRUE)
• Usage courant: knn(train, test, cl, k)
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 13
données
d’apprentissage
données de test
colonne de
libellés de
classes
nombre de
voisins
minimum nb
de votes (k-l)
pour décision
si TRUE, la proportion de la
classe gagnante est
retournée
en cas d’égalité (ties) entre classes, par défaut on
sélectionne toutes les distances égales à la ke plus large.
Si FALSE, alors on effectue une sélection aléatoire de
distances égales à la ke afin d’utiliser exactement k
voisins.
R packages
• Le package « FNN » possède une autre fonction knn()
• ?knn
• knn(train, test, cl, k = 1, prob = FALSE,
algorithm=c("kd_tree", "cover_tree", "brute"))
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 14
choix de structure de données pour accélérer la recherche de voisins
Exercices
• Vous pouvez télécharger le dossier « knn » avec le lien Dropbox du formateur
• Vous y trouverez un fichier knn.Rmd avec les exemples suivants:
• EX_KNN0 : fondamentaux avec class::knn
• EX_KNN1 : discrimination d’individus selon susceptibilité de frauder avec codage manuel, sans knn()
• EX_KNN2 : idem EX_KNN1 avec class::knn et FNN::knn
• EX_KNN3 : prévision d’endettement des individus avec FNN::knn
• Vous y trouverez également un fichier knn_exo_long.Rmd avec un exercice long sur l’attrition
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 15
Bibliographie
• Mount J., Zumel N., Practical Data Science with R, Manning Publications, ISBN 9781617291562,
2014
• Lantz B., Machine Learning with R, Packt Publications, ISBN 9781782162148, 2013
• G-Tch, « Les k-plus proches voisins :Vite, il faut se la réapproprier… », http://www.r-
bloggers.com/les-k-plus-prcoches-voisins-vite-il-faut-se-la-reapproprier/, novembre 2013
• Vladimirov M., « Using the k-Nearest Neighbors Algorithm in R »,
http://blog.webagesolutions.com/archives/1164, novembre 2013
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 16
Principe pour la discrimination
• On peut également associer au calcul de probabilité une notion de poids avec, par exemple, les
fonctions suivantes:
• Dans ce cas, on se focalise plus par exemple, sur l’évaluation d'un degré d'appétence à quelque
chose au lieu de prédire l'appartenance ou non à une classe.
30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 17
a clarifier

More Related Content

What's hot

Introduction au Machine Learning
Introduction au Machine Learning Introduction au Machine Learning
Introduction au Machine Learning Novagen Conseil
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdfhanamettali
 
les arbres de décision ou de régression
les arbres de décision ou de régression les arbres de décision ou de régression
les arbres de décision ou de régression Mariem Chaaben
 
5.2 Régression linéaire
5.2 Régression linéaire5.2 Régression linéaire
5.2 Régression linéaireBoris Guarisma
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisionsMariem Chaaben
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning Niji
 
Introduction au Data Mining et Méthodes Statistiques
Introduction au Data Mining et Méthodes StatistiquesIntroduction au Data Mining et Méthodes Statistiques
Introduction au Data Mining et Méthodes StatistiquesGiorgio Pauletto
 
Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdfOuailChoukhairi
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigFelipe Sanchez Garzon
 
Intelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes expertsIntelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes expertsMohamed Heny SELMI
 
logistic_regression_ml.pdf
logistic_regression_ml.pdflogistic_regression_ml.pdf
logistic_regression_ml.pdfSidiAbdallah1
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data miningDonia Hammami
 
Chapitre 3 la recherche tabou
Chapitre 3 la recherche tabouChapitre 3 la recherche tabou
Chapitre 3 la recherche tabouAchraf Manaa
 
Introduction au Machine Learning
Introduction au Machine LearningIntroduction au Machine Learning
Introduction au Machine LearningMathieu Goeminne
 
Data mining - Introduction générale
Data mining - Introduction généraleData mining - Introduction générale
Data mining - Introduction généraleMohamed Heny SELMI
 

What's hot (20)

Introduction au Machine Learning
Introduction au Machine Learning Introduction au Machine Learning
Introduction au Machine Learning
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdf
 
les arbres de décision ou de régression
les arbres de décision ou de régression les arbres de décision ou de régression
les arbres de décision ou de régression
 
Data Mining
Data MiningData Mining
Data Mining
 
5.2 Régression linéaire
5.2 Régression linéaire5.2 Régression linéaire
5.2 Régression linéaire
 
clustering
clusteringclustering
clustering
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisions
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning
 
Introduction au Data Mining et Méthodes Statistiques
Introduction au Data Mining et Méthodes StatistiquesIntroduction au Data Mining et Méthodes Statistiques
Introduction au Data Mining et Méthodes Statistiques
 
Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdf
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine Learnig
 
Intelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes expertsIntelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes experts
 
Regression logistque
Regression  logistqueRegression  logistque
Regression logistque
 
Réseaux neurons
Réseaux neuronsRéseaux neurons
Réseaux neurons
 
logistic_regression_ml.pdf
logistic_regression_ml.pdflogistic_regression_ml.pdf
logistic_regression_ml.pdf
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data mining
 
Chapitre 3 la recherche tabou
Chapitre 3 la recherche tabouChapitre 3 la recherche tabou
Chapitre 3 la recherche tabou
 
Cours datamining
Cours dataminingCours datamining
Cours datamining
 
Introduction au Machine Learning
Introduction au Machine LearningIntroduction au Machine Learning
Introduction au Machine Learning
 
Data mining - Introduction générale
Data mining - Introduction généraleData mining - Introduction générale
Data mining - Introduction générale
 

More from Boris Guarisma

Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoiresBoris Guarisma
 
5.3 Régression logistique
5.3 Régression logistique5.3 Régression logistique
5.3 Régression logistiqueBoris Guarisma
 
05 Sélection de modèle linéaire
05 Sélection de modèle linéaire05 Sélection de modèle linéaire
05 Sélection de modèle linéaireBoris Guarisma
 
04 Introduction au logiciel R
04 Introduction au logiciel R04 Introduction au logiciel R
04 Introduction au logiciel RBoris Guarisma
 
03 Apprentissage statistique
03 Apprentissage statistique03 Apprentissage statistique
03 Apprentissage statistiqueBoris Guarisma
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4jBoris Guarisma
 

More from Boris Guarisma (8)

Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires
 
5.3 Régression logistique
5.3 Régression logistique5.3 Régression logistique
5.3 Régression logistique
 
05 Sélection de modèle linéaire
05 Sélection de modèle linéaire05 Sélection de modèle linéaire
05 Sélection de modèle linéaire
 
04 Introduction au logiciel R
04 Introduction au logiciel R04 Introduction au logiciel R
04 Introduction au logiciel R
 
03 Apprentissage statistique
03 Apprentissage statistique03 Apprentissage statistique
03 Apprentissage statistique
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4j
 

5.1 K plus proches voisins

  • 1. kNN: k plus proches voisins “DIS MOI QUI SONT TES AMIS, JE TE DIRAIS QUI TU ES” 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 1
  • 2. Sommaire • A retenir • Principe pour la discrimination (classification) • Principe pour la prévision (regression) • Notion de distance • Conseil • Dilemme biais-variance • R packages • Exercices • Bibliographie 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 2
  • 3. A retenir (1/2) • kNN: pour effectuer une discrimination ou une prévision • Méthode d’apprentissage* supervisée • Méthode non paramétrique • (*) lazy learner ou instance-based learning: • aucun modèle n’est induit à partir d’exemples • Insensible aux points aberrants • On réexécute l'algorithme pour chercher de nouveaux voisins à chaque fois que l'on veut classer un nouvel individu. • Forte consommation en CPU • Big Data : spark-knn disponible; SparkR ? 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 3
  • 4. A retenir (2/2) • Le voisinage d'un point est l'ensemble des autres points qui sont à une certaine distance de lui • Les résultats dépendent de deux critères: • Le nombre k: combien de voisins à retenir ? • Quelle distance considérée ? • Applications • discriminer de documents indexés dans un moteur de recherche • géomarketing: anticiper le CA d’un nouveau magasin basé sur d’autres points de vente semblables • recommandations de produit à un individu basées sur d’autres individus semblables • appétence, attrition • … 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 4
  • 5. Principe pour la discrimination • La discrimination d’un individu se ramène à un calcul de probabilité simple: la nombre de voisins appartenant à la classe sur le total de k voisins 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 5 k=3 individu à classer individu appartenant à la classe cible « c1 » 3 cas possibles 33% 66% 100%
  • 6. Principe pour la discrimination • La discrimination d’un individu se ramène à un calcul de probabilité simple: la nombre de voisins appartenant à la classe sur le total de k voisins 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 6 k=3 3 cas possibles 33% 66% 100% Attention aux classes (ou évènements) rares ! Exemple: si le nombre d’individus appartenant à c1 ne représente que 7% de vos données d’apprentissage, alors prenez un k large. Si vous souhaitez avoir une chance d’observer 10 individus de c1 dans chaque voisinage alors prenez k = 10/0.07 = 142.
  • 7. Principe pour la prévision • La prévision d’un individu se ramène à un calcul de moyenne (peut être pondérée) des valeurs de la réponse quantitative de ses k voisins • Si l’on suppose que les k=3 voisins les plus proches sont ceux indiqués ci-dessus, alors la prévision de Y pour l’individu cible sera la moyenne de (110, 80, 100) 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 7 k=3 X1 X2 Y (réponse) 150 30 100 90 35 110 100 55 70 80 34 80 80 30 100 ensemble d’apprentissage X1 X2 Y 85 33 ? ensemble test individu
  • 8. Notion de distance • Propriétés de base d'une distance : • d(A,A) = 0 • d(A,B) = d(B,A) • d(A,B) ≤ d(A,C) + d(C,B) • Types de distances • Euclidienne • Cosinus • Manhattan • … • Implémentation • R knn() euclidienne • distance customisée • voir ?dist 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 8 Entre 2 vecteurs de Rn Entre 2 vecteurs de R2
  • 9. Conseil (1/2) • Afin de calculer la distance entre observations les variables X doivent être quantitatives • Par conséquent, en cas de variables X qualitatives (factors) on va créer des variables-modalité • pour une variable qualitative avec m modalités on définit m-1 variables-modalité • Une variable-modalité ne possède que 2 valeurs: • 0 si l’observation ne prend pas la valeur de la modalité • 1 si l’observation prend la valeur de la modalité • Exemple: • soit la variable qualitative X1 (température) avec les modalités {« chaud », « tiède », « froid »} • on crée alors les 2 variables modalités suivantes: • chaud = 0 ou 1 • tiède = 0 ou 1 • si une observation prend la modalité « froid » alors les variables-modalité prennent les valeurs • chaud=0 • tiède=0 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 9
  • 10. Conseil (2/2) • Normalisation pour X quantitatif • min-max • données centrées et réduites: voir ?scale 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 10 normalize <- function(x) { return ((x - min(x)) / (max(x) - min(x))) }
  • 11. Dilemme biais - variance • La complexité de kNN est déterminé par 1 / k • Une augmentation de k (donc diminution de la complexité) • augmente le biais: on risque d’ignorer des détails (schémas, patterns) importants dans les données d’apprentissage • diminue la variance: comme on est moins sensible aux données bruitées alors meilleure généralisation • quid de k = nombre total d’observations • Une diminution de k (donc augmentation de la complexité) • diminue le biais • augmente la variance • quid de k = 1 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 11
  • 12. Evaluation et validation • Rappel • Evaluation du modèle: quantification de sa performance. • Validation du modèle: l'assurance que le modèle fonctionnera en production comme il a fonctionné durant l'apprentissage. • kNN pour la discrimination • Evaluation: AUC pour l’ensemble d’apprentissage et AUC+ROC pour l’ensemble de validation • Validation: AUC+ROC pour l’ensemble de test • kNN pour la prévision • Evaluation: MSE pour l’ensemble d’apprentissage et de validation • Validation: MSE pour l’ensemble de test 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 12
  • 13. R packages • Le package « class » possède la fonction knn() • ?knn • knn(train, test, cl, k = 1, l = 0, prob = FALSE, use.all = TRUE) • Usage courant: knn(train, test, cl, k) 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 13 données d’apprentissage données de test colonne de libellés de classes nombre de voisins minimum nb de votes (k-l) pour décision si TRUE, la proportion de la classe gagnante est retournée en cas d’égalité (ties) entre classes, par défaut on sélectionne toutes les distances égales à la ke plus large. Si FALSE, alors on effectue une sélection aléatoire de distances égales à la ke afin d’utiliser exactement k voisins.
  • 14. R packages • Le package « FNN » possède une autre fonction knn() • ?knn • knn(train, test, cl, k = 1, prob = FALSE, algorithm=c("kd_tree", "cover_tree", "brute")) 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 14 choix de structure de données pour accélérer la recherche de voisins
  • 15. Exercices • Vous pouvez télécharger le dossier « knn » avec le lien Dropbox du formateur • Vous y trouverez un fichier knn.Rmd avec les exemples suivants: • EX_KNN0 : fondamentaux avec class::knn • EX_KNN1 : discrimination d’individus selon susceptibilité de frauder avec codage manuel, sans knn() • EX_KNN2 : idem EX_KNN1 avec class::knn et FNN::knn • EX_KNN3 : prévision d’endettement des individus avec FNN::knn • Vous y trouverez également un fichier knn_exo_long.Rmd avec un exercice long sur l’attrition 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 15
  • 16. Bibliographie • Mount J., Zumel N., Practical Data Science with R, Manning Publications, ISBN 9781617291562, 2014 • Lantz B., Machine Learning with R, Packt Publications, ISBN 9781782162148, 2013 • G-Tch, « Les k-plus proches voisins :Vite, il faut se la réapproprier… », http://www.r- bloggers.com/les-k-plus-prcoches-voisins-vite-il-faut-se-la-reapproprier/, novembre 2013 • Vladimirov M., « Using the k-Nearest Neighbors Algorithm in R », http://blog.webagesolutions.com/archives/1164, novembre 2013 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 16
  • 17. Principe pour la discrimination • On peut également associer au calcul de probabilité une notion de poids avec, par exemple, les fonctions suivantes: • Dans ce cas, on se focalise plus par exemple, sur l’évaluation d'un degré d'appétence à quelque chose au lieu de prédire l'appartenance ou non à une classe. 30/06/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - K PLUS PROCHES VOISINS 17 a clarifier