讲师中心 微信公众号
AI工具推荐 视频效率加速

PyTorch 中的位置

千晨小哥_7349

千晨小哥_7349

发布时间:2024-12-21 12:39:37

|

805人浏览过

|

来源于dev.to

转载

请我喝杯咖啡☕

*我的帖子解释了 places365。

places365() 可以使用 places365 数据集,如下所示:

*备忘录:

  • 第一个参数是 root(必需类型:str 或 pathlib.path)。 *绝对或相对路径都是可能的。
  • 第二个参数是 split(可选-默认:“train-standard”-类型:str)。 *可以设置“train-standard”(1,803,460张图像)、“train-challenge”(8,026,628张图像)或“val”(36,500张图像)。不支持“test”(328,500 张图像),因此我在 github 上请求了该功能。
  • 第三个参数很小(可选-默认:false-类型:bool)。
  • 第四个参数是 download(可选-默认:false-类型:bool): *备注:
    • 如果为 true,则从互联网下载数据集并解压(解压)到根目录。
    • 如果为 true 并且数据集已下载,则将其提取。
    • 如果为 true 并且数据集已下载并提取,则会发生错误,因为提取的文件夹存在。 *删除解压的文件夹不会出错。
    • 如果数据集已经下载并提取,则应该为 false,以免出现错误。
    • 从这里开始:
      • 对于split="train-standard"和small=false,您可以手动下载并提取数据集filelist_places365-standard.tar和train_large_places365standard.tar分别到data/和data/data_large_standard/
      • 对于split="train-standard"和small=true,您可以手动下载并提取数据集filelist_places365-standard.tar和train_256_places365standard.tar分别到data/和data/data_256_standard/
      • 对于split="train-challenge"和small=false,您可以手动下载并提取数据集filelist_places365-challenge.tar和train_large_places365challenge.tar分别到data/和data/data_large/
      • 对于split="train-challenge"和small=true,您可以手动下载并提取数据集filelist_places365-challenge.tar和train_256_places365challenge.tar分别到data/和data/data_256_challenge/。
      • 对于split="val" 和small=false,您可以手动下载数据集filelist_places365-standard.tar 和val_large.tar 并分别解压到data/ 和data/val_large/。
      • 对于split="val" 和small=true,您可以手动下载数据集filelist_places365-standard.tar 和val_large.tar 并分别解压到data/ 和data/val_256/
  • 第五个参数是transform(optional-default:none-type:callable)。
  • 第 6 个参数是 target_transform(optional-default:none-type:callable)。
  • 第 7 个参数是 loader(可选-默认:torchvision.datasets.folder.default_loader-type:callable)。
  • 关于“火车标准”图像索引类的标签,airfield(0) 为 0~4999,airplane_cabin(1) 为 5000~9999,airport_terminal(2) 为 10000~14999, 壁龛(3)为15000~19999,小巷(4)为20000~24999,露天剧场(5)为25000~29999,amusement_arcade(6) 是30000~34999,游乐园(7)为35000~39999,公寓/户外(8)为40000~44999,水族馆(9)为45000~49999 ,等等
  • 关于“火车挑战”图像索引类的标签,airfield(0) 为 0~38566,airplane_cabin(1) 为 38567~47890,airport_terminal(2) 是47891~74901,壁龛(3)为74902~98482,小巷(4)为98483~137662,露天剧场(5)为137663~150034, 游乐园(6) 为 150035~161051,游乐园(7) 为 161052~201051,公寓楼/户外(8) 为 201052~227872, 水族馆(9)是227873~267872等
from torchvision.datasets import Places365
from torchvision.datasets.folder import default_loader

trainstd_large_data = Places365(
    root="data"
)

trainstd_large_data = Places365(
    root="data",
    split="train-standard",
    small=False,
    download=False,
    transform=None,
    target_transform=None,
    loader=default_loader
)

trainstd_small_data = Places365(
    root="data",
    split="train-standard",
    small=True
)

trainchal_large_data = Places365(
    root="data",
    split="train-challenge",
    small=False
)

trainchal_small_data = Places365(
    root="data",
    split="train-challenge",
    small=True
)

val_large_data = Places365(
    root="data",
    split="val",
    small=False
)

val_small_data = Places365(
    root="data",
    split="val",
    small=True
)

