我是靠谱客的博主 干净钢笔,最近开发中收集的这篇文章主要介绍Ubuntu16.04 系统下的pytorch库(cpu版)安装与demo测试,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

PyTorch是一个快速,灵活的实验深度学习框架[1]。下面介绍Ubuntu16.04 系统及Anaconda环境下,对于pytorch库(cpu版)的安装与demo测试。

系统环境:

  • Ubuntu16.04
  • Anaconda2-5.2.0-Linux-x86_64 [2]

pytorch 安装及环境配置

1、源码下载

git clone --recursive https://github.com/pytorch/pytorch 

2、安装

  • 打开,并进入刚下载的源码文件夹
cd ./pytorch

  • 执行安装文件 setup.py
python setup.py install

注意:执行该命令时,可能会提示权限问题,你可使用chmod命令[3]将该问题解决。例如我的pytorch源码文件夹路径是:~/Downloads/pytorch。通过执行以下命令即可解决权限问题:

chmod 777 ~/Downloads/pytorch

如需了解更多有关chmod命令,可以参考文档[1]。


  • pytorch包导入测试

在Python环境下输入命令:

import torch

如果在导入pytorch包没有提示错误,就说明安装成功了。

注意:本人使用该导入命令时,提示错误:“ImportError: No module named _C”。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "torch/__init__.py", line 78, in <module>
    from torch._C import *
ImportError: No module named _C

解决办法:关闭该终端窗口,打开新的终端窗口输入导入pytorch包测试即可通过。


demo测试

# -*- coding: utf-8 -*-

import torch


dtype = torch.float
device = torch.device("cpu")
# dtype = torch.device("cuda:0") # Uncomment this to run on GPU

# N is batch size; D_in is input dimension;
# H is hidden dimension; D_out is output dimension.
N, D_in, H, D_out = 64, 1000, 100, 10

# Create random input and output data
x = torch.randn(N, D_in, device=device, dtype=dtype)
y = torch.randn(N, D_out, device=device, dtype=dtype)

# Randomly initialize weights
w1 = torch.randn(D_in, H, device=device, dtype=dtype)
w2 = torch.randn(H, D_out, device=device, dtype=dtype)

learning_rate = 1e-6
for t in range(500):
    # Forward pass: compute predicted y
    h = x.mm(w1)
    h_relu = h.clamp(min=0)
    y_pred = h_relu.mm(w2)

    # Compute and print loss
    loss = (y_pred - y).pow(2).sum().item()
    print(t, loss)

    # Backprop to compute gradients of w1 and w2 with respect to loss
    grad_y_pred = 2.0 * (y_pred - y)
    grad_w2 = h_relu.t().mm(grad_y_pred)
    grad_h_relu = grad_y_pred.mm(w2.t())
    grad_h = grad_h_relu.clone()
    grad_h[h < 0] = 0
    grad_w1 = x.t().mm(grad_h)

    # Update weights using gradient descent
    w1 -= learning_rate * grad_w1
    w2 -= learning_rate * grad_w2

输出结果如下:

(0, 33276068.0)
(1, 33026900.0)
(2, 35287920.0)
(3, 33936460.0)
(4, 26412418.0)
(5, 16149083.0)
......
......
......
(489, 4.269163400749676e-05)
(490, 4.2141629819525406e-05)
(491, 4.168449595454149e-05)
(492, 4.131443711230531e-05)
(493, 4.065494067617692e-05)
(494, 3.98996562580578e-05)
(495, 3.9512655348517e-05)
(496, 3.895666668540798e-05)
(497, 3.858671334455721e-05)
(498, 3.7854093534406275e-05)
(499, 3.753306737053208e-05)

参考链接

[1] PyTorch官网教程

https://pytorch.org/tutorials/index.html

[2]Anaconda镜像下载:

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda2-5.2.0-Linux-x86_64.sh

[3]chmod命令

https://blog.csdn.net/u010636181/article/details/80678758

更多精彩项目及分享,请关注我的个人公众号:gbxiao992
这里写图片描述

最后

以上就是干净钢笔为你收集整理的Ubuntu16.04 系统下的pytorch库(cpu版)安装与demo测试的全部内容,希望文章能够帮你解决Ubuntu16.04 系统下的pytorch库(cpu版)安装与demo测试所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部