Machine Learning 101 : Une introduction avec des exemples de code

Mar 25 2023
Alors que le domaine de l'intelligence artificielle et de l'apprentissage automatique continue de croître et d'évoluer, il y a toujours de nouvelles tendances et de nouveaux développements à surveiller. Deux des tendances les plus excitantes de l'industrie en ce moment sont les chatbots et ChatGPT.

Alors que le domaine de l'intelligence artificielle et de l'apprentissage automatique continue de croître et d'évoluer, il y a toujours de nouvelles tendances et de nouveaux développements à surveiller. Deux des tendances les plus excitantes de l'industrie en ce moment sont les chatbots et ChatGPT. Nous écoutons des mots comme AI, ML, NLP presque quotidiennement dans les actualités, les réseaux sociaux, etc., ce qui vous fait vous demander – qu'est-ce que c'est que ça pour commencer ?

En tant que personne qui est actuellement sur le point d'obtenir son diplôme du programme de maîtrise en sciences de l'information et des données (MIDS) de l'UC Berkeley, je comprends à quel point l'apprentissage automatique et l'IA peuvent être intimidants. Mais ce n'est pas obligé ! Dans cet article, je décomposerai les bases de l'apprentissage automatique, y compris l'apprentissage supervisé et non supervisé, avec des exemples de code et de mathématiques que tout le monde peut comprendre.

Tout d'abord, définissons ce qu'est l'apprentissage automatique. En termes simples, " c'est le processus de formation d'un programme informatique pour apprendre à partir de données, afin qu'il puisse faire des prédictions ou prendre des mesures basées sur ces données" . Il existe deux principaux types d'apprentissage automatique : l'apprentissage supervisé et l'apprentissage non supervisé.

L'apprentissage supervisé se produit lorsque le programme informatique reçoit des données étiquetées à partir desquelles apprendre. Commençons par un exemple simple du monde réel, où vous pouvez donner à l'algorithme ML un ensemble de données sur les prix des logements, où chaque point de données comprend la taille de la maison et son prix. L'algorithme apprendrait à prédire le prix d'une nouvelle maison en fonction de sa taille. Voyons comment cela fonctionne avec un exemple.

Nous allons commencer par importer certaines bibliothèques dont nous aurons besoin pour cet exemple : numpy et scikit-learn.

import numpy as np
from sklearn.linear_model import LinearRegression

Ensuite, nous allons créer notre jeu de données. Nous utiliserons un ensemble de données simple de 6 maisons, où la taille de la maison est l'entrée (en pieds carrés) et le prix est la sortie (en milliers de dollars).

X = np.array([[1400], [1600], [1700], [1875], [1100], [1550]])
y = np.array([245, 312, 279, 308, 199, 219])

Maintenant, nous allons créer notre modèle de régression linéaire et l'adapter aux données. Pour ceux qui ne savent pas ce qu'est la régression linéaire, c'est un type de calcul qui nous aide à comprendre comment deux choses sont liées l'une à l'autre. Par exemple, dans notre cas, nous voulons savoir comment le prix d'une maison est lié à sa taille. Pour comprendre cela, nous prenons un groupe de maisons dont nous connaissons la taille et le prix, et nous traçons une ligne qui correspond le mieux aux données. Cette ligne est appelée « ligne de meilleur ajustement ». Une fois que nous avons cette ligne, nous pouvons l'utiliser pour faire des prédictions. Donc, si nous avons une nouvelle maison dont nous ne connaissons pas le prix, mais dont nous connaissons la taille, nous pouvons utiliser la ligne pour deviner combien cela pourrait coûter.

C'est essentiellement ce qu'est la régression linéaire - c'est un moyen de trouver la relation entre deux choses et de l'utiliser pour faire des prédictions.

Sur ce, continuons avec notre code. C'est là que nous créons notre modèle de régression linéaire et l'ajustons aux données. Tout d'abord, nous créons une instance de la classe LinearRegression, qui sera notre modèle. Ensuite, nous appelons la méthode fit () sur notre modèle, en transmettant nos données d'entrée et de sortie. Cela forme le modèle sur nos données et le prépare pour faire des prédictions :

model = LinearRegression()
model.fit(X, y)

print(model.predict([[1500]]))

C'est ça! Avec seulement quelques lignes de code, nous avons construit un modèle de régression linéaire simple qui peut faire des prédictions basées sur les données d'entrée. Bien sûr, ce n'est que le début de ce que vous pouvez faire avec l'apprentissage automatique.

L'apprentissage non supervisé se produit lorsque le programme informatique reçoit des données non étiquetées à partir desquelles apprendre. Par exemple, vous pouvez fournir au programme un ensemble de données sur les achats des clients dans une épicerie, sans aucune étiquette. Le programme apprendrait à regrouper des achats similaires, comme des clients qui achètent du lait et du pain ensemble.

En conclusion de mes réflexions, l'apprentissage automatique est un domaine passionnant aux possibilités infinies. Avec seulement quelques lignes de code et quelques calculs de base, vous pouvez commencer à explorer ce domaine par vous-même. J'espère que cet article vous a donné une bonne introduction aux bases de l'apprentissage automatique et que vous êtes inspiré pour en savoir plus !