最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pytorch torch運(yùn)算操作示例詳解

 更新時間:2024年06月18日 10:07:26   作者:九磅十五便士丶  
這篇文章主要介紹了pytorch torch運(yùn)算的相關(guān)知識,本文通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧

torch運(yùn)算

基本運(yùn)算

創(chuàng)建張量:

import torch
# 直接從列表或數(shù)組創(chuàng)建張量
x = torch.tensor([1, 2, 3])

創(chuàng)建特定值的張量:

# 全零張量
zeros = torch.zeros(3, 3)
# 全一張量
ones = torch.ones(3, 3)
# 單位張量(對角線為1,其余為0)
eye = torch.eye(3)
# 隨機(jī)張量
rand = torch.rand(3, 3)
# 從均值為0,標(biāo)準(zhǔn)差為1的正態(tài)分布中抽取的隨機(jī)張量
randn = torch.randn(3, 3)

創(chuàng)建等差數(shù)列張量:

# 從0到10(不包括10)的等差數(shù)列,步長為2
arange = torch.arange(0, 10, 2)

創(chuàng)建特定間隔的數(shù)列張量:

# 從0到10均勻分布的5個數(shù)
linspace = torch.linspace(0, 10, 5)

2.加法和減法:

# 加法
z = x + y  # torch.add(x, y)
print(z)  # 輸出: tensor([5, 7, 9])
# 減法
z = x - y  # torch.sub(x, y)
print(z)  # 輸出: tensor([-3, -3, -3])

3.乘法和除法:

# 元素乘法
z = x * y  # torch.mul(x, y)
print(z)  # 輸出: tensor([ 4, 10, 18])
# 元素除法
z = x / y  # torch.div(x, y)
print(z)  # 輸出: tensor([0.2500, 0.4000, 0.5000])

4.矩陣乘法:

a = torch.tensor([[1, 2], [3, 4]])
b = torch.tensor([[5, 6], [7, 8]])
# 矩陣乘法
z = torch.matmul(a, b)  # 或者 a @ b
print(z)  # 輸出: tensor([[19, 22], [43, 50]])

形狀操作

1.改變形狀:view()

a = torch.tensor([[1, 2, 3], [4, 5, 6]])
# 改變形狀
b = a.view(3, 2)
print(b)
# 輸出:
# tensor([[1, 2],
#         [3, 4],
#         [5, 6]])

自動調(diào)整size (參數(shù)-1)

view中一個參數(shù)指定為-1,代表自動調(diào)整這個維度上的元素個數(shù),以保證元素的總數(shù)不變。

import torch
x1 = torch.arange(0,16)
print(x1)
#a1: tensor([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15])
------------------------------------------------------------------------------------------------------   
x2 = x1.view(-1, 16)
x3 = x1.view(-1, 8)
x4 = x1.view(-1, 4)
x5 = x1.view(-1, 2)
print(x2)
print(x3)
print(x4)
print(x5)
x2: tensor([[ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15]])
x3: tensor([[ 0,  1,  2,  3,  4,  5,  6,  7],
        [ 8,  9, 10, 11, 12, 13, 14, 15]])
x4: tensor([[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11],
        [12, 13, 14, 15]])
x5: tensor([[ 0,  1],
        [ 2,  3],
        [ 4,  5],
        [ 6,  7],
        [ 8,  9],
        [10, 11],
        [12, 13],
        [14, 15]])

2.拼接:

x = torch.tensor([[1, 2], [3, 4]])
y = torch.tensor([[5, 6], [7, 8]])
# 沿著0軸拼接(垂直拼接)
z = torch.cat((x, y), dim=0)
print(z)
# 輸出:
# tensor([[1, 2],
#         [3, 4],
#         [5, 6],
#         [7, 8]])
# 沿著1軸拼接(水平拼接)
z = torch.cat((x, y), dim=1)
print(z)
# 輸出:
# tensor([[1, 2, 5, 6],
#         [3, 4, 7, 8]])

3.切片:

a = torch.tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 切片
b = a[:, 1]  # 第二列
print(b)  # 輸出: tensor([2, 5, 8])

數(shù)學(xué)運(yùn)算

求和:sum()

x = torch.tensor([1, 2, 3, 4])
# 求和
sum_x = torch.sum(x)
print(sum_x)  # 輸出: tensor(10)

均值:mean()

# 均值
mean_x = torch.mean(x.float())  # 轉(zhuǎn)換為浮點(diǎn)數(shù)類型
print(mean_x)  # 輸出: tensor(2.5000)

最大值和最小值:max(),min()

# 最大值
max_x = torch.max(x)
print(max_x)  # 輸出: tensor(4)
# 最小值
min_x = torch.min(x)
print(min_x)  # 輸出: tensor(1)

邏輯運(yùn)算

比較運(yùn)算:

x = torch.tensor([1, 2, 3])
y = torch.tensor([2, 2, 2])
# 大于
print(x > y)  # 輸出: tensor([False, False,  True])
# 小于
print(x < y)  # 輸出: tensor([ True, False, False])

邏輯與、或:

a = torch.tensor([True, False, True])
b = torch.tensor([False, False, True])
# 邏輯與
c = torch.logical_and(a, b)
print(c)  # 輸出: tensor([False, False,  True])
# 邏輯或
c = torch.logical_or(a, b)
print(c)  # 輸出: tensor([ True, False,  True])

常見的高級操作

廣播機(jī)制:

a = torch.tensor([1, 2, 3])
b = torch.tensor([[1], [2], [3]])
# 廣播機(jī)制
c = a + b
print(c)
# 輸出:
# tensor([[2, 3, 4],
#         [3, 4, 5],
#         [4, 5, 6]])

自動梯度計算:

x = torch.tensor([1.0, 2.0, 3.0], requires_grad=True)
# 前向傳播
y = x + 2
z = y * y * 2
out = z.mean()
# 反向傳播
out.backward()
print(x.grad)  # 輸出: tensor([4.6667, 6.0000, 7.3333])

隨機(jī)數(shù)生成

從標(biāo)準(zhǔn)正態(tài)分布中生成隨機(jī)張量:

randn_tensor = torch.randn(3, 3) # 生成一個形狀為 (3, 3) 的隨機(jī)張量,服從標(biāo)準(zhǔn)正態(tài)分布
print(randn_tensor)
#tensor([[ 1.2335, -0.3941,  0.8990],
#        [ 0.0470, -1.2671,  0.3248],
#       [-0.4062, -0.6862,  0.1314]])

生成隨機(jī)排列:

randperm_tensor = torch.randperm(10)  # 生成一個從 0 到 9 的隨機(jī)排列
print(randperm_tensor)
#tensor([2, 0, 5, 1, 8, 6, 3, 4, 7, 9])

生成等差數(shù)列張量:

arange_tensor = torch.arange(0, 10, 2) # 生成從 0 到 10(不包括 10)的等差數(shù)列,步長為 2
print(arange_tensor)
#tensor([0, 2, 4, 6, 8])

到此這篇關(guān)于pytorch torch運(yùn)算操作示例詳解的文章就介紹到這了,更多相關(guān)pytorch torch運(yùn)算內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python系統(tǒng)交互庫解析過程

    Python系統(tǒng)交互庫解析過程

    本文介紹了Python中os、sys、subprocess等模塊及paramiko、Fabric、socket、requests等庫的核心功能,涵蓋文件操作、系統(tǒng)交互、進(jìn)程管理、網(wǎng)絡(luò)通信、數(shù)據(jù)處理等場景,并強(qiáng)調(diào)了安全使用YAML等格式的注意事項
    2025-07-07
  • Pycharm更換安裝源與添加第三方庫方法詳解

    Pycharm更換安裝源與添加第三方庫方法詳解

    在使用Pycharm的時候不免要下載許多的第三方庫,特別是移植過來的項目更是一個文件的依賴包需要下載而Pycharm默認(rèn)的官方源下載比較慢,所以下面這篇文章主要給大家介紹了關(guān)于Pycharm更換安裝源與添加第三方庫的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • Django高并發(fā)負(fù)載均衡實(shí)現(xiàn)原理詳解

    Django高并發(fā)負(fù)載均衡實(shí)現(xiàn)原理詳解

    這篇文章主要介紹了Django高并發(fā)負(fù)載均衡實(shí)現(xiàn)原理詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • python實(shí)現(xiàn)數(shù)字炸彈游戲

    python實(shí)現(xiàn)數(shù)字炸彈游戲

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)數(shù)字炸彈游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • Python 錯誤和異常代碼詳解

    Python 錯誤和異常代碼詳解

    這篇文章主要介紹了Python 錯誤和異常代碼詳解,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Python只用40行代碼編寫的計算器實(shí)例

    Python只用40行代碼編寫的計算器實(shí)例

    這篇文章主要介紹了Python只用40行代碼編寫的計算器,結(jié)合完整實(shí)例形式分析了Python計算器的具體實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-05-05
  • Python小技巧練習(xí)分享

    Python小技巧練習(xí)分享

    這篇文章主要介紹了Python小技巧練習(xí)分享,文章基于python的相關(guān)內(nèi)容展開詳細(xì)的python小技巧內(nèi)容,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • Django 路由控制的實(shí)現(xiàn)代碼

    Django 路由控制的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Django 路由控制的實(shí)現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Python?JMESPath庫輕松操作JSON進(jìn)行數(shù)據(jù)查詢方法實(shí)例

    Python?JMESPath庫輕松操作JSON進(jìn)行數(shù)據(jù)查詢方法實(shí)例

    這篇文章主要為大家介紹了Python?JMESPath庫輕松操作JSON方法實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 淺談Python程序與C++程序的聯(lián)合使用

    淺談Python程序與C++程序的聯(lián)合使用

    這篇文章主要介紹了淺談Python程序與C++程序的聯(lián)合使用,主要包括6中方案,需要的朋友可以參考下
    2015-04-04

最新評論

巴楚县| 庄河市| 乌苏市| 永顺县| 察雅县| 尼勒克县| 池州市| 宁陕县| 鄂温| 张家口市| 黔西| 宽甸| 建水县| 祥云县| 惠水县| 民权县| 东海县| 家居| 南丹县| 黑河市| 剑河县| 原阳县| 万荣县| 那坡县| 克什克腾旗| 温宿县| 罗江县| 昌黎县| 临沭县| 出国| 平度市| 巴彦淖尔市| 偏关县| 缙云县| 清原| 普陀区| 南川市| 桦川县| 浦县| 阿图什市| 商河县|