# Boris, Finalist 2019, gibt euch Tipps zum Suchen, Finden und Bearbeitung des Datensatzes für euer Projekt

Beim maschinellen Lernen werden Algorithmen auf Daten trainiert. Die Größe des Datensatzes und die Qualität der Daten bestimmen maßgeblich wie gut die künstliche Intelligenz werden kann. Nehmt euch also ruhig Zeit, um den richtigen Datensatz auszuwählen!

Bei vorgegebenen Aufgaben oder Online-Kursen werden solche Datensätze meist bereitgestellt. Möchte man sein eigenes Projekt umsetzen, muss man seinen Datensatz selbst auswählen und aufbereiten, oder sogar erstellen.

Hier möchte ich euch ein paar Möglichkeiten zeigen, welche euch dabei helfen können, eigenständig Daten zu sammeln. Ihr solltet damit rechnen, mindestens 30 Prozent der Zeit, die ihr an einem Projekt arbeitet, damit zu verbringen, Daten zu sammeln und aufzubereiten.

# Datensätze suchen

Wenn man sich an ein bereits bekanntes Problem wagen möchte, ist die Chance groß, dass es online bereits Datensätze dafür gibt. Eine der größten dieser Plattformen ist kaggle.com. Hier findet ihr neben KI-Challenges auch eine große Bandbreite an verfügbaren Datensätzen. Auch die Webseiten ourworldindata.org und github.com/awesomedata/awesome-public-datasets bieten euch eine vielfältige Auswahl an großen, geeigneten Datensätzen. Viele Enthusiasten laden ihre Datensätze auch direkt auf Github.com hoch. Es kann sich lohnen hier nach bestimmten Kriterien zu suchen. Ich habe hier einen Datensatz mit Fotos gefunden, welchen ich in mein Projekt BetterRecycling integrieren konnte. Auf Webseiten wie stackoverflow.com finden sich oft in den Antworten der Beiträge nützliche Links, die euch auf eurer Suche nach Daten weiterbringen.

# Datensatz erstellen

Solltet ihr in bestehenden Datenbanken nicht die benötigten Daten finden, müsst ihr selbst aktiv werden und Daten sammeln! Begeistert Eure Freunde und Familie von eurem Projekt und motiviert sie euch bei der Datensammlung zu unterstützen. Ihr könnt zum Beispiel eure Lehrer fragen und einen Vortrag in der Schule halten, in dem ihr euer Projekt präsentiert. Auf diese Weise habe ich über 20 Personen für mein Projekt begeistern können, die insgesamt ein paar Hunderte Bilder von verwertbaren Gegenständen gemacht haben! Benötigt ihr komplexere Daten, könnte es vielleicht Sinn machen, eine Firma oder Organisation zu kontaktieren.

# Kriterien für den Datensatz

Falls ihr einen passenden Datensatz gefunden oder euch dazu entschlossen habt, einen eigenen Datensatz zusammenzustellen, müsst ihr noch ein paar Faktoren beachten, bevor ihr die Daten durch euer Machine Learning-Modell jagen könnt. Falls möglich, solltet ihr die Qualität der Daten prüfen. Bei Bilddaten ist dies recht einfach: Ihr schaut nach, ob die Bilder sauber aufgenommen wurden und das abbilden, was ihr erwartet. Bei etwas abstrakteren Datenmengen reicht einfaches „Hinsehen“ nicht mehr. Hier müsst ihr meist ein kleines Skript schreiben, um die Daten zu analysieren. Versucht euren Datensatz möglichst divers zu halten, d.h. bei einem Klassifikationsproblem sollte jede Klasse ungefähr die gleiche Anzahl an Einträgen haben; bei einem Regressionsproblem solltet ihr beispielsweise darauf achten, eine relativ hohe Standardabweichung zu erzielen. Auf keinen Fall soll dies allerdings heißen, dass ihr nicht alle möglichen Daten sammeln solltet, im Gegenteil! Am Anfang ist es am wichtigsten, erst einmal so viele Daten wie möglich zu sammeln. Danach könnt ihr entspannt „filtern“ und nur die besten Daten für euer Projekt verwerten. Bei der Bearbeitung der Daten müsst ihr gegebenenfalls die Daten nochmals manuell durchgehen und in Kategorien zu sortieren, bzw. bestehende Einordnungen noch einmal zu überprüfen. Oft kann hier ein Grund liegen, warum euer Modell nicht so gute Resultate erzielt, wie ihr es euch vielleicht vorstellt.

# Datensatz-Vorverarbeitung

Bevor ihr eure (mehr oder weniger) mühselig zusammengesammelten Daten an euer Programm weitergebt, müsst ihr noch einmal ein paar Dinge beachten. Drei wichtige Tipps habe ich euch hier einmal zusammengefasst: - Sucht nach Ausreißern (d.h. Datenpunkten, die weit über den durchschnittlichen Werten liegen) und entfernt oder normiert sie. - Standardisiert eure Daten. Dies kann die Generalisierung eures Models fördern. Manchmal ist dies aber auch notwendig, beispielsweise müsst ihr bei Bilddaten darauf achten, dass alle Bilder die gleiche Skalierung haben, also z.B. 224x224 Pixel. - Probiert Methoden zur Dimensionsreduktion (z.B. PCA) aus, wenn eure Daten sehr komplex sind (z.B. Vektoren mit >50 Einträgen). Ich weiß, das hört sich nach sehr viel Aufwand für den eigentlich „einfachsten“ Schritt beim Trainieren einer KI an. In realen Anwendungsfällen ist dies jedoch nicht selten sogar der schwierigste Teil. Datensammlung, -vorbereitung und -sortierung ist untrennbar mit künstlicher Intelligenz verbunden, genauso wie z.B. das Lernen für einen Test untrennbar damit verbunden ist, wie man in jenem Test abschneidet! Das muss allerdings nichts Schlechtes sein. Beim Umgang mit Daten kann man auch sehr viel Spaß haben, z.B. mit Visualisierungen. Mehr dazu findet ihr im KI-Kurs ;) .

# Einfach anfangen!

Nachdem ihr nun Bescheid wisst, wie ihr euren Datensatz zusammenstellen könnt und welche Aspekte ihr dabei beachten müsst, ist der bei weitestem wichtigste Schritt, einfach anzufangen! Wenn ihr euch erst einmal in euer Projekt eingearbeitet habt, werden sich auftauchende Probleme wie von allein lösen, wenn ihr lange genug motiviert dranbleibt! Ich wünsche euch viel Erfolg bei der Umsetzung eurer Ideen und bin gespannt darauf, eure Projekte zu sehen! :)