Импорт набора данных MNIST с помощью Fortran - PullRequest
0 голосов
/ 04 июля 2018

Вопрос по Linux / GFortran.

Я точно знаю, в чем заключается моя проблема, но не могу понять, как ее решить ...

Я хочу импортировать изображения и метки набора данных MNIST в массивы Фортрана, чтобы поиграться с алгоритмами машинного обучения с использованием Фортрана. Я сделал это с Python, но я не могу повторить чтение файлов данных с Fortran.

Файлы набора данных и описания макетов файлов находятся по адресу:

http://yann.lecun.com/exdb/mnist/

2 проблемы, с которыми я борюсь, это ...

1) Данные в файлах хранятся в неподписанных байтах. Я не могу найти похожий тип данных в Фортране. Я использую целое число (kind = 1), чтобы успешно прочитать первые 4 байта, что составляет магическое число файла, но меня беспокоит неправильное чтение значения одного из этих байтов в тип данных целое число со знаком (kind = 1) .

2) Данные хранятся в формате Big-Endian. Поэтому, когда я читаю количество изображений, строк и столбцов, которые хранятся в 4-байтовых целых числах, в мой компьютер с прямым порядком байтов, я получаю очевидную путаницу. В идеале, я хотел бы иметь возможность указывать конец переменной для чтения из файла в дескрипторе редактирования. Это возможно?

Любая помощь будет принята с благодарностью.

С уважением

...