Набор данных MNIST — файлы .gz не содержат «сырых» байтов

Набор данных MNIST — файлы .gz не содержат «сырых» байтов

Я пытаюсь использоватьНабор данных MNIST. Однако, когда я загружаю файл образа .gz и затем распаковываю его, я получаю много "сжатых" байтов. Вот немного из этого:

'Tπüó<$fi˛˛˛˛Ò∆∆∆∆∆∆∆∆™4CrHr£„˛·˛˛˛˙²˛åBCCC;Ï˛jS˝—ÈˇSÅ˛Ó,;˘˛>Ö˛ª   
Õ¯:~˛∂K˚9›˛¶À˛€#&˛˛M‡˛sÖ˛˛4=Ú˛˛4y˛˛€(y˛œt}´ˇˇñ]©˝˝˝˝˝˝⁄©˝˝˝’é∞˝˝z4˙˝“ 
Œ˝åM˚“z¯˝A—˝˝Au˜˝∆
L˜˝Á?Ä˝˝ê∞ˆ˝üÍ˝È#∆˝˝çN¯˝Ω»˝˝çÜ˝˝≠

Я думаю, что это, по крайней мере, «сжатые» байты. Однако, согласно «объяснению формата файла» внизу страницы, содержимое файла должно быть какими-то 32-битными целыми числами, а затем кучей беззнаковых байтов. Очевидно, это не то, что я вижу.
Что является причиной этого? Это потому, что я дважды щелкнул файл .gz? Это потому, что я неправильно распаковал файл? Это из-за отсутствия технических знаний, и именно такими должны быть файлы?
По сути, то, что я сказал выше, было тем, как исправить проблему и как ее решить.
Кстати: у меня Mac OS 10.13.3. Файл был загружен из Google Chrome

решение1

содержимое файла должно быть 32-битными целыми числами, а затем кучей беззнаковых байтов. Очевидно, это не то, что я вижу.

Нет, это именно то, что вы видите.

Всефайлы состоят из сырых байтов; все остальное — вопрос интерпретации и зависит от того, с помощью какой программы вы открываете файл.

Если открыть файл в текстовом редакторе, он попытается отобразить текст. Он никогда не покажет сырые значения байтов, а только соответствующие символы из таблицы ASCII (или из Unicode или другой кодовой страницы).

Однако страница загрузки MNISTнескажем, ваши данные будут записаны как десятичные числа в ASCII. Вместо этого он напрямую использует байтовые значения для кодирования данных: «32-битное целое число» распределено по четырем байтам (по 8 бит каждый); «беззнаковый байт» — это, ну, один байт.

Короче говоря, загруженный файл имеет специальный формат, для интерпретации которого требуется специальное программное обеспечение; текстовый редактор не подойдет. Вместо этого:

  • Вы можете открыть файл в"шестнадцатеричный редактор"программа. Hex-редакторыделатьотображать необработанные значения байтов (они предназначены специально для редактирования двоичных файлов), хотя вам все равно придется самостоятельно извлекать какой-либо смысл из отображаемых данных.

  • Вы можете написать короткую программу для преобразования данных в текстовый формат. Исходный формат, описанный MNIST, достаточно прост, чтобы он занял, например, 5–10 строк Python.

  • Файлы содержат графические данные – необработанные битовые карты, как ряд пикселей. Поэтому с некоторым дополнительным программированием их можно преобразовать в ряд файлов изображений (BMP, GIF или PNG).

Связанный контент