每个种类都整整齐齐?图片分类 STL-10 数据集使用指南

STL-10数据集全解析:从下载到无监督学习的实战指南 在计算机视觉领域,图像数据集是算法研发和模型评估的基石。从基础的MNIST、CIFAR-10到庞大的ImageNet,不同规模的数据集服务于不同的研究阶段。其中,无监督特征学习作为一种能够从海量未标注数据中自动提取有用模式的技术,正日益受到重视,因为它能有效降低对昂贵人工标注的依赖。其核心原理是让模型通过设计好的代理任务(如重构、对比)学习数据的内在结构和表征。这项技术的价值在于,它能作为强大的预训练手段,为下游任务提供更通用的特征初始化,提升模型在小样本场景下的泛化能力。STL-10数据集正是为评估此类无 阅读详情
AI摘要

本文介绍了STL10,一个常用于机器学习基础任务的图片分类数据集,包括其来源、类别分布、训练流程和应用场景,特别是无标签学习的挑战和常用算法。

图片分类(Image Classification)是机器学习中重要且基础的任务之一,可广泛应用在各类 AI 功能中。

这次给大家介绍的 STL10数据集,是图片分类任务早期常用的基准数据集之一,虽然只有10种样本,图片尺寸也偏小,但是标注类型比较平衡,各种种类都有各500张(train)/800张(test),用于模型训练可以达到比较好的准确度。一起来看看。

一、数据集简介

发布方:Adam Coates

发布时间:2011

背景:

STL-10数据集是一个用于开发无监督特征学习、深度学习、自监督学习算法的图像识别数据集。

其灵感来自CIFAR-10数据集,每个类别的标注图像数量相比CIFAR-10中的要少,但提供了大量的无标注图像来做无监督预训练,其主要的挑战是利用无标签图像来构建先验知识。

简介:

STL-10的图像来自ImageNet,共有113000张96 x 96分辨率的RGB图像,其中训练集为5000张,测试集为8000张,其余100000张均为无标签图像。

二、数据集详细信息

1. 标注类别

id

name

1

airplane

2

bird

3

car

4

cat

5

deer

6

dog

7

horse

8

monkey

9

ship

10

truck

2. 数据量

训练集包含5000张有标注的图像,每个类别500张,图像来自ImageNet。

测试集包含8000张有标注的图像,每个类别800张,图像来自ImageNet。

无标签集包含100000张无标注的图像,除包含以上10个类别外,还包括其他类别的动物以及车辆,图像来自ImageNet。

3. 训练流程

官方将训练集分为了10个fold,每个fold包含1000张图片。训练时应在每个fold上均训练一次,然后在测试集上评测模型性能。

4. 可视化

三、数据集任务定义及介绍

1. 图像分类

● 任务定义

图像分类是计算机视觉领域中,基于语义信息对不同图像进行分类的一种模式识别方法。

● 图像分类评价指标

Accuracy:n_correct / n_total,标签预测正确的样本占所有样本的比例。

某个类别的Precision:TP/(TP+FP),被预测为该类别的样本中,有多少样本是预测正确的。

某个类别的Recall:TP/(TP+FN),在该类别的样本中,有多少样本是预测正确的。

注:在上面的评价指标中,TP代表True Positive,FP代表False Positive,FN代表False Negative,n_correct代表所有预测正确的样本数量,n_total代表所有的样本数量。

2. 无监督学习

● 任务定义

根据类别未知(没有被标记)的训练样本解决模式识别中的各种问题,称之为无监督学习。

● 无监督学习常用算法

常用的无监督学习算法主要有主成分分析方法PCA,等距映射方法、局部线性嵌入方法、拉普拉斯特征映射方法、黑塞局部线性嵌入方法和局部切空间排列方法等。

● 无监督学习例子

无监督学习里典型例子是聚类,聚类的目的在于把相似的东西聚在一起,而我们并不关心这一类是什么。典型的聚类算法有K-means算法, K-medoids算法、CLARANS算法等。

