自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

你需要知道的11個Torchvision計算機(jī)視覺數(shù)據(jù)集

譯文 精選
人工智能 機(jī)器視覺
Torchvision數(shù)據(jù)集通常用于訓(xùn)練和評估機(jī)器學(xué)習(xí)模型,如卷積神經(jīng)網(wǎng)絡(luò)(CNNs)。這些模型通常用于計算機(jī)視覺應(yīng)用,任何人都可以免費(fèi)下載和使用。本文的主要圖像是通過HackerNoon的AI穩(wěn)定擴(kuò)散模型生成的。

譯者 | 王瑞平

51CTO讀者成長計劃社群招募,咨詢小助手(微信號:TTalkxiaozhuli)

計算機(jī)視覺是一個顯著增長的領(lǐng)域,有許多實(shí)際應(yīng)用,從自動駕駛汽車到面部識別系統(tǒng)。該領(lǐng)域的主要挑戰(zhàn)之一是獲得高質(zhì)量的數(shù)據(jù)集來訓(xùn)練機(jī)器學(xué)習(xí)模型。

Torchvision作為Pytorch的圖形庫,一直服務(wù)于PyTorch深度學(xué)習(xí)框架,主要用于構(gòu)建計算機(jī)視覺模型。

為了解決這一挑戰(zhàn),Torchvision提供了訪問預(yù)先構(gòu)建的數(shù)據(jù)集、模型和專門為計算機(jī)視覺任務(wù)設(shè)計的轉(zhuǎn)換。此外,Torchvision還支持CPU和GPU的加速,使其成為開發(fā)計算機(jī)視覺應(yīng)用程序的靈活且強(qiáng)大的工具。

一、什么是“Torchvision數(shù)據(jù)集”?

Torchvision數(shù)據(jù)集是計算機(jī)視覺中常用的用于開發(fā)和測試機(jī)器學(xué)習(xí)模型的流行數(shù)據(jù)集集合。運(yùn)用Torchvision數(shù)據(jù)集,開發(fā)人員可以在一系列任務(wù)上訓(xùn)練和測試他們的機(jī)器學(xué)習(xí)模型,例如,圖像分類、對象檢測和分割。數(shù)據(jù)集還經(jīng)過預(yù)處理、標(biāo)記并組織成易于加載和使用的格式。

據(jù)了解,Torchvision包由流行的數(shù)據(jù)集、模型體系結(jié)構(gòu)和通用的計算機(jī)視覺圖像轉(zhuǎn)換組成。簡單地說就是“常用數(shù)據(jù)集+常見模型+常見圖像增強(qiáng)”方法。

Torchvision中的數(shù)據(jù)集共有11種:MNIST、CIFAR-10等,下面具體說說。

二、Torchvision中的11種數(shù)據(jù)集

1.MNIST手寫數(shù)字?jǐn)?shù)據(jù)庫

這個Torchvision數(shù)據(jù)集在機(jī)器學(xué)習(xí)和計算機(jī)視覺領(lǐng)域中非常流行和廣泛應(yīng)用。它由7萬張手寫數(shù)字0-9的灰度圖像組成。其中,6萬張用于訓(xùn)練,1萬張用于測試。每張圖像的大小為28×28像素,并有相應(yīng)的標(biāo)簽表示它所代表的數(shù)字。

要訪問此數(shù)據(jù)集,您可以直接從Kaggle下載或使用torchvision加載數(shù)據(jù)集:

import torchvision.datasets as datasets# Load the training dataset
train_dataset = datasets.MNIST(root='data/', train=True, transform=None, download=True)# Load the testing dataset
test_dataset = datasets.MNIST(root='data/', train=False, transform=None, download=True)

圖片

2.CIFAR-10(廣泛使用的標(biāo)準(zhǔn)數(shù)據(jù)集)

CIFAR-10數(shù)據(jù)集由6萬張32×32彩色圖像組成,分為10個類別,每個類別有6000張圖像,總共有5萬張訓(xùn)練圖像和1萬張測試圖像。這些圖像又分為5個訓(xùn)練批次和一個測試批次,每個批次有1萬張圖像。數(shù)據(jù)集可以從Kaggle下載。

import torchimport torchvisionimport torchvision.transforms as transforms

transform = transforms.Compose(
[transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])

trainset = torchvision.datasets.CIFAR10(root='./data', train=True,
download=True, transform=transform)
testset = torchvision.datasets.CIFAR10(root='./data', train=False,
download=True, transform=transform)

trainloader = torch.utils.data.DataLoader(trainset, batch_size=4,
shuffle=True, num_workers=2)
testloader = torch.utils.data.DataLoader(testset, batch_size=4,
shuffle=False, num_workers=2)

在此提醒一句,您可以根據(jù)需要調(diào)整數(shù)據(jù)加載器的批處理大小和工作進(jìn)程的數(shù)量。

3.CIFAR-100(廣泛使用的標(biāo)準(zhǔn)數(shù)據(jù)集)

CIFAR-100數(shù)據(jù)集在100個類中有60,000張(50,000張訓(xùn)練圖像和10,000張測試圖像)32×32的彩色圖像。每個類有600張圖像。這100個類被分成20個超類,用一個細(xì)標(biāo)簽表示它的類,另一個粗標(biāo)簽表示它所屬的超類。

import torchimport torchvisionimport torchvision.transforms as transforms

import torchvision.datasets as datasetsimport torchvision.transforms as transforms# Define transform to normalize data
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])])
# Load CIFAR-100 train and test datasets
trainset = datasets.CIFAR100(root='./data', train=True, download=True, transform=transform)
testset = datasets.CIFAR100(root='./data', train=False, download=True, transform=transform)
# Create data loaders for train and test datasets
trainloader = torch.utils.data.DataLoader(trainset, batch_size=64, shuffle=True)
testloader = torch.utils.data.DataLoader(testset, batch_size=64, shuffle=False)

4.ImageNet數(shù)據(jù)集

Torchvision中的ImageNet數(shù)據(jù)集包含大約120萬張訓(xùn)練圖像,5萬張驗(yàn)證圖像和10萬張測試圖像。數(shù)據(jù)集中的每張圖像都被標(biāo)記為1000個類別中的一個,如“貓”、“狗”、“汽車”、“飛機(jī)”等。

import torchvision.datasets as datasetsimport torchvision.transforms as transforms
# Set the path to the ImageNet dataset on your machine
data_path = "/path/to/imagenet"
# Create the ImageNet dataset object with custom options
imagenet_train = datasets.ImageNet(
root=data_path,
split='train',
transform=transforms.Compose([
transforms.Resize(256),
transforms.RandomCrop(224),
transforms.RandomHorizontalFlip(),
transforms.ToTensor(),
transforms.Normalize(
mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225])
]),
download=False)

imagenet_val = datasets.ImageNet(
root=data_path,
split='val',
transform=transforms.Compose([
transforms.Resize(256),
transforms.CenterCrop(224),
transforms.ToTensor(),
transforms.Normalize(
mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225])
]),
download=False)
# Print the number of images in the training and validation setsprint("Number of images in the training set:", len(imagenet_train))print("Number of images in the validation set:", len(imagenet_val))

圖片

5.MSCoco數(shù)據(jù)集

Microsoft Common Objects in Context(MS Coco)數(shù)據(jù)集包含32.8萬張日常物體和人類的高質(zhì)量視覺圖像,通常用作實(shí)時物體檢測中比較算法性能的標(biāo)準(zhǔn)。

6.Fashion-MNIST數(shù)據(jù)集

時尚MNIST數(shù)據(jù)集是由Zalando Research創(chuàng)建的,作為原始MNIST數(shù)據(jù)集的替代品。Fashion MNIST數(shù)據(jù)集由70000張服裝灰度圖像(訓(xùn)練集60000張,測試集10000張)組成。

圖片大小為28×28像素,代表10種不同類別的服裝,包括:t恤/上衣、褲子、套頭衫、連衣裙、外套、涼鞋、襯衫、運(yùn)動鞋、包和短靴。它類似于原始的MNIST數(shù)據(jù)集,但由于服裝項(xiàng)目的復(fù)雜性和多樣性,分類任務(wù)更具挑戰(zhàn)性。這個Torchvision數(shù)據(jù)集可以從Kaggle下載。

import torchimport torchvisionimport torchvision.transforms as transforms
# Define transformations
transform = transforms.Compose(
[transforms.ToTensor(),
transforms.Normalize((0.5,), (0.5,))])# Load the dataset
trainset = torchvision.datasets.FashionMNIST(root='./data', train=True,
download=True, transform=transform)

testset = torchvision.datasets.FashionMNIST(root='./data', train=False,
download=True, transform=transform)
# Create data loaders
trainloader = torch.utils.data.DataLoader(trainset, batch_size=4,
shuffle=True, num_workers=2)

testloader = torch.utils.data.DataLoader(testset, batch_size=4,
shuffle=False, num_workers=2)

7.SVHN數(shù)據(jù)集

SVHN(街景門牌號)數(shù)據(jù)集是一個來自谷歌街景圖像的圖像數(shù)據(jù)集,它由從街道級圖像中截取的門牌號的裁剪圖像組成。它包含所有門牌號及其包圍框的完整格式和僅包含門牌號的裁剪格式。完整格式通常用于對象檢測任務(wù),而裁剪格式通常用于分類任務(wù)。

SVHN數(shù)據(jù)集也包含在Torchvision包中,它包含了73,257張用于訓(xùn)練的圖像、26,032張用于測試的圖像和531,131張用于額外訓(xùn)練數(shù)據(jù)的額外圖像。

import torchvisionimport torch
# Load the train and test sets
train_set = torchvision.datasets.SVHN(root='./data', split='train', download=True, transform=torchvision.transforms.ToTensor())
test_set = torchvision.datasets.SVHN(root='./data', split='test', download=True, transform=torchvision.transforms.ToTensor())
# Create data loaders
train_loader = torch.utils.data.DataLoader(train_set, batch_size=64, shuffle=True)
test_loader = torch.utils.data.DataLoader(test_set, batch_size=64, shuffle=False)

8.STL-10數(shù)據(jù)集

STL-10數(shù)據(jù)集是一個圖像識別數(shù)據(jù)集,由10個類組成,總共約6000 +張圖像。STL-10代表“圖像識別標(biāo)準(zhǔn)訓(xùn)練和測試集-10類”,數(shù)據(jù)集中的10個類是:飛機(jī)、鳥、汽車、貓、鹿、狗、馬、猴子、船、卡車。您可以直接從Kaggle下載數(shù)據(jù)集。

import torchvision.datasets as datasetsimport torchvision.transforms as transforms
# Define the transformation to apply to the data
transform = transforms.Compose([
transforms.ToTensor(),
# Convert PIL image to PyTorch tensor
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)) # Normalize the data])
# Load the STL-10 dataset
train_dataset = datasets.STL10(root='./data', split='train', download=True, transform=transform)
test_dataset = datasets.STL10(root='./data', split='test', download=True, transform=transform)

9.CelebA數(shù)據(jù)集

這個Torchvision數(shù)據(jù)集是一個流行的大規(guī)模面部屬性數(shù)據(jù)集,包含超過20萬張名人圖像。2015年,香港中文大學(xué)的研究人員首次發(fā)布了這一數(shù)據(jù)。CelebA中的圖像包含40個面部屬性,如,年齡、頭發(fā)顏色、面部表情和性別。

此外,這些圖片是從互聯(lián)網(wǎng)上檢索到的,涵蓋了廣泛的面部外觀,包括不同的種族、年齡和性別。每個圖像中面部位置的邊界框注釋,以及眼睛、鼻子和嘴巴的5個地標(biāo)點(diǎn)。

import torchvision.datasets as datasetsimport torchvision.transforms as transforms
transform = transforms.Compose([
transforms.CenterCrop(178),
transforms.Resize(128),
transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])
celeba_dataset = datasets.CelebA(root='./data', split='train', transform=transform, download=True)

10.PASCAL VOC數(shù)據(jù)集

VOC數(shù)據(jù)集(視覺對象類)于2005年作為PASCAL VOC挑戰(zhàn)的一部分首次引入。該挑戰(zhàn)旨在推進(jìn)視覺識別的最新水平。它由20種不同類別的物體組成,包括:動物、交通工具和常見的家用物品。這些圖像中的每一個都標(biāo)注了圖像中物體的位置和分類。注釋包括邊界框和像素級分割掩碼。

數(shù)據(jù)集分為兩個主要集:訓(xùn)練集和驗(yàn)證集。

訓(xùn)練集包含大約5000張帶有注釋的圖像,而驗(yàn)證集包含大約5000張沒有注釋的圖像。此外,該數(shù)據(jù)集還包括一個包含大約10,000張圖像的測試集,但該測試集的注釋是不可公開的。

import torchimport torchvisionfrom torchvision import transforms
# Define transformations to apply to the images
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])])
# Load the train and validation datasets
train_dataset = torchvision.datasets.VOCDetection(root='./data', year='2007', image_set='train', transform=transform)
val_dataset = torchvision.datasets.VOCDetection(root='./data', year='2007', image_set='val', transform=transform)# Create data loaders
train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=32, shuffle=True)
val_loader = torch.utils.data.DataLoader(val_dataset, batch_size=32, shuffle=False)

11.Places365數(shù)據(jù)集

Places365數(shù)據(jù)集是一個大型場景識別數(shù)據(jù)集,擁有超過180萬張圖像,涵蓋365個場景類別。Places365標(biāo)準(zhǔn)數(shù)據(jù)集包含約180萬張圖像,而Places365挑戰(zhàn)數(shù)據(jù)集包含5萬張額外的驗(yàn)證圖像,這些圖像對識別模型更具挑戰(zhàn)性。

import torchimport torchvisionfrom torchvision import transforms
# Define transformations to apply to the images
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])])
# Load the train and validation datasets
train_dataset = torchvision.datasets.Places365(root='./data', split='train-standard', transform=transform)
val_dataset = torchvision.datasets.Places365(root='./data', split='val', transform=transform)# Create data loaders
train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=32, shuffle=True)
val_loader = torch.utils.data.DataLoader(val_dataset, batch_size=32, shuffle=False)

圖片

三、總結(jié)

總之,Torchvision數(shù)據(jù)集通常用于訓(xùn)練和評估機(jī)器學(xué)習(xí)模型,如卷積神經(jīng)網(wǎng)絡(luò)(CNNs)。這些模型通常用于計算機(jī)視覺應(yīng)用,任何人都可以免費(fèi)下載和使用。本文的主要圖像是通過HackerNoon的AI穩(wěn)定擴(kuò)散模型生成的。

參考鏈接:??https://hackernoon.com/11-torchvision-datasets-for-computer-vision-you-need-to-know??

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2011-09-20 10:56:35

云計算PaaS

2020-10-28 11:26:58

計算機(jī)數(shù)據(jù) 視覺

2013-07-11 13:56:37

大數(shù)據(jù)

2020-03-27 12:30:39

python開發(fā)代碼

2023-01-09 17:23:14

CSS技巧

2013-03-04 09:34:48

CSSWeb

2020-01-09 11:30:40

AI 數(shù)據(jù)人工智能

2024-04-03 10:29:13

JavaScrip優(yōu)化技巧

2022-12-30 11:24:21

2013-07-16 14:48:03

大數(shù)據(jù)大數(shù)據(jù)技術(shù)數(shù)據(jù)

2018-09-10 09:26:33

2022-04-29 09:00:00

Platform架構(gòu)內(nèi)核線程

2022-08-10 09:03:35

TypeScript前端

2017-03-28 15:47:17

數(shù)據(jù)治理數(shù)據(jù)庫

2022-07-06 15:51:48

瀏覽器開發(fā)者工具

2021-01-14 21:40:40

機(jī)器學(xué)習(xí)計算機(jī)視覺圖像數(shù)據(jù)集

2015-09-20 16:23:27

2010-06-03 11:39:28

網(wǎng)絡(luò)性能

2021-08-30 09:00:00

人工智能計算機(jī)視覺機(jī)器學(xué)習(xí)

2010-02-23 10:35:39

開源服務(wù)器技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號