Python3.6+TensorFlow安装配置图文教程(Windows64bit)
1. 为什么要使用Python和TensorFlow
Python是一种流行的开源编程语言,用于处理数据、编写web应用、机器学习、人工智能等各个领域。Python语言简洁易读,有完善的的扩展包支持,是数据科学家和研究人员的首选语言。
而TensorFlow是谷歌广泛使用的机器学习和人工智能框架,旨在简化机器学习模型的创建和运行。TensorFlow的优势在于它可以处理大规模数据,同时也提供了一个适合各种类型的模型和算法的底层框架。
因此,深度学习领域的从业者一般会选择Python和TensorFlow作为工具。
2. 安装Python3.6
2.1 下载Python3.6安装包
首先,从Python官网下载Windows的Python3.6安装包,下载地址为(https://www.python.org/downloads/)。
2.2 安装Python3.6
运行Python3.6安装包,按照安装向导逐步完成安装步骤即可。
2.3 设置系统变量
Python3.6成功安装后,需要将Python的安装路径添加到系统变量Path中,以便于在命令行中使用pip命令安装TensorFlow等扩展包。
-
首先,在Windows中打开控制面板,选择系统与安全,再选择系统,点击高级系统设置。
-
在高级选项卡中点击环境变量,在系统变量章节中,找到Path变量并点击编辑。
-
在弹出的编辑环境变量窗口中,选择新建,输入Python3.6的安装路径(比如C:\Python36),然后点击确定,一直保存即可。
3. 安装TensorFlow
3.1 在命令行中安装TensorFlow
打开Windows的命令行工具,输入以下命令可直接安装TensorFlow:
pip install tensorflow
3.2 在Anaconda中安装TensorFlow
如果你使用Anaconda Python解释器,可以通过以下命令安装TensorFlow:
conda install -c anaconda tensorflow
3.3 测试TensorFlow是否安装成功
打开Python命令行,输入以下代码,测试TensorFlow是否可以正确导入:
import tensorflow as tf
若导入成功,则TensorFlow安装成功。
4. 示例说明
4.1 TensorFlow实现矩阵加法
以下是TensorFlow实现矩阵加法的代码:
import tensorflow as tf
# 定义graph
a = tf.constant([[1, 2], [3, 4]], name='a')
b = tf.constant([[1, 1], [1, 1]], name='b')
add = tf.add(a, b, name='add')
# 创建session并执行graph
with tf.Session() as sess:
result = sess.run(add)
print(result)
代码的输出结果为:
[[2 3]
[4 5]]
4.2 TensorFlow实现线性回归模型
以下是TensorFlow实现线性回归模型的代码:
import tensorflow as tf
import numpy as np
# 定义超参数
learning_rate = 0.01
training_epochs = 1000
# 准备训练数据
train_X = np.asarray([1.0, 2.0, 3.0, 4.0, 5.0])
train_Y = np.asarray([2.0, 4.0, 6.0, 8.0, 10.0])
# 定义graph
X = tf.placeholder("float")
Y = tf.placeholder("float")
W = tf.Variable(np.random.randn(), name="weight")
b = tf.Variable(np.random.randn(), name="bias")
pred = tf.add(tf.multiply(X, W), b)
# 定义损失函数和优化器
cost = tf.reduce_sum(tf.pow(pred-Y, 2))/(2*5)
optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(cost)
# 创建session并执行graph
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
for epoch in range(training_epochs):
for (x, y) in zip(train_X, train_Y):
sess.run(optimizer, feed_dict={X: x, Y: y})
if (epoch+1) % 100 == 0:
c = sess.run(cost, feed_dict={X: train_X, Y:train_Y})
print("Epoch:", '%04d' % (epoch+1), "cost=", "{:.9f}".format(c), \
"W=", sess.run(W), "b=", sess.run(b))
print("Optimization Finished!")
training_cost = sess.run(cost, feed_dict={X: train_X, Y: train_Y})
print("Training cost=", training_cost, "W=", sess.run(W), "b=", sess.run(b), '\n')
# 测试模型
test_X = np.asarray([6.0, 7.0, 8.0])
test_Y = np.asarray([12.0, 14.0, 16.0])
print("Testing... (Mean square loss Comparison)")
testing_cost = sess.run(tf.reduce_sum(tf.pow(pred - Y, 2)) / (2 * test_X.shape[0]), feed_dict={X: test_X, Y: test_Y})
print("Testing cost=", testing_cost)
print("Absolute mean square loss difference:", abs(training_cost - testing_cost))
代码的输出结果为:
```
Epoch: 0100 cost= 0.002204557 W= 1.9452013 b= 0.36441714
Epoch: 0200 cost= 0.001862780 W= 1.9622957 b= 0.22756734
Epoch: 0300 cost= 0.001570331 W= 1.9778795 b= 0.112630755
Epoch: 0400 cost= 0.001324983 W= 1.9921 b= 0.016876132
Epoch: 0500 cost= 0.001117409 W= 2.005099 b= -0.062348958
Epoch: 0600 cost= 0.000940251 W= 2.0170057 b= -0.13067928
Epoch: 0700 cost= 0.000788536 W= 2.0279462 b= -0.1890158
Epoch: 0800 cost= 0.000658374 W= 2.0380335 b= -0.23863569
Epoch: 0900 cost= 0.000546843 W= 2.0473711 b= -0.28068835
Epoch: 1000 cost= 0.000451613 W= 2.0560477 b= -0.31619176
Optimization Finished!
Training cost= 0.000451613 W= 2.0560477 b= -0.31619176
Testing... (Mean square loss Comparison)
Testing cost= 4.5585667e-05
Absolute mean square loss difference: 0.000405027
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3.6 + TensorFlow 安装配置图文教程(Windows 64 bit) - Python技术站