samedi 29 août 2020

Résoudre les problèmes de Régression avec le Machine Learning-Partie1

 

Résoudre les problèmes de Régression avec le Machine Learning – Part 1

 

Introduction

En mathématiques, la régression recouvre plusieurs méthodes d’analyses statistique permettant d’approcher une variable à partir d’autres, qui luis sont corrélées. Par extension, le terme est aussi utilisé pour certaines méthodes d’ajustement de courbe, C’est ce deuxième aspect qui va nous intéresser tout au long de cette série d’articles consacrées à la régression.

En apprentissage automatique ou apprentissage statistique (Machine Learning en Anglais), on distingue des problèmes de régression et les problèmes de classification. Ainsi on considère que les problèmes de prédiction d’une variable quantitative sont des problèmes de prédiction et que les problèmes de prédiction d’une variable qualitative sont des problèmes de classification. Nous y reviendrons en détails au cours de cette publication.

Qu’est-ce que le Machine Learning ?

Avec l’avènement des réseaux sociaux, le Machine Learning est désormais autour de nous, nous l’utilisons tous les jours sans plus ou moins le savoir. Tenez ! A chaque fois que vous effectuez une recherche sur Google ou sur Youtube, une des raisons pour laquelle nous tombons sur des résultats pertinents, c’est grâce a un algorithme de Machine Learning en arrière-plan qui a appris comment trouver le résultat le plus pertinent parmi les milliards de résultats possibles. 


Commençons avec une définition afin de savoir de quoi nous parlons. Pour le dire simplement, les algorithmes de Machine Learning sont des algorithmes qui apprennent (et qui, souvent prédisent) des modèles à partir des larges bases de données. Ainsi, au lieu de formaliser les règles manuellement, un algorithme de Machine Learning va apprendre le modèles grâces aux données brutes que vous lui fournissez. Vous avez dit « Données Brutes ». En fait, PAS DE DONNEES, PAS DE MACHINE LEARNING.

Le Machine Learning consiste donc à laisser l’ordinateur apprendre des données, plutôt que de la programmer de façon explicite.

Qu’est-ce que la Datascience (un terme qu’on retrouve souvent aux cotes de Machine Learning ?

Si on veut une définition générale, on peut dire que la Data Science est une discipline par laquelle on peut acquérir des connaissances grâce à l’analyse des bases de données. Les compétences de base d’un Data Scienstist sont : La programmation, l’algèbre linéaire, les statistiques, la visualisation et la présentation des données.

La Datas cience n’est pas un synonyme de Machine Learning. Le Machine Learning se réfère à l’utilisation et au développement des algorithmes d’apprentissage ; la Data science se réfère à l’extraction de la connaissance a partir des données afin de répondre à des questions particulières ou pour solutionner des problèmes spécifiques.

Le Machine Learning est souvent une sous-partie d’un projet de Data science. En effet, on l’utilise souvent pour des analyses exploratoires et pour découvrir, puis construire des modèles prédictifs. Cependant, en Data science, on a souvent des problématiques de collecte et de formatage des données qu’on regroupe sous la discipline de Datamining. Ce n’est qu’après cette première phase que vous chercherez à tirer des conclusions depuis l’analyse de votre base de données, éventuellement grâce a l’utilisation d’algorithmes de Machine Learning).

Machine Learning et Big Data

Sans le Big Data, qui pour rappel est un concept permettant de stocker un nombre indicible de données sur une base numérique, le Machine Learning ne se serait RIEN. En effet les données sont l’instrument indispensable permettant au Machine Learning de comprendre et d’apprendre la manière donc l’intelligence humaine analyse les situations. C’est donc le Big Data qui permet l’automatisation des traitements de données et l’accélération de la courbe d’apprentissage des ordinateurs en s’appuyant sur le Machine Learning.

Aujourd’hui grâce au Big Data et au Machine Learning, les machines sont capables d’apprendre sans l’aide d’un humain, c’est-à-dire de manière autonome.

Comment apprendre ?

Text Box:  Pour donner à l’ordinateur la capacite d’apprendre, on utilise les méthodes d’apprentissage inspirés du comportement humain. Parmi ces méthodes on a :

-          L’apprentissage supervisé

-          L’apprentissage non supervisé

-          L’apprentissage par renforcement

 

 

Text Box:

L’apprentissage supervisé

C’est le plus populaire en Machine Learning. Les opérateurs présentent à l’ordinateur des exemples d’entrées et de sorties souhaitées et l’ordinateur recherche des solutions pour obtenir ces sorties en fonction de ces entrées. Le but recherche est que l’ordinateur apprenne la règle généralisée qui mappe les entrées et les sorties.

