# 介绍 Fashion-MNIST是一个替代MNIST手写数字集的图像数据集。 它是由Zalando(一家德国的时尚科技公司)旗下的研究部门提供。其涵盖了来自10种类别的共7万个不同商品的正面图片。 Fashion-MNIST的大小、格式和训练集/测试集划分与原始的MNIST完全一致。60000/10000的训练测试数据划分,28x28的灰度图片。你可以直接用它来测试你的机器学习和深度学习算法性能,且不需要改动任何的代码。 这个数据集的样子大致如下(每个类别占三行):  # 为什么要做这个数据集 经典的MNIST数据集包含了大量的手写数字。十几年来,来自机器学习、机器视觉、人工智能、深度学习领域的研究员们把这个数据集作为衡量算法的基准之一。你会在很多的会议,期刊的论文中发现这个数据集的身影。实际上,MNIST数据集已经成为算法作者的必测的数据集之一。有人曾调侃道:"如果一个算法在MNIST不work, 那么它就根本没法用;而如果它在MNIST上work, 它在其他数据上也可能不work!" Fashion-MNIST的目的是要成为MNIST数据集的一个直接替代品。作为算法作者,你不需要修改任何的代码,就可以直接使用这个数据集。Fashion-MNIST的图片大小,训练、测试样本数及类别数与经典MNIST完全相同。 # 写给专业的机器学习研究者 我们是认真的。取代MNIST数据集的原因由如下几个: - MNIST太简单了。 很多深度学习算法在测试集上的准确率已经达到99.6%!不妨看看我们基于scikit-learn上对经典机器学习算法的评测 和这段代码: "Most pairs of MNIST digits can be distinguished pretty well by just one pixel"(翻译:大多数MNIST只需要一个像素就可以区分开!) - MNIST被用烂了。 参考:"Ian Goodfellow wants people to move away from mnist"(翻译:Ian Goodfellow希望人们不要再用MNIST了。) - MNIST数字识别的任务不代表现代机器学习。 参考:"François Cholle: Ideas on MNIST do not transfer to real CV" (翻译:在MNIST上看似有效的想法没法迁移到真正的机器视觉问题上。) # 获取数据 很多的机器学习库已经内置了Fashion-MNIST数据或接口,方便你直接使用。 你可以使用以下链接下载这个数据集。Fashion-MNIST的数据集的存储方式和命名与经典MNIST数据集完全一致。 | 名称 | 描述 | 样本数量 | 文件大小 | 链接 | MD5校验和 | | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | | train-images-idx3-ubyte.gz | 训练集的图像 | 60,000 | 26 MBytes | [下载](http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/train-images-idx3-ubyte.gz "下载") | 8d4fb7e6c68d591d4c3dfef9ec88bf0d | | train-labels-idx1-ubyte.gz | 训练集的类别标签 | 60,000 | 29 KBytes | [下载](http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/train-labels-idx1-ubyte.gz "下载") | 25c81989df183df01b3e8a0aad5dffbe | | t10k-images-idx3-ubyte.gz | 测试集的图像 | 10,000 | 4.3 MBytes | [下载](http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/t10k-images-idx3-ubyte.gz "下载") | bef4ecab320f06d8554ea6380940ec79 | | t10k-labels-idx1-ubyte.gz | 测试集的类别标签 | 10,000 | 5.1 KBytes | [下载](http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/t10k-labels-idx1-ubyte.gz "下载") | bb300cfdad3c16e7a12a480ee83cd310 | 或者,你可以直接克隆这个代码库。数据集就放在data/fashion下。这个代码库还包含了一些用于评测和可视化的脚本。 ```python git clone git@github.com:zalandoresearch/fashion-mnist.git ``` # 类别标注 每个训练和测试样本都按照以下类别进行了标注: | 标注编号 | 描述 | | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | :------------ | 0 | T-shirt/top(T恤) | | 1 | Trouser(裤子) | | 2 | Pullover(套衫) | | 3 | Dress(裙子) | | 4 | Coat(外套) | | 5 | Sandal(凉鞋) | | 6 | Shirt(汗衫) | | 7 | Sneaker(运动鞋) | | 8 | Bag(包) | | 9 | Ankle boot(踝靴) | # 如何载入数据? ## 使用Python (需要安装numpy) - 你可以直接使用utils/mnist_reader: ```python import mnist_reader X_train, y_train = mnist_reader.load_mnist('data/fashion', kind='train') X_test, y_test = mnist_reader.load_mnist('data/fashion', kind='t10k') ``` ## 使用Tensorflow 请确保你已经下载了我们的数据集并把它放到了data/fashion下。不然, Tensorflow会自动下载并使用原始的MNIST。 ```python from tensorflow.examples.tutorials.mnist import input_data data = input_data.read_data_sets('data/fashion') data.train.next_batch(BATCH_SIZE) ``` 注意,Tensorflow (master ver.) 支持向read_data_sets函数传入MNIST数据集的地址。你可以使用: ```python data = input_data.read_data_sets('data/fashion', source_url='http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/') ``` Tensorflow的官网也提供了一份使用高级APItf.keras训练Fashion-MNIST的详细教程,你可以在这里查看它。 # 使用其它机器学习库 截止今日,以下软件库中已内置了对Fashion-MNIST的支持。你只需要按照他们的文档载入Fashion-MNIST即可使用此数据集。 - Apache MXNet Gluon:https://mxnet.incubator.apache.org/api/python/gluon/data.html - deeplearn.js:https://deeplearnjs.org/demos/model-builder/ - Kaggle:https://www.kaggle.com/zalando-research/fashionmnist - Pytorch:http://pytorch.org/docs/master/torchvision/datasets.html#fashion-mnist - Keras:https://keras.io/datasets/#fashion-mnist-database-of-fashion-articles - Edward:http://edwardlib.org/api/observations/fashion_mnist - Tensorflow:https://www.tensorflow.org/versions/r1.5/api_docs/python/tf/keras/datasets/fashion_mnist - Torch:https://github.com/mingloo/fashion-mnist - JuliaML:https://github.com/JuliaML/MLDatasets.jl - Chainer (latest):https://docs.chainer.org/en/latest/reference/generated/chainer.datasets.get_fashion_mnist.html?highlight=fashion-mnist # 基准测试 我们使用scikit-learn做了一套自动评测系统。它涵盖了除深度学习之外的129种经典机器学习模型(包含不同的参数)。你可以在这里以互动的方式查看结果。 查看结果:http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/  你可以运行benchmark/runner.py对结果进行重现。而我们更推荐的方法是使用Dockerfile打包部署后以Container的方式运行。 我们欢迎你提交自己的模型评测。请使用Github新建一个Issue。不妨先看看如何贡献。如果你提交自己的模型,请先确保这个模型没有在这个列表中被测试过。 *更多测试结果可以查看:* https://github.com/zalandoresearch/fashion-mnist # 更多在Fashion-MNIST上的探索和尝试 - *Fashion-MNIST: 年度总结* https://hanxiao.io/2018/09/28/Fashion-MNIST-Year-In-Review/ 在Google Scholar中查看引用Fashion-MNIST的论文 ###生成对抗网络 (GANs) Tensorflow implementation of various GANs and VAEs. (推荐阅读! 注意不同GANs的算法在Fashion-MNIST上生成的样本明显不同,而这点在经典的MNIST数据集上是观察不到的。) - *Make a ghost wardrobe using DCGAN* https://twitter.com/spaceLenny/status/901488938023403520 - *fashion-mnist的gan玩具* http://kexue.fm/archives/4540/ *CGAN output after 5000 steps https://github.com/a7b23/Conditional-GAN-using-tensorflow-slim - *live demo of Generative Adversarial Network model with deeplearn.js* http://cognitivechaos.com/playground/fashion-gan/ - *GAN Playground - Explore Generative Adversarial Nets in your Browser* https://reiinakano.github.io/gan-playground/ ### 聚类 - *Xifeng Guo's implementation of Unsupervised Deep Embedding for Clustering Analysis (DEC)* http://proceedings.mlr.press/v48/xieb16.pdf - *Leland McInnes's Uniform Manifold Approximation and Projection (UMAP)* https://github.com/lmcinnes/umap # 视频教程 - Machine Learning Meets Fashion by Yufeng G @ Google Cloud:https://youtu.be/RJudqel8DVA - Machine Learning Meets Fashion:https://youtu.be/FloMHMOU5Bs - Introduction to Kaggle Kernels by Yufeng G @ Google Cloud:https://youtu.be/kGktiYF5upk - Introduction to Kaggle Kernels:https://youtu.be/H66GDuLsGl4 # 数据可视化 ## t-SNE在Fashion-MNIST(上)和经典MNIST上的可视化(下)   ## PCA在Fashion-MNIST(上)和经典MNIST上的可视化(下)   ## UMAP在Fashion-MNIST(上)和经典MNIST上的可视化(下)   来源:https://github.com/zalandoresearch/fashion-mnist 作者:https://hanxiao.io/about/ 最后修改:2019 年 12 月 16 日 01 : 16 PM © 允许规范转载 赞赏 文章有用,请随意赞赏 ×Close 赞赏作者 扫一扫支付 支付宝支付 微信支付