学习pytorch记录

目录

安装python的pytorch

然后接下来,开始在pycharm(对python很好的IDE)里面进行pytorch的学习。

首先是张量tensor的学习

预备的数学知识

首先是贝叶斯公式:

最大似然估计:

激活函数sigmoid与relu

安装python的pytorch

1、首先是配置环境anconda选择2.3.1的版本(真心称赞这个andonda的好用)

 为了避免和其他配置环境发生冲突,另外配置了一个python3.8的环境用来安装pytorch。

输入(在使用anconda命令之前,可以先anconda activate base激活环境)

conda --version

conda create -n pytorch python=3.8

conda info --envs

输入conda info --envs,即可查看环境设置

 然后输入conda activate pytorch进入刚创建好的环境。(注意前面的()是否发生了改变

输入nvidia-smi,即可查看可使用的CUDA版本(我的是CUDA Version: 11.7),CUDA是为了使用GPU而安装的,而GPU可以加速运算,节约时间。

PyTorch--安装地址,进去后会看到

选择下面的Previous versions以前的版本,主要是最新版本不一定好

最后我选择了这个进行下载。

conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch

完成后,显示如下:

 使用

conda list

去查询安装包

 发现安装成功了!也可以利用

import torch

torch.cuda.is_available()

如果返回True,则说明配置完成了。

记得先python,进入环境,不然会报红色的错误。

另外,如果安装pytorch速度慢可以走镜像,或者挂梯子。

参考镜像如下:

 清华:https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/

更改一哈代码,即可

conda install pytorch torchvision torchaudio –c 镜像地址
Conda install cudatoolkit=版本 –c 镜像地址

以上内容,为参考博主的文章链接:

2023最新pytorch安装教程,简单易懂,面向初学者(Anaconda+GPU)_pytorch安装、_时宇羽然的博客-CSDN博客

然后接下来,开始在pycharm(对python很好的IDE)里面进行pytorch的学习。

首先安装了pycharm,具体安装方式,本文不在阐述,很久以前安装的,我也忘了。

 设置好环境

 

 查看编译器,说明还没有将之前的pytorch的环境导入进来,那在这里设置一哈

先点击show all进去

 发现并没有我们之前创建的python环境,点击旁边的+号

现在可以看到,pytorch的环境配置进来了

 然后再在外面选择好这个编译器,即可使用它的环境。

所有的环境和配置都搭建好了,正式开始学习pytorch

对于pytorch。我是需要用它进行深度学习,来训练模型,然后将模型放入移动端c++中。

大体的流程是训练得到的模型文件(类似pt)转出为onnx文件,然后在C++中导入,并解析onnx文件,进行再推理,然后移植到QT中,打包成exe文件发布。

因此,首先来了解pytorch的常用工具包

torch :类似 NumPy 的张量库,支持GPU;
torch.autograd :基于 type 的自动区别库,支持 torch 之中的所有可区分张量运行;
torch.nn :为最大化灵活性而设计,与 autograd 深度整合的神经网络库;
torch.optim:与 torch.nn 一起使用的优化包,包含 SGD、RMSProp、LBFGS、Adam 等标准优化方式;
torch.multiprocessing: python 多进程并发,进程之间 torch Tensors 的内存共享;
torch.utils:数据载入器,具有训练器和其他便利功能;
torch.legacy(.nn/.optim) :出于向后兼容性考虑,从 Torch 移植来的 legacy 代码;

写pytorch代码的方法和步骤

1、编写自己的深度学习网络架构

2、编写要训练的数据的便签和文件路径索引

3、将数据放入搭建好的网络模型中

首先是张量tensor的学习

tensor使用的api接口
方法名 说明
tensor() 直接构造张量,支持list和numpy数组的索引方式
eye(row,column) 创建指定行数row&列数column的单位tensor(生成的是单位阵)
linspace(start,end,count) 在[start,end]上创建count个元素的一维tensor
logspace(start,end,count) 在[10s,10e]上创建c个元素的一维tensor
ones(size) 返回指定shape的tensor,元素初始值为1
zeros(size) 返回指定shape的tensor,元素初始值为0
ones_like(t) 返回一个tensor,shape与t相同,且元素初始值为1
zeros_like(t) 返回一个tensor,shape与t相同,且元素初始值为1
arange(s,e,sep) 在区间[s,e)上以间隔sep生成一个序列张量

 首先创建一个python文件输入以上代码,产生了如下错误:

 发现是自己没有安装numpy,于是去安装了,这里采用的清华镜像去安装。

 再次运行程序,发现红色部分就消失了。

预备的数学知识

首先是贝叶斯公式:

最大似然估计:

激活函数sigmoid与relu

猜你喜欢

转载自blog.csdn.net/Helloorld_1/article/details/129743583