Numpy array和Pytorch tensor的區別

1.Numpy array和Pytorch tensor的區別

筆記來源:
1.Comparison between Pytorch Tensor and Numpy Array
2.numpy.array
4.Tensors for Neural Networks, Clearly Explained!!!
5.What is a Tensor in Machine Learning?

1.1 Numpy Array

Numpy array can only hold elements of a single data type.

Create NumPy ndarray (1D array)

import numpy as np
arr_1D = np.array([1,2,3])
print(arr_1D)


Create NumPy ndarray (2D array)

import numpy as np
arr_2D = np.array([[1,2,3],[1,2,3],[1,2,3]])
print(arr_2D)


Create NumPy ndarray (3D array)

import numpy as np
arr_3D = np.array([[[1,2,3],[1,2,3],[1,2,3],],[[1,2,3],[1,2,3],[1,2,3],],[[1,2,3],[1,2,3],[1,2,3]]])
print(arr_3D)

1.2 Pytorch Tensor

A torch.Tensor is a multi-dimensional matrix containing elements of a single data type.
Pytorch tensors are similar to numpy arrays, but can also be operated on CUDA-capable Nvidia GPU.



0-dimensional Tensor

1-dimensional Tensor

2-dimensional Tensor

n-dimensional Tensor

1.3 Difference

1.Numpy arrays are mainly used in typical machine learning algorithms (such as k-means or Decision Tree in scikit-learn) whereas pytorch tensors are mainly used in deep learning which requires heavy matrix computation.


2.The numpy arrays are the core functionality of the numpy package designed to support faster mathematical operations. Unlike python’s inbuilt list data structure, they can only hold elements of a single data type. Library like pandas which is used for data preprocessing is built around the numpy array. Pytorch tensors are similar to numpy arrays, but can also be operated on CUDA-capable Nvidia GPU.The biggest difference between a numpy array and a PyTorch Tensor is that a PyTorch Tensor can run on either CPU or GPU.

3.Unlike numpy arrays, while creating pytorch tensor, it also accepts two other arguments called the device_type (whether the computation happens on CPU or GPU) and the requires_grad (which is used to compute the derivatives).

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/37820.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/37820.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/37820.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

arthas監控工具筆記(一)

文章目錄 啟動 math-game啟動 arthas查看 dashboard通過 thread 命令來獲取到math-game進程的 Main Class通過 jad 來反編譯 Main Class退出 arthas 界面linux服務器掛不上進程怎么辦? 核心表達式變量loader 本次調用類所在的 ClassLoaderclazz 本次調用類的 Class 引用method…

信息學奧賽初賽天天練-39-CSP-J2021基礎題-哈夫曼樹、哈夫曼編碼、貪心算法、滿二叉樹、完全二叉樹、前中后綴表達式轉換

PDF文檔公眾號回復關鍵字:20240629 2022 CSP-J 選擇題 單項選擇題(共15題,每題2分,共計30分:每題有且僅有一個正確選項) 5.對于入棧順序為a,b,c,d,e的序列,下列( )不合法的出棧序列 A. a,b&a…

螺旋矩陣問題C代碼

給定一個n行m列的二維數組,要求按順時針螺旋順序輸出矩陣中的所有元素,n和m小于等于10 如下圖是一個三行四列的螺旋矩陣 要求輸出 1 2 3 4 8 12 11 10 9 5 6 7 全局變量定義 int a[11][11]; int vis[11][11]; // 訪問標記數組關鍵代碼如下 int dx[] …

MySQL高級-MVCC-基本概念(當前讀、快照讀)

文章目錄 1、MVCC基本概念1.1、當前讀1.1.1、創建表 stu1.1.2、測試 1.2、快照讀 1、MVCC基本概念 全稱Multi-Version Concurrency Control,多版本并發控制。指維護一個數據的多個版本,使得讀寫操作沒有沖突,快照讀為MySQL實現MVCC提供了一個…

OpenCV cv::Mat到 Eigen 的正確轉換——cv2eigen

在進行計算機視覺項目時,我們經常需要處理相機位姿的變換。最近,我在項目中遇到了一個看似簡單但實際上頗具挑戰性的問題:從 OpenCV 的 cv::Mat 格式轉換到 Eigen 庫的格式。這個過程中遇到了一些問題,但最終找到了一個穩健的解決…

鏤空的文字?分享 1 段優質 CSS 代碼片段!

大家好,我是大澈! 本文約 800 字,整篇閱讀約需 1 分鐘。 每日分享一段優質代碼片段。 今天分享一段優質 CSS 代碼片段,實現 CSS 文字鏤空的效果。 老規矩,先閱讀代碼片段并思考,再看代碼解析再思考&#…

nginx本地域名配置

修改hosts文件(僅限本地測試): 在Windows上,hosts文件位于C:\Windows\System32\drivers\etc\hosts。 打開hosts文件,添加一行:127.0.0.1 xxx.com (xxx.com為自己設定的域名) 如果修…