len(trainstd_large_data), len(trainstd_small_data)
# (1803460, 1803460)

len(trainchal_large_data), len(trainchal_small_data)
# (8026628, 8026628)

len(val_large_data), len(val_small_data)
# (36500, 36500)

trainstd_large_data
# Dataset Places365
#     Number of datapoints: 1803460
#     Root location: data
#     Split: train-standard
#     Small: False

trainstd_large_data.root
# 'data'

trainstd_large_data.split
# 'train-standard'

trainstd_large_data.small
# False

trainstd_large_data.download_devkit
trainstd_large_data.download_images
# <bound method Places365.download_devkit of Dataset Places365
#     Number of datapoints: 1803460
#     Root location: data
#     Split: train-standard
#     Small: False>

print(trainstd_large_data.transform)
# None

print(trainstd_large_data.target_transform)
# None

trainstd_large_data.loader
# <function torchvision.datasets.folder.default_loader(path: str) -> Any>

len(trainstd_large_data.classes), trainstd_large_data.classes
# (365,
#  ['/a/airfield', '/a/airplane_cabin', '/a/airport_terminal',
#   '/a/alcove', '/a/alley', '/a/amphitheater', '/a/amusement_arcade',
#   '/a/amusement_park', '/a/apartment_building/outdoor',
#   '/a/aquarium', '/a/aqueduct', '/a/arcade', '/a/arch',
#   '/a/archaelogical_excavation', ..., '/y/youth_hostel', '/z/zen_garden'])

trainstd_large_data[0]
# (<PIL.Image.Image image mode=RGB size=683x512>, 0)

trainstd_large_data[1]
# (<PIL.Image.Image image mode=RGB size=768x512>, 0)

trainstd_large_data[2]
# (<PIL.Image.Image image mode=RGB size=718x512>, 0)

trainstd_large_data[5000]
# (<PIL.Image.Image image mode=RGB size=512x683 at 0x1E7834F4770>, 1)

trainstd_large_data[10000]
# (<PIL.Image.Image image mode=RGB size=683x512 at 0x1E7834A8110>, 2)

trainstd_small_data[0]
# (<PIL.Image.Image image mode=RGB size=256x256>, 0)

trainstd_small_data[1]
# (<PIL.Image.Image image mode=RGB size=256x256>, 0)

trainstd_small_data[2]
# (<PIL.Image.Image image mode=RGB size=256x256>, 0)

trainstd_small_data[5000]
# (<PIL.Image.Image image mode=RGB size=256x256>, 1)

trainstd_small_data[10000]
# (<PIL.Image.Image image mode=RGB size=256x256>, 2)

trainchal_large_data[0]
# (<PIL.Image.Image image mode=RGB size=683x512 at 0x156E22BB680>, 0)

trainchal_large_data[1]
# (<PIL.Image.Image image mode=RGB size=768x512 at 0x156DF8213D0>, 0)

trainchal_large_data[2]
# (<PIL.Image.Image image mode=RGB size=718x512 at 0x156DF8213D0>, 0)

trainchal_large_data[38567]
# (<PIL.Image.Image image mode=RGB size=512x683 at 0x156DF8213D0>, 1)

trainchal_large_data[47891]
# (<PIL.Image.Image image mode=RGB size=683x512 at 0x156DF8213D0>, 2)

trainchal_small_data[0]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2955B625CA0>, 0)

trainchal_small_data[1]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2950D2A8350>, 0)

trainchal_small_data[2]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2950D2A82C0>, 0)

trainchal_small_data[38567]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2955B3BF6B0>, 1)

trainchal_small_data[47891]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2955B3DD4F0>, 2)

val_large_data[0]
# (<PIL.Image.Image image mode=RGB size=512x772 at 0x295408DA750>, 165)

val_large_data[1]
# (<PIL.Image.Image image mode=RGB size=600x493 at 0x29561D468D0>, 358)

val_large_data[2]
# (<PIL.Image.Image image mode=RGB size=763x512 at 0x2955E09DD60>, 93)

val_large_data[3]
# (<PIL.Image.Image image mode=RGB size=827x512 at 0x29540938A70>, 164)

val_large_data[4]
# (<PIL.Image.Image image mode=RGB size=772x512 at 0x29562600650>, 289)

val_small_data[0]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2950D34C500>, 165)

