Python 3.x 中如何使用tensorflow模块进行深度学习
pip install tensorflow
import tensorflow as tf import numpy as np
以下是一个简单的示例代码,展示了如何使用TensorFlow构建一个简单的全连接神经网络:
# 定义输入数据 x = tf.placeholder(tf.float32, shape=[None, 784]) y_true = tf.placeholder(tf.float32, shape=[None, 10]) # 定义隐藏层 hidden_layer = tf.layers.dense(x, 256, activation=tf.nn.relu) # 定义输出层 logits = tf.layers.dense(hidden_layer, 10) # 定义损失函数 loss = tf.losses.softmax_cross_entropy(onehot_labels=y_true, logits=logits) # 定义优化器 optimizer = tf.train.GradientDescentOptimizer(learning_rate=0.01) train_op = optimizer.minimize(loss)
以下是一个简单的示例代码,展示了如何准备MNIST手写数字数据集,并使用随机梯度下降法(SGD)来训练模型:
# 下载MNIST数据集 from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) # 定义训练参数 epochs = 10 batch_size = 128 # 创建会话 with tf.Session() as sess: sess.run(tf.global_variables_initializer()) # 开始训练 for epoch in range(epochs): total_batches = mnist.train.num_examples // batch_size for batch in range(total_batches): batch_x, batch_y = mnist.train.next_batch(batch_size) # 训练模型 sess.run(train_op, feed_dict={x: batch_x, y_true: batch_y}) # 每轮结束后评估模型在测试集上的准确率 accuracy = sess.run(accuracy_op, feed_dict={x: mnist.test.images, y_true: mnist.test.labels}) print("Epoch: {}, Accuracy: {}".format(epoch + 1, accuracy))
以下是一个简单的示例代码,展示了如何使用训练好的模型评估测试数据集的准确率:
# 在模型建立后添加以下代码: correct_prediction = tf.equal(tf.argmax(logits, 1), tf.argmax(y_true, 1)) accuracy_op = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
以上是Python 3.x 中如何使用tensorflow模块进行深度学习的详细内容。更多信息请关注PHP中文网其他相关文章!