pytorch的各種乘法操作,點乘和矩陣乘

2021-10-02 07:39:02 字數 653 閱讀 8964

點乘

相應點相乘,x.mul(y) ,即點乘操作,點乘不求和操作,又可以叫作hadamard product (哈達瑪積:相同位置的相乘,形狀保持不變)

import torch

x = torch.tensor([[3,3],[3,3]])

y = x*x

#x.dot(x)

z = torch.mul(x,x)

#x.mul(x)

print(y)

print(z)

顯示結果:

tensor([[9, 9], [9, 9]])

tensor([[9, 9], [9, 9]])

矩陣乘法

就是傳統的矩陣乘法,有三種寫法

import torch

x = torch.tensor([[3,3],[3,3]])

y = torch.mm(x,x) #等效於 y=x.matmul(x)

#x.mm(x)

z=x@x

print(y)

print(z)

顯示結果:

tensor([[18, 18], [18, 18]])

tensor([[18, 18], [18, 18]])

pytorch中的乘法

總結 按元素相乘用torch.mul,二維矩陣乘法用torch.mm,batch二維矩陣用torch.bmm,batch 廣播用torch.matmul if name main a torch.tensor 1 2,3 b torch.arange 0,12 reshape 4 3 c torch...

pytorch的各種錯誤集錦

no module named swigfaiss 原因 沒有安裝依賴包,而且我直接用pip install faiss安裝,沒採用官方推薦的conda方法 解決方法 1 刪除原本安裝的faiss 2.conda install mkl,openblas swig 3.用conda安裝faiss c...

Pytorch 的 常用 操作

一些簡單的操作 torch.view torch.tensor torch.expand bs,1 matrix.topk number,dim 1,largest true,sorted true matrix.zero scatter 1,label,1 matrix變為 one hot 標籤 ...