【深度学习】wsl-ubuntu深度学习基本配置

配置pip镜像源

这里注意一点,你换了源之后就最好不要开代理了,要不然搞不好下载失败,pip和conda都是

## 配置中科大镜像
pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple

# 配置阿里源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
# 配置腾讯源
pip config set global.index-url http://mirrors.cloud.tencent.com/pypi/simple
# 配置豆瓣源
pip config set global.index-url http://pypi.douban.com/simple/

## 你只需配置其中一个即可

方法一:pip install 安装包名字
方法二:python -m pip install 安装包名字
方法三:pip --trusted-host pypi.python.org install 安装包名字
		pip install 安装包名字 -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com            //豆瓣镜像网站
		pip install 安装包名字 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com                  //豆瓣
		pip install 安装包名字 -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn    //清华大学

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 config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

pip install -r requirements.txt

除了使用pip命令来生成及安装requirement.txt文件以外,也可以使用conda命令来安装。
conda install --yes --file requirements.txt

怎么用wsl的conda跑深度学习代码




正常打开终端选择即可。

运行即可跑pycharm中的项目了

wls安装

https://zhuanlan.zhihu.com/p/663817616 基本都是跟着这个装的,写的很好

https://blog.csdn.net/weixin_45840825/article/details/127138564 怎么把wls不安装在C盘

最高支持cuda是12.5

最新默认安装的是12.6,所以要找旧的
https://developer.nvidia.com/cuda-11-6-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=WSL-Ubuntu&target_version=2.0&target_type=deb_local

安装11.6

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda-repo-wsl-ubuntu-11-6-local_11.6.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-11-6-local_11.6.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-6-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

创建环境 
conda create -n py39gpu python=3.9

激活环境
conda activate py39gpu

设置conda下载的时长大一点,然后运行安装命令
conda config --set remote_read_timeout_secs 600.0
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6 -c pytorch -c conda-forge

挑一个你的小于或者等于你的cuda的平台,使用安装命令安装即可

-c pytorch 指定了从pytorch频道安装PyTorch相关的包,而-c conda-forge 指定了从conda-forge频道安装其他包。在该命令中,pytorch和torchvision以及torchaudio可能从pytorch频道安装,而cudatoolkit可能从conda-forge频道安装,因为conda-forge频道提供了更多的CUDA版本选择。

实战

setup.py如下

#!/usr/bin/env python3

import setuptools
import os


def _read_reqs(relpath):
    fullpath = os.path.join(os.path.dirname(__file__), relpath)
    with open(fullpath) as f:
        return [s.strip() for s in f.readlines()
                if (s.strip() and not s.startswith("#"))]


_REQUIREMENTS_TXT = _read_reqs("requirements.txt")
_INSTALL_REQUIRES = [l for l in _REQUIREMENTS_TXT if "://" not in l]

setuptools.setup(
    name='tda',
    version='0.2',
    install_requires=_INSTALL_REQUIRES,
    data_files=[('.', ['requirements.txt'])],
    packages=setuptools.find_packages(),
)

requirements.txt如下

numpy
scipy
seaborn
torch==1.4.0
torchvision==0.5.0
ipython
tqdm
joblib
dionysus
scikit-learn
networkx==1.11
qgrid
numba==0.48.0
cached-property>=1.5.1
pandas
adversarial-robustness-toolbox-1.3.2
mlflow

这里是使用的virtualenv来构建虚拟环境的,没有使用conda

当你运行pip install -e .时,pip会在当前目录(即包的根目录)查找setup.py文件。setup.py是一个Python脚本,用于定义包的元数据和安装要求。pip使用这个文件来安装包。

用于以"editable"模式(也称为"开发模式")安装Python包。在editable模式下,pip不会复制包的文件到Python的site-packages目录,而是在site-packages目录下创建一个链接(通常是符号链接),指向包的源代码目录。这样,当你修改源代码时,这些更改会立即反映在已安装的包中。

我们这里使用conda

conda create -n my_env python=3.6
conda activate my_env
pip install -e .

这里有一个库安装失败了,原因是因为指定的版本号太低了,这里直接安装最新的,看看后面能不能用
pip install adversarial-robustness-toolbox

显示还有几个库没有安装,因为adversarial-robustness-toolbox-1.3.2安装失败,导致后面的都没有安装了

修改一下requirements.txt

再次运行pip install -e .

正如作者在readme中所写,dionysus很特殊

https://github.com/mrzv/dionysus

#安装boost
sudo apt-get update
sudo apt-get install libboost-all-dev

pip install --verbose dionysus   #报错
pip install --verbose git+https://github.com/mrzv/dionysus.git  #报错
conda install -c conda-forge dionysus  #成功

报错如下

对于一些仍有问题的包单独安装即可

运行,报错

ModuleNotFoundError: No module named 'tda' 但tda是项目的一级目录

尝试一:

https://zhuanlan.zhihu.com/p/526710677

将根目录标记一下

尝试二:

tda目录下的__init__.py文件,在其中加上 from tda import *

https://blog.csdn.net/lu8000/article/details/120490555

这篇文章是有思考的

分析一下是和环境有关的

在pycharm控制台运行下面命令

python tda/experiments/mahalanobis/mahalanobis_binary.py \
    --attack_type PGD \
    --architecture cifar_lenet \
    --dataset CIFAR10 \
    --epochs 300 \
    --number_of_samples_for_mu_sigma 500 \
    --preproc_epsilon 0.01

直接使用pycharm自带的运行

点击绿色运行小箭头

就不是刚才的报错了,已经绕过了刚才的报错了

复制真正的执行代码到conda的控制台

/home/ubuntu/miniconda3/bin/conda run -n my_env --no-capture-output python /mnt/d/all_for_study/python_code/experiment/detecting-by-dissecting-master/tda/experiments/mahalanobis/mahalanobis_binary.py --attack_type PGD --architecture cifar_lenet --dataset CIFAR10 --epochs 300 --number_of_samples_for_mu_sigma 500 --preproc_epsilon 0.01 
相关推荐
靴子学长33 分钟前
基于字节大模型的论文翻译(含免费源码)
人工智能·深度学习·nlp
AI_NEW_COME1 小时前
知识库管理系统可扩展性深度测评
人工智能
海棠AI实验室2 小时前
AI的进阶之路:从机器学习到深度学习的演变(一)
人工智能·深度学习·机器学习
hunteritself2 小时前
AI Weekly『12月16-22日』:OpenAI公布o3,谷歌发布首个推理模型,GitHub Copilot免费版上线!
人工智能·gpt·chatgpt·github·openai·copilot
IT古董3 小时前
【机器学习】机器学习的基本分类-强化学习-策略梯度(Policy Gradient,PG)
人工智能·机器学习·分类
centurysee3 小时前
【最佳实践】Anthropic:Agentic系统实践案例
人工智能
mahuifa3 小时前
混合开发环境---使用编程AI辅助开发Qt
人工智能·vscode·qt·qtcreator·编程ai
四口鲸鱼爱吃盐3 小时前
Pytorch | 从零构建GoogleNet对CIFAR10进行分类
人工智能·pytorch·分类
蓝天星空3 小时前
Python调用open ai接口
人工智能·python
睡觉狂魔er3 小时前
自动驾驶控制与规划——Project 3: LQR车辆横向控制
人工智能·机器学习·自动驾驶