四、数据集文件结构解读

1. 目录结构


STL-10 Dataset/
├── train_X.bin            #训练集图像数据
├── train_y.bin            #训练集图像标注
├── test_X.bin             #测试集图像数据
├── test_y.bin             #测试集图像数据
├── unlabeled_X.bin        #无标签图像数据
├── class_names.txt        #数据集类别名称
└── fold_indices.txt       #训练集的fold划分信息STL-10 Dataset/

2. 元信息格式

class_names.txt中存储了类别名称信息,每一行对应一个类别,具体内容如下:

airplane
bird
car
cat
deer
dog
horse
monkey
ship
truck

​​​​​​fold_indices.txt中存储了训练集的fold划分信息,每一行对应一个fold所包含的1000张图像的index。index从0开始,对应train_X.bin中的图像顺序。其前三行的部分内容如下:


3629 980 2693 3595 2169 817 2970 3494 1904 4503 3204 4305 1261 1199 ...
2633 4392 2850 4016 2255 3160 4632 891 3531 2671 1340 1651 3493 4439 ...
1355 3916 3348 3417 2726 3245 41 3239 313 1053 4002 3881 3328 3494 ...
...
 

3. 标注格式

训练集、测试集以及无标签图像的数据均存储在后缀为"_X.bin"的二进制文件中,存储格式为列优先,一次一个通道 (前96x96的值是R通道,接下来的96X96是G通道,最后是B通道),值在0-255之间。

训练集和测试集的标注存储在后缀为"_y.bin"的二进制文件中,值在1-10之间。


#读取数据脚本
import numpy as np

image_path = 'train_X.bin' #test_X.bin/unlabeled_X.bin
label_path = 'train_y.bin' #test_y.bin
with open(image_path, 'rb') as f:
    images = np.fromfile(f, dtype=np.uint8)
    images = images.reshape(-1, 3, 96, 96).transpose(0, 3, 2, 1) 

with open(label_path , 'rb') as f:
    labels = np.fromfile(f, dtype=np.uint8)

五、数据集下载链接

OpenDataLab平台为大家提供了STL-10数据集完整的数据集信息、直观的数据分布统计、流畅的下载速度、便捷的可视化脚本,欢迎体验。

https://opendatalab.com/STL-10

参考资料

[1]官网:https://cs.stanford.edu/~acoates/stl10/

[2]论文:Adam Coates, Honglak Lee, Andrew Y. Ng An Analysis of Single Layer Networks in Unsupervised Feature Learning AISTATS, 2011.

