Datascience: au coeur des services prédictifs de l’Intelligence Artificielle (IA)

18h35, à l’Inkubator de Nantes je m’apprête à assister à ma première conférence sur l’intelligence artificielle et les modèles prédictifs. Il ne s’agit pas ici d’une conférence généraliste sur le sujet mais d’une introduction concrète à la construction de modèle prédictif simple de A à Z.

Construire un modèle avec Azure ML

Grâce à la technologie de Microsoft Azure ML, un étudiant en Marketing Digital peut tout à fait construire un modèle prédictif. Le principe du machine learning est simple : grâce à un ensemble de données d’entraînement, nous entraînons un modèle. Une fois le modèle entraîné, nous évaluons avec un autre jeu de donnée afin de connaître la précision de nos estimations. Une fois ce modèle évalué, nous pouvons ensuite construire des prédictions avec des nouvelles données.

Préparer son jeu de données pour un modèle efficace.

La phase de préparation des données n’est peut-être pas la plus excitante de la construction d’un modèle, mais elle reste cependant une des plus importantes car elle est le fondement de tout le travail qui va suivre.

 

L’exemple utilisé a été la construction d’un modèle prédictif sur le retard des avions de ligne. Pour cela nous avons donc commencé par chercher les données qui n’étaient pas binaires; en effet, une donnée qui est binaire n’a pas forcément d’intérêt dans la construction du modèle.

 

Pour cela nous avons joint les données dans un tableau unique en maintenant les informations qui nous intéressaient. Suite à cette préparation nous avons procédé à ce que l’on appelle la sérialisation des données ou encore “feature extraction”. Les adeptes de l’IA et du Machine Learning auront forcément entendu parlé de ces termes.

Créer des features pour commencer l’entraînement

Comme vous le savez, les ordinateurs ne comprennent pas très bien le texte et préfèrent plutôt les éléments binaires. L’objectif de la sérialisation est de transformer une donnée non binaire (le plus souvent une donnée texte) en donnée binaire sans perdre la réalité reflété par la donnée. Pour donner un exemple plus concret, imaginons un tableau dans lequel vous avez ceci :

Lettre :

A

A

B

C

D

A partir de ces données, votre ordinateur ne peut que vous dire: “il y a deux lettres A, deux lettres B, un lettre C et une lettre D”.

 

Mais il ne sait pas vous dire si la lettre A est la lettre A, il ne dispose pas de cette intelligence, il ne fait que lire des données. Pour cela il faut donc transformer l’information en créant des “features”, autrement dit des caractéristiques qui définissent ces données. Une façon de le faire est de créer quatre colonnes du type : Is A ? Is B ? Is C ? Is D et cela donne une matrice de 0 et de 1 :

 

Lettre

Is A ?

Is B ?

Is C ?

Is D ?

A

1

0

0

0

A

1

0

0

0

B

0

1

0

0

C

0

0

1

0

D

0

0

0

1

Vous avez donc maintenant une matrice de 0 et de 1 qui traduit la même réalité que votre tableau. Cela s’appelle la feature extraction et permet à un ordinateur de caractériser une donnée, non numérique. Passons maintenant à l’entraînement et la prédiction.  

Process Data Science et IA

Commencer l’entraînement du modèle et faire ses premières prédictions

Notre problème était donc de prédire si un avion allait avoir du retard. Il  y a donc deux issues à notre problème :

  • oui
  • ou non.

 

D’autre part, lorsque nous allons recevoir un vol nous allons le classer soit dans la catégorie oui soit dans la catégorie non. C’est ce que l’on appelle la classification.

 

Nous nous trouvons ici dans un problème de Classification à deux issues. Nous allons utiliser des algorithmes existants qui fonctionnent très bien sur ces problèmes et qui sont déjà codés dans Azure ML (algorithme de Decision Tree classification ou de logistic regression).

Nous allons entraîner notre modèle en utilisant un module de Azure ML qui s’appelle model.fit() : cela signifie que votre modèle va s’entraîner à identifier si un avion est en retard et se réajuster à chaque fois qu’il a eu tort. En effet, dans les données de tests, nous savons si l’avion a été en retard ou non ce qui nous permet de corriger notre modèle.

Une fois l’entraînement fait, nous allons évaluer notre modèle. Cela signifie que nous allons prendre des données de test et voir dans quelle mesure notre modèle est précis. En machine learning, cela revient à suivre l’accuracy ou encore la précision de notre modèle.

Une fois que nous sommes satisfait de la précision de notre modèle nous pouvons commencer à l’utiliser pour prédire la classification de données qui ne sont pas dans notre échantillon de test ou d’entraînement. C’est ce que l’on appelle la phase de prédiction.

 

Voilà donc comment construire un modèle de prédiction en utilisant le Machine Learning. Par ailleurs, Azure ML vous offre la possibilité d’exposer votre service sur le Web grâce à une API en trois clics. N’importe qui avec une autorisation et un lien pourrait profiter de votre nouvelle création directement sur le web !

 

Ce qui est encore plus intéressant, c’est que Azure ML vous permet de faire ça sans écrire une seule ligne de code ! Alors si vous êtes curieux et souhaitez démystifier le machine learning, foncez sur Azure ML.

(Français)
Abonnez-vous à Make it digital

Recevez par email chaque lundi matin l'ensemble des articles publiés sur le blog Make it Digital. La garantie de suivre les dernières évolutions du digital !

Garantie sans spam.

Leave a Comment