


Comment utiliser la bibliothèque d'apprentissage automatique scikit-learn en Python.
Avant-propos
scikit-learn est l'une des bibliothèques d'apprentissage automatique les plus populaires en Python. Elle fournit une variété d'algorithmes et d'outils d'apprentissage automatique, notamment la classification, la régression, le clustering, la réduction de dimensionnalité, etc.
Les avantages de scikit-learn sont :
Facile à utiliser : L'interface de scikit-learn est simple et facile à comprendre, permettant aux utilisateurs de se lancer facilement dans l'apprentissage automatique. API unifiée : L'API de scikit-learn est très unifiée et les méthodes d'utilisation des différents algorithmes sont fondamentalement les mêmes, ce qui rend l'apprentissage et l'utilisation plus pratiques.
Implémente un grand nombre d'algorithmes d'apprentissage automatique : scikit-learn implémente divers algorithmes d'apprentissage automatique classiques et fournit une multitude d'outils et de fonctions, facilitant le débogage et l'optimisation des algorithmes.
Open source et gratuit : scikit-learn est entièrement open source et gratuit, tout le monde peut utiliser et modifier son code.
Efficace et stable : scikit-learn implémente divers algorithmes d'apprentissage automatique efficaces, peut gérer des ensembles de données à grande échelle et fonctionne bien en termes de stabilité et de fiabilité. scikit-learn est très adapté à l'apprentissage automatique d'entrée de gamme car l'API est très unifiée et le modèle est relativement simple. Ma recommandation ici est d'étudier en conjonction avec la documentation officielle, qui présente non seulement le champ d'application de chaque modèle, mais fournit également des exemples de code.
Modèle de régression linéaire-LinearRegression
Le modèle de régression linéaire est un modèle basé sur la régression linéaire, adapté à la résolution de problèmes de prédiction de variables continues. L'idée de base de ce modèle est d'établir une équation linéaire, de modéliser la relation entre la variable indépendante et la variable dépendante sous forme de ligne droite et d'utiliser les données d'entraînement pour ajuster la ligne droite afin de trouver les coefficients de l'équation linéaire, puis utilisez cette équation pour tester les données à des fins de prédiction.
Le modèle de régression linéaire convient aux problèmes où il existe une relation linéaire entre les variables indépendantes et les variables dépendantes, telles que la prévision du prix de l'immobilier, la prévision des ventes, la prévision du comportement des utilisateurs, etc. Bien entendu, lorsque la relation entre la variable indépendante et la variable dépendante est non linéaire, les performances du modèle LinearRegression seront médiocres. À l'heure actuelle, la régression polynomiale, la régression de crête, la régression Lasso et d'autres méthodes peuvent être utilisées pour résoudre le problème.
Préparez l'ensemble de données
Après avoir mis de côté l'influence d'autres facteurs, il existe une certaine relation linéaire entre le temps d'apprentissage et la performance d'apprentissage. Bien entendu, le temps d'apprentissage fait ici référence au temps d'apprentissage effectif, qui s'exprime sous forme de performance. augmente avec le temps d’apprentissage. Nous préparons donc un ensemble de données sur le temps d'étude et les notes. Certaines données de l'ensemble de données sont les suivantes :
Temps d'apprentissage, scores
0,5, 15
0,75, 23
1,0, 14
1,25, 42
1,5, 21
1,75, 28
1,75, 35
2,0, 51
2.25, 61
2.5,49
Utilisez la régression linéaire
pour déterminer les caractéristiques et les objectifs
Entre le temps d'apprentissage et les notes, le temps d'apprentissage est la caractéristique, qui est la variable indépendante, est l'étiquette, qui est la variable dépendante ; nous devons donc nous préparer à l'apprentissage. Les caractéristiques et les étiquettes sont extraites des ensembles de données de temps et de notes.
import pandas as pd import numpy as np from sklearn.metrics import r2_score, mean_squared_error from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression # 读取学习时间和成绩CSV数据文件 data = pd.read_csv('data/study_time_score.csv') # 提取数据特征学习时间 X = data['学习时间'] # 提取数据目标(标签)分数 Y = data['分数']
Divisez l'ensemble d'entraînement et l'ensemble de test
Une fois les données de caractéristiques et d'étiquettes préparées, utilisez la régression linéaire de scikit-learn pour l'entraînement et divisez l'ensemble de données en un ensemble d'entraînement et un ensemble de test.
""" 将特征数据和目标数据划分为测试集和训练集 通过test_size=0.25将百分之二十五的数据划分为测试集 """ X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.25, random_state=0) x_train = X_train.values.reshape(-1, 1) model.fit(x_train, Y_train)
Choisissez un modèle et ajustez les données
Après avoir préparé l'ensemble de test et l'ensemble d'entraînement, nous pouvons choisir un modèle approprié pour s'adapter à l'ensemble d'entraînement afin de pouvoir prédire les cibles correspondant à d'autres fonctionnalités
# 选择模型,选择模型为LinearRegression model = LinearRegression() # Scikit-learn中,机器学习模型的输入必须是一个二维数组。我们需要将一维数组转换为二维数组,才能在模型中使用。 x_train = X_train.values.reshape(-1, 1) # 进行拟合 model.fit(x_train, Y_train)
obtenir les paramètres du modèle
Étant donné que l'ensemble de données ne contient que deux temps d'apprentissage et deux notes, il s'agit d'un modèle linéaire très simple. La formule mathématique sous-jacente est y=ax+b, où la variable dépendante y est les notes et la variable indépendante x est le temps d'apprentissage. .
""" 输出模型关键参数 Intercept: 截距 即b Coefficients: 变量权重 即a """ print('Intercept:', model.intercept_) print('Coefficients:', model.coef_)
Backtest
Le modèle d'ajustement ci-dessus utilise uniquement les données de l'ensemble de test. Ensuite, nous devons utiliser les données de l'ensemble de test pour effectuer un backtest sur l'ajustement du modèle. Après avoir utilisé l'ensemble d'entraînement pour l'ajustement, nous pouvons ensuite l'ajuster. l'ensemble de tests de fonctionnalités Faites des prédictions et comparez les résultats de prédiction cible obtenus avec les valeurs cibles réelles, nous pouvons obtenir le degré d'ajustement du modèle.
# 转换为n行1列的二维数组 x_test = X_test.values.reshape(-1, 1) # 在测试集上进行预测并计算评分 Y_pred = model.predict(x_test) # 打印测试特征数据 print(x_test) # 打印特征数据对应的预测结果 print(Y_pred) # 将预测结果与原特征数据对应的实际目标值进行比较,从而获得模型拟合度 # R2 (R-squared):模型拟合优度,取值范围在0~1之间,越接近1表示模型越好的拟合了数据。 print("R2:", r2_score(Y_test, Y_pred))
Résultats de l'exécution du programme
Selon le code ci-dessus, nous devons déterminer le degré d'ajustement du modèle de régression linéaire, c'est-à-dire si les données sont adaptées à un ajustement avec un modèle linéaire. Les résultats de l'exécution du programme sont. comme suit :
Résultats de prédiction :
[47.43726068 33.05457106 49.83437561 63.41802692 41.84399249 37.84880093
23.46611131 7.84880093 26.662 26456 71.40841004 18.67188144 88.9872529 63.41802692 42.6430308 21.86803469 69.81033341 66.61418017 33.054 57106 58. 62379705 50.63341392 18.67188144 41.04495418 20.26995807 77.80071653
28.26034119 13.87765157 61.81995029 90.58 532953 77. 80071653 36.25072431
84.19302303]
R2 : 0.8935675710322939
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP et Python ont leurs propres avantages et inconvénients, et le choix dépend des besoins du projet et des préférences personnelles. 1.Php convient au développement rapide et à la maintenance des applications Web à grande échelle. 2. Python domine le domaine de la science des données et de l'apprentissage automatique.

