Pubblicato il Lascia un commento

jojonki / Pointer-Networks

Pointer NetworksOriol Vinyals, Meire Fortunato, Navdeep Jaitly.
https://arxiv.org/abs/1506.03134

Pointer Networks è una nuova architettura neurale per apprendere la probabilità condizionale di una sequenza di output con elementi che sono token discreti corrispondenti a posizioni in una sequenza di input.

In questo repository, ho messo due esempi di modelli di reti puntatore.

Il modello di sequenza

Nel modello di sequenza, la lunghezza di uscita è lo stesso come la lunghezza di ingresso. Ho messo un compito giocattolo di smistamento compito. L’output è gli indici ordinati dell’input. Vedere il seguente esempio.

// An example// Input : // Output: $ python sequence_train.pyepoch: 0, Loss: 0.99817Acc: 0.57% (51/9000)epoch: 2, Loss: 0.00077Acc: 100.00% (9000/9000)epoch: 4, Loss: 0.00032Acc: 99.99% (8999/9000)----Test result---Acc: 100.00% (1000/1000)

Il modello limite

Nel modello limite, l’output è una tupla come (start_index, end_index). Ho preso il seguente compito giocattolo di confine. Vedi questo sito.

Proviamo un po ‘ di codice su un problema di giocattoli. Le reti di puntatori sono davvero più rilevanti per le sequenze di dati sensibili alla ricorrenza, quindi ne creeremo una. Supponiamo che i nostri dati di input siano una sequenza di numeri interi tra 0 e 10 (con possibili duplicati) di lunghezza sconosciuta. Ogni sequenza inizia sempre con numeri interi bassi (valori casuali tra 1 e 5), ha una serie di numeri interi alti (valori casuali tra 6 e 10), quindi gira di nuovo in basso per finire (da 1 a 5).Ad esempio, una sequenza potrebbe essere “4,1,2,3,1,1,6,9,10,8,6,3,1,1”, con l’esecuzione di interi alti in grassetto, circondata da esecuzioni di interi bassi. Vogliamo formare una rete che può puntare a questi due punti di cambiamento – l’inizio e la fine della corsa di alti nel mezzo, indipendentemente dalla lunghezza della sequenza.

// An example// Input : // Output: $ python boundary_train.pyepoch: 0, Loss: 0.28288accAcc: 98.79% (8891/9000)epoch: 2, Loss: 0.00291accAcc: 99.96% (8996/9000)epoch: 4, Loss: 0.00091accAcc: 100.00% (9000/9000)----Test result---Acc: 100.00% (1000/1000)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.