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

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

 更新時(shí)間:2024年06月18日 10:07:26   作者:九磅十五便士丶  
這篇文章主要介紹了pytorch torch運(yùn)算的相關(guān)知識(shí),本文通過(guò)示例代碼給大家介紹的非常詳細(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)
# 單位張量(對(duì)角線為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ù)列,步長(zhǎng)為2
arange = torch.arange(0, 10, 2)

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

# 從0到10均勻分布的5個(gè)數(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]])

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

view中一個(gè)參數(shù)指定為-1,代表自動(dòng)調(diào)整這個(gè)維度上的元素個(gè)數(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ù)類(lèi)型
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])

常見(jiàn)的高級(jí)操作

廣播機(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]])

自動(dòng)梯度計(jì)算:

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) # 生成一個(gè)形狀為 (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)  # 生成一個(gè)從 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ù)列,步長(zhǎng)為 2
print(arange_tensor)
#tensor([0, 2, 4, 6, 8])

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

相關(guān)文章

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

    Python系統(tǒng)交互庫(kù)解析過(guò)程

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

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

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

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

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

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

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

    Python 錯(cuò)誤和異常代碼詳解

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

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

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

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

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

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

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

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

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

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

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

最新評(píng)論

类乌齐县| 永城市| 金华市| 临城县| 鞍山市| 滦南县| 临泽县| 罗城| 墨竹工卡县| 余庆县| 巫溪县| 莱州市| 西城区| 思南县| 武城县| 本溪| 班玛县| 瓦房店市| 门源| 江川县| 民权县| 邯郸县| 南陵县| 资溪县| 五莲县| 五峰| 仙桃市| 兴仁县| 舒城县| 中西区| 鲜城| 贵港市| 呼和浩特市| 保靖县| 大英县| 垦利县| 吉木乃县| 芦山县| 舟曲县| 揭西县| 宝坻区|