Leetcode3190. 使所有元素都可以被 3 整除的最少操作數

Every day a Leetcode 題目來源:3190. 使所有元素都可以被 3 整除的最少操作數 解法1:遍歷 遍歷數組,累加最少操作數,即 min(num % 3, 3 - num % 3)。 代碼: /** lc appleetcode.cn id3190 langcpp** [3190] 使所…

uniapp+vue3開發微信小程序踩坑集

本文主要記錄使用uniappvue3開發微信小程序遇見的各種常見問題及注意點。(持續更新) 問題: 自定義組件為什么有些樣式加不上去 給自定義組件增加class的時候,有時候不生效有時候生效,一度讓我懷疑自己記憶錯亂。后來…

C++枚舉

C枚舉 枚舉的基礎用法不不再贅述枚舉的三點問題1、作用域問題解決思路1解決思路2 2、隱式轉換成int3、枚舉變量的實際類型無法明確指定 枚舉的基礎用法不不再贅述 枚舉的三點問題 1、作用域問題 舉個例子,顏色有blue代表藍色,心情有blue代表憂郁。 以…

mysql安裝配置教程

mysql安裝配置教程 MySQL是一個流行的關系型數據庫管理系統,用于存儲和管理數據。下面是簡要的MySQL安裝配置教程: 步驟1:下載MySQL 訪問MySQL官方網站(https://dev.mysql.com/downloads/mysql/)下載適合您操作系統…

Java冒泡排序實現及應用解析

Java冒泡排序實現及應用解析 冒泡排序是計算機科學中最基本的排序算法之一,盡管它的效率不是最高的,但由于其實現簡單,它在教學和某些特定場景下仍然具有不可替代的作用。本文將從Java語言的角度,深入探討冒泡排序的基本原理、實…

全國31省細分產品出口數據集(2002-2022年)

數據簡介:整理全國31個省直轄市自治區按hs碼分的22類細分產品的出口數據,只包含22類的細分,不包含更細的類目。可用來計算出口產品質量,出口產品技術復雜度等指標,數據區間為2002-2022年。 數據名稱:31省細…

《昇思25天學習打卡營第11天 | 昇思MindSpore基于 MindSpore 實現 BERT 對話情緒識別》

11天本節學習到BERT全稱是來自變換器的雙向編碼器表征量,它是Google于2018年末開發并發布的一種新型語言模型。BERT模型的主要創新點都在pre-train方法上,即用了Masked Language Model和Next Sentence Prediction兩種方法分別捕捉詞語和句子級別的repres…

【SGX系列教程】(五)Intel-SGX 官方示例分析(SampleCode)——RemoteAttestation

文章目錄 一.RemoteAttestation原理介紹1.1 遠程認證原理1.2 遠程認證步驟1.3 遠程認證基本流程1.4 IAS通過以下步驟驗證報告的簽名1.5 關鍵術語1.6 總結二.源碼分析2.1 README2.1.1 README給出的編譯流程2.2 重點代碼分析2.2.0 主要代碼模塊交互流程分析2.2.1 isv_app文件夾2.…

python-18-零基礎自學python-用類創建冰淇凌小店的口味

學習內容:《python編程:從入門到實踐》第二版 知識點: 類、子類、繼承、調用函數 練習內容: 練習9-6:冰激凌小店 冰激凌小店是一種特殊的餐館。編寫一個名為IceCreamStand的類,讓它繼承為完成練習9-1或…

YonBIP 獲取項目代碼配置(圖文)

項目開發文件在本地環境重新部署后,開發端機器需要重新部署,在此記錄一下操作過程。 1. 新建項目目錄,在目錄下點鼠標右鍵,選 Git Bash Here 2. 開始下載代碼,根據代碼量多少,幾分鐘就能下載完成。 3. 下載…

任意密碼重置漏洞

文章目錄 1. 任意密碼重置漏洞原理2. 任意密碼重置漏洞產生原因3. 任意密碼重置漏洞場景3.1 驗證碼爆破3.2 驗證憑證回傳3.3 驗證憑證未綁是用戶3.4 跳過驗證步驟3.5 憑證可預測3.6 同時向多個賬戶發送憑證 4. 任意密碼重置經典案例4.1 中國人壽某重要系統任意賬戶密碼重置4.2 …

【單元測試】Controller、Service、Repository 層的單元測試

Controller、Service、Repository 層的單元測試 1.Controller 層的單元測試1.1 創建一個用于測試的控制器1.2 編寫測試 2.Service 層的單元測試2.1 創建一個實體類2.2 創建服務類2.3 編寫測試 3.Repository 1.Controller 層的單元測試 下面通過實例演示如何在控制器中使用 Moc…

什么是死鎖以及如何避免

什么是死鎖? 死鎖是指兩個或兩個以上的進程在執行過程中,由于競爭資源或者由于彼此通信而造成的一種阻塞的現象,若無外力作用,它們都將無法推進下去。此時稱系統處于死鎖狀態或系統產生了死鎖,這些永遠在互相等待的進…