#mnist #matrix #idx #file-format #database #multidimensional #ones

nightly idx_parser

解析类似MNIST数据库文件中使用的IDX文件

3个不稳定版本

0.3.0 2021年11月18日
0.2.1 2021年11月11日
0.2.0 2021年11月11日
0.1.1 2021年11月6日
0.1.0 2021年11月6日

#2018解析器实现

GPL-2.0-or-later WITH Bison-exception-2…

15KB
392

IDX解析器

用Rust编写的IDX数据文件解析器。

IDX文件格式

IDX文件格式是一种用于各种数值类型的向量和多维矩阵的简单格式。

基本格式是

magic number
size in dimension 0
size in dimension 1
size in dimension 2
.....
size in dimension N
data

魔数是一个整数(最高位在前)。前两个字节始终为0。

第三个字节表示数据的类型

0x08: unsigned byte
0x09: signed byte
0x0B: short (2 bytes)
0x0C: int (4 bytes)
0x0D: float (4 bytes)
0x0E: double (8 bytes)

第四个字节表示向量/矩阵的维度数量:向量为1,矩阵为2...

每个维度的尺寸是4个字节的整数(最高位在前,大端模式,如大多数非英特尔处理器)。

数据存储方式类似于C数组,即最后一个维度的索引变化最快。

(来自 http://yann.lecun.com/exdb/mnist/ )

无运行时依赖