L’apprentissage supervise est utilise pour faire des prédictions sur les données indisponibles ou futures. L’algorithme essaie de développer une fonction qui prédit avec précision la sortie à partir des variables d’entrées. Par exemple, prédire la valeur mensuelle d’un appartement à partir d’entrées telles que le nombre de pièces, année de construction, surface, emplacement, qualité etc.

Dans l’apprentissage supervise, nous avons deux types de problèmes :

-          Les problèmes de régression

-          Les problèmes de classification


Dans la régression, on cherche à prédire la valeur d’une variable continue (prédire le prix d’un appartement, prédire le cours de la bourse) alors que dans les problèmes de classification, on cherche à prédire la valeur d’une variable discrète (détection de la fraude bancaire, détection de courrier électronique indésirable [spam, spams], analyse de satisfaction en Marketing [heureux, pas heureux]).

Voici quelques exemples populaires d’algorithmes d’apprentissage supervisé :

-          Arbres de décision

-          K Nearest Neighbours

-          Naive Bayes

-          Régression logistique

-          Réseaux de neurones

-          Régression linéaire

-          Régression vectorielle

-          Arbre de régression

Pour maitriser l’apprentissage supervise, il faut absolument comprendre les quatre notions suivantes :

-          Le Dataset

-          Le modèle et ses paramètres

-          La fonction cout

-          L’algorithme d’apprentissage

 

Le Dataset

En Machine Learning, on rassemble les exemples (x, y) dans un tableau appelé Dataset. La variable y est la cible (Target) ; c’est la valeur que l’on cherche à prédire. La variable x porte le nom de facteur (Feature). On peut avoir plusieurs facteurs (x1, x2, …) dans le Dataset qu’on peut regrouper dans un vecteur X.

 

 

Exemple de Dataset

Prix

Surface (m2)

Nbre de pièces

Année de construction

Emplacement

Qualité

200 000

150

3

2005

Bonamoussadi

2

250 000

180

3

2004

Akwa

1.5

150 000

100

2

2005

Akwa

1.7

175 000

120

2

2003

Makepe

1

160 000

120

3

2004

Makepe

2

200 000

150

3

2010

Bonapriso

1.5

100 000

80

2

2008

Bonapriso

2

100 000

90

2

2005

Deido

1

150 000

100

3

2006

Bonamoussadi

1.75

175 000

120

2

2006

Deido

1.5

140 000

110

2

2008

Deido

1

 

Ce Dataset, la plupart de personnes se contentent de l’analyser dans Excel. Pas vrai ? Ok la bonne nouvelle, c’est que nous ferons bientôt partie des privilégiés qui peuvent le faire avec du Machine Learning.

Le modèle

En Machine Learning, on développe un modèle à partir du Dataset. Il peut s’agir d’un modèle linéaire ou non linéaire.

 

 La fonction cout


C’est ce qu’on appelle la norme euclidienne.


En définitive, avoir un bon modèle, c’est avoir un modèle qui vous donne de petites erreurs, donc une petite fonction de cout.

L’algorithme d’apprentissage


 L’apprentissage non supervisé


Exemple d’apprentissage supervisé

Regroupement ou Clustering

La mise en cluster consiste à séparer ou à diviser un ensemble de données en un certain nombre de groupes de sorte que les ensembles de données appartenant aux mêmes groupes se ressemblent davantage que ceux d’autres groupes. Plus simplement, l’objectif du clustering est de séparer les groupes ayant des traits similaires et de les assigner en grappes.

Par exemple, supposons que vous soyez le Chef d’un magasin et que vous souhaitiez comprendre les préférences de vos clients pour développer votre activité. Vous pourrez regrouper tous vos clients en 3 ou 4 groupes en fonction de leurs habitudes d’achat et utiliser une stratégie distincte pour les clients de chacun de ces groupes.

Association

L’association consiste à découvrir des relations intéressantes entre les variables dans de grandes bases de données. Par exemple, les personnes qui achètent de nouvelles maisons ont aussi tendance à acheter de nouveaux meubles.

 

L’apprentissage par renforcement

L’apprentissage par renforcement consiste pour un agent autonome (robot…) à apprendre les actions à prendre, a partir d’expériences, de façon a optimiser une récompense quantitative au cours du temps. Par exemple, nous éduquons nos animaux de compagnie, en leur offrant une friandise quand ils font une bonne action.

Aucun commentaire:

Enregistrer un commentaire

How to fix errors : -         ORA-38760: This database instance failed to turn on flashback database -         ORA-38780: Restore poin...