

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Algorithmus für lineares Lernen
<a name="linear-learner"></a>

*Lineare Modelle* sind überwachte Lernalgorithmen, die zur Lösung von Klassifizierungs- oder Regressionsproblemen verwendet werden. Für die Eingabe stellen Sie dem Modell Beispiele mit Kennzeichen (*x*, *y*) zur Verfügung. *x* ist ein hochdimensionaler Vektor und *y* ist eine numerische Kennzeichnung. Bei binären Klassifizierungsproblemen muss das Kennzeichen 0 oder 1 sein. Für Mehrklassen-Klassifizierungsprobleme müssen die Kennzeichen zwischen 0 und `num_classes` – 1 liegen. Bei Regressionsproblemen ist *y* eine Realzahl. Der Algorithmus erlernt eine lineare Funktion oder lineare Schwellenwertfunktion bei Klassifizierungsproblemen und weist einen Vektor *x* einer Approximation der Kennzeichnung *y* zu. 

Der lineare Lernalgorithmus von Amazon SageMaker AI bietet eine Lösung sowohl für Klassifizierungs- als auch für Regressionsprobleme. Mit dem SageMaker KI-Algorithmus können Sie gleichzeitig verschiedene Trainingsziele untersuchen und die beste Lösung aus einem Validierungssatz auswählen. Sie können auch eine große Anzahl von Modellen erkunden und das beste auswählen. Das beste Modell optimiert eine der folgenden Größen:
+ Kontinuierliche Ziele wie mittlerer quadratischer Fehler, Kreuz-Entropie-Verlust, absoluter Fehler usw.
+ Diskrete Ziele, die für die Klassifizierung geeignet sind, wie z. B. F1-Maß, Präzision, Abruf und Genauigkeit. 

Im Vergleich zu Methoden, die nur für kontinuierliche Lernziele eine Lösung bieten, bietet der SageMaker KI-Algorithmus für lineare Lernende eine deutliche Geschwindigkeitssteigerung im Vergleich zu naiven Techniken zur Optimierung von Hyperparametern. Außerdem ermöglicht er eine vereinfachte Handhabung. 

Der Algorithmus für lineares Lernen erfordert eine Datenmatrix, deren Zeilen die Beobachtungen und deren Spalten die Dimensionen der Merkmale darstellen. Außerdem ist eine zusätzliche Spalte mit den Kennzeichnungen erforderlich, die den Datenpunkten entsprechen. Amazon SageMaker AI Linear Learner verlangt mindestens, dass Sie die Speicherorte der Eingabe- und Ausgabedaten sowie den Zieltyp (Klassifizierung oder Regression) als Argumente angeben. Die Merkmalsdimension ist ebenfalls erforderlich. Weitere Informationen finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html). Sie können zusätzliche Parameter in der `HyperParameters`-Zeichenfolge des Anforderungstexts angeben. Diese Parameter steuern das Optimierungsverfahren oder geben die Zielfunktion an, für die Sie das Training ausführen. Zu den Beispielen gehören die Anzahl der Epochen, Regularisierung und Verlusttyp. 