(论文下载链接:https://cs.stanford.edu/~acoates/papers/coatesleeng_aistats_2011.pdf)

更多数据集上架动态、更全面的数据集内容解读、最牛大佬在线答疑、最活跃的同行圈子……欢迎添加微信opendatalab_yunying 加入OpenDataLab官方交流群。

STL-10 数据集 原文: The STL-10 dataset is an image recognition dataset for developing unsupervised feature learning, deep learning, self-taught learning algorithms. It is inspired by theCIFAR-10 datasetbut with some modifications. In particular, each class has fewer la.. 阅读详情

相关推荐

stl10.torch:Torch 上的 STL10 数据集

直接从下载 STL10 数据集并将它们转换为 Torch 表。 基于 STL-10 格式 写入3个文件:stl10-train.t7, stl10-test.t7, stl10-unlabeled.t7 每个文件都是一个表格形式: th > stl10 = torch. load ( ' stl10-train.t7 ' ) th > print (stl10) { data : ByteTensor - size: 5000 x3x96x96 label : ByteTensor - size: 5000 } Unlabeled 文件只有数据字段

STL-10数据集

STL-10数据集 STL-10数据集是一个用于开发无监督特征学习、深度学习和自学学习算法的图像识别数据集。其灵感来源于CIFAR-10数据集,但经过一些修改。特别是,与CIFAR-10相比,每个类都有较少的标记训练示例,但提供了大量未标记示例,用于在监督训练之前学习图像模型。主要的挑战是利用未标记的数据(来自与标记数据相似但不同的分布)来构建有用的先验知识。我们还预计,该数据集(96x96)的更高分辨率将使其成为开发更具可扩展性的无监督学习方法的一个具有挑战性的基准。 下载地址:https://cs.st

你的深度学习小站 7461

论文阅读笔记:Extended Vision Transformer (ExViT) for Land Use and Land Cover Classification

注意力机制驱动的深度模型最近取得了成功,如最具代表性的视觉转换器(ViT),吸引了一波高级研究来探索它们对更广泛领域的适应。然而,遥感(RS)领域中基于Transformer的方法更关注单模态数据,这可能会在充分利用不断增长的多模态地球观测数据时失去可扩展性。为此,我们提出了一种新的多模式深度学习框架,通过在最小修改的情况下扩展传统的ViT,针对土地利用和土地覆盖(LULC)分类任务。

嗑研狗的日常 945

【计算机视觉 | 图像分类】图像分类常用数据集及其介绍(一)

【计算机视觉 | 图像分类】图像分类常用数据集及其介绍(一)

wzk4869的博客 3万+

Unity游戏Mono注入实战:从反编译到功能扩展

本文详细介绍了Unity游戏Mono注入的完整实战流程,从使用dnSpy反编译游戏核心逻辑,到编写自定义C#功能DLL,再到利用SharpMonoInjector进行动态注入。文章深入讲解了如何通过Harmony库拦截修改游戏方法,并介绍了使用MelonLoader框架和UnityExplorer进行高级模组开发与调试,最终通过一个游戏对象透视(ESP)案例演示了功能扩展的实现。

weixin_29018335的博客 458

BQ27220燃料计量芯片与Arduino库kode_bq27220实战指南

燃料计量(Fuel Gauge)是嵌入式电池管理系统的核心技术,通过电压、电流、温度多维建模实现荷电状态(SOC)与健康状态(SOH)的动态估算。其原理基于电化学阻抗补偿算法(如CEDV),区别于简单电压查表法,具备自学习与老化适应能力。该技术显著提升便携设备续航预测精度与低功耗可靠性,广泛应用于TWS耳机、可穿戴设备及医疗电子等场景。本文围绕TI BQ27220高精度燃料计量IC及其配套Arduino库kode_bq27220展开,覆盖硬件连接规范、I²C初始化要点、SOC/SOH实时读取、EDV阈值配置

weixin_35671843的博客 331

STL-10数据集说明

STL-10数据集说明

weixin_44846680的博客 4670

CORS(跨域资源共享)漏洞解决方法

最近,测试环境上的项目被360测试人员检测出来有一个CORS漏洞,以下记录下漏洞问题与解决方法。 一、低危漏洞:CORS漏洞问题 测试人员访问某个url,将请求头中的Origin字段修改为任意值,结果仍然能获得正确的响应报文,就说明有CORS漏洞。 当CORS的设置不正确时,就会带来安全问题;当响应头中的Access-Control-Allow-Origin设置为null或*时,表示信任任何域,这时候就可能引入安全问题。 修复方法是合理配置CORS,判断Origin是否合法;具体说就是不让在nginx或t

BHSZZY的博客 3万+

10 STL -- 学习笔记

C++STL相关内容,包括容器(序列式容器,关联式容器,无序关联式容器,容器适配器),迭代器,适配器,算法,函数对象,空间配置器allocator(底层源码的剖析)相关知识。

技术小白er的救赎之路 974

从建模到调参:基于Simulink的两轮差速机器人轨迹跟踪PID控制全流程解析

本文详细解析了基于Simulink的两轮差速机器人轨迹跟踪PID控制全流程,涵盖运动学建模、仿真环境搭建、PID控制器设计与实现等关键环节。通过Simulink仿真和可视化调试技巧,帮助开发者掌握移动机器人运动控制的核心技术,提升轨迹跟踪精度与性能优化能力。

weixin_28717683的博客 243

机器学习系列(3)_逻辑回归应用之Kaggle泰坦尼克之灾

f作者: 寒小阳 &&龙心尘 时间:2015年10月。 出处: 声明:版权所有,转载请注明出处,谢谢。手把手机器学习之逻辑回归应用——Kaggle泰坦尼克之灾1.引言先说一句,年末双十一什么的一来,真是非(mang)常(cheng)欢(gou)乐(le)!然后push自己抽出时间来写这篇blog的原因也非常简单: 写完前两篇逻辑回归的介绍和各个角度理解之后,小伙伴们纷纷表示『好像很高级的样纸,

寒小阳 43万+

C++STL10_STL基本概念,STL三大组件,string容器,vector容器(单端数组),deque容器(双端数组)

STL基本概念,STL三大组件,string容器,vector容器(单端数组),deque容器(双端数组)

weixin_41865866的博客 602

Altium Designer(AD24)导入DDB库文件(Protel 99SE)方法

Altium Designer和Protel均为Altium公司开发的软件。本文介绍Altium Designer 24软件导入DDB库文件(Protel 99SE)方法。

fydar的博客 1978

无监督特征学习的数据集简介

一、STL-10数据集 原文: The STL-10 dataset is an image recognition dataset for developing unsupervised feature learning, deep learning, self-taught learning algorithms. It is inspired by the CIFAR-10 dataset but with some modifications. In particular, each class h

qq_36717487的博客 1517

YOLOv11的代数不变量解释:Syzygy模分析特征重要性,用交换代数揭示卷积核的语义相关性

本文提出了一种基于代数几何与交换代数的创新方法,特别是运用Syzygy模理论,对YOLOv11目标检测算法的卷积核语义相关性进行数学解释。研究揭示了YOLO系列算法演进背后的代数结构特征,建立了网络组件与多项式环、理想簇等代数概念的对应关系。通过构建分层的准同构代数系统,分析了YOLOv11在不同尺度下保持语义不变性的数学本质。文章系统阐述了Syzygy模在CNN特征冗余分析、跨层依赖关系建模和语义聚类中的应用,并提出了适用于动态稀疏训练的改进算法。该理论框架为深度神经网络的解释性研究提供了新的数学工具,同

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1270

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

CNN物体分类识别(基于MATLAB)

CNN物体图像分类识别(基于MATLAB)STL-10数据集选择数据集简介数据集处理CNN网络设计对VggNet进行修改对ResNet进行修改进行训练用修改后的VggNet进行训练训练效果用修改后的ResNet进行训练训练效果 STL-10数据集选择 数据集简介 选择STL-10数据集,STL-10数据集基于CIFAR-10数据集进行修改,与CIFAR-10相比,每个类的训练集的数量更少,且图片有着更高的分辨率(96×96)。 该数据集包括10个类,分别为airplane,bird, car, cat, d

kkill_youokk_的博客 4244

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

UFLDL stl-10

Reference: [1]http://cs.stanford.edu/~acoates/stl10/ [2]https://github.com/mttk/STL10/blob/master/stl10_input.pystl10是一个受到cifar-10启发的数据库。其中包含包含主要有三部分数据,unlabeled data , train data,test data 。主要步骤是首先用

Zhaohui1995_Yang的专栏 1283

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

STL10数据集分类SOTA:Epoch=2轮,准确率达98.39%

本文提出了一种基于CLIP(ViT-B/32)模型的STL-10图像分类方法。通过在预训练视觉编码器后添加两层全连接层,配合标签平滑技术和后期解冻策略,模型在仅使用5000个训练样本的情况下取得了98.39%的测试准确率,超越了现有SOTA水平(96.5%)。实验结果显示:1)训练过程稳定收敛,无过拟合现象;2)测试准确率从初始97.65%提升至98.41%,泛化能力优异;3)采用混合精度训练和解冻最后2层ViT块的方法有效提升了模型性能。该方法证明了CLIP预训练模型在少样本场景下的强大迁移学习能力。

