pytorch与matlab,Pytorch安装 与入门链接

Pytorch安装 与入门链接

发布时间:2018-03-13 15:07,

浏览次数:586

, 标签:

Pytorch

Pytorch安装

1)先是Anaconda安装配置,参照原来一篇博客

2)Git Clone源代码

进入虚拟环境后,采用conda安装:conda install pytorch torchvision -c soumith

如果不成功则:

那么最后还有一个选择,install from source,果断在GitHub上找到PyTorch的repository:

https://github.com/pytorch/pytorch

*

接下来需要做的就是将PyTorch最新的源代码取到本地:

gitclone https://github.com/pytorch/pytorch.git

离线安装:

http://pytorch.org/      选择合适版本,例:

http://download.pytorch.org/whl/cu90/torch-0.3.1-cp36-cp36m-linux_x86_64.whl

下载下来再:pip install torch-0.3.1-cp36-cp36m-linux_x86_64.whl

3)测试

进入python模式下,看能否导入torch成功:$ python > import torch

4)Install from Source

根据PyTorch源代码的readme中的安装步骤,我们要先配置环境变量CMAKE_PREFIX_PATH,打开~/.bashrc (vi ~/.bashrc

)输入:

export CMAKE_PREFIX_PATH=[anaconda root directory]

* 1

其中“[anaconda root directory]”指的是Anaconda的安装文件夹下的bin文件夹。在我的Ubuntu12.04上,安装路径如下:

export CMAKE_PREFIX_PATH=/home/data/liangxiaoyun/anaconda2/bin

* 1

另外由于我的GPU不支持CUDA,只能安装CPU部分,所以还需要设置环境变量NO_CUDA为1:

export NO_CUDA=1

* 1

在完成上述两个环境变量配置后需要记得这一步,使环境变量生效:

source ~/.bashrc

* 1

然后,我们需要安装PyTorch的依赖库:

conda install numpy pyyaml mkl setuptools cmake gcc cffi

* 1

最后,一切准备就绪!马上进入愉快的编译安装过程:

python setup.py install

* 1

大概十分钟左右,提示安装成功,马上进入Python试一试:

Python 3.5.2 |Anaconda 4.2.0 (64-bit)| (default, Jul 2 2016, 17:53:06) [GCC 4.4

.7 20120313 (Red Hat 4.4.7-1)] on linux Type "help", "copyright", "credits" or

"license" for more information. >>> import torch >>> x = torch.rand(5,3) >>>

print(x)0.0592 0.4292 0.5637 0.6365 0.2012 0.5649 0.2594 0.8850 0.5157 0.0689

0.4914 0.8834 0.3978 0.7032 0.6879 [torch.FloatTensor of size 5x3]

可以看到import torch可以成功,表示PyTorch的安装完成!仔细一看PyTorch里面的数据操作和Matlab挺像的,方便上手。

2.TorchVision安装

TorchVision为PyTorch提供视频和图像方面的支持,包括数据库和模型等。安装好了之后可以很方便地导入很多图像数据库,比如cifar-10。下载地址为:

https://pypi.python.org/pypi/torchvision/0.1.8

* 1

我们点击Download下载whl文件,然后在Anaconda的环境中启动pip进行安装:

pip install torchvision-0.1.8-py2.py3-none-any.whl

* 1

以上方法出错,则:

Anaconda:

conda install torchvision -c pytorch

至此,TorchVision就已经安装成功!

<>3. 小试牛刀

PyTorch官网的入门教程中有一个有关图像分类的,我们尝试着完成这个教程:

http://pytorch.org/tutorials/beginner/blitz/cifar10_tutorial.html

* 1

在页面的最下面有代码的下载链接,选择下载“cifar10_tutorial.py”,直接在终端中运行程序:

python cifar10_tutorial.py

* 1

出现以下提示,正在下载cifar10数据库。

Downloading http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz to

./data/cifar-10-python.tar.gz

* 1

等了很久还是没下载好,我选择用其他下载工具譬如迅雷,直接下载cifar-10-python.tar.gz,大小接近180M,怪不得这么久。

然后在data文件夹里,对数据库解压:

tar -xzvf cifar-10-python.tar.gz

解压好了再选择运行代码cifar10_tutorial.py,提示数据验证通过:

Files already downloaded and verified Files already downloaded and verified

接下来就是train和test的输出:

[1, 2000] loss: 2.223 [1, 4000] loss: 1.853 [1, 6000] loss: 1.694 [1, 8000]

loss:1.592 [1, 10000] loss: 1.521 [1, 12000] loss: 1.472 [2, 2000] loss: 1.392 [

2, 4000] loss: 1.359 [2, 6000] loss: 1.335 [2, 8000] loss: 1.313 [2, 10000]

