最近想学习深度学习,打算从TensorFlow开始。就先把环境搭好吧。
我使用的是Anaconda来进行python管理。首先要下载安装Anaconda。这里使用的是Python3.6 Version,就是左边的那个。
配置Anaconda环境:
打开anaconda prompt,进入命令行界面,运行:
conda create --name TensorFlow python=3.6
新建了一个python3.6版本的开发环境。这个环境只安装了一些基础的Python包。
查看已搭建的环境:
conda info --e
我这里是有两个已经建好的环境,后面是所在位置。
切换分支:
activate tensorflow
使用上述命令切换分支环境,你在分支环境中执行的安装等命令是只在当前环境中生效的(像pip安装包等等)。
安装TensorFlow
# GPU版本 //GPU版本要安装cuDNN,请自行查找教程,显卡太渣就不装这个了。
pip3 install --upgrade tensorflow-gpu
# CPU版本
pip3 install --upgrade tensorflow
在上面的anaconda prompt环境中运行以上命令即可为当前环境安装TensorFlow。
配置pycharm
打开pycharm,在File | Settings | Project: py | Project Interpreter
点击齿轮选择Add
选择Conda Environment|Existing environment,然后选择路径到你刚才创建的TensorFlow环境文件夹下的python.exe文件。
不知道的话,使用前面的提到过的命令:
conda info --e
即可查看你的TensorFlow environment所在文件夹。
点击OK! pycharm环境就配置好了。
运行示例程序:
官方的示例程序:
import tensorflow as tf
import numpy as np
# 使用 NumPy 生成假数据(phony data), 总共 100 个点.
x_data = np.float32(np.random.rand(2, 100)) # 随机输入
y_data = np.dot([0.100, 0.200], x_data) + 0.300
# 构造一个线性模型
#
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b
# 最小化方差
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)
# 初始化变量
init = tf.initialize_all_variables()
# 启动图 (graph)
sess = tf.Session()
sess.run(init)
# 拟合平面
for step in range(0, 201):
sess.run(train)
if step % 20 == 0:
print(step, sess.run(W), sess.run(b))
这段很短的 Python 程序生成了一些三维数据, 然后用一个平面拟合它.
运行成功! 可以愉快地开始啦!
如果到这里一切都很顺利的话,不送
填坑指南:
import tensorflow 出错怎么办
import numpy试一下,成功了的话,我就无能为力了,我们的错误不一样(♪我们不一样,每个人都有不同的bug♪)。
失败了,那我们出现的问题可能就是同一个问题了。
安装好TensorFlow后import失败,报错是numpy的问题。单独import下numpy,也报错。报错提示…我忘了,毕竟这篇文章是马后炮。可能是numpy.core.multiarray failed to import
反正各种重装numpy都没用。后来在这篇文章里看到个方法:
在CMD里执行
conda remove numpy
遇到提示选择yes/y
卸载完毕后重新安装 ,在CMD里执行
conda install nump
然后import tensorflow 就成功啦!
Warn:Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
这只是warn,但是任它留在这里不是很丑,在pycharm里显示的酒红色字体看的心烦。
解决方法:
在代码开头加上:
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
重新运行,烦人的警告就没有了。
WARNING:tensorflow:From initialize_all_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02. Instructions for updating: Use `tf.global_variables_initializer` instead.
我还没管它,先放着吧