Iperparametri Object2Vec - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Iperparametri Object2Vec

Nella richiesta CreateTrainingJob puoi specificare l'algoritmo di addestramento. È inoltre possibile specificare iperparametri specifici dell'algoritmo come mappe. string-to-string La tabella seguente elenca gli iperparametri per l'algoritmo di addestramento Object2Vec.

Nome parametro Descrizione
enc0_max_seq_len

La lunghezza massima della sequenza per il codificatore enc0.

Campo obbligatorio

Valori validi: 1 ≤ numero intero ≤ 5000

enc0_vocab_size

La dimensione del vocabolario di token enc0.

Campo obbligatorio

Valori validi: 2 ≤ numero intero ≤ 3000000

bucket_width

La differenza consentita tra la lunghezza della sequenza di dati quando il bucketing è abilitato. Per abilitare il bucketing, specifica un valore diverso da zero per questo parametro.

Opzionale

Valori validi: 0 ≤ numero intero ≤ 100

Valore predefinito: 0 (nessun bucketing)

comparator_list

Elenco utilizzato per personalizzare il modo in cui vengono confrontati due incorporamenti. Il livello dell'operatore comparatore di Object2Vec accetta le codifiche di entrambi i codificatori come input e restituisce un singolo vettore come output. Questo vettore è una concatenazione di vettori secondari. I valori stringa passati a comparator_list e l'ordine in cui vengono passati determinano il modo in cui questi vettori secondari vengono assemblati. Ad esempio, se comparator_list="hadamard, concat", l'operatore comparatore costruisce il vettore concatenando il prodotto Hadamard di due codifiche e la concatenazione di due codifiche. Se invece comparator_list="hadamard", l'operatore comparatore costruisce il vettore come prodotto hadamard solo di due codifiche.

Opzionale

Valori validi: una stringa che contiene qualsiasi combinazione dei nomi dei tre operatori binari: hadamard, concat o abs_diff. L'algoritmo Object2Vec attualmente richiede che le due codifiche vettoriali abbiano la stessa dimensione. Questi operatori producono i vettori secondari come segue:

  • hadamard: costruire il vettore come prodotto Hadamard (elemento per elemento) di due codifiche.

  • concat: costruisce un vettore come concatenazione di due codifiche.

  • abs_diff: costruire un vettore come differenza assoluta tra due codifiche.

Valore predefinito: "hadamard, concat, abs_diff"

dropout

La probabilità di dropout per i livelli di rete. Il dropout è una forma di regolarizzazione utilizzata nelle reti neurali che riduce l'overfitting mediante il taglio dei neuroni codipendenti.

Opzionale

Valori validi: 0,0 ≤ float ≤ 1,0

Valore predefinito: 0.0

early_stopping_patience

Viene applicato il numero di epoche (Unix epochs) consecutive senza miglioramenti consentiti prima della sospensione anticipata. Il miglioramento è definito con l'iperparametro early_stopping_tolerance.

Opzionale

Valori validi: 1 ≤ numero intero ≤ 5

Valore predefinito: 3

early_stopping_tolerance

La riduzione della funzione di perdita che un algoritmo deve raggiungere tra epoche (Unix epochs) consecutive per evitare l'arresto precoce dopo la conclusione del numero di epoche (Unix epochs) consecutive specificate nell'iperparametro early_stopping_patience.

Opzionale

Valori validi: 0,000001 ≤ float ≤ 0,1

Valore predefinito: 0,01

enc_dim

La dimensione dell'output del livello di incorporamento.

Opzionale

Valori validi: 4 ≤ numero intero ≤ 10000

Valore predefinito: 4096

enc0_network

Il modello di rete per il codificatore enc0.

Opzionale

Valori validi: hcnn, bilstm o pooled_embedding

  • hcnn: una rete neurale convoluzionale gerarchica.

  • bilstm: una rete di memoria a lungo termine bidirezionale (LSTM, Long Short-Term Memory), in cui il segnale si propaga all'indietro e in avanti nel tempo. Questa è un'architettura di rete neurale ricorrente (RNN) appropriata per attività di apprendimento sequenziale.

  • pooled_embedding: calcola la media degli incorporamenti di tutti i token nell'input.

Valore predefinito: hcnn

enc0_cnn_filter_width

La larghezza del filtro del codificatore enc0 della rete neurale convoluzionale (CNN).

Condizionale

Valori validi: 1 ≤ numero intero ≤ 9

Valore predefinito: 3

enc0_freeze_pretrained_embedding

Indica se congelare i pesi di incorporamento già addestrati di enc0.

Condizionale

Valori validi: True o False

Valore predefinito: True

enc0_layers

Il numero di livelli nel codificatore enc0.

Condizionale

Valori validi: auto o 1 ≤ numero intero ≤ 4

  • Per hcnn, auto significa 4.

  • Per bilstm, auto significa 1.

  • Per pooled_embedding, auto ignora il numero di livelli.

Valore predefinito: auto

enc0_pretrained_embedding_file

Il nome del file di incorporamento token enc0 già addestrato nel canale di dati ausiliari.

Condizionale

Valori validi: stringa con caratteri alfanumerici, trattino basso o punto. [A-Za-z0-9\.\_]

Valore predefinito: "" (stringa vuota)

enc0_token_embedding_dim

La dimensione dell'output del livello di incorporamento token enc0.

Condizionale

Valori validi: 2 ≤ numero intero ≤ 1000

Valore predefinito: 300

enc0_vocab_file

Il file di vocabolario per la mappatura dei vettori di incorporamento token enc0 già addestrati agli ID vocabolario numerici.

Condizionale

Valori validi: stringa con caratteri alfanumerici, trattino basso o punto. [A-Za-z0-9\.\_]

Valore predefinito: "" (stringa vuota)

enc1_network

Il modello di rete per il codificatore enc1. Se vuoi che il codificatore enc1 utilizzi lo stesso modello di rete di enc0, inclusi i valori degli iperparametri, imposta il valore su enc0.

Nota

Anche quando le reti dei codificatori enc0 ed enc1 hanno architetture simmetriche, non è possibile condividere i valori dei parametri per queste reti non sono supportati.

Opzionale

Valori validi: enc0, hcnn, bilstm o pooled_embedding

  • enc0: il modello di rete per il codificatore enc0.

  • hcnn: una rete neurale convoluzionale gerarchica.

  • bilstm: una rete LSTM bidirezionale, in cui il segnale si propaga all'indietro e in avanti nel tempo. Questa è un'architettura di rete neurale ricorrente (RNN) appropriata per attività di apprendimento sequenziale.

  • pooled_embedding: le medie degli incorporamenti di tutti i token nell'input.

Valore predefinito: enc0

enc1_cnn_filter_width

La larghezza del filtro del codificatore CNN enc1.

Condizionale

Valori validi: 1 ≤ numero intero ≤ 9

Valore predefinito: 3

enc1_freeze_pretrained_embedding

Indica se congelare i pesi di incorporamento già addestrati di enc1.

Condizionale

Valori validi: True o False

Valore predefinito: True

enc1_layers

Il numero di livelli nel codificatore enc1.

Condizionale

Valori validi: auto o 1 ≤ numero intero ≤ 4

  • Per hcnn, auto significa 4.

  • Per bilstm, auto significa 1.

  • Per pooled_embedding, auto ignora il numero di livelli.

Valore predefinito: auto

enc1_max_seq_len

La lunghezza massima della sequenza per il codificatore enc1.

Condizionale

Valori validi: 1 ≤ numero intero ≤ 5000

enc1_pretrained_embedding_file

Il nome del file di incorporamento token enc1 già addestrato nel canale di dati ausiliari.

Condizionale

Valori validi: stringa con caratteri alfanumerici, trattino basso o punto. [A-Za-z0-9\.\_]

Valore predefinito: "" (stringa vuota)

enc1_token_embedding_dim

La dimensione dell'output del livello di incorporamento token enc1.

Condizionale

Valori validi: 2 ≤ numero intero ≤ 1000

Valore predefinito: 300

enc1_vocab_file

Il file di vocabolario per la mappatura dei vettori di incorporamento token enc1 già addestrati agli ID vocabolario.

Condizionale

Valori validi: stringa con caratteri alfanumerici, trattino basso o punto. [A-Za-z0-9\.\_]

Valore predefinito: "" (stringa vuota)

enc1_vocab_size

La dimensione del vocabolario di token enc0.

Condizionale

Valori validi: 2 ≤ numero intero ≤ 3000000

epochs

Il numero di epoche (Unix epochs) da eseguire per l’addestramento.

Opzionale

Valori validi: 1 ≤ numero intero ≤ 100

Valore predefinito: 30

learning_rate

La velocità di apprendimento per l’addestramento.

Opzionale

Valori validi: 1,0E-6 ≤ float ≤ 1,0

Valore predefinito: 0.0004

mini_batch_size

La dimensione del batch in cui è suddiviso il set di dati per un optimizer durante l’addestramento.

Opzionale

Valori validi: 1 ≤ numero intero ≤ 10000

Valore predefinito: 32

mlp_activation

Il tipo di funzione di attivazione per il livello di percezione multistrato (MLP).

Opzionale

Valori validi: tanh, relu o linear

  • tanh: tangente iperbolica

  • relu: unità lineare rettificata (ReLU, Rectified Linear Unit)

  • linear: funzione lineare

Valore predefinito: linear

mlp_dim

La dimensione dell'output dai livelli MLP.

Opzionale

Valori validi: 2 ≤ numero intero ≤ 10000

Valore predefinito: 512

mlp_layers

Numero di livelli MLP nella rete.

Opzionale

Valori validi: 0 ≤ numero intero ≤ 10

Valore predefinito: 2

negative_sampling_rate

Il rapporto tra gli esempi negativi, generati per agevolare l’addestramento dell'algoritmo, e gli esempi positivi che vengono forniti dagli utenti. Gli esempi negativi sono dati che difficilmente si osservano nella realtà e sono etichettati negativamente per l’addestramento. Sono utili per addestrare un modello a distinguere tra gli esempi positivi osservati e gli esempi negativi. Per specificare il rapporto tra gli esempi negativi e gli esempi positivi usati per l’addestramento, imposta il valore su un numero intero positivo. Ad esempio, se l'algoritmo viene addestrato su dati di input in cui tutti gli esempi sono positivi e si imposta negative_sampling_rate su 2, l'algoritmo Object2Vec genera internamente due esempi negativi per ogni esempio positivo. Se non vuoi generare o utilizzare esempi negativi durante l’addestramento, imposta il valore su 0.

Opzionale

Valori validi: 0 ≤ numero intero

Valore predefinito: 0 (disattivato)

num_classes

Il numero di classi per l’addestramento di classificazione. Amazon SageMaker ignora questo iperparametro per problemi di regressione.

Opzionale

Valori validi: 2 ≤ numero intero ≤ 30

Valore predefinito: 2

optimizer

Il tipo di ottimizzazione.

Opzionale

Valori validi: adadelta, adagrad, adam, sgd o rmsprop.

Valore predefinito: adam

output_layer

Il tipo di livello di output in cui si specifica che l'attività è una regressione o classificazione.

Opzionale

Valori validi: softmax o mean_squared_error

  • softmax: la funzione Softmax utilizzata per la classificazione.

  • mean_squared_error: il MSE utilizzato per la regressione.

Valore predefinito: softmax

tied_token_embedding_weight

Indica se utilizzare un livello di incorporamento condiviso per entrambi i codificatori. Se gli input per entrambi i codificatori usano le stesse unità a livello di token, utilizza un livello di incorporamento token condiviso. Ad esempio, per una raccolta di documenti, se un codificatore codifica frasi e un altro codifica interi documenti, puoi utilizzare un livello di incorporamento token condiviso. Questo perché sia le frasi che i documenti sono costituiti da token parola dallo stesso vocabolario.

Opzionale

Valori validi: True o False

Valore predefinito: False

token_embedding_storage_type

Modalità di aggiornamento gradiente utilizzata durante l’addestramento: quando viene usata la modalità dense, l'ottimizzatore calcola la matrice dell'intero gradiente per il livello di incorporamento token anche se la maggior parte delle righe del gradiente ha valore zero. Quando viene usata la modalità sparse, l'ottimizzatore memorizza solo le righe del gradiente effettivamente utilizzate nel mini-batch. Se vuoi che l'algoritmo esegua aggiornamenti del gradiente di tipo lazy, che calcolano i gradienti solo nelle righe diverse da zero e che accelerano l’addestramento, specifica row_sparse. L'impostazione del valore su row_sparse vincola i valori disponibili per altri iperparametri nel modo seguente:

  • L'iperparametro optimizer deve essere impostato su adam, adagrad o sgd. In caso contrario, l'algoritmo genera un CustomerValueError.

  • L'algoritmo disabilita automaticamente il bucketing, impostando l'iperparametro bucket_width su 0.

Opzionale

Valori validi: dense o row_sparse

Valore predefinito: dense

weight_decay

Il parametro di decadimento peso utilizzato per l'ottimizzazione.

Opzionale

Valori validi: 0 ≤ float ≤ 10000

Valore predefinito: 0 (nessun decadimento)