本专栏是记录作者学习Python深度学习的相关内容
本章节开始,作者开始着手于Python深度学习用于安全领域的学习,本章节主要介绍了使用Anaconda配置TensorFlow_gpu环境,配置Pycharm,公网部署Jupyter,良好的环境配置有利于后续对深度的学习。TensorFlow是一个由Google开发的开源机器学习框架,用于构建和训练各种深度学习模型,包括神经网络。
文章目录
本机操作系统:win11
配置深度学习环境tensorflow_gpu-2.10.0+CUDA Toolkit 12.3.1+cuDNN v8.9.5 (October 27th, 2023), for CUDA 12.x
在进行环境配置前一定要查询官方文档,或者多收集社区信息
官方环境配置要求:https://tensorflow.google.cn/install/source_windows#gpu
GPU 在原生 Windows 上的支持只适用于2.10或更早的版本,从 TF 2.11开始,不支持 CUDA build!
1 安装Anaconda
概念:Anaconda是一个用于科学计算和数据科学的开源Python发行版和环境管理器。
特点:虚拟环境:Anaconda允许用户创建和管理虚拟环境,这些环境可以独立地包含特定版本的Python和依赖项。这有助于隔离不同项目或任务的依赖关系,以避免版本冲突。
2 CUDA和cuDNN安装
可参考Tensorflow-gpu保姆级安装教程(Win11, Anaconda3,Python3.9)](https://blog.csdn.net/weixin_43412762/article/details/129824339) 第三四五部分。
我的显卡信息:
CUDA安装了目前最新版本CUDA Toolkit 12.3.1 (November 2023)
cuDNN安装了目前最新版本cuDNN v8.9.5 (October 27th, 2023), for CUDA 12.x
3 使用Anaconda配置环境
参考资料:【Tensorflow2.0】Tensorflow2.x的安装教程
GPU 支持在本地-Windows 只支持2.10或更早的版本,从 TF 2.11开始,CUDA build 不支持 Windows。
#用清华conda 镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
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 --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
# 搜索时显示通道地址
conda config --set show_channel_urls yes
#创建虚拟环境
conda create -n tf2.10 python=3.9
#激活环境
activate tf2.10
#指定版本为2.10 (默认安装新版本2.11版本,这个版本太新,还不支持GPU。)
pip install tensorflow==2.10
关于Anaconda创建虚拟环境的解释
#创建虚拟环境
conda create -n 环境名 -y
#查看所有环境
conda info --envs
conda env list
#激活环境
activate 环境名# windows
# 在当前环境中安装包
conda install 包名称
# 指定版本号
conda install 包名称=version
pip install 包名称 -i https://pypi.tuna.tsinghua.edu.cn/simple #清华镜像
在虚拟环境下进入python交互页面
import tensorflow as tf
print(tf.__version__) #tensorflow版本
print('GPU', tf.test.is_gpu_available()) #gpu
4 Pycharm中配置解析器
参考:Pycharm上配置和导入已安装的Tensorflow(2021全新教程——基于Anaconda)
先创建项目,自己设置一下项目位置(随意)
进入Pycharm设置
新增解释器
加载conda环境
测试:
import tensorflow as tf
print("TensorFlow version is :",tf.__version__)
print("Keras version is :",tf.keras.__version__)
print("GPU is","available" if tf.config.list_physical_devices('GPU')else "NOT AVAILABLE")
tf.config.list_physical_devices('GPU')
5 配置Jupyter
参考资料:
#激活环境
activate tf2.10
#下载ipykernel
pip install ipykernel
#创建内核
python -m ipykernel install --name tf2.10
#查看所有内核
jupyter kernelspec list
#删除内核
jupyter kernelspec remove kernelname(自己设置的)
在该虚拟环境下启动jupyter notebook!!!!
activate tf2.10
jupyter notebook
即可进入jupyter页面
若出现以下错误,或其他的缺少模块错误,可以尝试
python -m pip install notebook -U --force-reinstall
配置好之后测试一下
import tensorflow as tf
print("TensorFlow version is :",tf.__version__)
print("Keras version is :",tf.keras.__version__)
print("GPU is","available" if tf.config.list_physical_devices('GPU')else "NOT AVAILABLE")
tf.config.list_physical_devices('GPU')
结果如下:则说明tensorflow_gpu没问题
5.1 修改jupyter工作目录
默认Jupyter的工作路径在用户根目录,如果想更换目录,我们需要进行修改
#激活环境
activate tf2.10
#生成Jupyter配置文件
jupyter notebook --generate-config
进入配置文件,修改c.NotebookApp.notebook_dir
再次进入,其工作目录就是你设置的目录了。
6 公网部署Jupyter
参考资料:如何远程访问本地jupyter notebook服务器,实现无公网IP端口映射
cpolar官网:https://www.cpolar.com/
进入后注册,可以使用免费套餐,URL不固定
下载后进入WebUI,输入密码
创建隧道,将本地的8080端口映射到公网端口
查看公网地址
通过外网访问Jupyter必须设置访问密码
jupyter notebook password
访问json文件,复制password字段
修改jupyter配置文件:jupyter_notebook_config.py
插入配置:
c.NotebookApp.ip='*' #允许访问的IP地址,设置为*代表允许任何客户端访问
c.NotebookApp.password = u'argon2:$argon2id........'#刚才生成密码时上面复制的密文
c.NotebookApp.open_browser = False
c.NotebookApp.port =8889 #开放服务的端口, 访问时使用该端口,与映射的端口一致!!!
c.NotebookApp.allow_remote_access = True
保存后,可以通过公网地址访问