Maison > développement back-end > Tutoriel Python > Introduction à l'apprentissage automatique à Python

Introduction à l'apprentissage automatique à Python

William Shakespeare
Libérer: 2025-02-27 11:18:20
original
983 Les gens l'ont consulté

L'apprentissage automatique est l'acte de donner aux ordinateurs la possibilité d'apprendre sans les programmer explicitement. Cela se fait en donnant des données aux ordinateurs et en les faisant transformer les données en modèles de décision qui sont ensuite utilisés pour les prédictions futures.

Dans ce didacticiel, nous parlerons de l'apprentissage automatique et de certains des concepts fondamentaux nécessaires pour commencer avec l'apprentissage automatique. Nous allons également concevoir quelques exemples Python pour prédire certains éléments ou événements.

Introduction à l'apprentissage automatique

L'apprentissage automatique est un type de technologie qui vise à apprendre de l'expérience. Par exemple, en tant qu'humain, vous pouvez apprendre à jouer aux échecs simplement en observant d'autres personnes jouant aux échecs. De la même manière, les ordinateurs sont programmés en leur fournissant des données à partir desquelles ils apprennent et sont ensuite en mesure de prédire les éléments ou les conditions futurs.

Disons, par exemple, que vous souhaitez écrire un programme qui peut dire si un certain type de fruit est un orange ou un citron. Vous trouverez peut-être facile d'écrire un tel programme et cela donnera les résultats requis, mais vous pouvez également constater que le programme ne fonctionne pas efficacement pour les grands ensembles de données. C'est là que l'apprentissage automatique entre en jeu.

Il existe différentes étapes impliquées dans l'apprentissage automatique:

  1. Collection de données
  2. Filtrage des données
  3. Analyse des données
  4. Formation des algorithmes
  5. Testing de l'algorithme
  6. Les prédictions

L'apprentissage automatique utilise différents types d'algorithmes pour trouver des modèles, et ces algorithmes sont classés en deux groupes:

  • Apprentissage supervisé
  • Apprentissage sans surveillance

L'apprentissage supervisé

Supervision Exemples de données. L'ordinateur en apprend ensuite et peut prédire les futurs ensembles de données en fonction des données apprises.

Par exemple, vous pouvez former un ordinateur à filtrer les messages de spam basés sur des informations passées.

L'apprentissage supervisé a été utilisé dans de nombreuses applications, par exemple. Facebook, pour rechercher des images en fonction d'une certaine description. Vous pouvez maintenant rechercher des images sur Facebook avec des mots qui décrivent le contenu de la photo. Étant donné que le site de réseautage social dispose déjà d'une base de données d'images sous-titrées, il peut rechercher et faire correspondre la description des fonctionnalités à partir de photos avec un certain degré de précision.

Il n'y a que deux étapes impliquées dans l'apprentissage supervisé:

  • La formation
  • Test

  • arbres de décision
  • Soutenir les machines vectorielles
  • naïves bayes
  • k-nearest voisine
  • régression linéaire

apprentissage machine avec le library sklearn

Sklearn est une bibliothèque d'apprentissage machine pour le langage Python de la plage de la gamme A. Analyse, régression et algorithmes de clustering. Nous allons écrire un programme simple pour démontrer comment l'apprentissage supervisé fonctionne en utilisant la bibliothèque Sklearn et la langue Python.  

Sklearn interopéra également bien avec les bibliothèques Numpy et Scipy.

Installer Sklearn

Le guide d'installation de Sklearn offre un moyen très simple de l'installer pour plusieurs plates-formes. Il nécessite plusieurs dépendances:

  • python (& gt; = 3.6),
  • Numpy (Min version 1.17.3)
  • Scipy (Min version 1.3.2)

Si vous avez déjà ces dépendances, vous pouvez installer sklearn comme simplement comme:

pip install -U scikit-learn<br>
Copier après la connexion
Copier après la connexion

un moyen d'installer Sklearn comme simplement comme: Anaconda. Cela s'occupe de toutes les dépendances, vous n'avez donc pas à vous soucier de les installer un par un.

pour tester si Sklearn s'exécute correctement, importez-le simplement d'un interprète Python comme suit:

 Python 3.9.12 (main, Apr  5 2022, 06:56:58) <br>[GCC 7.5.0] :: Anaconda, Inc. on linux<br>Type "help", "copyright", "credits" or "license" for more information.<br>>>> import sklearn<br>>>> <br>
Copier après la connexion
Copier après la connexion

Si aucune erreur ne se produit, alors vous êtes bon. Nous voulons pouvoir faire la différence entre différents animaux. Nous allons donc concevoir un algorithme qui peut dire spécifiquement si un animal donné est soit un cheval ou un poulet.

Nous devons d'abord collecter des données d'échantillons de chaque type d'animal. Certains exemples de données sont affichés dans le tableau ci-dessous.

Définissez les fonctionnalités que vous souhaitez utiliser pour classer les animaux.
from sklearn import tree<br>
Copier après la connexion
Copier après la connexion

Définissez la sortie que chaque classificateur donnera. Un poulet sera représenté par 0, tandis qu'un cheval sera représenté par 1.
features = [[7, 0.6, 40], [7, 0.6, 41], [37, 600, 37], [37, 600, 38]]<br>
Copier après la connexion
Copier après la connexion

Nous définissons ensuite le classificateur qui sera basé sur un arbre de décision.
#labels = [chicken, chicken, horse, horse]<br><br># we use 0 to represent a chicken and 1 to represent a horse<br><br>labels = [0, 0, 1, 1]<br>
Copier après la connexion
Copier après la connexion

Feed ou ajustera vos données au classificateur. données. Here's how to predict an animal with a height of 7 inches, a weight of 0.6 kg, and a temperature of 41:
classifier = tree.DecisionTreeClassifier()<br>
Copier après la connexion
Copier après la connexion

Here's how to predict an animal with a height of 38 inches, a weight of 600 kg, and a temperature of 37.5:
classifier.fit(features, labels)<br>
Copier après la connexion
Copier après la connexion

As you can see above, you have trained the algorithm to learn all the features and names of the animals, and the La connaissance de ces données est utilisée pour tester de nouveaux animaux.
from sklearn import tree<br>features = [[7, 0.6, 40], [7, 0.6, 41], [37, 600, 37], [37, 600, 38]]<br>#labels = [chicken, chicken, horse, horse] 
labels = [0, 0, 1, 1]
classif = tree.DecisionTreeClassifier()
classif.fit(features, labels)
Copier après la connexion

Régression linéaire sur de grands ensembles de données

from sklearn import tree<br>features = [[7, 0.6, 40], [7, 0.6, 41], [37, 600, 37], [37, 600, 38]]<br>
#labels = [chicken, chicken, horse, horse]
labels = [0, 0, 1, 1]
classif = tree.DecisionTreeClassifier()
classif.fit(features, labels)
print(classif.predict([[7, 0.6, 41]]))
Copier après la connexion
Dans le deuxième exemple, nous utiliserons un ensemble de données beaucoup plus important pour effectuer une régression linéaire. 

Selon Wikipedia:
from sklearn import tree<br>features = [[7, 0.6, 40], [7, 0.6, 41], [37, 600, 37], [37, 600, 38]]<br>#labels = [chicken, chicken, horse, horse] 
labels = [0, 0, 1, 1]
classif = tree.DecisionTreeClassifier()
classif.fit(features, labels)
print(classif.predict([[38, 600, 37.5]]))
# output
# [1] or a Horse
Copier après la connexion

dans les statistiques,

Régression linéaire

est une approche linéaire pour modéliser la relation entre une réponse scalaire et une ou plusieurs variables explicatives (également appelées variables dépendantes et indépendantes).

.

L'ensemble de données peut être trouvé ici. Téléchargez le fichier CSV dans votre répertoire de travail

Commençons par importer les dépendances nécessaires.

pip install -U scikit-learn<br>
Copier après la connexion
Copier après la connexion

Ensuite, chargez les données CSV dans une apparence de données Pandas. Sortie:

 Python 3.9.12 (main, Apr  5 2022, 06:56:58) <br>[GCC 7.5.0] :: Anaconda, Inc. on linux<br>Type "help", "copyright", "credits" or "license" for more information.<br>>>> import sklearn<br>>>> <br>
Copier après la connexion
Copier après la connexion

Comme vous pouvez le voir ci-dessus, les données contient le PIB de différents pays de 1960 à 2016. L'étape suivante consiste à créer le modèle de régression X et Y Modèle.

from sklearn import tree<br>
Copier après la connexion
Copier après la connexion
Voici l'intrigue:

features = [[7, 0.6, 40], [7, 0.6, 41], [37, 600, 37], [37, 600, 38]]<br>
Copier après la connexion
Copier après la connexion
Apprentissage non supervisé

L'apprentissage non supervisé, c'est lorsque vous formez votre machine avec seulement un ensemble d'entrées. La machine sera alors en mesure de trouver une relation entre les données d'entrée et toute autre que vous voudrez peut-être prédire. Contrairement à l'apprentissage supervisé, où vous présentez une machine avec des données sur lesquelles vous former, l'apprentissage non supervisé est destiné à faire en sorte que l'ordinateur trouve des modèles ou des relations entre les différents ensembles de données.
#labels = [chicken, chicken, horse, horse]<br><br># we use 0 to represent a chicken and 1 to represent a horse<br><br>labels = [0, 0, 1, 1]<br>
Copier après la connexion
Copier après la connexion

L'apprentissage non supervisé peut être encore subdivisé en:

classifier = tree.DecisionTreeClassifier()<br>
Copier après la connexion
Copier après la connexion

Clustering

classifier.fit(features, labels)<br>
Copier après la connexion
Copier après la connexion
Association Moyenne du groupe de groupe intrinsèquement. Par exemple, vous pouvez classer les habitudes d'achat des consommateurs et utiliser les données pour la publicité en ciblant les consommateurs en fonction de leurs achats et de leurs habitudes d'achat.

Association Introduction à l'apprentissage automatique à Python

L'association est l'endroit où vous identifiez des règles qui décrivent de grands ensembles de données. Ce type d'apprentissage peut être applicable dans des livres associés basés sur l'auteur ou la catégorie, qu'il s'agisse de livres de motivation, de fiction ou d'éducation.

Certains des algorithmes d'apprentissage non supervisés populaires incluent:

k-means clustering
  • Hiéroral Clustering
  • Conclusion
Hérarchique vous a aidé à démarrer avec l'apprentissage automatique. Ce n'est qu'une introduction - l'apprentissage de la machine a beaucoup à couvrir, et ce n'est qu'une fraction de ce que l'apprentissage automatique peut faire. Sklearn n'est qu'une des bibliothèques utilisées dans l'apprentissage automatique. Les autres bibliothèques incluent TensorFlow et Keras. 

De plus, n'hésitez pas à voir ce que nous avons disponible à la vente et à l'étude sur le marché Envato.

Votre décision d'utiliser un algorithme d'apprentissage automatique supervisé ou non supervisé dépendra de divers facteurs, tels que la structure et la taille des données. Dans la prévention de la fraude, la personnalisation des nouvelles se nourrit de sites de médias sociaux pour adapter les préférences des utilisateurs, le filtrage des e-mails et des logiciels malveillants, les prévisions météorologiques et même dans le secteur du commerce électronique pour prédire les habitudes d'achat des consommateurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal