Maison  >  Article  >  base de données  >  Comment utiliser la base de données MySQL pour les tâches d'apprentissage automatique ?

Comment utiliser la base de données MySQL pour les tâches d'apprentissage automatique ?

WBOY
WBOYoriginal
2023-07-12 13:52:361308parcourir

Comment utiliser la base de données MySQL pour les tâches d'apprentissage automatique ?

Avec l'avènement de l'ère du big data, les algorithmes d'apprentissage automatique ont été largement utilisés dans divers domaines. En tant qu'outil de base pour le stockage et la gestion des données, la base de données MySQL joue également un rôle important. Alors, comment utiliser la base de données MySQL pour les tâches d'apprentissage automatique ? Cet article présentera aux lecteurs les méthodes courantes d'utilisation des bases de données MySQL pour les tâches d'apprentissage automatique et fournira des exemples de code correspondants.

1. Préparation des données

Avant d'effectuer des tâches d'apprentissage automatique, vous devez d'abord préparer des ensembles de données pouvant être utilisés pour la formation et les tests. Dans la base de données MySQL, vous pouvez utiliser des instructions SQL pour interroger des données et exporter les résultats vers des fichiers au format CSV ou JSON. Voici un exemple de code pour obtenir des données d'une base de données MySQL et enregistrer les résultats sous forme de fichier CSV :

import pandas as pd
import pymysql.cursors

# 连接MySQL数据库
connection = pymysql.connect(
    host='localhost',
    user='root',
    password='your_password',
    db='your_database',
    charset='utf8mb4',
    cursorclass=pymysql.cursors.DictCursor
)

# 执行SQL查询语句
sql = "SELECT * FROM your_table"
df = pd.read_sql(sql, connection)

# 保存数据为CSV文件
df.to_csv('data.csv', index=False)

2. Chargement et prétraitement des données

Après avoir lu l'ensemble de données, les données doivent être chargées et prétraitées. Cela inclut le nettoyage des données, le remplissage des valeurs manquantes, etc. Voici un exemple de code pour le chargement et le prétraitement des données :

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

# 加载数据
df = pd.read_csv('data.csv')

# 分离特征和标签
X = df.drop('label', axis=1)
y = df['label']

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)

# 特征标准化
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)

3. Formation et évaluation du modèle

Après avoir terminé le chargement et le prétraitement des données, vous pouvez utiliser l'algorithme d'apprentissage automatique pour créer le modèle, entraîner et évaluer. Voici un exemple de code pour la formation et l'évaluation du modèle à l'aide de l'algorithme de régression logistique :

from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score

# 创建模型
model = LogisticRegression()

# 模型训练
model.fit(X_train, y_train)

# 模型预测
y_pred = model.predict(X_test)

# 模型评估
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)

IV. Sauvegarde et chargement du modèle

Une fois la formation terminée, le modèle peut être enregistré dans la base de données MySQL pour une utilisation ultérieure. Voici un exemple de code pour enregistrer le modèle dans une base de données MySQL :

import pickle
import pymysql.cursors

# 保存模型
with open('model.pkl', 'wb') as f:
    pickle.dump(model, f)

# 连接MySQL数据库
connection = pymysql.connect(
    host='localhost',
    user='root',
    password='your_password',
    db='your_database',
    charset='utf8mb4',
    cursorclass=pymysql.cursors.DictCursor
)

# 保存模型到数据库
with open('model.pkl', 'rb') as f:
    model_data = f.read()

sql = "INSERT INTO your_table (model) VALUES (%s)"
connection.execute(sql, (model_data,))
connection.commit()

Lorsque le modèle doit être chargé pour la prédiction, le modèle peut être lu à partir de la base de données MySQL, chargé et utilisé. Voici un exemple de code permettant de charger un modèle à partir d'une base de données MySQL et d'effectuer des prédictions :

import pickle
import pymysql.cursors

# 连接MySQL数据库
connection = pymysql.connect(
    host='localhost',
    user='root',
    password='your_password',
    db='your_database',
    charset='utf8mb4',
    cursorclass=pymysql.cursors.DictCursor
)

# 加载模型
sql = "SELECT model FROM your_table"
connection.execute(sql)
model_data = connection.fetchone()['model']
model = pickle.loads(model_data)

# 使用模型进行预测
y_pred = model.predict(X_test)

Ce qui précède présente des méthodes courantes et des exemples de code correspondants pour l'utilisation de bases de données MySQL pour des tâches d'apprentissage automatique. J'espère que cet article sera utile aux lecteurs et pourra être utilisé de manière flexible dans la pratique. L'apprentissage automatique est un processus d'apprentissage et d'exploration continus. J'espère que les lecteurs pourront continuer à explorer de nouvelles méthodes et technologies et améliorer leurs capacités dans le domaine de l'apprentissage automatique.

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:
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