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.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Aufgabe
EinfachIn 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 jedesXdas am häufigsten vorkommendeyund speichert das Ergebnis in der Variableself.mode
Zum Beispiel für den folgenden Datensatz:<strong>X</strong>A B A A B <strong>Y</strong>1 1 0 1 1 self.modesollte Folgendes enthalten:{"A": 1, "B": 1}- Die
predict-Methode erhält eine Liste vonX_testund gibt eine Liste der gleichen Länge zurück. Jeder Wert in der zurückgegebenen Liste ist das vorhergesagtey, dasXentspricht, unter Verwendung des in derfit-Phase gelerntenself.mode.
Wennself.modezum Beispiel{"A": 1, "B": 1}enthält undX_traingleich['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ückAlle Lektionen in Einführung in maschinelles Lernen
Übe selbstständig: Online-Python-Compiler