Ihre Organisation mit Kaggle in ML/KI weiterbilden

1. Einführung

47566e1490c16443.png

Zuletzt aktualisiert: 10.05.2024

Was ist Kaggle?

Kaggle ist die größte KI- und ML-Community und die ultimative Plattform für Data Scientists und Machine Learning-Enthusiasten aller Erfahrungsstufen, um sich mit den neuesten Techniken und Technologien weiterzubilden. Entdecken Sie ein umfangreiches Repository mit Datasets, Notebooks und vortrainierten Modellen, um Ihr nächstes Projekt zu starten. Nehmen Sie an Wettbewerben teil, lernen Sie in Kursen und tauschen Sie sich mit einer vielfältigen Community von über 18 Millionen Nutzern aus aller Welt aus. Ganz gleich, ob Sie Anfänger oder Profi sind – auf Kaggle können Sie Ihre Fähigkeiten verbessern, immer auf dem neuesten Stand bleiben und an innovativen Projekten mitarbeiten.

Umfang

In diesem Codelab erstellen, konfigurieren und starten Sie einen Kaggle-Wettbewerb. Sie erfahren, wie Sie einen ansprechenden Wettbewerb veranstalten können.

Lerninhalte

  • Informationen zum Erstellen und Verwalten eines Kaggle-Wettbewerbs aus der Sicht des Hosts
  • Wettbewerbserfahrung von der Recherche bis zur Einreichung
  • Best Practices für die Durchführung eines ansprechenden Wettbewerbs

In diesem Codelab geht es darum, schnell einen Wettbewerb zu erstellen. Dabei wird die wachsende Wettbewerbsbibliothek von Kaggle genutzt.

Voraussetzungen

  • Ein aktueller Webbrowser
  • Grundlegende Python-Kenntnisse

2. Einrichtung

Kaggle-Konto erstellen

