Der Inhalt der Datei sollte aus einigen 32-Bit-Ganzzahlen und dann aus einer Reihe von vorzeichenlosen Bytes bestehen. Offensichtlich sehe ich das nicht.
Nein, genau das sehen Sie.
Alle Dateien bestehen aus rohen Bytes. Alles andere ist eine Interpretationssache und hängt davon ab, mit welchem Programm Sie die Datei öffnen.
Wenn Sie die Datei in einem Texteditor öffnen, wird versucht, Text anzuzeigen. Es werden niemals rohe Bytewerte angezeigt, sondern nur die entsprechenden Zeichen aus der ASCII-Tabelle (oder aus Unicode oder einer anderen Codepage).
Die MNIST-Download-Seite besagt jedoch nicht, dass Ihre Daten in ASCII als Dezimalzahlen notiert werden. Stattdessen werden Byte-Werte direkt zum Codieren von Daten verwendet: Eine "32-Bit-Ganzzahl" ist auf vier Bytes (jeweils 8 Bit) verteilt. Ein "vorzeichenloses Byte" ist ein Byte.
Kurz gesagt, die heruntergeladene Datei hat ein benutzerdefiniertes Format, für dessen Interpretation spezielle Software erforderlich ist. ein Texteditor reicht nicht aus. Stattdessen:
Sie können die Datei in einem "Hex-Editor" -Programm öffnen . Hex - Editoren tun Roh - Byte - Werte zeigen (sie sind speziell für die Bearbeitung von Binärdateien gemeint ist ), obwohl es immer noch bis zu Ihnen jeden Sinn der Daten zu machen, die angezeigt wird .
Sie könnten ein kurzes Programm schreiben, um die Daten in ein Textformat zu konvertieren. Das Originalformat, das MNIST beschreibt, ist so einfach, dass es zum Beispiel 5 bis 10 Zeilen Python wäre.
Die Dateien enthalten grafische Daten - rohe Bitmaps als eine Reihe von Pixeln. Mit etwas mehr Programmierung könnten sie also in eine Reihe von Bilddateien (BMP, GIF oder PNG) konvertiert werden.