loss:1.316 [2, 12000] loss: 1.276 Finished Training GroundTruth: cat ship ship

plane Predicted: frog ship ship ship Accuracyof the network on the 10000 test

images:53 % Accuracy of plane : 32 % Accuracy of car : 75 % Accuracy of bird :

51 % Accuracy of cat : 19 % Accuracy of deer : 49 % Accuracy of dog : 28 %

Accuracyof frog : 70 % Accuracy of horse : 68 % Accuracy of ship : 80 % Accuracy

of truck : 56 %

结果和PyTorch的官方tutorial差不多,运行成功!

至此,PyTorch的安装、环境搭建以及安装后的代码测试就全部完成。按照这个步骤,相信你也可以很快开始PyTorch的开发!

入门建议

第一步 github的 tutorials

尤其是那个60分钟的入门。只能说比tensorflow简单许多. 另外jcjohnson 的Simple examples to introduce

PyTorch

也不错第二步 example 参考 pytorch/examples

实现一个最简单的例子(比如训练mnist )。第三步 通读doc PyTorch doc

尤其是autograd

的机制,和nn.module

,optim 等

相关内容。文档现在已经很完善,而且绝大部分文档都是作者亲自写的,质量很高。第四步 论坛讨论 PyTorch Forums

。论坛很活跃,而且质量很高,pytorch的维护者(作者)回帖很及时的。每天刷一刷帖可以少走很多弯路,避开许多陷阱,消除很多思维惯性.尤其看看那些阅读量高的贴,刷帖能从作者那里学会如何写出bug-free

clean and elegant 的代码。如果自己遇到问题可以先搜索一下,一般都能找到解决方案,找不到的话大胆提问,大家都很热心的。第五步 阅读源代码

fork

pytorch,pytorch-vision等。相比其他框架,pytorch代码量不大,而且抽象层次没有那么多,很容易读懂的。通过阅读代码可以了解函数和类的机制,此外它的很多函数,模型,模块的实现方法都如教科书般经典。还可以关注官方仓库的issue/pull

request, 了解pytorch开发进展,以及避坑。还可以加入 slack群组讨论,e-mail订阅等总之 pytorch入门很简单,代码很优雅,是最

Pythonic

的框架. 欢迎入坑。

推销一个教程:chenyuntc/pytorch-book

用notebook写的教程,里面还有很多有趣的例子,比如用GAN生成动漫头像,用CharRNN写唐诗,类Prisma的滤镜(风格迁移)和图像描述等

1. 关于如何照着example实现简单的例子, 做法是认真看几遍example的实现代码.理解透,然后自己从头写, 实现相同的模型,

实在卡住了写不下去可以看一下, 但是绝对不能copy and paste. 当你实现了一个简单的例子(比如tutorial 的 mnist)

基本上对pytorch的主要内容都有了大概的了解. 写的时候会涉及 dataset,nn.module, optim, loss等许多模块, 也算是加深理解.

用pytorch 写的第一个模型是DCGAN , 用ipython notebook写的GitHub-chenyuntc/pytorch-GAN

,

然后看到了新出的大作WGAN, 在DCGAN上做了一点点修改, 就实现了WGAN, 是入门最快的一次.2. 论坛的很多贴都是你以后可能遇到的问题 比如

如何FinetuneHow to perform finetuning in Pytorch?

如何从预训练好的网络中的某一层提取特征:How to extract features of an image from a trained model

论坛贴比较少, 我觉得其中一个原因是很多问题都不是问题,比如如何共享参数, 这个在tensorflow中有专门的一章讲解,

但是用pytorch写可能都不会意识到有这个问题---直接用就是了How to create model with sharing weight?

比如如何用在模型运行时实现条件判断--直接用if. 如何查看中间结果?--直接print. 如何修改参数--直接赋值.

相比于tensorflow,pytorch更接近python的写法.3. 关于如何阅读源代码: fork, clone ,然后用vscode打开---

大概浏览一下, 知道类, 模块之间的关系. 然后重点阅读一些经典函数的代码, 按ctrl单击调用的函数在不同文件中跳转, 了解函数调用关系.

此外torch-vision中很多模型如ResNet的实现也很简洁.4. 一些其它的例子:

* 50行实现GAN devnag/pytorch

* pytorch 资源合集 The Incredible PyTorch

* 加强版pytorch tutorial侧重NLP spro/practical-pytorch

* 利用LSTM学习梯度下降法等优化方法:ikostrikov/pytorch-meta-optimizer: A PyTorch

implementation of Learning to learn by gradient descent by gradient descent

* WGAN的官方实现martinarjovsky/WassersteinGAN

安利@莫烦

的PyTorch教程(视频+代码)详情见专栏文章等什么, 赶快抱紧 PyTorch 的大腿!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值