Menu
CoddyTech

Was ist ein ML-Modell?

Lektion 3 von 19 im Kurs Einführung in maschinelles Lernen von Coddy.

Ein Machine-Learning-Modell zielt darauf ab, Vorhersagen auf der Grundlage historischer Daten zu treffen. Um dies effektiv zu tun, muss das Modell die statistischen Eigenschaften des Datensatzes verstehen. Dieses Verständnis kann nicht erreicht werden, indem dem Modell einfach ein Algorithmus oder eine mathematische Funktion zur Verfügung gestellt wird, die die Datenverteilung beschreibt.

Stattdessen muss das Modell diese Eigenschaften durch Training erlernen. Darüber hinaus hat jeder Datensatz einzigartige statistische Eigenschaften. Daher muss für jeden einzelnen Datensatz ein separates Modell trainiert werden.

 

Die Lernphase wird als fitting oder fit bezeichnet. Nachdem das Modell die Datenverteilung gelernt hat, können wir ihm neue Daten zuführen, die es noch nie gesehen hat, und sein Ergebnis vorhersagen; diese Phase wird als predicting oder predict bezeichnet.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

challenge icon

Aufgabe

Einfach

In dieser Challenge werden wir das einfachste Modell für überwachtes maschinelles Lernen erstellen. Dieses Modell wird in der Industrie in keiner Weise verwendet. Vielmehr besteht der einzige Zweck dieses Modells darin, zu demonstrieren, wie ein echtes Modell für maschinelles Lernen aussehen würde.

Erstellen Sie ein Modell, das den am häufigsten vorkommenden y-Wert für die entsprechenden X-Werte zurückgibt.

Anweisungen: 

  • Die fit-Methode zählt für jedes X das am häufigsten vorkommende y und speichert das Ergebnis in der Variable self.mode
    Zum Beispiel für den folgenden Datensatz:

    <strong>X</strong>ABAAB
    <strong>Y</strong>11011

    self.mode sollte Folgendes enthalten: {"A": 1, "B": 1}

  • Die predict-Methode erhält eine Liste von X_test und gibt eine Liste der gleichen Länge zurück. Jeder Wert in der zurückgegebenen Liste ist das vorhergesagte y, das X entspricht, unter Verwendung des in der fit-Phase gelernten self.mode.
    Wenn self.mode zum Beispiel {"A": 1, "B": 1} enthält und X_train gleich ['A', 'B', 'C'] ist, dann sollte die Ausgabe [1, 1, None] sein.

So bestehen Sie die Testfälle:

Erstellen Sie eine Funktion namens train_and_predict, die die Listen X_train, y_train und X_test erhält. Sie wird die folgenden Schritte ausführen:

  • Lernen mit der fit-Methode unter Verwendung von X_train und y_train 
  • Vorhersage der Labels von X_test
  • Rückgabe der vorhergesagten Labels

Probier es selbst

import numpy as np
np.set_printoptions(legacy='1.13')

class SimpleModel:
    def __init__(self):
        self.mode = {}

    def fit(self, X, y):
        # Schreiben Sie hier Ihren Code
        

    def predict(self, X):
        # Schreiben Sie hier Ihren Code

def train_and_predict(X_train, y_train, X_test):
    model = SimpleModel()
    # Trainieren Sie das Modell mit X_train und y_train
    
    # Sagen Sie die Labels von X_test voraus
    
    # Geben Sie die vorhergesagten Labels zurück

Alle Lektionen in Einführung in maschinelles Lernen

Übe selbstständig: Online-Python-Compiler