二、PyTorch加載數據

一、常用的兩個函數

dir()函數可以理解為打開某個,help()可以理解為返回如何使用某個具體的方法

例如:若一個A錢包里面有a,b,c,d四個小包,則可通過dir(A),打開該A錢包,返回a,b,c,d四個小包;若b小包中有1,2,3張銀行卡,則help(1)表示如何使用銀行卡1。

torch.cuda.is_available()為例進行說明
首先導入torch這個包,import torch
接著通過dir函數進行打開torch這個包,dir(torch),返回一系列torch包下的小包,其中就有cuda小包
接著打開cuda小包,dir(torch.cuda),返回一系列cuda小包下的各種方法,其中就有__is_available__方法
接著通過help函數查看該方法的詳細使用說明,help(torch.cuda.is_available),返回該方法的詳細說明信息

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

遇到所有的不明白如何使用的方法就可以通過這個兩個函數進行大牌使用,查看文檔進行使用學習

二、Dataset

例如:有散亂的三類數據 ▲(2個,標簽為1)、?(3個,標簽為0)、★(1個,標簽為2)
Dataset就可以將這三類數據進行整理,得出共有多少種類型數據和總共的數據有多少等信息

編號數據標簽
0?0
1?0
2?0
31
41
52

導入Dataset,from torch.utils.data import Dataset
可以通過help(Dataset),來進行查看其詳細說明

三、Dataloader

Dataset整理好數據后,送入模型中訓練,如何送,一次送入多少個?就有Dataloader進行控制

四、Dataset實戰

準備數據,文件夾為dataset,里面有ab兩個文件夾,分別存放a和b類照片
在這里插入圖片描述

import os
from torch.utils.data import Dataset
from PIL import Imageclass MyData(Dataset):def __init__(self, root_dir, label_dir):self.root_dir = root_dirself.label_dir = label_dirself.path = os.path.join(self.root_dir, self.label_dir)self.img_path = os.listdir(self.path)def __getitem__(self, idx):img_name = self.img_path[idx]img_item_path = os.path.join(self.root_dir, self.label_dir, img_name)img = Image.open(img_item_path)label = self.label_dirreturn img, labeldef __len__(self):return len(self.img_path)# dattset文件夾下有a和b兩個文件夾,分別存放a和b類照片root_dir = "dataset"  # 數據集的路徑
a_label_dir = "a"  # a類數據存放路徑
b_label_dir = "b"  # b類數據存放路徑
a_dataset = MyData(root_dir, a_label_dir)#存放所有a類數據
b_dataset = MyData(root_dir, b_label_dir)#存放所有b類數據a_img, a_label = a_dataset[1]#a類數據中的第2張
b_img, b_label = b_dataset[0]#b類數據中的第1張a_img.show()
b_img.show()all_dataset = a_dataset + b_dataset#將a和b類數據進行整合,a類在前,b類在后
all_img, all_label = all_dataset[3]#整合后的第4張
all_img.show()#顯示下照片信息print(all_label)#因為a和b各有4張,aaaabbbb,第4張的label為a,故輸出a

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

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

相關文章

leetcode 1005. K 次取反后最大化的數組和 思考分析

題目 給定一個整數數組 A,我們只能用以下方法修改該數組:我們選擇某個索引 i 并將 A[i] 替換為 -A[i],然后總共重復這個過程 K 次。(我們可以多次選擇同一個索引 i。) 以這種方式修改數組后,返回數組可能…

三、TensorBoard

一、安裝TensorBoard 管理員身份運行Anaconda Prompt,進入自己的環境環境 conda activate y_pytorch,pip install tensorboard 進行下載,也可以通過conda install tensorboard進行下載。其實通俗點,pip相當于菜市場,c…

IT資產管理系統SQL版

你難道還在用Excel登記IT資產信息嗎? 那你一定要好好考慮如何面對以下問題 1:IT人員需要面對自身部門以下問題用戶申請了資產it部未處理的單還有哪些?庫存里面還有哪些資產?有多少設備在維修?有多少設備已經報廢了?哪些資產低于安全庫存需要采購?使…

詳細講解設計跳表的三個步驟(查找、插入、刪除)

目錄寫在前面跳表概要查找步驟插入步驟刪除步驟完整代碼寫在前面 關于跳表的一些知識可以參考這篇文章,最好是先看完這篇文章再看詳細的思路->代碼的復現步驟: Redis內部數據結構詳解(6)——skiplist 關于跳表的插入、刪除基本操作其實也就是鏈表的插入和刪除,所…

php 類靜態變量 和 常量消耗內存及時間對比

在對類執行100w次循環后, 常量最快,變量其次,靜態變量消耗時間最高 其中: 常量消耗:101.1739毫秒 變量消耗:2039.7689毫秒 靜態變量消耗:4084.8911毫秒 測試代碼: class Timer_profi…