val_small_data[1]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x29540892870>, 358)

val_small_data[2]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x2954085DBB0>, 93)

val_small_data[3]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x29561E348C0>, 164)

val_small_data[4]
# (<PIL.Image.Image image mode=RGB size=256x256 at 0x29560A415B0>, 289)

import matplotlib.pyplot as plt

def show_images(data, ims, main_title=None):
    plt.figure(figsize=(12, 6))
    plt.suptitle(t=main_title, y=1.0, fontsize=14)
    for i, j in enumerate(iterable=ims, start=1):
        plt.subplot(2, 5, i)
        im, lab = data[j]
        plt.imshow(X=im)
        plt.title(label=lab)
    plt.tight_layout(h_pad=3.0)
    plt.show()

trainstd_ims = (0, 1, 2, 5000, 10000, 15000, 20000, 25000, 30000, 35000)
trainchal_ims = (0, 1, 2, 38567, 47891, 74902, 98483, 137663, 150035, 161052)
val_ims = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

show_images(data=trainstd_large_data, ims=trainstd_ims,
            main_title="trainstd_large_data")
show_images(data=trainstd_small_data, ims=trainstd_ims,
            main_title="trainstd_small_data")
show_images(data=trainchal_large_data, ims=trainchal_ims,
            main_title="trainchal_large_data")
show_images(data=trainchal_small_data, ims=trainchal_ims,
            main_title="trainchal_small_data")
show_images(data=val_large_data, ims=val_ims,
            main_title="val_large_data")
show_images(data=val_small_data, ims=val_ims,
            main_title="val_small_data")

image description

image description

Github Auto
Github Auto

管PR、盯Issue、跑CI、发Release——GitHub仓库日常运维扔给它。少开几个Chrome标签页。

下载

image description

image description

image description

image description

热门AI工具

更多
讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

相关专题

更多
default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

357

2023.12.07

github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

8485

2026.01.21

GitHub官网入口版本汇总
GitHub官网入口版本汇总

本专题整合了GitHub入口版本地址汇总,阅读专题下面的文章了解更多详细内容。

858

2026.04.02

pytorch是干嘛的
pytorch是干嘛的

pytorch是一个基于python的深度学习框架,提供以下主要功能:动态图计算,提供灵活性。强大的张量操作,实现高效处理。自动微分,简化梯度计算。预构建的神经网络模块,简化模型构建。各种优化器,用于性能优化。想了解更多pytorch的相关内容,可以阅读本专题下面的文章。

2143

2024.05.29

Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习
Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习

PyTorch 是一种用于构建深度学习模型的功能完备框架,是一种通常用于图像识别和语言处理等应用程序的机器学习。 使用Python 编写,因此对于大多数机器学习开发者而言,学习和使用起来相对简单。 PyTorch 的独特之处在于,它完全支持GPU,并且使用反向模式自动微分技术,因此可以动态修改计算图形。

68

2025.12.22

Linux 新手先学哪些命令
Linux 新手先学哪些命令

Linux新手命令专题汇集终端基础、文件目录操作、文本查看、软件安装和权限管理等入门文章,帮助按实际任务练习常用命令并建立命令行操作习惯。

0

2026.10.15

MySQL 忘记密码怎么办
MySQL 忘记密码怎么办

MySQL忘记密码专题汇集不同版本与系统下的root密码重置方法,覆盖MySQL 5.7、8.0、Mac、Linux及本地集成环境,并提示恢复权限与重新登录的检查步骤。

0

2026.10.15

Vue.js 中 ref 和 reactive 的区别
Vue.js 中 ref 和 reactive 的区别

Vue.js中ref和reactive的区别专题汇集两种响应式API的定义、访问方式、对象解构、侦听与性能取舍等文章,帮助结合实际状态类型选择合适写法。

0

2026.10.15

VS Code 怎么配置开发环境
VS Code 怎么配置开发环境

VS Code开发环境专题汇集编辑器安装、语言扩展、编译器、解释器、终端和调试配置文章,覆盖Java、Python、C++和PHP等常见语言的入门设置。

0

2026.10.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
vscode手册
vscode手册

共0课时 | 0人学习

Git 教程
Git 教程

共21课时 | 8万人学习

Git版本控制工具
Git版本控制工具

共8课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn