Was braucht man um ein guter Data Scientist zu werden? Im Grunde das Gleiche wie bei allem Anderen: Lehrer und Übung! Die Webseite Kaggle bietet einem Beides – und fordert dazu noch euren kompetitiven Spieltrieb.
Lehrer
Ganz im Sinne von Web 2.0 wird der Lehrer ersetzt durch ein soziales Netzwerk, d.h. die anderen Nutzer der Webseite stellen ihre Lösungen eines Datenproblems zur Verfügung über die man diskutieren und sich austauschen kann. Als Neuling kann man sich sehr einfach Skripte (genannt Kernels, meist in Python oder R) ansehen, sie nachvollziehen und lokal anpassen. Braucht man Feedback zu seinen eigenen Lösungen stellt man sie einfach Online und hofft auf Kommentare.
Übung
Um üben zu können braucht man als Data Scientist vor Allem eines: Daten! Kaggle bietet einen reichhaltigen Schatz an Datensätzen die man herunterladen und analysieren kann. Die Auswahl reicht dabei von einer European Soccer Database über Emergency – 911 Calls bis hin zu Dota 2 Matches es ist also für jeden etwas dabei. Mit diesen Datensätzen kann man sich nun auf alle Aufgaben stürzen, die auf einen Datenwissenschaftler zukommen können. Von der Datenbereinigung über die beste grafische Darstellung bis hin zu lernenden Algorithmen, die Vorhersagen für neue Daten treffen ist alles möglich. Es gibt wohl kaum eine bessere Möglichkeit, seine Fähigkeiten mit nötigen Technologien und Prozessen zu verbessern.
Wettkampf
Hat man nur einen beliebigen Datensatz, muss man sich natürlich selbst die Frage stellen, welches Ziel man erreichen möchte. Da es als Anfänger oft schwer ist, sich reale Problemstellungen auszudenken bietet Kaggle als eines seiner zentralen Features Wettkämpfe (competitions) an, in denen sich die Nutzer messen können. Die Aufgaben kommen dabei aus der realen Welt und werden von echten Firmen gestellt. Einige sind sogar mit einem – teils beachtlichen – Preisgeld versehen. Die Santander Product Recommondation zum Beispiel bietet ein Preisgeld von 60.000 $ für die drei Teams (Ja man kann bei Kaggle im Team arbeiten), welche die besten Algorithmen präsentieren, die anhand vorgegebener Daten vorhersagen, welche Produkte Santander seinen Kunden als nächstes vorschlagen sollen. Dabei können beliebig oft Scripte hochgeladen werden, die automatisch ausgeführt werden um einen Score zu erhalten, der dann in einem Leaderboard gelistet wird. Steht man am Ende ganz oben, erhält man Geld, Kaggle-Punkte und Medaillen, die auf seinem Profil zu sehen sind. Das lässt sich natürlich verlinken, z.B. bei LinkedIn/Xing oder in einem Lebenslauf.
Bringt das was?
Kaggle ist mit Sicherheit eine gute Möglichkeit um sich mit allem rund um Data Science zu befassen. Die Datensätze sind umfangreich und mit den Kernels anderer Nutzer lässt sich hervorragend üben. Noch dazu bekommt man einfach Feedback zu eigenen Lösungen und kann sie so noch verbessern. Sich durch Wettkämpfe einen Ruf aufzubauen, mit dem man dann Eigenwerbung machen kann ist sicher auch sehr nützlich auch wenn darin eine Menge Arbeit stecken muss. Bei über 600.000 Kaggle-Nutzern ist es sicher nicht einfach weit oben auf den Leaderboards zu stehen – insbesondere bei Aufgaben mit Preisgeldern. Und eine Job-Garantie ist es sicher auch nicht. Man darf dabei nicht vergessen, dass es einen großen Unterschied macht, ob man ein Script für solch einen Wettkampf schreibt oder ob man eine Lösung bei einem Arbeitgeber aufbaut und integriert.
Ich werde mich in nächster Zeit ein wenig mehr mit Kaggle beschäftigen und euch wissen lassen wie es sich anfühlt, diesen Service zu nutzen. Und natürlich werde ich jedesmal damit angeben, sollte ich je eine gute Platzierung in einem Wettkampf erreichen.