網站首頁 編程語言 正文
我們很容易用numpy()和from_numpy()將Tensor和NumPy中的數組相互轉換。但是需要注意的一點是: 這兩個函數所產生的Tensor和NumPy中的數組共享相同的內存(所以他們之間的轉換很快),改變其中一個時另一個也會改變!
1. Tensor 轉 NumPy
a = torch.ones(6)
b = a.numpy()
print(a, b)
a += 1
print(a, b)
b += 1
print(a, b)
tensor([1., 1., 1., 1., 1., 1.]) [1. 1. 1. 1. 1. 1.]
tensor([2., 2., 2., 2., 2., 2.]) [2. 2. 2. 2. 2. 2.]
tensor([3., 3., 3., 3., 3., 3.]) [3. 3. 3. 3. 3. 3.]
2. NumPy 數組轉 Tensor
import numpy as np
a = np.ones(7)
b = torch.from_numpy(a)
print(a, b)
a += 1
print(a, b)
b += 1
print(a, b)
[1. 1. 1. 1. 1. 1. 1.] tensor([1., 1., 1., 1., 1., 1., 1.], dtype=torch.float64)
[2. 2. 2. 2. 2. 2. 2.] tensor([2., 2., 2., 2., 2., 2., 2.], dtype=torch.float64)
[3. 3. 3. 3. 3. 3. 3.] tensor([3., 3., 3., 3., 3., 3., 3.], dtype=torch.float64)
3. torch.tensor() 將 NumPy 數組轉換成 Tensor
直接用torch.tensor()將NumPy數組轉換成Tensor,該方法總是會進行數據拷貝,返回的Tensor和原來的數據不再共享內存。
import numpy as np
a = np.ones((2,3))
c = torch.tensor(a)
a += 1
print('a:',a)
print('c:',c)
print(id(a)==id(c))
a: [[2. 2. 2.]
[2. 2. 2.]]
c: tensor([[1., 1., 1.],
[1., 1., 1.]], dtype=torch.float64)
False
原文鏈接:https://blog.csdn.net/qq_40630902/article/details/119574712
相關推薦
- 2023-10-16 element--el-input限制輸入為數字且必須大于0
- 2022-12-24 Android自定義View實現繪制水波浪溫度刻度表_Android
- 2023-03-01 Golang?Makefile示例深入講解使用_Golang
- 2022-08-02 Shell判斷字符串變量是否為空的方法實現_linux shell
- 2022-11-12 Redis主從復制操作和配置詳情_Redis
- 2022-12-06 Python中八種數據導入方法總結_python
- 2022-07-29 Android錄音功能的實現以及踩坑實戰記錄_Android
- 2022-10-24 Android性能優化之ViewPagers?+?Fragment緩存優化_Android
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支