Ich bin Neuling in maschinellem Lernen und Keras und arbeite jetzt an einem Problem der Klassifizierung von Bildern mit Keras. Die Eingabe ist Bild markiert. Nach einer gewissen Vorverarbeitung werden die Trainingsdaten in der Python-Liste wie folgt dargestellt:
[["dog", "path/to/dog/imageX.jpg"],["cat", "path/to/cat/imageX.jpg"], ["bird", "path/to/cat/imageX.jpg"]]
Die Klassenbezeichnungen lauten "Hund", "Katze" und "Vogel". Ich denke, dass One-Hot-Codierung für dieses Problem verwendet werden sollte, aber ich bin nicht sehr klar, wie es mit diesen Zeichenfolgenbezeichnungen umgeht. Ich habe sklearns LabelEncoder () folgendermaßen ausprobiert:
encoder = LabelEncoder()
trafomed_label = encoder.fit_transform(["dog", "cat", "bird"])
print(trafomed_label)
Die Ausgabe ist [2 1 0], was sich von der erwarteten Ausgabe von [[1,0,0], [0,1,0], [0,0,1]] unterscheidet. Es kann mit einigem Programmieren gemacht werden, aber ich würde gerne wissen, ob es einen "Standard" oder "traditionellen" Weg gibt, damit umzugehen?