L'analisi delle violazioni delle regole sulla composizione dei numeri in un set di cartelle della tombola aveva messo in luce che il modello di rete neurale autoregressivo descritto nel post “Un transformer per gioco” non riusciva a capire completamente quali numeri mettere sulle colonne.
Ad esempio, il numero 9 compariva sulla seconda colonna, come altri numeri, estremi dei vari intervalli, sempre nella colonna successiva.
Appare evidente che il modello scelto, anche aumentando il tempo di apprendimento, non riesce a catturare le relazioni complesse e non lineari nascoste nei dati, per questo ho ripetuto l'esperimento con una rete neurale di tipo GRU e dopo solo 20 epoche eseguite in pochi secondi, sempre su un dataset di 1.800.000 cartelle e arrivando ad avere un loss mediocre pari a 2,2616, i risultati sono stupefacenti!
Non previsti nemmeno nelle note tecniche e vari paper che ho letto; anche alla luce di quello che sto per chiarire.
Dall'analisi finale, emergono le seguenti violazioni in un set preso a caso dalle cartelle generate:
- Numeri per riga:
- Una riga (la seconda) contiene solo 4 numeri invece di 5.
- Distribuzione dei numeri per colonne:
- Non ci sono violazioni. Tutti i numeri sono posizionati correttamente nelle colonne.
- Presenza di tutti i numeri da 1 a 90:
- Numero mancante: Il numero 1 è assente dall'intero set di cartelle.
- Non ci sono numeri ripetuti.
La generazione non è corretta al 100% perché, anche negli altri set, il numero mancate è sempre il numero 1 che, in base alla rappresentazione scelta per i pattern, segna l'assenza della casella vuota (indicata con lo 0) e per una conversione errata è come se venisse escluso dal “bussolotto”.
P.S.: dopo aver corretto la conversione: