Maison >développement back-end >Tutoriel Python >Introduction à l'apprentissage automatique à Python
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.
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:
L'apprentissage automatique utilise différents types d'algorithmes pour trouver des modèles, et ces algorithmes sont classés en deux groupes:
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é:
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.
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:
Si vous avez déjà ces dépendances, vous pouvez installer sklearn comme simplement comme:
pip install -U scikit-learn<br>
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>
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>
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>
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>
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>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>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)
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>Dans le deuxième exemple, nous utiliserons un ensemble de données beaucoup plus important pour effectuer une régression linéaire.
#labels = [chicken, chicken, horse, horse]
labels = [0, 0, 1, 1]
classif = tree.DecisionTreeClassifier()
classif.fit(features, labels)
print(classif.predict([[7, 0.6, 41]]))
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
dans les statistiques,
.
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>
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>
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>Voici l'intrigue:
features = [[7, 0.6, 40], [7, 0.6, 41], [37, 600, 37], [37, 600, 38]]<br>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>
L'apprentissage non supervisé peut être encore subdivisé en:
classifier = tree.DecisionTreeClassifier()<br>
Clustering
classifier.fit(features, labels)<br>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
Certains des algorithmes d'apprentissage non supervisés populaires incluent:
k-means clustering
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!