Maison >développement back-end >Tutoriel Python >Comment utiliser le module keras pour l'apprentissage en profondeur dans Python 2.x

Comment utiliser le module keras pour l'apprentissage en profondeur dans Python 2.x

WBOY
WBOYoriginal
2023-07-31 20:33:181434parcourir

Comment utiliser le module Keras pour l'apprentissage profond dans Python 2.x

L'apprentissage profond est une branche importante dans le domaine de l'intelligence artificielle. Il simule le principe de fonctionnement du réseau neuronal du cerveau humain et résout des problèmes complexes grâce à de grandes quantités de données. l'apprentissage et la formation. Keras est une API de réseau neuronal de haut niveau qui fournit un moyen simple mais puissant de traduire le code Python en graphiques informatiques sous-jacents. Cet article explique comment utiliser le module Keras dans Python 2.x pour le deep learning, avec des exemples de code.

  1. Installation de Keras
    Avant de commencer, vous devez d'abord installer le module Keras. Ouvrez le terminal et entrez la commande suivante :
pip install keras

Une fois l'installation terminée, vous pouvez introduire le module Keras pour l'apprentissage en profondeur.

  1. Créer un modèle de réseau neuronal
    Avant d'utiliser Keras pour l'apprentissage en profondeur, vous devez d'abord créer un modèle de réseau neuronal. Keras propose deux principaux types de modèles : les modèles séquentiels et les modèles fonctionnels. Le modèle séquentiel empile plusieurs couches de réseau en séquence, tandis que le modèle fonctionnel peut créer des structures de réseau neuronal plus complexes.

Regardons un exemple d'utilisation du modèle Sequential :

from keras.models import Sequential
from keras.layers import Dense

# 创建 Sequential 模型
model = Sequential()

# 添加第一层输入层
model.add(Dense(units=64, activation='relu', input_dim=100))

# 添加第二层隐藏层
model.add(Dense(units=64, activation='relu'))

# 添加第三层输出层
model.add(Dense(units=10, activation='softmax'))

Dans le code ci-dessus, nous importons d'abord les classes Sequential et Dense. Créez ensuite un objet modèle séquentiel. Ensuite, utilisez la méthode add pour ajouter la couche d'entrée, la couche cachée et la couche de sortie dans l'ordre. Parmi eux, la classe Dense représente la couche entièrement connectée, le paramètre units représente le nombre de neurones et le paramètre activation représente la fonction d'activation. . Enfin, compilez le modèle via la méthode model.compile. add 方法依次添加输入层、隐藏层和输出层。其中,Dense 类表示全连接层,units 参数表示神经元个数,activation 参数表示激活函数。最后,通过 model.compile 方法来编译模型。

  1. 编译模型
    在构建完神经网络模型后,我们需要使用 model.compile 方法对模型进行编译。编译过程中需要指定损失函数、优化器和评价指标等参数。
# 编译模型
model.compile(loss='categorical_crossentropy',
              optimizer='sgd',
              metrics=['accuracy'])

在上述代码中,我们选择了交叉熵(categorical crossentropy)作为损失函数,随机梯度下降(SGD)作为优化器,准确率(accuracy)作为评价指标。当然,在实际应用中,你可以根据问题的类型和需求选择合适的参数。

  1. 训练模型
    在编译好模型后,我们可以使用 model.fit 方法来训练模型。训练模型时需要输入训练数据和训练标签,并指定训练的轮数、批大小等参数。
# 训练模型
model.fit(train_data, train_labels, epochs=10, batch_size=32)

在上述代码中,train_datatrain_labels 分别表示训练数据和训练标签。epochs 参数表示训练的轮数,batch_size 参数表示每一次迭代所使用的训练样本数。

  1. 预测和评估
    在训练模型完成后,可以使用 model.predict 方法对新的数据进行预测。
# 预测
predictions = model.predict(test_data)

在上述代码中,test_data 表示待预测的数据。预测结果将保存在 predictions 变量中。

此外,我们还可以使用 model.evaluate 方法对模型进行评估。

# 评估模型
loss_and_metrics = model.evaluate(test_data, test_labels)

在上述代码中,test_datatest_labels 分别表示测试数据和测试标签。评估结果将保存在 loss_and_metrics

    Compilez le modèle

    Après avoir construit le modèle de réseau neuronal, nous devons utiliser la méthode model.compile pour compiler le modèle. Pendant le processus de compilation, des paramètres tels que la fonction de perte, l'optimiseur et les indicateurs d'évaluation doivent être spécifiés.

    rrreee🎜Dans le code ci-dessus, nous avons choisi l'entropie croisée (entropie croisée catégorielle) comme fonction de perte, la descente de gradient stochastique (SGD) comme optimiseur et la précision comme indice d'évaluation. Bien entendu, dans les applications pratiques, vous pouvez choisir les paramètres appropriés en fonction du type de problème et des exigences. 🎜
      🎜Entraînement du modèle🎜Après avoir compilé le modèle, nous pouvons utiliser la méthode model.fit pour entraîner le modèle. Lors de la formation du modèle, vous devez saisir les données de formation et les étiquettes de formation, ainsi que spécifier des paramètres tels que le nombre de cycles de formation et la taille du lot. 🎜🎜rrreee🎜Dans le code ci-dessus, train_data et train_labels représentent respectivement les données d'entraînement et les étiquettes d'entraînement. Le paramètre epochs indique le nombre de cycles d'entraînement et le paramètre batch_size indique le nombre d'échantillons d'entraînement utilisés dans chaque itération. 🎜
        🎜Prédiction et évaluation🎜Après avoir entraîné le modèle, vous pouvez utiliser la méthode model.predict pour prédire de nouvelles données. 🎜🎜rrreee🎜Dans le code ci-dessus, test_data représente les données à prédire. Les prédictions seront enregistrées dans la variable predictions. 🎜🎜De plus, nous pouvons également utiliser la méthode model.evaluate pour évaluer le modèle. 🎜rrreee🎜Dans le code ci-dessus, test_data et test_labels représentent respectivement les données de test et les étiquettes de test. Les résultats de l'évaluation seront enregistrés dans la variable loss_and_metrics. 🎜🎜Résumé🎜Cet article présente comment utiliser le module Keras pour l'apprentissage en profondeur dans Python 2.x. Il montre d'abord comment installer le module Keras, puis décrit comment créer un modèle de réseau neuronal, compiler le modèle, entraîner le modèle, puis prédire et évaluer le modèle. J'espère que cet article pourra vous aider à vous lancer dans l'apprentissage en profondeur, à l'appliquer et à le développer dans des applications pratiques. 🎜

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