Object2Vec-Hyperparameter - Amazon SageMaker

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.

Object2Vec-Hyperparameter

In der Anforderung CreateTrainingJob geben Sie den Trainingsalgorithmus an. Sie können auch algorithmusspezifische Hyperparameter als Maps angeben. string-to-string In der folgenden Tabelle sind die Hyperparameter für den Object2Vec-Trainingsalgorithmus aufgeführt.

Name des Parameters Beschreibung
enc0_max_seq_len

Die maximale Squenzlänge für den enc0-Encoder.

Erforderlich

Gültige Werte: 1 ≤ Ganzzahl ≤ 5000

enc0_vocab_size

Die Vokabulargröße von enc0-Token.

Erforderlich

Gültige Werte: 2 ≤ Ganzzahl ≤ 3000000

bucket_width

Der erlaubte Unterschied zwischen der Datensequenzlänge, wenn Bucketing aktiviert ist. Um das Bucketing zu aktivieren, geben Sie einen Wert ungleich Null für diesen Parameter an.

Optional

Gültige Werte: 0 ≤ Ganzzahl ≤ 100

Standardwert: 0 (kein Bucketing)

comparator_list

Eine Liste zum Anpassen der Art und Weise, wie zwei Einbettungen verglichen werden. Die Ebene des Object2Vec-Vergleichsoperators nimmt die Kodierungen von beiden Encodern als Eingaben und gibt einen einzelnen Vektor aus. Dieser Vektor ist eine Verkettung von SubVectors. Die Zeichenfolgenwerte, die an die comparator_list übergeben werden, sowie die Reihenfolge dieser Übergabe bestimmen, wie diese SubVectors zusammengesetzt werden. Bei comparator_list="hadamard, concat" erstellt der Vergleichsoperator beispielsweise den Vektor, indem er das Hadamard-Produkt von zwei Kodierungen und die Verkettung von zwei Kodierungen verkettet. Bei comparator_list="hadamard" hingegen erstellt der Vergleichsoperator den Vektor als Hadamard-Produkt von nur zwei Kodierungen.

Optional

Gültige Werte: Eine Zeichenfolge, die eine beliebige Kombination aus den Namen der drei binären Operatoren enthält: hadamard, concat oder abs_diff. Der Object2Vec-Algorithmus erfordert derzeit, dass die beiden Vektorkodierungen die gleiche Dimension haben. Diese Operatoren erzeugen SubVectors wie folgt:

  • hadamard: Erstellt einen Vektor als (elementweises) Hadamard-Produkt aus zwei Kodierungen.

  • concat: Erstellt einen Vektor als Verkettung von zwei Kodierungen.

  • abs_diff: Erstellt einen Vektor als absolute Differenz zwischen zwei Kodierungen.

Standardwert: "hadamard, concat, abs_diff"

dropout

Die Dropout-Wahrscheinlichkeit Netzwerk-Layer. Bei Dropout handelt es sich um eine Form der Regularisierung, die in neuronalen Netzwerken verwendet wird und Überanpassung durch Kürzen koabhängiger Neuronen reduziert.

Optional

Gültige Werte: 0,0 ≤ Gleitkommazahl ≤ 1,0

Standardwert: 0.0

early_stopping_patience

Die Anzahl der aufeinanderfolgenden Epochen ohne Verbesserung, die zulässig ist, bevor das frühzeitige Beenden erfolgt. Verbesserung wird durch den Hyperparameter early_stopping_tolerance definiert.

Optional

Gültige Werte: 1 ≤ Ganzzahl ≤ 5

Standardwert: 3

early_stopping_tolerance

Die Verringerung in der Verlustfunktion, die ein Algorithmus zwischen aufeinanderfolgenden Epochen erreichen muss, um ein frühes Anhalten zu vermeiden, nachdem die Anzahl der aufeinanderfolgenden im Hyperparameter early_stopping_patience festgelegten Epochen abgeschlossen ist.

Optional

Gültige Werte: 0,000001 ≤ Gleitkommazahl ≤ 0,1

Standardwert: 0.01

enc_dim

Die Dimension der Ausgabe des einbettenden Layers.

Optional

Gültige Werte: 4 ≤ Ganzzahl ≤ 10000

Standardwert: 4096

enc0_network

Das Netzwerkmodell für den enc0-Encoder.

Optional

Gültige Werte: hcnn, bilstm oder pooled_embedding

  • hcnn: Ein hierarchisches Convolutional Neural Network.

  • bilstm: Ein bidirektionales Langzeit-Kurzzeit-Speichernetzwerk (biLSTM), in dem das Signal auf der Zeitachse sowohl vorwärts als auch rückwärts propagiert wird. Hierbei handelt es sich um eine entsprechende rekurrente neuronale Netzwerk (RNN)-Architektur für sequenzielle Lernaufgaben.

  • pooled_embedding: Berechnet den Durchschnitt der Einbettungen aller Token in der Eingabe.

Standardwert: hcnn

enc0_cnn_filter_width

Die Filterbreite des Convolutional Neural Network (CNN) enc0-Encoders.

Bedingt

Gültige Werte: 1 ≤ Ganzzahl ≤ 9

Standardwert: 3

enc0_freeze_pretrained_embedding

Gibt an, ob mit enc0 vortrainierte Einbettungsgewichtungen eingefroren werden sollen.

Bedingt

Gültige Werte: True oder False.

Standardwert: True

enc0_layers

Die Anzahl der Layer im enc0-Encoder.

Bedingt

Gültige Werte: auto oder 1 ≤ Ganzzahl ≤ 4

  • Bei hcnn bedeutet auto 4.

  • Bei bilstm bedeutet auto 1.

  • Bei pooled_embedding ignoriert auto die Anzahl der Ebenen.

Standardwert: auto

enc0_pretrained_embedding_file

Der Dateiname der vortrainierten enc0-Token-Einbettungsdatei im zusätzlichen Datenkanal.

Bedingt

Gültige Werte: Zeichenfolge mit alphanumerischen Zeichen, Unterstrich oder Punkt. [A-Za-z0-9\.\_]

Standardwert: "" (eine leere Zeichenfolge)

enc0_token_embedding_dim

Die Ausgabedimension des einbettenden Layers des enc0-Tokens.

Bedingt

Gültige Werte: 2 ≤ Ganzzahl ≤ 1000

Standardwert: 300

enc0_vocab_file

Die Vokabulardatei für die Zuweisung von vortrainierten enc0-Token-Einbettungsvektoren zu numerischen Vokabular-IDs.

Bedingt

Gültige Werte: Zeichenfolge mit alphanumerischen Zeichen, Unterstrich oder Punkt. [A-Za-z0-9\.\_]

Standardwert: "" (eine leere Zeichenfolge)

enc1_network

Das Netzwerkmodell für den enc1-Encoder. Wenn Sie möchten, dass der enc1-Encoder das gleiche Netzwerkmodell wie enc0 verwendet (einschließlich der Hyperparameterwerte), legen Sie den Wert auf enc0 fest.

Anmerkung

Auch wenn die enc0- und enc1-Encoder-Netzwerke symmetrische Architekturen haben, können Sie Parameterwerte für diese Netzwerke nicht gemeinsam nutzen.

Optional

Gültige Werte: enc0, hcnn, bilstm oder pooled_embedding

  • enc0: Das Netzwerkmodell für den enc0-Encoder.

  • hcnn: Ein hierarchisches Convolutional Neural Network.

  • bilstm: Ein bidirektionales LSTM, in dem das Signal auf der Zeitachse sowohl vorwärts als auch rückwärts propagiert wird. Hierbei handelt es sich um eine entsprechende rekurrente neuronale Netzwerk (RNN)-Architektur für sequenzielle Lernaufgaben.

  • pooled_embedding: Die Mittelwerte der Einbettungen aller Token in der Eingabe.

Standardwert: enc0

enc1_cnn_filter_width

Die Filterbreite des CNN enc1-Encoders.

Bedingt

Gültige Werte: 1 ≤ Ganzzahl ≤ 9

Standardwert: 3

enc1_freeze_pretrained_embedding

Gibt an, ob mit enc1 vortrainierte Einbettungsgewichtungen eingefroren werden sollen.

Bedingt

Gültige Werte: True oder False.

Standardwert: True

enc1_layers

Die Anzahl der Layer im enc1-Encoder.

Bedingt

Gültige Werte: auto oder 1 ≤ Ganzzahl ≤ 4

  • Bei hcnn bedeutet auto 4.

  • Bei bilstm bedeutet auto 1.

  • Bei pooled_embedding ignoriert auto die Anzahl der Ebenen.

Standardwert: auto

enc1_max_seq_len

Die maximale Squenzlänge für den enc1-Encoder.

Bedingt

Gültige Werte: 1 ≤ Ganzzahl ≤ 5000

enc1_pretrained_embedding_file

Der Dateiname der vortrainierten enc1-Token-Einbettungsdatei im zusätzlichen Datenkanal.

Bedingt

Gültige Werte: Zeichenfolge mit alphanumerischen Zeichen, Unterstrich oder Punkt. [A-Za-z0-9\.\_]

Standardwert: "" (eine leere Zeichenfolge)

enc1_token_embedding_dim

Die Ausgabedimension des einbettenden Layers des enc1-Tokens.

Bedingt

Gültige Werte: 2 ≤ Ganzzahl ≤ 1000

Standardwert: 300

enc1_vocab_file

Die Vokabulardatei für die Zuweisung von vortrainierten enc1-Tokeneinbettungen zu Vokabular-IDs.

Bedingt

Gültige Werte: Zeichenfolge mit alphanumerischen Zeichen, Unterstrich oder Punkt. [A-Za-z0-9\.\_]

Standardwert: "" (eine leere Zeichenfolge)

enc1_vocab_size

Die Vokabulargröße von enc0-Token.

Bedingt

Gültige Werte: 2 ≤ Ganzzahl ≤ 3000000

epochs

Die Anzahl der für das Training auszuführenden Epochen.

Optional

Gültige Werte: 1 ≤ Ganzzahl ≤ 100

Standardwert: 30

learning_rate

Die Lernrate für das Training.

Optional

Gültige Werte: 1.0E-6 ≤ Gleitkommazahl ≤ 1,0

Standardwert: 0.0004

mini_batch_size

Die Stapelgröße, in die der Datensatz für einen optimizer während des Trainings aufgeteilt wird.

Optional

Gültige Werte: 1 ≤ Ganzzahl ≤ 10000

Standardwert: 32

mlp_activation

Der Typ der Aktivierungsfunktion für das Multi-Layer-Perceptron (MLP)-Layer.

Optional

Gültige Werte: tanh, relu oder linear

  • tanh: Hyperbolische Tangente

  • relu: Korrigierte lineare Einheit (ReLU)

  • linear: Lineare Funktion

Standardwert: linear

mlp_dim

Die Dimension der Ausgabe von MLP-Layern.

Optional

Gültige Werte: 2 ≤ Ganzzahl ≤ 10000

Standardwert: 512

mlp_layers

Die Anzahl der MLP-Layer im Netzwerk.

Optional

Gültige Werte: 0 ≤ Ganzzahl ≤ 10

Standardwert: 2

negative_sampling_rate

Das Verhältnis der negativen Stichproben, die generiert wurden, um das Training des Algorithmus zu unterstützen, zu den positiven Stichproben, die von Benutzern bereitgestellt werden. Negative Stichproben stehen für Daten, die in Wirklichkeit wahrscheinlich nicht eintreten, und für das Training negativ gekennzeichnet sind. Sie erleichtern das Training eines Modells, um zwischen den beobachteten positiven Stichproben und den nicht beobachteten negativen Stichproben zu unterscheiden. Um das Verhältnis von negativen zu positiven Stichproben zur Verwendung im Training anzugeben, legen Sie den Wert auf eine positive Ganzzahl fest. Wenn Sie beispielsweise den Algorithmus auf Eingabedaten trainieren, in denen alle Stichproben positiv sind und negative_sampling_rate auf 2 festgelegt ist, erzeugt der Object2Vec-Algorithmus intern zwei negative Stichproben pro positiver Stichprobe. Wenn Sie beim Training keine negativen Stichproben generieren oder verwenden möchten, legen Sie den Wert auf 0 fest.

Optional

Gültige Werte: 0 ≤ Ganzzahl

Standardwert: 0 (aus)

num_classes

Die Anzahl der Klassen für das Klassifizierungstraining. Amazon SageMaker ignoriert diesen Hyperparameter bei Regressionsproblemen.

Optional

Gültige Werte: 2 ≤ Ganzzahl ≤ 30

Standardwert: 2

optimizer

Der Optimierer-Typ.

Optional

Gültige Werte: adadelta, adagrad, adam, sgd oder rmsprop.

Standardwert: adam

output_layer

Der Typ des Ausgabe-Layers, in dem Sie angeben, dass es sich bei der Aufgabe um eine Regression oder Klassifikation handelt.

Optional

Gültige Werte: softmax oder mean_squared_error.

  • softmax: Die Softmax-Funktion, die für die Klassifizierung verwendet wird.

  • mean_squared_error: Der MSE, der für die Regression verwendet wird.

Standardwert: softmax

tied_token_embedding_weight

Ob eine gemeinsame Einbettungsebene für beide Encoder verwendet werden soll. Wenn die Eingabewerte für beide Encoder die gleichen Einheiten auf Token-Ebene verwenden, verwenden Sie eine gemeinsame Token-Einbettungsebene. Wenn z. B. für eine Sammlung von Dokumenten ein Encoder Sätze und ein anderer ganze Dokumente kodiert, können Sie eine gemeinsame Token-Einbettungsebene verwenden. Dies liegt daran, dass sowohl Sätze als auch Dokumente aus Wort-Token desselben Vokabulars bestehen.

Optional

Gültige Werte: True oder False.

Standardwert: False

token_embedding_storage_type

Der während des Trainings verwendete Modus der Gradientenaktualisierung: Bei Verwendung des Modus dense berechnet der Optimierer die vollständige Gradientenmatrix für die Token-Einbettungsebene selbst dann, wenn die meisten Zeilen des Gradienten den Wert 0 haben. Wenn der Modus sparse verwendet wird, speichert der Optimierer nur Zeilen des Gradienten, die im Mini-Stapel tatsächlich genutzt werden. Wenn Sie möchten, dass der Algorithmus träge Gradientaktualisierungen durchführt, bei denen die Gradienten nur in Nicht-Null-Zeilen berechnet werden, was das Training beschleunigt, geben Sie row_sparse an. Wenn der Wert auf row_sparse festgelegt ist, werden die für andere Hyperparameter verfügbaren Werte wie folgt eingeschränkt:

  • Der Hyperparameter optimizer muss auf adam, adagrad oder sgd festgelegt werden. Andernfalls löst der Algorithmus einen CustomerValueError aus.

  • Der Algorithmus deaktiviert automatisch das Bucketing; der Hyperparameter bucket_width wird auf 0 festgelegt.

Optional

Gültige Werte: dense oder row_sparse.

Standardwert: dense

weight_decay

Der Weight-Decay-Parameter, der zur Optimierung verwendet wird.

Optional

Gültige Werte: 0 ≤ Gleitkommazahl ≤ 10000

Standardwert: 0 (kein Verfall)