本文共 1563 字,大约阅读时间需要 5 分钟。
之前实验室fsj学姐就给我说过,最好一个项目创建一个虚拟环境,这样比较好。具体的好处我也没有了解,今天在安装Tensorflow的时候发现在虚拟环境下安装Tensorflow是最优选择,所以先介绍一下虚拟环境的好处。
Python虚拟环境——virtualen
virtualenv简介
VirtualEnv用于在一台机器上创建多个独立的python运行环境,类似于一个个沙盒环境。 作用: 隔离项目之间的第三方库依赖,如A项目依赖xxx1.1,B项目依赖xxx1.2。 为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一翻。 尝试新的第三方库,而不用担心污染系统环境。 在沒有权限的情況下安装新组件。 virtualenv只能隔离第三方依赖库,不能在多个python版本之间切换。pythonbrew可以满足这个需求。
Tensorflow官方也建议受限创建虚拟环境
系统:Ubuntu18.04
显卡:GTX1060 6G
已安装:Anaconda
注:不要自行安装CUDA和cuDNN,最简单有效的方法是通过Anaconda安装Tensorflow,让它自动安装正确的依赖
在安装好Anaconda之后,为Tensorflow创建一个新的虚拟环境:
# 如果你安装的是 Python 3.6 版的Anaconda:conda create --name tf_gpu_env tensorflow-gpu # tf_gpu_env是这个环境的名字# 如果你安装的是 Python 3.7 版的Anaconda,则需要声明新创建的环境使用 Python 3.6:conda create --name tf_gpu_env python=3.6 anaconda tensorflow-gpu
注:截止发文时,还没有找到目前Tensorflow2.0已经支持Python3.7的证据,所以为了稳妥起见,就声明创建的环境使用Python3.6吧!
如图所示
然后就不用管了,它自己会安装的
接下来要安装的包:
CUDA和cuDNN已经在里面了。
接下来等待安装完成:
安装完成之后可以看到给出的激活虚拟环境的指令是错误的
# To activate this environment, use## $ conda activate tf_gpu_env## To deactivate an active environment, use## $ conda deactivate
需要用如下指令
#启动虚拟环境指令source activate tf_gpu_env#关闭虚拟环境指令source deactivate
随便跑个什么1+2之类的
python>>>import tensorflow as tf>>>tf.add(1, 2).numpy()3
可以看到信息提示中已经用到显卡和GPU,安装完成!
如果只是在命令行中使用虚拟环境下的Tensorflow,未免太不方便。那么如何把虚拟环境中的Tensorflow导入到Pycharm,在Pycharm中自由导入Tensorflow的包呢?
灵感来源于在命令行中的报错
在命令行中安装包或者依赖不知道具体安装在哪个目录下面了,而在报错中可以清楚看到错误提示中的文件路径,所以在对应的文件路径下导入python文件即可!
未导入时的错误提示
导入python文件
导入成功
运行成功
在虚拟环境中输入指令
pip install keras
直接安装成功
转载地址:http://wrrpi.baihongyu.com/