Wenn Sie [Managed Spot Training](https://docs.aws.amazon.com/sagemaker/latest/dg/model-managed-spot-training.html) verwenden, unterstützt der lineare Lerneralgorithmus die Verwendung von [Checkpoints, um eine Momentaufnahme des Status des Modells](https://docs.aws.amazon.com/sagemaker/latest/dg/model-checkpoints.html) zu erstellen.

**Topics**
+ [Input/Output-Schnittstelle für den linearen Lernalgorithmus](#ll-input_output)
+ [EC2-Instance-Empfehlung für den Linear Learner-Algorithmus](#ll-instances)
+ [Muster-Notebooks für lineare Lerner](#ll-sample-notebooks)
+ [So funktioniert der lineare Learner](ll_how-it-works.md)
+ [Hyperparameter für den linearen Lerner](ll_hyperparameters.md)
+ [Abstimmen eines linearen Learner-Modells](linear-learner-tuning.md)
+ [Antwortformate von linearen Learnern](LL-in-formats.md)

## Input/Output-Schnittstelle für den linearen Lernalgorithmus
<a name="ll-input_output"></a>

Der lineare Lernalgorithmus von Amazon SageMaker AI unterstützt drei Datenkanäle: Training, Validierung (optional) und Test (optional). Wenn Sie Validierungsdaten bereitstellen, sollte der `S3DataDistributionType` `FullyReplicated` sein. Der Algorithmus protokolliert den Validierungsverlust für jede Epoche und verwendet eine Stichprobe der Validierungsdaten zur Kalibrierung und Auswahl des besten Modells. Wenn Sie keine Validierungsdaten bereitstellen, verwendet der Algorithmus eine Stichprobe der Trainingsdaten, um das Modell zu kalibrieren und auszuwählen. Wenn Sie Testdaten bereitstellen, enthalten die Algorithmusprotokolle das Testergebnis für das endgültige Modell.

**Für Trainings** unterstützt der Algorithmus für lineares Lernen sowohl das – `recordIO-wrapped protobuf`als auch das `CSV`-Format. Für den `application/x-recordio-protobuf`Eingabetyp werden nur Float32-Tensoren unterstützt. Beim Eingabetyp `text/csv` wird angenommen, dass die erste Spalte die Kennzeichnung ist. Dies ist die Zielvariable für eine Prognose. Sie können entweder den Datei- oder den Pipe-Modus zum Trainieren linearer Lernmodelle mit Daten verwenden, die als `recordIO-wrapped-protobuf` oder `CSV` formatiert sind.

**Bei Inferenzen** unterstützt der Algorithmus für lineares Lernen die Formate `application/json`, `application/x-recordio-protobuf` und `text/csv`. Wenn Sie Voraussagen mit neuen Daten treffen, hängt das Format der Antwort von der Art des Modells ab. **Bei der Regression** (`predictor_type='regressor'`) ist `score` die Voraussage des Modells. **Bei der Klassifizierung** (`predictor_type='binary_classifier'` oder `predictor_type='multiclass_classifier'`) gibt das Modell `score` und auch `predicted_label` zurück. `predicted_label` ist die Klasse, die vom Modell vorausgesagt wird, und `score` misst die Stärke der Voraussage. 
+ **Für die binäre Klassifikation** ist `predicted_label` `0` oder `1`, und `score` ist eine einzelne Gleitkommazahl, die angibt, wie stark der Algorithmus glaubt, dass die Bezeichnung 1 sein sollte.
+ **Bei der Mehrklassen-Klassifizierung** ist `predicted_class` eine Ganzzahl von `0` bis `num_classes-1` und `score` entspricht einer Liste mit einer Gleitkommazahl pro Klasse. 

Zur Interpretation von `score` bei Klassifizierungsproblemen müssen Sie die verwendete Verlustfunktion berücksichtigen. Wenn der Hyperparameter-Wert von `loss` bei der binären Klassifizierung `logistic` und bei der Mehrklassen-Klassifizierung `softmax_loss` ist, kann `score` als Wahrscheinlichkeit der entsprechenden Klasse interpretiert werden. Dies sind die Verlustwerte, die vom linearen Lernen verwendet werden, wenn der `loss`-Wert dem Standardwert `auto` entspricht. Wenn der Verlust aber auf `hinge_loss` festgelegt ist, kann die Punktzahl nicht als Wahrscheinlichkeit interpretiert werden. Dies liegt daran, dass "hinge loss" einer Support Vector-Klassifizierung entspricht, die keine Wahrscheinlichkeitsschätzungen vornimmt.

Weitere Informationen zu den Ein- und Ausgabedateiformaten finden Sie unter [Antwortformate von linearen Learnern](LL-in-formats.md). Weitere Informationen zu Inferenzformaten finden Sie unter [Muster-Notebooks für lineare Lerner](#ll-sample-notebooks).

## EC2-Instance-Empfehlung für den Linear Learner-Algorithmus
<a name="ll-instances"></a>

Der lineare Lerneralgorithmus unterstützt sowohl CPU- als auch GPU-Instances für Training und Inferenz. Für GPU unterstützt der lineare Learner-Algorithmus die GPU-Familien P2, P3, G4dn und G5.

Während der Tests haben wir keine wesentlichen Hinweise darauf gefunden, dass Multi-GPU-Instances schneller sind als Single-GPU-Instances. Die Ergebnisse können abhängig vom jeweiligen Anwendungsfall variieren.

## Muster-Notebooks für lineare Lerner
<a name="ll-sample-notebooks"></a>

 In der folgenden Tabelle sind verschiedene Beispielnotizbücher aufgeführt, die sich mit verschiedenen Anwendungsfällen des Amazon SageMaker AI Linear Learner-Algorithmus befassen.


| **Titel des Notebooks** | **Beschreibung** | 
| --- | --- | 
|  [Eine Einführung in den MNIST-Datensatz](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_amazon_algorithms/linear_learner_mnist/linear_learner_mnist.html)  |   Mithilfe des MNIST-Datensatzes trainieren wir einen binären Klassifikator, um eine einzelne Ziffer vorherzusagen.  | 
|  [Wie erstellt man einen Multiklassen-Klassifikator?](https://sagemaker-examples.readthedocs.io/en/latest/scientific_details_of_algorithms/linear_learner_multiclass_classification/linear_learner_multiclass_classification.html)  |   Anhand des Covertype-Datensatzes von UCI zeigen wir, wie ein Multiklassen-Klassifikator trainiert wird.   | 
|  [Wie erstellt man eine Machine Learning (ML) -Pipeline für Inferenz?](https://sagemaker-examples.readthedocs.io/en/latest/sagemaker-python-sdk/scikit_learn_inference_pipeline/Inference%20Pipeline%20with%20Scikit-learn%20and%20Linear%20Learner.html)  |   Anhand eines Scikit-Learn-Containers demonstrieren wir, wie man eine ML-Pipeline erstellt. end-to-end   | 

 Anweisungen zum Erstellen und Zugreifen auf Jupyter-Notebook-Instanzen, mit denen Sie das Beispiel in KI ausführen können, finden Sie unter. SageMaker [SageMaker Amazon-Notebook-Instanzen](nbi.md) Nachdem Sie eine Notebook-Instanz erstellt und geöffnet haben, wählen Sie die Registerkarte **SageMaker KI-Beispiele**, um eine Liste aller KI-Beispiele anzuzeigen. SageMaker Die Beispiel-Notebooks zur Themenmodellierung unter Verwendung des Algorithmus für lineares Lernen finden Sie im Abschnitt **Einführung in die Amazon-Algorithmen**. Zum Öffnen eines Notebooks wählen Sie die Registerkarte **Verwenden** und dann **Kopie erstellen** aus. 

# So funktioniert der lineare Learner
<a name="ll_how-it-works"></a>

Es gibt drei Schritte bei der Implementierung des Algorithmus für lineares Lernen: Vorverarbeitung, Training und Validierung. 

## Schritt 1: Vorverarbeitung
<a name="step1-preprocessing"></a>

Normalisierung ist ein wichtiger Vorbereitungsschritt für verschiedene Verlustmerkmale, der sicherstellt, dass das anhand eines Datensatzes trainierte Modell nicht aufgrund seiner Gewichtung von einem einzelnen Merkmal dominiert wird. Der Amazon SageMaker AI Linear Learner-Algorithmus verfügt über eine Normalisierungsoption, die diesen Vorverarbeitungsschritt unterstützt. Wenn die Normalisierung aktiviert wird, verarbeitet der Algorithmus zunächst eine kleine Stichprobe der Daten, um den Mittelwert und die Standardabweichung für jedes Merkmal und für die Bezeichnung zu ermitteln. Jedes der Merkmale im gesamten Datensatz wird dann verschoben, um einen Mittelwert von 0 zu erreichen, und skaliert, um eine einheitliche Standardabweichung zu erzielen.

**Anmerkung**  
Für beste Ergebnisse sollten die Daten vor dem Training gemischt werden. Ein Training mit nicht gemischten Daten kann zum Fehlschlagen des Trainings führen. 

Sie können konfigurieren, ob der Algorithmus für lineares Lernen die Merkmalsdaten und die Bezeichnungen mit den Hyperparametern `normalize_data` und `normalize_label` normalisiert. Die Normalisierung ist standardmäßig für Merkmale und für Bezeichnungen für die Regression aktiviert. Nur die Merkmale können für die binäre Klassifikation normalisiert werden. Dies ist das Standardverhalten. 

## Schritt 2: Training
<a name="step2-training"></a>

Für das Training mit dem Algorithmus für lineares Lernen wird eine verteilten Implementierung des stochastischen Gradientenverfahrens (Stochastic Gradient Descent, SGD) verwendet. Sie können den Optimierungsprozess durch Auswählen des Optimierungsalgorithmus steuern. Sie können sich beispielsweise dafür entscheiden, Adam, AdaGrad stochastischen Gradientenabstieg oder andere Optimierungsalgorithmen zu verwenden. Außerdem geben Sie ihre Hyperparameter, wie z. B. Impuls, Lernrate und Lernraten-Scheduler an. Wenn Sie sich nicht sicher sind, welchen Algorithmus oder Hyperparameterwert Sie verwenden sollten, wählen Sie einen Standardwert aus, der für die meisten Datensätze funktioniert. 

Während des Trainings optimieren Sie gleichzeitig mehrere Modelle mit jeweils etwas anderen Zielen. Beispiel: Sie variieren L1- oder L2-Regularisation und versuchen, verschiedene Optimierereinstellungen zu finden. 

## Schritt 3: Validierung und Festlegung des Schwellenwerts
<a name="step3-validation"></a>

Wenn mehrere Modelle parallel trainiert werden, werden die Modelle anhand eines Validierungssatzes ausgewertet, um nach Abschluss des Trainings das beste Modell auszuwählen. Für die Regression ist das beste Modell dasjenige, das den besten Verlust für den Validierungssatz erzielt. Für die Klassifizierung wird eine Stichprobe des Validierungssatzes verwendet, um den Klassifizierungsschwellenwert zu kalibrieren. Das ausgewählte beste Modell ist das Modell, das die besten Auswahlkriterien für die binäre Klassifikation des Validierungssatzes erreicht. Beispiele für diese Kriterien sind F1-Maß, Genauigkeit und Kreuzentropieverlust. 

**Anmerkung**  
Wenn dem Algorithmus kein Validierungssatz übergeben wird, sind Auswertung und Auswahl des besten Modells nicht möglich. Um die Vorteile des parallelen Trainings und der Modellauswahl nutzen zu können, muss ein Validierungssatz für den Algorithmus bereitgestellt werden. 

# Hyperparameter für den linearen Lerner
<a name="ll_hyperparameters"></a>

Die folgende Tabelle enthält die Hyperparameter für den Algorithmus für das lineare Lernen. Dies sind Parameter, die von Benutzern festgelegt werden, um die Schätzung der Modellparameter aus Daten zu erleichtern. Die obligatorischen Hyperparameter, die festgelegt werden müssen, sind zuerst aufgelistet (in alphabetischer Reihenfolge). Die optionalen Hyperparameter, die festgelegt werden können, sind als Nächstes aufgeführt (ebenfalls in alphabetischer Reihenfolge). Wenn ein Hyperparameter auf eingestellt ist`auto`, berechnet Amazon SageMaker AI automatisch den Wert dieses Hyperparameters und legt ihn fest. 


| Name des Parameters | Description | 
| --- | --- | 
| num\$1classes |  Die Anzahl der Klassen für die Antwortvariable. Der Algorithmus geht davon aus, dass Klassen mit `0`, ..., `num_classes - 1` bezeichnet werden. **Erforderlich**, wenn `predictor_type` mit `multiclass_classifier` angegeben ist. Andernfalls wird dies vom Algorithmus ignoriert. Gültige Werte: Ganzzahlen zwischen 3 und 1 000 000  | 
| predictor\$1type |  Gibt den Typ der Zielvariable als binäre Klassifikation, Mehrklassen-Klassifizierung oder Regression an. **Erforderlich** Gültige Werte: `binary_classifier`, `multiclass_classifier` oder `regressor`  | 
| accuracy\$1top\$1k |  Bei der Berechnung der Top-K-Genauigkeitsmetrik für die Mehrklassen-Klassifizierung der Wert von *k*. Wenn das Modell der tatsächlichen Bezeichnung eines der Top-K-Punktzahlen zuweist, wird ein Beispiel als korrekt bewertet. **Optional** Gültige Werte: positive Ganzzahlen Standardwert: 3   | 
| balance\$1multiclass\$1weights |  Gibt an, ob die Klassengewichtungen verwendet werden sollen, wodurch jede Klasse in der Verlustfunktion gleiches Gewicht erhält. Wird nur verwendet, wenn `predictor_type` `multiclass_classifier` ist. **Optional** Zulässige Werte: `true`, `false` Standardwert: `false`  | 
| beta\$11 |  Die exponentielle Zerfallsrate für Schätzwerte im ersten Schritt. Nur anwendbar, wenn der Wert von `optimizer` gleich `adam` ist. **Optional** Gültige Werte: `auto` oder Gleitkommawert zwischen 0 und 1,0 Standardwert: `auto`  | 
| beta\$12 |  Die exponentielle Zerfallsrate für Schätzwerte im zweiten Schritt. Nur anwendbar, wenn der Wert von `optimizer` gleich `adam` ist. **Optional** Gültige Werte: `auto` oder Gleitkomma-Ganzzahl zwischen 0 und 1,0  Standardwert: `auto`  | 
| bias\$1lr\$1mult |  Ermöglicht eine andere Lernrate für die Verzerrungsbedingung. Die tatsächliche Lernrate für die Verzerrung ist `learning_rate` \$1 `bias_lr_mult`. **Optional** Gültige Werte: `auto` oder positive Gleitkomma-Ganzzahl Standardwert: `auto`  | 
| bias\$1wd\$1mult |  Ermöglicht andere Regularisierung für die Verzerrungsbedingung. Die tatsächliche L2-Regularisierungsgewichtung für die Verzerrung ist `wd` \$1 `bias_wd_mult`. Standardmäßig gibt es keine Regularisierung der Verzerrungsbedingung. **Optional** Gültige Werte: `auto` oder nicht negative Gleitkomma-Ganzzahl Standardwert: `auto`  | 
| binary\$1classifier\$1model\$1selection\$1criteria |  Wenn `predictor_type` auf `binary_classifier` festgelegt ist, die Modellbewertungskriterien für den Validierungsdatensatz (oder für den Trainingsdatensatz, wenn Sie keinen Validierungdatensatz angeben). Kriterien sind: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/ll_hyperparameters.html) **Optional** Gültige Werte: `accuracy`, `f_beta`, `precision_at_target_recall`, `recall_at_target_precision` oder `loss_function` Standardwert: `accuracy`  | 
| early\$1stopping\$1patience | Die Anzahl der abzuwartenden Epochen, bevor das Training endet, wenn keine Verbesserung in der entsprechenden Metrik erzielt wird. Wenn Sie einen Wert für binary\$1classifier\$1model\$1selection\$1criteria angegeben haben, entspricht die Metrik diesem Wert. Andernfalls entspricht die Metrik dem für den loss-Hyperparameter angegebenen Wert. Die Metrik wird für die Validierungsdaten ausgewertet. Wenn Sie keine Validierungsdaten angegeben haben, entspricht die Metrik immer dem für den `loss`-Hyperparameter angegebenen Wert und wird anhand der Trainingsdaten ausgewertet. Zum Deaktivieren des frühzeitigen Beendens legen Sie `early_stopping_patience` auf einen Wert fest, der größer als der für `epochs` angegebene Wert ist.**Optional**Gültige Werte: Positive GanzzahlStandardwert: 3 | 
| early\$1stopping\$1tolerance |  Die relative Toleranz zur Messung von Verlustverbesserungen. Wenn das Verhältnis der Verlustverbesserung dividiert durch den vorherigen besten Verlust kleiner als dieser Wert ist, betrachtet der Prozess zum frühzeitigen Beenden die Verbesserung als null. **Optional** Gültige Werte: positive Gleitkomma-Ganzzahl Standardwert: 0.001  | 
| epochs |  Die maximale Anzahl von Durchläufen der Trainingsdaten. **Optional** Gültige Werte: Positive Ganzzahl Standardwert: 15  | 
| f\$1beta |  Der Wert von Beta zur Berechnung von F-Bewertungsmetriken für binäre oder Mehrklassen-Klassifizierung. Dieser wird auch verwendet, wenn der für `binary_classifier_model_selection_criteria` angegebene Wert `f_beta` lautet. **Optional** Gültige Werte: positive Gleitkomma-Ganzzahlen Standardwert: 1.0   | 
| feature\$1dim |  Die Anzahl der Merkmale der Eingabedaten.  **Optional** Gültige Werte: `auto` oder positive Ganzzahl Standardwerte: `auto`  | 
| huber\$1delta |  Der Parameter für Huber-Verlust. Während der Trainings- und der Metrikevaluation wird mit einem L2-Verlust für Fehler gerechnet, die kleiner sind als Delta und einem L1-Verlust für Fehler, die größer als Delta sind. **Optional** Gültige Werte: positive Gleitkomma-Ganzzahl Standardwert: 1.0   | 
| init\$1bias |  Initiale Gewichtung für die Verzerrungsbedingung. **Optional** Gültige Werte: Gleitkomma-Ganzzahl Standardwert: 0  | 
| init\$1method |  Legt die anfängliche Verteilungsfunktion für Modellgewichtungen fest. Zu den Funktionen gehören: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/ll_hyperparameters.html) **Optional** Gültige Werte: `uniform` oder `normal`. Standardwert: `uniform`  | 
| init\$1scale |  Skaliert eine erste einheitliche Verteilung für Modellgewichtungen. Gilt nur, wenn der `init_method`-Hyperparameter auf `uniform` festgelegt ist. **Optional** Gültige Werte: positive Gleitkomma-Ganzzahl Standardwert: 0.07  | 
| init\$1sigma |  Die anfängliche Standardabweichung für die Normalverteilung. Gilt nur, wenn der `init_method`-Hyperparameter auf `normal` festgelegt ist. **Optional** Gültige Werte: positive Gleitkomma-Ganzzahl Standardwert: 0.01  | 
| l1 |  Der L1-Regularisierungsparameter. Wenn Sie die L1-Regularisation nicht verwenden möchten, legen Sie diesen Wert auf 0 fest. **Optional** Gültige Werte: `auto` oder nicht negative Gleitkommazahl Standardwert: `auto`  | 
| learning\$1rate |  Die Schrittgröße, die der Optimierer für Parameteraktualisierungen verwendet. **Optional** Gültige Werte: `auto` oder positive Gleitkomma-Ganzzahl Standardwert: `auto`, dessen Wert vom ausgewählten Optimierer abhängt.  | 
| loss |  Gibt die Verlustfunktion an.  Die verfügbaren Verlustfunktionen und deren Standardwerte hängen von dem Wert von `predictor_type` ab: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/ll_hyperparameters.html) Gültige Werte: `auto`, `logistic`, `squared_loss`, `absolute_loss`, `hinge_loss`, `eps_insensitive_squared_loss`, `eps_insensitive_absolute_loss`, `quantile_loss` oder `huber_loss`  **Optional** Standardwert: `auto`  | 
| loss\$1insensitivity |  Der Parameter für den Epsilon-unempfindlichen Verlusttyp. Während der Trainings- und der Metrikevaluation werden Fehler, die kleiner als dieser Wert sind, als null betrachtet. **Optional** Gültige Werte: positive Gleitkomma-Ganzzahl Standardwert: 0.01   | 
| lr\$1scheduler\$1factor |  Bei jedem `lr_scheduler_step`-Hyperparameter verringert sich die Lernrate um diese Menge. Gilt nur, wenn der `use_lr_scheduler`-Hyperparameter auf `true` festgelegt ist. **Optional** Gültige Werte: `auto` oder positive Gleitkomma-Ganzzahl zwischen 0 und 1 Standardwert: `auto`  | 
| lr\$1scheduler\$1minimum\$1lr |  Die Lernrate sinkt niemals auf einen Wert kleiner als der für `lr_scheduler_minimum_lr` festgelegte Wert. Gilt nur, wenn der `use_lr_scheduler`-Hyperparameter auf `true` festgelegt ist. **Optional** Gültige Werte: `auto` oder positive Gleitkomma-Ganzzahl Standardwerte: `auto`  | 
| lr\$1scheduler\$1step |  Die Anzahl der Schritte zwischen der Verringerung der Lernrate. Gilt nur, wenn der `use_lr_scheduler`-Hyperparameter auf `true` festgelegt ist. **Optional** Gültige Werte: `auto` oder positive Ganzzahl Standardwert: `auto`  | 
| margin |  Der Rand für die `hinge_loss`-Funktion **Optional** Gültige Werte: positive Gleitkomma-Ganzzahl Standardwert: 1.0  | 
| mini\$1batch\$1size |  Die Anzahl der Beobachtungen pro Mini-Stapel für den Dateniterator. **Optional** Gültige Werte: Positive Ganzzahl Standardwert: 1000  | 
| momentum |  Die Dynamik des `sgd`-Optimierers. **Optional** Gültige Werte: `auto` oder eine Gleitkomma-Ganzzahl zwischen 0 und 1,0 Standardwert: `auto`  | 
| normalize\$1data |  Normalisiert die Merkmalsdaten vor dem Training. Die Datennormalisierung verschiebt die Daten für jedes Merkmal auf einen Mittelwert von 0 und skaliert so, dass sich eine einheitliche Standardabweichung ergibt. **Optional** Gültige Werte: `auto`, `true` oder `false` Standardwert: `true`  | 
| normalize\$1label |  Normalisiert die Kennzeichnung. Durch die Normalisierung wird die Bezeichnung auf einen Mittelwert von 0 verschoben und skaliert, um eine einheitliche Standardabweichung zu erreichen. Der Standardwert `auto` normalisiert die Bezeichnung für Regressionsprobleme, nicht aber für Klassifizierungsprobleme. Wenn Sie den `normalize_label`-Hyperparameter bei Klassifizierungsproblemen auf `true` festlegen, wird er vom Algorithmus ignoriert. **Optional** Gültige Werte: `auto`, `true` oder `false` Standardwert: `auto`  | 
| num\$1calibration\$1samples |  Die Anzahl der aus dem Validierungsdatensatz für die Modellkalibrierung zu verwendenden Beobachtungen (beim Suchen des besten Schwellenwerts). **Optional** Gültige Werte: `auto` oder positive Ganzzahl Standardwert: `auto`  | 
| num\$1models |  Die Anzahl der parallel zu schulenden Modelle. Beim Standardwert `auto` entscheidet der Algorithmus über die Anzahl der parallel zu schulenden Modelle. Ein Modell wird entsprechend den vorgegebenen Trainingsparametern trainiert (Regularisierung, Optimierer, Verlust) und die übrigen durch ähnliche Parameter. **Optional** Gültige Werte: `auto` oder positive Ganzzahl Standardwerte: `auto`  | 
| num\$1point\$1for\$1scaler |  Die Anzahl der Datenpunkte, die zur Berechnung der Normalisierung oder Entzerrung der Bedingungen verwendet werden. **Optional** Gültige Werte: Positive Ganzzahl Standardwert: 10,000  | 
| optimizer |  Der Optimierungsalgorithmus, der verwendet werden soll. **Optional** Zulässige Werte: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/ll_hyperparameters.html) Standardwert: `auto`. Die Standardeinstellung für `auto` ist `adam`.  | 
| positive\$1example\$1weight\$1mult |  Die Gewichtung, die positiven Beispielen beim Training mit binärer Klassifizierung zugewiesen wird. Das Gewichtung von negativen Beispielen ist auf 1 festgelegt. Wenn der Algorithmus eine Gewichtung auswählen soll, mit der Fehler bei der Klassifizierung positiver *und* negativer Beispiele den gleichen Einfluss auf den Trainingsverlust haben, geben Sie `balanced` an. Wenn Sie möchten, dass der Algorithmus die Gewichtung auswählt, mit der die Leistung optimiert wird, geben Sie `auto` an. **Optional** Gültige Werte: `balanced`, `auto`oder eine positive Gleitkomma-Ganzzahl Standardwert: 1.0  | 
| quantile |  Das Quantil für Quantilverlust. Das Modell versucht für das Quantil q Prognosen zu erstellen, sodass der Wert von `true_label` größer ist als die Prognose mit der Wahrscheinlichkeit q. **Optional** Gültige Werte: Gleitkomma-Ganzzahl zwischen 0 und 1 Standardwert: 0.5  | 
| target\$1precision |  Die Zielpräzision. Wenn `binary_classifier_model_selection_criteria` den Wert `recall_at_target_precision` hat, wird die Präzision auf diesem Wert gehalten, während der Recall maximiert wird. **Optional** Gültige Werte: Gleitkomma-Ganzzahl zwischen 0 und 1.0 Standardwert: 0.8  | 
| target\$1recall |  Der Ziel-Recall. Wenn `binary_classifier_model_selection_criteria` den Wert `precision_at_target_recall` hat, wird der Recall auf diesem Wert gehalten, während die Präzision maximiert wird. **Optional** Gültige Werte: Gleitkomma-Ganzzahl zwischen 0 und 1.0 Standardwert: 0.8  | 
| unbias\$1data |  Entfernt Verzerrungen der Merkmale vor dem Training, sodass der Mittelwert 0 ist. Standardmäßig sind die Daten unverzerrt, wenn der `use_bias`-Hyperparameter auf `true` gesetzt wurde. **Optional** Gültige Werte: `auto`, `true` oder `false` Standardwert: `auto`  | 
| unbias\$1label |  Entfernt Verzerrungen der Kennzeichnungen vor dem Training, sodass der Mittelwert 0 ist. Gilt nur bei Regression, wenn der `use_bias`-Hyperparameter auf `true` festgelegt ist. **Optional** Gültige Werte: `auto`, `true` oder `false` Standardwert: `auto`  | 
| use\$1bias |  Gibt an, ob das Modell eine Verzerrungsbedingung enthalten soll. Dabei handelt es sich um die Intercept-Bedingung in der linearen Gleichung. **Optional** Gültige Werte: `true` oder `false`. Standardwert: `true`  | 
| use\$1lr\$1scheduler |  Gibt an, ob ein Scheduler für die Lernrate verwendet werden soll. Wenn Sie einen Scheduler verwenden möchten, geben Sie `true` an.  **Optional** Gültige Werte: `true` oder `false`. Standardwert: `true`  | 
| wd |  Der Weight-Decay-Parameter, auch bekannt als L2-Regularisationsparameter. Wenn Sie die L2-Regularisation nicht verwenden möchten, legen Sie diesen Wert auf 0 fest. **Optional** Gültige Werte: `auto` oder nicht negative Gleitkomma-Ganzzahl Standardwert: `auto`  | 

# Abstimmen eines linearen Learner-Modells
<a name="linear-learner-tuning"></a>

Die *automatische Modelloptimierung*, auch bekannt als Hyperparameteroptimierung, sucht die beste Version eines Modells, indem viele Aufträge ausgeführt werden, die einen Bereich von Hyperparametern in Ihrem Datensatz testen. Sie wählen die optimierbaren Hyperparameter, eine Reihe von Werten für jeden Parameter und eine objektive Metrik aus. Sie wählen die objektive Metrik aus den Metriken aus, die der Algorithmus berechnet. Die automatische Modelloptimierung durchsucht die ausgewählten Hyperparameter nach der Kombination von Werten, die das Modell ergeben, das die objektive Metrik optimiert. 

Der Algorithmus für lineares Lernen verfügt außerdem über einen internen Mechanismus für Optimierungshyperparameter, der von der hier beschriebenen automatischen Funktion zur Modelloptimierung getrennt ist. Standardmäßig optimiert der Algorithmus für lineares Lernen Hyperparameter durch paralleles Schulen mehrerer Modelle. Wenn Sie die automatische Modelloptimierung verwenden, die wird der interne Optimierungsmechanismus für lineares Lernen automatisch ausgeschaltet. Dadurch wird die Anzahl der parallelen Modelle, `num_models`, auf 1 festgelegt. Der Algorithmus ignoriert jeden Wert, den Sie für `num_models` festgelegt haben.

Mehr Informationen über die Modelloptimierung finden Sie unter [Automatische Modelloptimierung mit KI SageMaker](automatic-model-tuning.md).

## Mit dem linearen Learner-Algorithmus berechnete Metriken
<a name="linear-learner-metrics"></a>

Der Algorithmus für lineares Lernen meldet die Metriken in der folgenden Tabelle (berechnet während des Trainings). Wählen Sie eine dieser Metriken als objektive Metrik aus. Um Überanpassung zu vermeiden, empfehlen wir, das Modell anhand einer Validierungs- anstelle einer Trainingsmetrik zu optimieren.


| Metrikname | Description | Optimierungsrichtung | 
| --- | --- | --- | 
| test:absolute\$1loss |  Der absolute Verlust des endgültigen Modells auf dem Testdatensatz. Diese objektive Metrik gilt nur für die Regression.  |  Minimieren  | 
| test:binary\$1classification\$1accuracy |  Die Genauigkeit des endgültigen Modells im Testdatensatz. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| test:binary\$1f\$1beta |  Der F-Betawert des endgültigen Modells für den Testdatensatz. Standardmäßig handelt es sich um die F1-Bewertung. Dies ist das harmonische Mittel von Genauigkeit und Wiedererkennung. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| test:dcg |  Der abgezinste kumulative Gewinn des endgültigen Modells aus dem Testdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| test:macro\$1f\$1beta |  Der F-Betawert des endgültigen Modells für den Testdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| test:macro\$1precision |  Die Genauigkeit des endgültigen Modells für den Testdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| test:macro\$1recall |  Der Recall-Wert des endgültigen Modells für den Testdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| test:mse |  Der mittlere quadratische Fehler des endgültigen Modells für den Testdatensatz. Diese objektive Metrik gilt nur für die Regression.  |  Minimieren  | 
| test:multiclass\$1accuracy |  Die Genauigkeit des endgültigen Modells im Testdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| test:multiclass\$1top\$1k\$1accuracy |  Die Genauigkeit unter den obersten k Labels, die im Testdatensatz vorhergesagt wurde. Wenn Sie diese Metrik als Ziel wählen, empfehlen wir, den Wert von k mithilfe des `accuracy_top_k` Hyperparameters festzulegen. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| test:objective\$1loss |  Der Mittelwert der objektiven Verlustfunktion im Testdatensatz, nachdem das Modell trainiert wurde. Standardmäßig ist der Verlust ein logistischer Verlust für die binäre Klassifikation und ein quadratischer Verlust für die Regression. Um den Verlust auf andere Typen festzulegen, verwenden Sie den `loss`-Hyperparameter.  |  Minimieren  | 
| test:precision |  Die Präzision des endgültigen Modells im Testdatensatz. Wenn Sie diese Metrik als objektive Metrik auswählen, empfehlen wir Ihnen, einen Ziel-Recall festzulegen, indem Sie die `binary_classifier_model_selection`-Hyperparameter auf `precision_at_target_recall` festlegen und den Wert für den `target_recall`-Hyperparameter angeben. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| test:recall |  Der Recall des endgültigen Modells im Testdatensatz. Wenn Sie diese Metrik als Ziel auswählen, empfehlen wir Ihnen, eine Zielpräzision festzulegen, indem Sie die Hyperparameter `binary_classifier_model_selection` auf `recall_at_target_precision` festlegen und den Wert für den Hyperparameter `target_precision` angeben. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| test:roc\$1auc\$1score |  Die Fläche unter der Empfangskennlinie (ROC-Kurve) des endgültigen Modells auf dem Testdatensatz. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| validation:absolute\$1loss |  Der absolute Verlust des endgültigen Modells auf dem Validierungsdatensatz. Diese objektive Metrik gilt nur für die Regression.  |  Minimieren  | 
| validation:binary\$1classification\$1accuracy |  Die Genauigkeit des endgültigen Modells im Validierungsdatensatz. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| validation:binary\$1f\$1beta |  Der F-Betawert des endgültigen Modells für den Validierungsdatensatz. Standardmäßig ist der F-Beta-Score der F1-Score, der das harmonische Mittel der `validation:precision` and `validation:recall` Metriken ist. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| validation:dcg |  Der abgezinste kumulative Gewinn des endgültigen Modells aus dem Validierungsdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| validation:macro\$1f\$1beta |  Der F-Betawert des endgültigen Modells für den Validierungsdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| validation:macro\$1precision |  Die Genauigkeit des endgültigen Modells für den Validierungsdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| validation:macro\$1recall |  Der Recall-Wert des endgültigen Modells für den Validierungsdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| validation:mse |  Der mittlere quadratische Fehler des endgültigen Modells für den Validierungsdatensatz. Diese objektive Metrik gilt nur für die Regression.  |  Minimieren  | 
| validation:multiclass\$1accuracy |  Die Genauigkeit des endgültigen Modells im Validierungsdatensatz. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| validation:multiclass\$1top\$1k\$1accuracy |  Die Genauigkeit unter den obersten k Labels, die im Validierungsdatensatz vorhergesagt wurde. Wenn Sie diese Metrik als Ziel wählen, empfehlen wir, den Wert von k mithilfe des `accuracy_top_k` Hyperparameters festzulegen. Diese objektive Metrik ist nur für die Mehrklassen-Klassifizierung gültig.  |  Maximieren  | 
| validation:objective\$1loss |  Der Mittelwert der objektiven Verlustfunktion im Validierungsdatensatz jeder Epoche. Standardmäßig ist der Verlust ein logistischer Verlust für die binäre Klassifikation und ein quadratischer Verlust für die Regression. Um den Verlust auf andere Typen festzulegen, verwenden Sie den `loss`-Hyperparameter.  |  Minimieren  | 
| validation:precision |  Die Genauigkeit des endgültigen Modells im Validierungsdatensatz. Wenn Sie diese Metrik als objektive Metrik auswählen, empfehlen wir Ihnen, einen Ziel-Recall festzulegen, indem Sie die `binary_classifier_model_selection`-Hyperparameter auf `precision_at_target_recall` festlegen und den Wert für den `target_recall`-Hyperparameter angeben. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| validation:recall |  Die Sensitivität des endgültigen Modells im Validierungsdatensatz. Wenn Sie diese Metrik als Ziel auswählen, empfehlen wir Ihnen, eine Zielpräzision festzulegen, indem Sie die Hyperparameter `binary_classifier_model_selection` auf `recall_at_target_precision` festlegen und den Wert für den Hyperparameter `target_precision` angeben. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 
| validation:rmse |  Der mittlere quadratische Fehler des endgültigen Modells für den Validierungsdatensatz. Diese objektive Metrik gilt nur für die Regression.  |  Minimieren  | 
| validation:roc\$1auc\$1score |  Die Fläche unter der Empfangscharakteristikkurve (ROC-Kurve) des endgültigen Modells auf dem Validierungsdatensatz. Diese objektive Metrik ist nur für die binäre Klassifikation gültig.  |  Maximieren  | 

## Abstimmung von Hyperparametern für lineare Learner
<a name="linear-learner-tunable-hyperparameters"></a>

Sie können ein Modell für lineares Lernen mit den folgenden Hyperparametern optimieren.


| Name des Parameters | Parametertyp | Empfohlene Bereiche | 
| --- | --- | --- | 
| wd |  `ContinuousParameterRanges`  |  `MinValue: ``1e-7`, `MaxValue`: `1`  | 
| l1 |  `ContinuousParameterRanges`  |  `MinValue`: `1e-7`, `MaxValue`: `1`  | 
| learning\$1rate |  `ContinuousParameterRanges`  |  `MinValue`: `1e-5`, `MaxValue`: `1`  | 
| mini\$1batch\$1size |  `IntegerParameterRanges`  |  `MinValue`: `100`, `MaxValue`: `5000`  | 
| use\$1bias |  `CategoricalParameterRanges`  |  `[True, False]`  | 
| positive\$1example\$1weight\$1mult |  `ContinuousParameterRanges`  |  `MinValue`: 1e-5, `MaxValue`: `1e5`  | 

# Antwortformate von linearen Learnern
<a name="LL-in-formats"></a>

## JSON-Antwortformat
<a name="LL-json"></a>

Alle integrierten Algorithmen von Amazon SageMaker AI halten sich an das gemeinsame Eingabe-Inferenzformat, das unter [Common Data Formats — Inference](https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-inference.html) beschrieben ist. Im Folgenden sind die verfügbaren Ausgabeformate für den SageMaker AI-Algorithmus für lineare Lernende aufgeführt.

**Binäre Klassifikation**

```
let response =   {
    "predictions":    [
        {
            "score": 0.4,
            "predicted_label": 0
        } 
    ]
}
```

**Mehrklassen-Klassifizierung**

```
let response =   {
    "predictions":    [
        {
            "score": [0.1, 0.2, 0.4, 0.3],
            "predicted_label": 2
        } 
    ]
}
```

**Regression**

```
let response =   {
    "predictions":    [
        {
            "score": 0.4
        } 
    ]
}
```

## JSONLINES-Antwortformat
<a name="LL-jsonlines"></a>

**Binäre Klassifikation**

```
{"score": 0.4, "predicted_label": 0}
```

**Mehrklassen-Klassifizierung**

```
{"score": [0.1, 0.2, 0.4, 0.3], "predicted_label": 2}
```

**Regression**

```
{"score": 0.4}
```

## RECORDIO-Antwortformat
<a name="LL-recordio"></a>

**Binäre Klassifikation**

```
[
    Record = {
        features = {},
        label = {
            'score': {
                keys: [],
                values: [0.4]  # float32
            },
            'predicted_label': {
                keys: [],
                values: [0.0]  # float32
            }
        }
    }
]
```

**Mehrklassen-Klassifizierung**

```
[
    Record = {
    "features": [],
    "label":    {
            "score":  {
                    "values":   [0.1, 0.2, 0.3, 0.4]   
            },
            "predicted_label":  {
                    "values":   [3]
            }
       },
    "uid":  "abc123",
    "metadata": "{created_at: '2017-06-03'}"
   }
]
```

**Regression**

```
[
    Record = {
        features = {},
        label = {
            'score': {
                keys: [],
                values: [0.4]  # float32
            }   
        }
    }
]
```