Carica un `Tensor` 2-D (matrice) con il nome `old_tensor_name` dal checkpoint
in "ckpt_path" e potenzialmente riordina le sue righe e colonne utilizzando le rimappature specificate.
La maggior parte degli utenti dovrebbe utilizzare uno degli inizializzatori del wrapper (come `tf.contrib.framework.load_and_remap_matrix_initializer`) invece di questa funzione direttamente.
Le rimappature sono tensori 1-D con le seguenti proprietà:
- "row_remapping" deve contenere esattamente voci "num_rows". La riga "i" della matrice di output verrà inizializzata dalla riga corrispondente all'indice "row_remapping[i]" nel vecchio "Tensor" dal checkpoint.
- "col_remapping" deve avere 0 voci (a indicare che non è necessario riordinare le colonne) o "num_cols". Se specificato, la colonna "j" della matrice di output verrà inizializzata dalla colonna corrispondente all'indice "col_remapping[j]" nel vecchio "Tensor" dal checkpoint.
- Un valore pari a -1 in una delle rimappature indica una voce "mancante". In tal caso, i valori del tensore `initializing_values` verranno utilizzati per riempire la riga o la colonna mancante. Se `row_remapping` ha `r` voci mancanti e `col_remapping` ha `c` voci mancanti, allora la seguente condizione deve essere vera:
I tensori di rimappatura possono essere generati utilizzando l'operazione GenerateVocabRemapping.
Ad esempio, con row_remapping = [1, 0, -1], col_remapping = [0, 2, -1], inizializzazione_valori = [0.5, -0.5, 0.25, -0.25, 42] e w(i, j) che rappresenta il valore della riga i, colonna j del vecchio tensore nel checkpoint, la matrice di output sarà simile alla seguente:
[[w(1, 0), w(1, 2), 0,5], [w(0, 0), w(0, 2), -0,5], [0,25, -0,25, 42]]
Classi nidificate
classe | LoadAndRemapMatrix.Options | Attributi facoltativi per LoadAndRemapMatrix |
Costanti
Corda | OP_NAME | Il nome di questa operazione, come noto al motore principale di TensorFlow |
Metodi pubblici
Uscita < TFloat32 > | comeuscita () Restituisce l'handle simbolico del tensore. |
LoadAndRemapMatrix statico | create ( Scope scope, Operando < TString > ckptPath, Operando < TString > oldTensorName, Operando < TInt64 > rowRemapping, Operando < TInt64 > colRemapping, Operando < TFloat32 > inizializzazione Valori, Long numRows, Long numCols, Opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione LoadAndRemapMatrix. |
LoadAndRemapMatrix.Options statico | maxRowsInMemory (lungo maxRowsInMemory) |
Uscita < TFloat32 > | matrice di output () Matrice di output contenente i valori esistenti caricati dal checkpoint e con eventuali valori mancanti compilati da inizializzazione_valori. |
Metodi ereditati
Costanti
Stringa finale statica pubblica OP_NAME
Il nome di questa operazione, come noto al motore principale di TensorFlow
Metodi pubblici
Uscita pubblica < TFloat32 > asOutput ()
Restituisce l'handle simbolico del tensore.
Gli input per le operazioni TensorFlow sono output di un'altra operazione TensorFlow. Questo metodo viene utilizzato per ottenere un handle simbolico che rappresenta il calcolo dell'input.
public static LoadAndRemapMatrix create ( Scope scope, Operando < TString > ckptPath, Operando < TString > oldTensorName, Operando < TInt64 > rowRemapping, Operando < TInt64 > colRemapping, Operando < TFloat32 > inizializzazione Valori, Long numRows, Long numCols, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione LoadAndRemapMatrix.
Parametri
scopo | ambito attuale |
---|---|
ckptPath | Percorso del checkpoint TensorFlow (versione 2, `TensorBundle`) da cui verrà caricata la vecchia matrice "Tensor". |
vecchioNomeTensore | Nome del `Tensore` 2-D da caricare dal checkpoint. |
rowRemapping | Un int `Tensore` di rimappature di riga (generalmente creato da `generate_vocab_remapping`). Anche se non è necessaria la rimappatura delle righe, questo deve comunque essere un tensore con valore di indice (ad esempio [0, 1, 2, ...]) o un "Tensore" con valore di indice spostato (ad esempio [8, 9, 10, ...], per `Variabili` partizionate). |
colRemapping | Un `Tensore` int di rimappature di colonne (generalmente creato da `generate_vocab_remapping`). Può essere un `Tensore` di dimensione 0 se deve essere eseguita solo la rimappatura delle righe (ad esempio, l'ordinamento delle colonne è lo stesso). |
inizializzazioneValues | Un "Tensore" float contenente valori da compilare per le celle nella matrice di output che non vengono caricate dal checkpoint. La lunghezza deve essere esattamente uguale al numero di celle mancanti/nuove. |
numRighe | Numero di righe (lunghezza della prima dimensione) nella matrice di output. |
numCol | Numero di colonne (lunghezza della 2a dimensione) nella matrice di output. |
opzioni | trasporta valori di attributi opzionali |
ritorna
- una nuova istanza di LoadAndRemapMatrix
pubblico statico LoadAndRemapMatrix.Options maxRowsInMemory (lungo maxRowsInMemory)
Parametri
maxRowsInMemory | Il numero massimo di righe da caricare dal checkpoint contemporaneamente. Se inferiore o uguale a 0, l'intera matrice verrà caricata in memoria. Impostando questo argomento si scambiano maggiori letture del disco con un minore utilizzo della memoria. |
---|