Python et JavaScript ont leurs propres avantages et inconvénients en termes de communauté, de bibliothèques et de ressources. 1) La communauté Python est amicale et adaptée aux débutants, mais les ressources de développement frontal ne sont pas aussi riches que JavaScript. 2) Python est puissant dans les bibliothèques de science des données et d'apprentissage automatique, tandis que JavaScript est meilleur dans les bibliothèques et les cadres de développement frontaux. 3) Les deux ont des ressources d'apprentissage riches, mais Python convient pour commencer par des documents officiels, tandis que JavaScript est meilleur avec MDNWEBDOCS. Le choix doit être basé sur les besoins du projet et les intérêts personnels.

Docker utilise les fonctionnalités du noyau Linux pour fournir un environnement de fonctionnement d'application efficace et isolé. Son principe de travail est le suivant: 1. Le miroir est utilisé comme modèle en lecture seule, qui contient tout ce dont vous avez besoin pour exécuter l'application; 2. Le Système de fichiers Union (UnionFS) empile plusieurs systèmes de fichiers, ne stockant que les différences, l'économie d'espace et l'accélération; 3. Le démon gère les miroirs et les conteneurs, et le client les utilise pour l'interaction; 4. Les espaces de noms et les CGROUP implémentent l'isolement des conteneurs et les limitations de ressources; 5. Modes de réseau multiples prennent en charge l'interconnexion du conteneur. Ce n'est qu'en comprenant ces concepts principaux que vous pouvez mieux utiliser Docker.

VS Code peut être utilisé pour écrire Python et fournit de nombreuses fonctionnalités qui en font un outil idéal pour développer des applications Python. Il permet aux utilisateurs de: installer des extensions Python pour obtenir des fonctions telles que la réalisation du code, la mise en évidence de la syntaxe et le débogage. Utilisez le débogueur pour suivre le code étape par étape, trouver et corriger les erreurs. Intégrez Git pour le contrôle de version. Utilisez des outils de mise en forme de code pour maintenir la cohérence du code. Utilisez l'outil de liaison pour repérer les problèmes potentiels à l'avance.

Dans VS Code, vous pouvez exécuter le programme dans le terminal via les étapes suivantes: Préparez le code et ouvrez le terminal intégré pour vous assurer que le répertoire de code est cohérent avec le répertoire de travail du terminal. Sélectionnez la commande Run en fonction du langage de programmation (tel que Python de Python your_file_name.py) pour vérifier s'il s'exécute avec succès et résoudre les erreurs. Utilisez le débogueur pour améliorer l'efficacité du débogage.

VS Code peut fonctionner sur Windows 8, mais l'expérience peut ne pas être excellente. Assurez-vous d'abord que le système a été mis à jour sur le dernier correctif, puis téléchargez le package d'installation VS Code qui correspond à l'architecture du système et l'installez comme invité. Après l'installation, sachez que certaines extensions peuvent être incompatibles avec Windows 8 et doivent rechercher des extensions alternatives ou utiliser de nouveaux systèmes Windows dans une machine virtuelle. Installez les extensions nécessaires pour vérifier si elles fonctionnent correctement. Bien que le code VS soit possible sur Windows 8, il est recommandé de passer à un système Windows plus récent pour une meilleure expérience de développement et une meilleure sécurité.

Les extensions de code vs posent des risques malveillants, tels que la cachette de code malveillant, l'exploitation des vulnérabilités et la masturbation comme des extensions légitimes. Les méthodes pour identifier les extensions malveillantes comprennent: la vérification des éditeurs, la lecture des commentaires, la vérification du code et l'installation avec prudence. Les mesures de sécurité comprennent également: la sensibilisation à la sécurité, les bonnes habitudes, les mises à jour régulières et les logiciels antivirus.

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.
