PyTorch安裝及基礎


PyTorch安裝:

  https://pytorch.org/get-started/locally/ 

PyTorch基礎:

  張量:包括零維(常數),一維(數組/列表/元組),二維(矩陣)......

  張量的創建:

    torch.tensor(list/array/tuple)  #把數組/列表/集合轉化為張量

    torch.ones([2,3])  #創建形狀為[2,3]的,元素均為1的張量

    torch.zeros([2,3])  #創建形狀為[2,3]的,元素均為0的張量

    torch.empty([2,3])  #創建形狀為[2,3]的,元素服從正態分布的張量

    torch.rand([2,3])  #創建形狀為[2,3]的,元素為0-1的張量

    torch.randn([2,3])  #創建一個形狀為[2,3],元素均值為0標准差為1的數組

    torch.randint(low,high,size=[])  生成一個指定size,元素為low-high見隨機整數的張量

  tensor屬性:

    tensor.item()  tensor中只有一個元素時用於獲取元素(多個元素會報錯)

    tensor與numpy的轉換:

      np_ts = tensor.numpy()

      ts = torch.tensor(np_ts)

    tensor.size(dim)  tensor的形狀(可指定方向)

    tensor.view(size)  改變tensor形狀

    tensor.t(0,1)  tensor的轉置(可指定維度)

  tensor切片與索引:

    類同於numpy

  tensor方法:

    tensor.max(dim)  獲取tensor中最大的元素(可指定維度,會同時返回索引)

  tensor數據類型:

    tensor.dtype  查看tensor的數據類型

    tensor.int()  轉為int32

    tensor.long()  轉為int64

    tensor.float()  轉為float32

    tensor.double()  轉為float64

  tensor計算:

    tensor+/-/*//tensor  形狀相同的矩陣對應位置進行操作(若形狀不同,滿足廣播條件,可進行廣播后操作)

    tensor+/-/*//數字  

    tensor1.add_(tensor2)  將相加后的tensor賦值為tensor1

  CUDA類型:

    device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")

    torch.tensor([2,3],device)  #創建類型為cuda的tensor

    tensor.to(device)  #將已創建好的tensor轉為cuda類型的tensor

    tensor.cpu()  #將cuda類型的tensor轉化為cpu類型的tensor


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM