首頁 > 後端開發 > Python教學 > PyTorch 中的 QMNIST

PyTorch 中的 QMNIST

Patricia Arquette
發布: 2024-12-11 16:01:11
原創
958 人瀏覽過

請我喝杯咖啡☕

*我的貼文解釋了 QMNIST。

QMNIST()可以使用QMNIST資料集,如下所示:

*備忘錄:

  • 第一個參數是 root(必要類型:str 或 pathlib.Path)。 *絕對或相對路徑都是可能的。
  • 第二個參數是什麼(可選-預設:無-類型:str)。 *可設定「train」(60,000張圖片)、「test」(60,000張圖片)、「test10k」(10,000張圖片)、「test50k」(50,000張圖片)或「nist」(402,953張圖片)。
  • 第三個參數是 compat(Optional-Default:True-Type:bool)。 *如果為 True,則傳回每個影像的類別號(為了與 MNIST 資料載入器相容),如果為 False,則傳回完整 qmnist 資訊的一維張量。
  • 第四個參數是訓練參數(可選-預設:True-Type:bool): *備註:
    • 如果不是 None 則被忽略。
    • 如果為 True,則使用訓練資料(60,000 張圖像),如果為 False,則使用測試資料(60,000 張圖像)。
  • 有轉換參數(可選-預設:無-類型:可呼叫)。必須使用*transform=。
  • 有 target_transform 參數(可選-預設:無-類型:可呼叫)。必須使用*target_transform=。
  • 有下載參數(可選-預設:False-類型:bool): *備註:
    • download=必須使用。
    • 如果為 True,則從網路下載資料集並解壓縮(解壓縮)到根目錄。
    • 如果為 True 並且資料集已下載,則將其提取。
    • 如果為 True 並且資料集已下載並提取,則不會發生任何事情。
    • 如果資料集已經下載並提取,則應該為 False,因為它速度更快。
    • 您可以從此處手動下載並提取資料集,例如資料/QMNIST/原始/。
from torchvision.datasets import QMNIST

train_data = QMNIST(
    root="data"
)

train_data = QMNIST(
    root="data",
    what=None,
    compat=True,
    train=True,
    transform=None,
    target_transform=None,
    download=False
)

train_data = QMNIST(
    root="data",
    what="train",
    train=False
)

test_data1 = QMNIST(
    root="data",
    train=False
)

test_data1 = QMNIST(
    root="data",
    what="test",
    train=True
)

test_data2 = QMNIST(
    root="data",
    what="test10k"
)

test_data3 = QMNIST(
    root="data",
    what="test50k",
    compat=False
)

nist_data = QMNIST(
    root="data",
    what="nist"
)

l = len
l(train_data), l(test_data1), l(test_data2), l(test_data3), l(nist_data)
# (60000, 60000, 10000, 50000, 402953)

train_data
# Dataset QMNIST
#     Number of datapoints: 60000
#     Root location: data
#     Split: train

train_data.root
# 'data'

train_data.what
# 'train'

train_data.compat
# True

train_data.train
# True

print(train_data.transform)
# None

print(train_data.target_transform)
# None

train_data.download
# <bound method QMNIST.download of Dataset QMNIST
#     Number of datapoints: 60000
#     Root location: data
#     Split: train>

train_data[0]
# (<PIL.Image.Image image mode=L size=28x28>, 5)

test_data3[0]
# (<PIL.Image.Image image mode=L size=28x28>,
#  tensor([3, 4, 2424, 51, 33, 261051, 0, 0]))

train_data[1]
# (<PIL.Image.Image image mode=L size=28x28>, 0)

test_data3[1]
# (<PIL.Image.Image image mode=L size=28x28>,
#  tensor([8, 1, 522, 60, 38, 55979, 0, 0]))

train_data[2]
# (<PIL.Image.Image image mode=L size=28x28>, 4)

test_data3[2]
# (<PIL.Image.Image image mode=L size=28x28>,
#  tensor([9, 4, 2496, 115, 39, 269531, 0, 0]))

train_data[3]
# (<PIL.Image.Image image mode=L size=28x28>, 1)

test_data3[3]
# (<PIL.Image.Image image mode=L size=28x28>,
#  tensor([5, 4, 2427, 77, 35, 261428, 0, 0]))

train_data[4]
# (<PIL.Image.Image image mode=L size=28x28>, 9)

test_data3[4]
# (<PIL.Image.Image image mode=L size=28x28>,
#  tensor([7, 4, 2524, 69, 37, 272828, 0, 0]))

train_data.classes
# ['0 - zero', '1 - one', '2 - two', '3 - three', '4 - four',
#  '5 - five', '6 - six', '7 - seven', '8 - eight', '9 - nine']
登入後複製
from torchvision.datasets import QMNIST

train_data = QMNIST(
    root="data",
    what="train"
)

test_data1 = QMNIST(
    root="data",
    what="test"
)

test_data2 = QMNIST(
    root="data",
    what="test10k"
)

test_data3 = QMNIST(
    root="data",
    what="test50k"
)

nist_data = QMNIST(
    root="data",
    what="nist"
)

import matplotlib.pyplot as plt

def show_images(data):
    plt.figure(figsize=(12, 2))
    col = 5
    for i, (image, label) in enumerate(data, 1):
        plt.subplot(1, col, i)
        plt.title(label)
        plt.imshow(image)
        if i == col:
            break
    plt.show()

show_images(data=train_data)
show_images(data=test_data1)
show_images(data=test_data2)
show_images(data=test_data3)
show_images(data=nist_data)
登入後複製

QMNIST in PyTorch

以上是PyTorch 中的 QMNIST的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板