Rufen Sie die Kaggle-Website (https://www.kaggle.com/) auf und klicken Sie auf „Register“, um ein kostenloses Konto zu erstellen.

Konto bestätigen

  1. Klicken Sie rechts oben auf der Seite auf Ihr Profilbild.
  2. Klicken Sie auf „Mein Profil“.
  3. Klicken Sie rechts neben dem Profilinhalt auf die Schaltfläche „Einstellungen“.
  4. Folgen Sie unter „Telefonbestätigung“ der Anleitung, um Ihr Konto zu bestätigen.

3. Ersten Wettbewerb erstellen

KI-generierte Wettbewerbsvorlagen

„AI Generated Competitions“ ist eine neue Funktion auf Kaggle, mit der Nutzer schnell und einfach Wettbewerbe für maschinelles Lernen erstellen können. Dabei wird KI verwendet, um synthetische Datasets zu generieren, die die statistischen Eigenschaften vorhandener Datasets nachahmen, ohne personenbezogene Daten zu enthalten.

So funktionierts:

  1. Vorlage auswählen: Wählen Sie aus einer Liste von Vorlagen basierend auf verschiedenen Machine-Learning-Aufgaben aus (z.B. Klassifizierung, Regression).
  2. KI generiert ein Dataset: Die KI von Kaggle erstellt anhand der von Ihnen ausgewählten Vorlage ein neues Dataset für Ihren Wettbewerb. Dieses Dataset ähnelt dem Original, verwendet aber eine Teilmenge von Features und hat leicht unterschiedliche Feature-Verteilungen.
  3. Wettbewerb anpassen: Geben Sie grundlegende Details wie Name, Beschreibung und Zeitachse des Wettbewerbs ein. Außerdem haben Sie die Möglichkeit, die Datenschutzeinstellungen für den Wettbewerb festzulegen.
  4. Start: Nachdem Sie die Details festgelegt und einen Starttermin festgelegt haben, können Sie den Wettbewerb starten.

Diese Funktion vereinfacht das Erstellen von Wettbewerben, sodass mehr Nutzer darauf zugreifen können. Außerdem können sie sich auf die Aspekte des maschinellen Lernens konzentrieren, anstatt Datasets vorzubereiten.

Wettbewerb erstellen

Rufen Sie https://www.kaggle.com/competitions/new auf und wählen Sie „New AI Generated Competition“ (Neuer KI-generierter Wettbewerb) aus.

2629bf77a282a46c.png

Wählen Sie den Wettbewerb „Regression with a Crab Age Dataset“ aus.

Wettbewerbsdetails

2dd2228b9d686a6e.png

Geben Sie einen aussagekräftigen Namen und Untertitel ein. Als Titel könntest du beispielsweise „Der Testkrabbenwettbewerb von [Deine Namen]“ und als Untertitel „Mein erster Wettbewerb, um zu sehen, wie er funktioniert“ verwenden. Die Wettbewerbs-URL wird automatisch anhand des Titels ausgefüllt.

Sichtbarkeit und Zugriff

Als Nächstes müssen wir die Sichtbarkeit und den Zugriff für den Wettbewerb festlegen.

5c7dcae412ddd574.png

Sichtbarkeit

  • Öffentlich: Ihr Wettbewerb ist für alle Kaggle-Nutzer sichtbar. Der Gruppenbereich wird in den Suchergebnissen angezeigt, sodass alle Interessierten ihm beitreten können.
  • Privat: Ihr Wettbewerb ist nicht öffentlich sichtbar. Sie wird nicht in Suchergebnissen angezeigt und nur Personen, die Sie ausdrücklich einladen, können teilnehmen.

Wer kann teilnehmen?

  • Alle: Das ist wie eine Politik der offenen Tür. Jeder auf Kaggle kann an Ihrem Wettbewerb teilnehmen.
  • Nur Personen mit Link: Diese Option ist exklusiver. Sie erstellen einen speziellen Link, über den nur Personen beitreten können, die ihn haben.
  • Eingeschränkte E‑Mail-Liste: Dies ist die Option mit der größten Kontrolle. Sie geben eine Liste mit bestimmten E-Mail-Adressen oder Domains (z. B. @yourschool.edu) an und nur Personen mit diesen Adressen können der Gruppe beitreten.

Wir werden später noch genauer auf die Einstellung Notebooks und Modelle aktivieren eingehen. Achten Sie vorerst darauf, dass die Einstellung aktiviert ist. In unserem Beispielwettbewerb legen wir diese Einstellungen auf Privat und Nur Personen mit dem Link fest.

Lesen Sie sich die Nutzungsbedingungen durch, stimmen Sie ihnen zu und klicken Sie auf Wettbewerb erstellen.

4. Wettbewerb verstehen und konfigurieren

Wir haben im Hintergrund einen völlig neuen Wettbewerb mit einem einzigartigen Dataset erstellt. Sehen wir uns die Wettbewerbseinstellungen kurz an.

Tab „Host“

Auf dem Tab „Host“ finden Sie alles, was Sie als Host benötigen, um Ihren Wettbewerb richtig zu konfigurieren. Sehen Sie sich dazu die Seitenliste rechts auf der Seite an:

bcedd6768cc4f32c.png

Wichtigste Details

Dieser Abschnitt umfasst:

  • Allgemein
  • Datenschutz, Zugriff und Ressourcen
  • Zeitachse
  • Punkte und Teams

Wir haben die Abschnitte „Allgemein“ und „Datenschutz“ beim Start des Wettbewerbs behandelt.

Zeitplan

Das Enddatum des Wettbewerbs wird in der Zeitzone angegeben.

7141f4aea90bccb0.png

Ergebnisse und Team

Im Bereich „Bewertung und Team“ können Sie festlegen, wie viele Personen einem Team beitreten dürfen, wie oft sie täglich Beiträge einreichen dürfen und wie viele ihrer Beiträge für die endgültige Bewertung ausgewählt werden müssen.

5efb6387612db941.png

Bilder

Mit Bildern können Sie das Banner und die Miniaturansicht für Ihren Wettbewerb anpassen. Dies wirkt sich auf die Startseite des Wettbewerbs sowie auf den Eintrag für Ihren Wettbewerb aus.

6dfd442376a1c702.png

Hosts

Hier können Sie andere Kaggle-Nutzer als Host für Ihren Wettbewerb hinzufügen. Andere Hosts haben vollen Zugriff auf deinen Wettbewerb, einschließlich der Möglichkeit, ihn zu starten.

8f8c90eb6baa7747.png

Bewertungsmesswert

Der Tab „Bewertungsmesswert“ ist das Herzstück des Wettbewerbs. Wenn Sie einen Wettbewerb von Grund auf erstellen, müssen Sie sich genau überlegen, welcher Bewertungs- oder Scoring-Messwert verwendet werden soll. Außerdem müssen Sie Ihre Lösungsdatei hochladen, die Aufteilung des öffentlichen/privaten Tests definieren und eine Beispielübermittlung bereitstellen. Da wir jedoch einen generierten Wettbewerb verwendet haben, ist das nicht erforderlich.

Messwert für die Bewertung

Damit wird festgelegt, wie eine Einsendung anhand der Lösungsdatei bewertet wird. Für jeden Messwert sind Dokumentation und tatsächlicher Code verfügbar.

Lösungsdatei

Da wir einen generierten Wettbewerb verwenden, ist diese Datei nur für Ihren Wettbewerb verfügbar.

89fa1f42d177505a.png

Mit der Lösungsstichprobe können Sie anpassen, wie viel von der Lösungsdatei verwendet wird, um Einsendungen während des Wettbewerbs (öffentliche Bestenliste) zu bewerten, und wie viele Zeilen verwendet werden, um die endgültige Bestenliste zu erstellen. Während des Wettbewerbs können Nutzer (je nach Einstellung für „Bewertete private Einsendungen“) auswählen, welche ihrer Einsendungen für die endgültige Bestenliste (hier als „Private Bestenliste“ bezeichnet) verwendet werden sollen.

So wird sichergestellt, dass Wettbewerber nicht für Overfitting oder das Einreichen einer großen Anzahl von Beiträgen belohnt werden.

Sandbox-Einreichungen

So können Wettbewerbsveranstalter dafür sorgen, dass die Bewertung wie erwartet funktioniert, und „Benchmark“-Beiträge festlegen, mit denen sich die Teilnehmer vergleichen können. Diese Benchmark-Einsendungen werden in der Bestenliste angezeigt.

Teams und Einsendungen

Während des Wettbewerbs können die Organisatoren so alle Ergebnisse herunterladen und Teams verwalten. Vor Beginn des Wettbewerbs ist dieses Feld leer.

Launch Checklist

Das wird im nächsten Abschnitt behandelt.

5. Wettbewerb starten

50b03df072c02e6a.png

Klicken Sie oben auf der Wettbewerbsseite auf die Schaltfläche „Launch-Checkliste“.

Launch Checklist

In der Checkliste für die Einführung sind die erforderlichen Schritte aufgeführt, die vor dem Start eines Wettbewerbs ausgeführt werden müssen. Da wir bereits mit einer Wettbewerbsvorlage begonnen haben, sind die meisten dieser Schritte bereits abgeschlossen. Es sind nur noch zwei Aufgaben zu erledigen: eine Frist festlegen und die Wettbewerbsregeln aktualisieren.

938b9ed7bc4e0597.png

Frist festlegen

Klicken Sie zuerst auf den Pfeil neben „Frist festlegen“. Wettbewerbe dauern in der Regel mindestens ein paar Monate. Ein Wettbewerb darf maximal ein Jahr dauern.

Regeln bearbeiten

Die Wettbewerbsregeln müssen vor dem Start der Kampagne anhand der Standardvorlage aktualisiert werden. Wenn Sie diesen Wettbewerb für einen Kurs oder eine Gruppe veranstalten, können Sie hier alle Informationen zu den Erwartungen angeben.

Launch

Wir sind startklar! Legen Sie los und starten Sie Ihren Wettbewerb. Jetzt können andere teilnehmen.

6. Erfahrung mit Mitbewerbern

Nachdem Sie Ihren Wettbewerb gestartet haben, sehen wir uns an, wie er für die Teilnehmer aussieht. Wir erklären, wie Sie am Wettbewerb teilnehmen und einen Beitrag einreichen können. Sie können an der Google I/O Demo Competition teilnehmen: https://www.kaggle.com/competitions/google-io-demo-competition.

Teilnahme am Wettbewerb

Klicken Sie auf der Startseite des Wettbewerbs rechts oben auf die Schaltfläche „Am Wettbewerb teilnehmen“ und lesen und bestätigen Sie die Regeln.

Erste Einreichung

Rufen Sie den Tab „Code“ auf und klicken Sie auf „Neues Notebook“. Dadurch wird ein Notebook geöffnet, über das Sie am Wettbewerb teilnehmen können.

Zuerst lesen wir die Trainings- und Testdaten ein.

# Test- und Trainingsdaten lesen

train = pd.read_csv('/kaggle/input/google-io-demo-competition/train.csv')

test = pd.read_csv('/kaggle/input/google-io-demo-competition/test.csv')

Sehen wir uns die Daten an.

# Sehen wir uns einige der Daten an.

train.head()

Bereiten wir die Daten für das Training vor. In diesem Fall wird „Geschlecht“ entfernt, da es sich nicht um einen numerischen Wert handelt. (Hinweis: Wenn Sie herausfinden, wie Sie diese Informationen einbeziehen können, sollte sich die Leistung Ihres Modells verbessern.)

 # drop out the results from the test data

data = train.drop(columns=[‘Age', ‘Sex'])

answers = train[‘Age']

Dann erstellen wir ein Modell. In diesem Fall verwenden wir ein Random Forest-Modell.

# Importe für das Modell

from sklearn.model_selection import train_test_split

from sklearn.ensemble import RandomForestRegressor

from sklearn.metrics import mean_absolute_error

model = RandomForestRegressor()

​​# train the model

model.fit(data, answers)

Einen Beitrag erstellen:

predictions = model.predict(test.drop(columns=[‘Sex']))

submission = pd.DataFrame({‘id': test[‘id'], ‘Age': predictions})

submission.to_csv(‘submission.csv', index=False)

Anschließend können Sie am Wettbewerb teilnehmen, indem Sie im Menü auf der rechten Seite „Am Wettbewerb teilnehmen“ auswählen.

1cf17449cae53abe.png

Tipps für einen erfolgreichen Wettbewerb

  1. Fügen Sie unbedingt ein Starter-Notebook ein, mit dem eine einfache Einreichung erfolgt.
  2. Ermutigen Sie die Teilnehmer, frühzeitig Diskussionen zu starten und Notebooks zu teilen.
  3. Spaß haben