笔者软硬件环境说明:
操作系统:win10
cpu: i5-6300hq
gpu:gtx950m
用到的软件:
1、anaconda
2、cudatoolkit
3、cudnn
4、tensorflow
5、pycharm
预先准备
先去查看显卡的驱动版本:
1.进入显卡控制面板
2.依次点击帮助--系统信息--组件
如图所示,我的显卡支持cuda 11
这里后续要用的是cuda10,请保证显卡支持,如果支持的不到cuda10,比如这里显示cuda 9,去英伟达官网下载并安装新的驱动
在windows上使用tensorflow记得安装一个vc的小玩意儿,否则import tensorflow时会出现报错
我把这个软件分享到这里了,按照引导默认安装即可
https://pan.baidu.com/s/1i5bwDMVidjEZLwHUKK8WAg
提取码:rbvb
开始安装
我用的是2019-10版本的适配windows的64为anaconda3,各版本的下载地址在此:
https://repo.anaconda.com/archive/
请尽量与我一致
记得勾选just me
以及勾选加入环境变量
安装好anaconda后,点击
就可以看到如下界面:
先给conda换源:
输入这两行命令即可:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
然后创建环境:
conda create -n TF python=3.7
进入环境:
conda activate TF
安装cudatoolkit:
conda install cudatoolkit=10.1
安装cudnn
conda install cudnn=7.6
上述步骤有需要输入y/n 的地方,输入y即可
安装tensorflow:
这个软件很大,直接下载可能会报错说超时,
网上给出多种解决方法,这里采用换源
pip install tensorflow==2.1 -i https://pypi.douban.com/simple/
这里一定要是https,如果时http可能会有意想不到的问题发生
等待安装结束即可
记得一定要选定版本,笔者一开始安装时没有选定版本,默认安装了tf2.3,后续出了很多问题,难以解决。
然后安装pycharm,这里去官网下载个社区版即可,商业软件的安装没有什么难题,厂商很贴心的。
给pycharm配置成这样即可此时就可以用一个demo来测试一下了,新建一个test.py
import tensorflow as tf
tf_version = tf.__version__
print(tf_version)
gpu_available = tf.test.is_gpu_available()
#
print('tensorflow verson:' ,tf_version,"\tGPU available:",gpu_available)
a= tf.constant([1.0,2.0],name='a')
b= tf.constant([1.0,2.0],name='b')
reslut = tf.add(a,b,name='add')
print(reslut)
看看运行结果把:笔者再给各位一段简单代码来跑跑看是否有问题吧:
# 用到的是fashion mnist数据集,它全是服饰的灰度图,有10个分类,共7万张图
# 我们用6万张来训练,用一万张来测试
import os
import tensorflow as tf
os.environ['TF_FORCE_GPU_ALLOW_GROWTH'] = 'TRUE'
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
(train_img, train_label) , (test_img, test_label) = tf.keras.datasets.fashion_mnist.load_data() # 加载数据
## 归一化
train_img = train_img / 255
test_img = test_img / 255
model = tf.keras.Sequential(
[
tf.keras.layers.Flatten(input_shape = (28,28)), # 把图片这种二维数据扁平层一纬的数据,len = 28 * 28
tf.keras.layers.Dense(128,activation = 'relu' ),
tf.keras.layers.Dense(10,activation = 'softmax') # 用softmax来激活输出层
]
)
model.compile(
optimizer = 'adam',
# optimizer = tf.keras.optimizers.Adam(learn_rate = 0.01) 这就是自己在设定优化器
loss = 'sparse_categorical_crossentropy', # label是数字的话,用这个
metrics = ['acc'] # 度量正确率
)
history = model.fit(train_img,train_label,epochs = 5) # 训练
model.evaluate(test_img,test_label) # 测试
在第一次执行该代码时需要等待fashion-mnsit数据集的下载
笔者也是自己一路填坑过来的,好了,到此为止了。