Ein Autoencoder bzw. die Dimensionsreduktion kann auch genutzt werden, um Daten einer Klassifikationsaufgabe zu visualisieren. Dazu gehen wir noch einen Schritt weiter und reduzieren die Daten des HandwrittenDigits-Pakets auf nur zwei Werte:
Unter Verwendung dieses Layouts nutzen wir nun folgende Erkenntnisse:
- Jedes Eingangssignal (bzw. jedes Bild des HandwrittenDigits-Pakets) kann gemäß dem Encoder als Punkt in der Ebene kodiert werden. In der folgenden Anwendung werden die kodierten Bilder der Trainingsmenge daher als Punkte dargestellt, pro Ziffer in einer jeweils unterschiedlichen Farbe.
- Jeder Punkt in der Ebene (bestehend aus x- und y-Koordinaten jeweils zwischen 0 und 1) kann gemäß dem Decoder dekodiert werden, um daraus ein Bild bzw. eine Ziffer zu erzeugen.
Vorausgesetzt wird dabei natürlich wieder, dass der Autoencoder zuvor anhand einer ausreichend großen Datenmenge trainiert wurde. Zum Einsatz kommen anschließend die Funktionen zum Kodieren (.encode) sowie zum Dekodieren (.decode):
Schaue dir dazu die nachfolgende Anwendung an. Einzig und allein zur übersichtlicheren Darstellung beschränken wir uns dabei auf die Ziffern 0 bis 4.
Die folgende Anwendung zeigt zudem, dass Autoencoder auch dazu genutzt werden können, um herauszufinden, ob sich ein Datensatz zur Klassifikation eignet oder nicht. Dass dies beim HandwrittenDigits-Paket der Fall ist, ist daran zu erkennen, dass die Punkte bzw. kodierten Bilder jeder Ziffer als Cluster auftreten. Und das, obwohl die Klassifikationsergebnisse der einzelnen Bilder in keinster Art und Weise in die Trainingsphase des Autoencoders eingeflossen sind.