pytorch中函數(shù)tensor.numpy()的數(shù)據(jù)類型解析
函數(shù)tensor.numpy()的數(shù)據(jù)類型
今天寫代碼的時候,要統(tǒng)計一下標簽數(shù)據(jù)里出現(xiàn)的類別總數(shù)和要分類的分類數(shù)是不是一致的。
我的做法是把tensor類型的數(shù)據(jù)轉(zhuǎn)變成list,然后用Counter函數(shù)做統(tǒng)計。
代碼如下:
from collections import Counter List_counter = Counter(List1) #List1就是待統(tǒng)計的數(shù)據(jù),是一維的列表。生成的List_counter是一個字典,鍵是數(shù)據(jù), #對應的值是數(shù)據(jù)出現(xiàn)的頻率
在做這個統(tǒng)計的時候,突然發(fā)現(xiàn),我的數(shù)據(jù)是float的類型,這是不應該出現(xiàn)的,因為標簽數(shù)據(jù)在處理的時候都是整型數(shù)據(jù)。
經(jīng)過一番查找后,發(fā)現(xiàn)是tensor.numpy()返回值數(shù)據(jù)類型的原因。這個函數(shù)的返回值是float類型的
tensor數(shù)據(jù)和numpy數(shù)據(jù)轉(zhuǎn)換中注意的一個問題
在pytorch中,把numpy.array數(shù)據(jù)轉(zhuǎn)換到張量tensor數(shù)據(jù)的常用函數(shù)是torch.from_numpy(array)或者torch.Tensor(array)
第一種函數(shù)更常用,然而在pytorch0.4中已經(jīng)舍棄了這種函數(shù)
下面一個簡單的編程實驗說明這兩種方法的區(qū)別
實驗在pytorch0.4框架下進行

運行程序之后,結果是

可以看出修改數(shù)組a的元素值,張量b的元素值也改變了,但是張量c卻不變。
修改張量c的元素值,數(shù)組a和張量b的元素值都不變。
這說明torch.from_numpy(array)是做數(shù)組的淺拷貝,torch.Tensor(array)是做數(shù)組的深拷貝
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Sphinx環(huán)境配置及VScode編寫Rst文檔轉(zhuǎn)html的步驟
sphinx主要用于編寫 reStructuredText 和 Markdown 格式技術文檔,編寫此類技術文檔時Sphinx工具可將其轉(zhuǎn)為html、pdf、ePub等格式,這篇文章主要介紹了Sphinx環(huán)境配置及VScode編寫Rst文檔轉(zhuǎn)html,需要的朋友可以參考下2023-03-03
python使用openpyxl庫讀寫Excel表格的方法(增刪改查操作)
這篇文章主要介紹了python使用openpyxl庫讀寫Excel表格的方法(增刪改查操作),本文通過實例圖文相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-05-05
flask的orm框架SQLAlchemy查詢實現(xiàn)解析
這篇文章主要介紹了flask的orm框架SQLAlchemy查詢實現(xiàn)解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-12-12
解決Django生產(chǎn)環(huán)境無法加載靜態(tài)文件問題的解決
這篇文章主要介紹了解決Django生產(chǎn)環(huán)境無法加載靜態(tài)文件問題的解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04
一行代碼解決動態(tài)執(zhí)行Python函數(shù)方法實例
這篇文章主要為大家介紹了如何用一行代碼解決動態(tài)執(zhí)行Python函數(shù)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12
Python實現(xiàn)一個帶權無回置隨機抽選函數(shù)的方法
這篇文章主要介紹了Python實現(xiàn)一個帶權無回置隨機抽選函數(shù)的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07