K15862251018的博客 1003

无监督STL-10

STL-10 input.py 无监督学习数据集的入口代码

cxkshizhenshuai的博客 809

STL10——手写一个简单版本的unordered_map(包含特点和基本用法)

STL10——手写一个简单版本的unordered_map(包含特点和基本用法)

2402_84438596的博客 1236

基于SCAN的无监督图像分类教程:STL-10数据集实战

本文将通过STL-10数据集,详细介绍如何使用SCAN(Semantic Clustering by Adopting Nearest neighbors)方法实现无监督图像分类。SCAN是一种无需人工标注即可学习图像分类的创新方法,其核心思想是通过自监督预训练和语义聚类两个阶段实现。 ## 环境准备 ### 硬件要求 建议使用配备NVIDIA GPU(1080TI或更高性能)的工作站进行实验...

gitblog_00448的博客 630

stl文件 python_STL_10数据集处理

这次要写的是stl10用于自编码器自编码,又称自编码器(autoencoder),是神经网络的一种,经过训练后能尝试将输入复制到输出。自编码器(autoencoder)内部有一个隐藏层h,可以产生编码(code)表示输入。该网络可以看作由两部分组成:一个由函数h = f(x) 表示的编码器和一个生成重构的解码器r = g(h)。自编码器(Autoencoder,AE)是一个3层或者大于3层的神经网...

