2、PyTorch的三个结构层次
- tensor:张量,多维数组,可在GPU上跑。
- variable:可记住tensor在计算图中的位置,可知道当前variable和之前variable的关系。
- module:神经网络的层次,如全连接层、卷积层。
PyTorch的安装
pip install torch
pip install torch==0.4.1.post2
T1方法
git clone https://github.com/pytorch/vision
cd vision
python setup.py install
T2方法
pip3 install http://download.pytorch.org/whl/cu80/torch-0.4.0-cp36-cp36m-win_amd64.whl
pip3 install torchvision
T3方法
pip install torch-0.4.0-cp36-cp36m-win_amd64.whl
pip install torchvision
1、20181114更新版本到 torch-0.4.1
pip3 install http://download.pytorch.org/whl/cu80/torch-0.4.1-cp36-cp36m-win_amd64.whl
pip3 install torchvision
(1)、测试
import torch
print(torch.__version__) #输出版本信息
print(torch.cuda.is_available()) #查看是否支持cuda
2、20200108更新版本到 torch 1.3.1
执行命令:
pip3 install torch===1.3.1 torchvision===0.4.2 -f https://download.pytorch.org/whl/torch_stable.html
或者
pip install torch-1.3.1-cp36-cp36m-win_amd64.whl
3、Anaconda内安装torch的whl文件更新版本到 torch 1.3.1
pip install D:\ProgramData\Anaconda3\envs\torch-1.3.1-cp36-cp36m-win_amd64.whl
4、Anaconda内安装torch的whl文件更新版本到 torch 1.0.0
pip install torch===1.0.0 torchvision===0.2.1 -f https://download.pytorch.org/whl/cu100/torch_stable.html
PyTorch的使用方法
相关文章
Pytorch之CNN:基于Pytorch框架实现经典卷积神经网络的算法(LeNet、AlexNet、VGG、NIN、GoogleNet、ResNet)——从代码认知CNN经典架构
0、Pytorch基础知识
1、PyTorch是一个提供两个高级功能的python包:
具有强GPU加速度的张量计算(如numpy)
深层神经网络建立在基于磁带的自动调整系统上
可以重用您最喜爱的python软件包,如numpy,scipy和Cython,以便在需要时扩展PyTorch。
2、PyTorch在细粒度级别是由以下组件组成的库:
torch 像NumPy这样的Tensor图书馆,拥有强大的GPU支持
torch.autograd 一种基于磁带的自动分类库,支持所有可区分的Tensor操作手电筒。pytorch的自动求导工具包在torch.autograd中。
torch.nn 一个神经网络库与autograd设计了最大的灵活性。pytorch神经网络构建很容易,主要使用的包是torch.nn这个包,可以尝试使用pytorch构建一个简单的二层神经网络结构。
torch.optim 一种与torch.nn一起使用的优化包,具有标准优化方法,如SGD,RMSProp,LBFGS,Adam等。
torch.multiprocessing python多处理,但是具有魔法内存共享的手电筒传感器跨过程。适用于数据加载和hogwild培训。
torch.utils DataLoader,Trainer等实用功能为方便起见 torch.legacy(.nn / .optim) 由于向后兼容性原因,已经从割炬移植的旧代码
1、Pytorch三行命令即可运算
2、Pytorch加载预训练模型
import torch
import torchvision
alexnet= torchvision.models.models.alexnet(pretrained=True)
vgg16 = torchvision.models.vgg16(pretrained=True)
resnet101 = torchvision.models.resnet101(pretrained=True)
resnet152 = torchvision.models.resnet152(pretrained=True)