Original-Datensaetze fuer MNIST[SOLVED]

F

Fluffy

Guest
Hallo,

Ich bin gerade dabei mich etwas mehr mit ML auseinander zu setzen.
Nun ist ein klassisches Beispiel Nummernerkennung mittels des MNIST-Datensatzes ( http://yann.lecun.com/exdb/mnist/ ) .
Nun ist das Problem hierbei das die ihr eignes Format haben.
Ich suche hier http://archive.ics.uci.edu/ml/index.php und ich finde andere Datensaetze aber auch die sind schon vorbereitet.

Ich verstehe das das
a) Platzsparend ist
b) direkte Eingaben fuer das Neuronale Netz ist.

ABER:
Ich schaue mir gerade PyTorch an und wuerde das gerne Schritt fuer Schritt machen.
Datenaufbereitung ist nichts spannendes aber arbeitsintensiv und das ist was was ich nicht brauche, fuer ML und schon kann, notfalls wuerde ich diese Datensaetze einfach in eine 16x16 Matrix kippen und wieder in ein Bild verwandeln, aber wenn ich nicht muss, wiso sollte ich.

Nun wollte ich mal fragen ob es i.w. die originalen Bilder dafuer gibt, oder i.w. aehnliche rohen Datensaetze.
Haette eigentlich gedacht das Wissenschaftler alle ihre Datensaetze veroeffentliche, und nicht nur die die man fuer das neuronale Netz als eingabe braucht.
Cheers


Fluffy
 
Ich hab mich fuer https://archive.ics.uci.edu/ml/machine-learning-databases/semeion/ entschieden.
Sollte jemand auch mit den Bildern und nicht den vorprocessierten Daten arbeiten wollen.

Nachfolgend der Code zum umwandeln, es sei aber gesagt das diese Daten keinen wirklichen Rueckschluss auf das original Bild zulassen, da es keine Grayscale gibt.

Python:
from PIL import Image, ImageFile

number_of_line = 0

with open('semeion.data', 'r') as datafile:
    for line in datafile.readlines():
        number_of_line += 1
        data = line.splitlines()[0].replace(".0000", "").split(' ')[:-11]
        label_data = line.splitlines()[0].split(' ')[-11:-1]
        label_value = label_data.index('1')
        dinput = bytearray()
        img = Image.new('L', (16, 16))

        for x in data:
            dinput.append(int(x) * 255)
        img.frombytes(
            bytes(dinput)
        )
        img.save('data/%d_%d.png' % (label_value, number_of_line))

Cheers
Fluffy
 
Zurück
Oben