weixin_39614094的博客 1196

STL简介

例如,排序只需一行 std::sort(v.begin(), v.end())。由P. J. Plauger开发,继承自HP版本,被Windows Visual C++采用,不能公开或修改,缺陷:可读。复用性:提供了通用的数据结构(如 vector、map)和算法(如 sort、find),避免重复造轮子。高效算法:STL 的算法经过高度优化,如 sort 基于快速排序和插入排序的混合实现,性能接近理论最优。内存管理:容器(如 vector)自动管理内存,避免手动分配 / 释放内存的风险(如内存泄漏)。

2503_90270041的博客 987

Pointnet2.ScanNet 项目教程

Pointnet2.ScanNet 项目教程 1. 项目介绍 Pointnet2.ScanNet 是一个基于 PyTorch 和 CUDA 加速的 PointNet++ 语义分割项目,专门用于在 ScanNet 数据集上进行语义分割任务。该项目基于原始的 PointNet++ 代码库,并结合了 PyTorch 的实现,提供了 CUDA 加速功能,以提高语义分割的性能。 主要特点 CUDA 加速:...

gitblog_00015的博客 753

STL-10 dataset

STL-10 dataset The STL-10 dataset is an image recognition dataset for developing unsupervised feature learning, deep learning, self-taught learning algorithms. It is inspired by the CIFAR-10 da

Kylin-Xu的专栏 7839

PyTorch实战:STL-10数据集图像多分类任务全流程解析

通过计算训练集的RGB通道均值(meanR,meanG,meanB)和标准差(stdR,stdG,stdB),对图像进行归一化操作。通过绘制训练-验证损失曲线和准确率曲线,可以清晰观察到:预训练模型在初期就展现出明显优势,验证准确率比随机初始化模型高出约15-20%。对于需要迭代调参的场景,建议先在小批量数据上开启sanity_check模式快速验证流程正确性,再扩展到完整数据集训练。平台已预装PyTorch环境,省去了复杂的库依赖配置过程,特别适合快速验证模型效果。

SilvermistOwl67的博客 787
上一篇: 这么好用的开源数据集平台,没人知道的话我们真的会伤心……
下一篇: 20万帧,超过88万条实例级车道,14个车道类别……复杂场景的车道识别,可以用这个数据集
OpenDataLab
博客等级 码龄4年 636粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值