文章预览:
- 本周内容:Python语言的学习和pytorch安装配置
- 1 Python基础知识
- 1.1 交互式解释器
- 1.2 数和表达式
- 1.3 变量
- 1.4 获取用户输入
- 1.5 函数
- 1.6 模块
- 1.7 字符串
- 1.7.1 单引号字符串以及对引号转义
- 1.7.2 拼接字符串
- 1.7.3 字符串表示str 和repr
- Pytorch 的安装
- Anaconda的安装
- Step 1:安装Anaconda/miniconda
- Step 2:检验是否安装成功
- Step 3:创建虚拟环境
- 查看现存虚拟环境
- 创建虚拟环境
- 安装包
- 卸载包
- 显示所有安装的包
- 删除虚拟环境命令
- 激活环境命令
- 退出当前环境
- Step 4:换源
- pip换源
- Windows:
- conda换源(清华源)[官方换源帮助](https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/)
- Windows系统:
- 查看显卡
- windows:
- 安装PyTorch
- Step 1:登录[PyTorch官网](https://pytorch.org/)
- Step 2:Install
- Step 3:选择命令
- Step 4:在线下载
- Step 5:离线下载
- Windows:
- Step 6:检验是否安装成功
- 下周计划
20230710-20230716
本周内容:Python语言的学习和pytorch安装配置
1 Python基础知识
1.1 交互式解释器
启动python后,可见如图所示提示符,提示信息和配置环境中python版本有关。
下面我们进行传统的做法:
如果你熟悉其他计算机语言,可能习惯了在每行末尾都加上分号。在Python中无需这样做,因为在Python中,一行就是一行。
1.2 数和表达式
所有常见算术运算符的工作原理都与预期的一致:
除法运算的结果为小数,即浮点数(float或floating-point number)。
如果想丢弃小数部分,即执行整除运算,可使用双斜杠:
这是求余(求模)运算符x%y的结果为x除以y的余数。结果为执行整除时余下的部分,即 x% y等价于x-((x//y)*y)。
乘方运算符的优先级比求负(单目减)高,因此-2**2等价于-(2**2)。
1.3 变量
Python中的变量理解起来很容易。变量是表示(或指向)特定值的名称。例如,你可能想使用名称x来表示3,为此执行如下代码:这称为赋值(assignment),我们将值3赋给了变量x。不同于其他一些语言,使用Python变量前必须给它赋值,因为Python变量没有默认值。
在Python中,名称(标识符)只能由字母、数字和下划线(_)构成,且不能以数字打头。
1.4 获取用户输入
这里在交互式解释器中执行了第一行(input(…)),它打印字符串"The meaning of life:",提示用户输入相应的信息。我输入42并按回车。这个数被input(以文本或字符串的方式)返回,并在最后一行被自动打印出来。
1.5 函数
上面使用了乘方运算符(**)来执行幂运算。实际上,可不使用这个运算符,而使用函数pow。
Python提供了很多函数,通常将pow等标准函数称为内置函数。
1.6 模块
要导入模块,使用import。
使用import导入模块,再以module.function的方式使用模块中的函数。
1.7 字符串
1.7.1 单引号字符串以及对引号转义
与数一样,字符串也是值:
Python在打印字符串时,用单引号将其括起,而我们使用的是双引号。这没有任何差别。有些情况下,可能有用:
第一个字符串包含一个单引号,第二个字符串包含双引号。这样Python将明白中间的引号是字符串的一部分,而不是字符串结束的标志。可使用反斜杠(\)对引号进行转义,如下所示:
1.7.2 拼接字符串
依次输入了两个字符串,而Python自动将它们拼接起来了。
1.7.3 字符串表示str 和repr
Python打印所有的字符串时,都用引号将其括起。这是因为Python打印值时,保留其在代码中的样子,而不是你希望用户看到的样子。但如果你使用print,结果将不同。
如果再加上表示换行符的编码\n,差别将更明显。
使用str能以合理的方式将值转换为用户能够看懂的字符串。例如,尽可能将特殊字符编码转换为相应的字符。使用repr时,通常会获得值的合法Python表达式表示。
Pytorch 的安装
PyTorch的安装是我们学习PyTorch的第一步,也是经常出错的一步。在安装PyTorch时,我们通常使用的是Anaconda/miniconda+Pytorch+ IDE 的流程。
经过本节的学习,你将收获:
- Anaconda/miniconda的安装及其常见命令
- PyTorch的安装流程
- 如何选择一个适合自己的PyTorch版本
Anaconda的安装
在数据科学和最近很火的深度学习中,要用到大量成熟的package。我们一个个安装 package 很麻烦,而且很容易出现包之间的依赖不适配的问题。而 Anaconda/miniconda的出现很好的解决了我们的问题,它集成了常用于科学分析(机器学习, 深度学习)的大量package,并且借助于conda我们可以实现对虚拟Python环境的管理。
Step 1:安装Anaconda/miniconda
登陆Anaconda | Individual Edition,选择相应系统DownLoad,此处以Windows为例(Linux可以点击链接选择合适的版本进行下载或者通过官方提供的shell脚本进行下载):
Step 2:检验是否安装成功
在开始页找到Anaconda Prompt,一般在Anaconda3的文件夹下,( Linux在终端下就行了)
Step 3:创建虚拟环境
Windows在Anaconda Prompt
进行
查看现存虚拟环境
查看已经安装好的虚拟环境,可以看到我们这里已经有三个环境存在了
conda env list
创建虚拟环境
在深度学习和机器学习中,我们经常会创建不同版本的虚拟环境来满足我们的一些需求。下面我们介绍创建虚拟环境的命令。
conda create -n env_name python==version
# 注:将env_name 替换成你的环境的名称,version替换成对应的版本号
安装包
conda install package_name
# 注:package_name 替换成对应的包的名称,eg: pandas
卸载包
conda remove package_name
# 注:package_name 替换成对应的包的名称,eg: pandas
显示所有安装的包
conda list
删除虚拟环境命令
conda remove -n env_name --all
# 注:env_name 替换成对应的环境的名称
激活环境命令
conda activate env_name
# 注:env_name 替换成对应的环境的名称
退出当前环境
conda deactivate
关于更多的命令,我们可以查看Anaconda/miniconda官方提供的命令,官网链接:点击这里
Step 4:换源
在安装package时,我们经常会使用pip install package_name
和conda install package_name
的命令,但是一些package下载速度会很慢,因此我们需要进行换源,换成国内源,加快我们的下载速度。以下便是两种对应方式的永久换源。如果我们仅仅想为单次下载换源可以使用pip install package_name -i https://pypi.tuna.tsinghua.edu.cn/simple
进行下载。
pip换源
Windows:
1、文件管理器文件路径地址栏敲:%APPDATA%
回车,快速进入 C:\Users\电脑用户\AppData\Roaming
文件夹中
2、新建 pip 文件夹并在文件夹中新建 pip.ini
配置文件
3、我们需要在pip.ini
配置文件内容,我们可以选择使用记事本打开,输入以下内容,并按下ctrl+s保存,在这里我们使用的是豆瓣源为例子。
[global]
index-url = http://pypi.douban.com/simple
[install]
use-mirrors =true
mirrors =http://pypi.douban.com/simple/
trusted-host =pypi.douban.com
conda换源(清华源)官方换源帮助
Windows系统:
TUNA 提供了 Anaconda 仓库与第三方源的镜像,各系统都可以通过修改用户目录下的 .condarc
文件。Windows 用户无法直接创建名为 .condarc
的文件,可先执行conda config --set show_channel_urls yes
生成该文件之后再修改。
完成这一步后,我们需要修改C:\Users\User_name\.condarc
这个文件,打开后将文件里原始内容删除,将下面的内容复制进去并保存。
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
这一步完成后,我们需要打开Anaconda Prompt
运行 conda clean -i
清除索引缓存,保证用的是镜像站提供的索引。
查看显卡
该部分如果仅仅只有CPU或者集显的小伙伴们可以跳过该部分
windows:
我们可以通过在cmd/terminal中
输入nvidia-smi
、使用任务管理器查看自己是否有NVIDIA的独立显卡及其型号
[
安装PyTorch
Step 1:登录PyTorch官网
Step 2:Install
这个界面我们可以选择本地开始(Start Locally),云开发(Cloud Partners),以前的Pytorch版本(Previous PyTorch Versions),移动端开发(Mobile),在此处我们需要进行本地安装。
Step 3:选择命令
我们需要结合自己情况选择命令并复制下来,然后使用conda下载或者pip下载(建议conda安装)
打开Terminal
,输入conda activate env_name
(env_name 为你对应的环境名称),切换到对应的环境下面,我们就可以进行PyTorch的安装了。
注:
-
Stable代表的是稳定版本,Preview代表的是先行版本
-
可以结合电脑是否有显卡,选择CPU版本还是CUDA版本,CUDA版本需要拥有独显且是NVIDIA的GPU
-
官方建议我们使用Anaconda/miniconda来进行管理
-
关于安装的系统要求
- Windows:
- Windows 7及更高版本;建议使用Windows 10或者更高的版本
- Windows Server 2008 r2 及更高版本
- Linux:以常见的CentOS和Ubuntu为例
- CentOS, 最低版本7.3-1611
- Ubuntu, 最低版本 13.04,这里会导致cuda安装的最大版本不同
- macOS:
- macOS 10.10及其以上
- Windows:
-
有些电脑所支持的cuda版本<10.2,此时我们需要进行手动降级,即就是cudatoolkit = 你所适合的版本,但是这里需要注意下一定要保持PyTorch和cudatoolkit的版本适配。查看Previous PyTorch Versions | PyTorch
Step 4:在线下载
如果我们使用的Anaconda Prompt
进行下载的话,我们需要先通过conda activate env_name
,激活我们的虚拟环境中去,再输入命令。
注: 我们需要要把下载指令后面的 -c pytorch 去掉以保证使用清华源下载,否则还是默认从官网下载。
Step 5:离线下载
Windows:
在安装的过程中,我们可能会出现一些奇奇怪怪的问题,导致在线下载不成功,我们也可以使用离线下载的方法进行。
下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
通过上面下载地址,我们需要下载好对应版本的pytorch和 torchvision 包,然后打开Anaconda Prompt
/Terminal
中,进入我们安装的路径下。
cd package_location
conda activate env_name
接下来输入以下命令安装两个包
conda install --offline pytorch压缩包的全称(后缀都不能忘记)
conda install --offline torchvision压缩包的全称(后缀都不能忘记)
Step 6:检验是否安装成功
进入所在的虚拟环境,紧接着输入python
,在输入下面的代码。
import torch
torch.cuda.is_available()
False
这条命令意思是检验是否可以调用cuda,如果我们安装的是CPU版本的话会返回False,能够调用GPU的会返回True。一般这个命令不报错的话就证明安装成功。
下周计划
继续学习python,学习pytorch基本使用以及深度学习相关基础知识