一個機器周期 計算機_計算機科學組織| 機器周期

一個機器周期 計算機機器周期 (Machine Cycle) The cycle during which a machine language instruction is executed by the processor of the computer system is known as the machine cycle. If a program contains 10 machine language instruction, 10 separate machine …

四、Transforms

transform是torchvision下的一個.py文件,這個python文件中定義了很多的類和方法,主要實現對圖片進行一些變換操作 一、Transforms講解 from torchvision import transforms#按著Ctrl,點擊transforms進入到__init__.py文件中 from .transfo…

leetcode 134. 加油站 思考分析

目錄題目1、暴力法,雙層遍歷2、貪心題目 在一條環路上有 N 個加油站,其中第 i 個加油站有汽油 gas[i] 升。 你有一輛油箱容量無限的的汽車,從第 i 個加油站開往第 i1 個加油站需要消耗汽油 cost[i] 升。你從其中的一個加油站出發&#xff0…

單鏈線性表的實現

//函數結果狀態代碼#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2 //Status是函數的類型,其值是函數結果狀態代碼 typedef int Status; typedef int ElemType;…

時間模塊,帶Python示例

Python時間模塊 (Python time Module) The time module is a built-in module in Python and it has various functions that require to perform more operations on time. This is one of the best modules in Python that used to solve various real-life time-related pro…

五、torchvision

一、下載CIFAR-10數據集 CIFAR-10數據集官網 通過閱讀官網給的解釋可以大概了解到,一共6w張圖片,每張圖片大小為3232,5w張訓練圖像,1w張測試圖像,一共由十大類圖像。 CIFAR10官網使用文檔 torchvision.datasets.CIF…

leetcode 69. x 的平方根 思考分析

題目 實現 int sqrt(int x) 函數。 計算并返回 x 的平方根,其中 x 是非負整數。 由于返回類型是整數,結果只保留整數的部分,小數部分將被舍去。 示例 1: 輸入: 4 輸出: 2 示例 2: 輸入: 8 輸出: 2 說明: 8 的平方根是 2.82842…, 由于返回…

背包問題 小灰_小背包問題

背包問題 小灰Prerequisites: Algorithm for fractional knapsack problem 先決條件: 分數背包問題算法 Here, we are discussing the practical implementation of the fractional knapsack problem. It can be solved using the greedy approach and in fraction…

360瀏覽器兼容問題

360瀏覽器兼容問題 360瀏覽器又是一大奇葩,市場份額大,讓我們不得不也對他做些兼容性處理。 360瀏覽器提供了兩種瀏覽模式,極速模式和兼容模式,極速模式下是webkit內核的處理模式,兼容模式下是與IE內核相同的處理模式。…

轉 設計師也需要了解的一些前端知識

一、常見視覺效果是如何實現的 一些事 關于文字效果 互聯網的一些事 文字自身屬性相關的效果css中都是有相對應的樣式的,如字號、行高、加粗、傾斜、下劃線等,但是一些特殊的效果,主要表現為ps中圖層樣式中的效果,css是無能為力的…

六、DataLoader

一、DataLoader參數解析 DataLoader官網使用手冊 參數描述dataset說明數據集所在的位置、數據總數等batch_size每次取多少張圖片shuffleTrue亂序、False順序(默認)samplerbatch_samplernum_workers多進程,默認為0采用主進程加載數據collate_fnpin_memorydrop_las…

單調棧 leetcode整理(一)

目錄單調棧知識402. 移掉K位數字1673. 找出最具競爭力的子序列316. 去除重復字母(1081. 不同字符的最小子序列)321. 拼接最大數單調棧知識 單調棧就是一個內部元素有序的棧(大->小 or 小->大),但是只用到它的一…

數字簽名 那些密碼技術_密碼學中的數字簽名

數字簽名 那些密碼技術A signature is usually used to bind signatory to the message. The digital signature is thus a technique that binds a person or the entity to the digital data. This binding ensures that the person sending the data is solely responsible …

七、torch.nn

一、神經網絡模塊 進入到PyTorch的torch.nnAPI學習頁面 PyTorch提供了很多的神經網絡方面的模塊,NN就是Neural Networks的簡稱 二、Containers torch.nn下的Containers 一共有六個模塊,最常用的就是Module模塊,看解釋可以知道&#xff0c…

Java多線程初學者指南(8):從線程返回數據的兩種方法

本文介紹學習Java多線程中需要學習的從線程返回數據的兩種方法。從線程中返回數據和向線程傳遞數據類似。也可以通過類成員以及回調函數來返回數據。原文鏈接 從線程中返回數據和向線程傳遞數據類似。也可以通過類成員以及回調函數來返回數據。但類成員在返回數據和傳遞數據時有…