Forum pubblico/privato: Pubblico
Permessi di scrittura: Utenti registrati
Giorno: 22/11/2020, 16:23:12
Parte con successo il progetto "LC1"
Come già saprete tutti, il progetto LC0 è stato definitivamente abbandonato con l'ultima versione J92-330. In realtà il progetto LC0 era stato formalmente abbandonato da tempo, ovvero dal momento in cui si era passati dall'apprendimento non supervisionato all'apprendimento supervisionato.

Nessun timore: anche se il progetto continuerà a chiamarsi LC0 continuano gli esperimenti per renderlo competitivo contro le nuove reti NNUE.

In particolare, l'apprendimento supervisionato consisterà nell'assumere un set di riferimento di posizioni in cui la valutazione di LC0 senza ricerca operativa differisce di molto rispetto ai programmi di vertice (oggi Stockfish 12) che compiono la ricerca operativa nei grafi delle varianti.

Se la valutazione senza ricerca operativa differisce di molto, allora la rete viene allenata ad incorporare la valutazione di Stockfish.

Se LC0 fino ad oggi apprendeva giocando contro se stessa, nella nuova filosofia programmatrice inizierà ad apprendere anche dalla conoscenza incorporata in Stockfish.

Verranno sviluppati diversi progetti che potranno evolvere nel tempo, secondo varie direzioni che saranno indicate dai test.

Al momento il primo test testimonia che il nuovo approccio è estremamente promettente.

La prima versione di LC0 dovrebbe aver già guadagnato 20 punti Elo rispetto alla versione J92-270, che era la più forte fino ad ora testata.

Siamo già ben oltre la fortissima J92-330, che ha distrutto recentemente Stockfish Classic in un match senza storia svoltosi su Tcec, dimostrandosi in questo scontro indiretto sugli stessi livelli di Stockfish NNUE.

Essendo le reti neurali straordinari generalizzatori, la facile previsione è che in breve tempo LC0 nella nuova versione di apprendimento supervisionato delle partite di Stockfish NNUE possa "succhiare il sangue da Stockfish NNUE" per raggiungere almeno un livello di gioco pari al programma oggi di vertice.

Un saluto e complimenti al forum per la straordinaria preparazione e competenza degli iscritti
Giorno: 17/01/2021, 05:00:01
Link sponsorizzati
Giorno: 22/11/2020, 19:05:35
Io sapevo che erano abbandonate le reti j92 in favore delle j94/j95 che usano un nuovo metodo (Value repair method)...
Lc1 a quanto ne so era uno sviluppo di cui si parlava a febbraio, poi non ne ho saputo più nulla...

Mandaci dei link se hai notizie ciao.gif
Giorno: 22/11/2020, 20:59:32
Il vero problema di Leela sulla dura strada del miglioramento, non credo che siano le Reti Neurali, alcune delle quali saranno davvero fortissime, forse anche più delle NNUE, quanto dell'algoritmo di esplorazione delle varianti, basato sul metodo Montecarlo, che obbliga all'uso di schede grafiche potentissime per cercare di stare alla pari del miracolato avversario.

I nuovi processori amd, sempre più potenti ed economici, al momento, stanno spostando l'ago della bilancia da parte delle cpu, e quindi dell'alfa/beta. Ma può darsi che in futuro un nuovo marchio di schede grafiche alternative alla nvidia possa innescare una guerra anche per le gpu, col risultato di schede sempre più potenti e a prezzi sempre più bassi, rendendo il metodo Montecarlo altrettanto vantaggioso ... mmmm.gifmmmm.gifmmmm.gif

ciao.gifciao.gif
"TB or not TB..."
Giorno: 23/11/2020, 13:44:20
Mi scuso se sono stato frainteso: non esiste al momento una denominazione diversa da LC0, ma e' del tutto evidente che l'apprendimento supervisionato attuale, orientato a "succhiare il sangue" da Stockfish 12 non rispecchia più la filosofia della riproducibiliuta' dei risultati presentati nel famoso paper di AlphaZero.

Avevo chiamato la nuova rete "J95.1-10" impropriamente "LC1" virgolettato, ma la cosa importante per quanto ci riguarda è che la prima nuova rete basata sull'approccio "value repair" è già 20 punti più forte dell'ultima "J92-330", stima che si può avanzare dato che secondo i primi test è 27 punti Elo più forte della "J92-200"

Una considerazione finale a questo punto si impone su questo cambiamento della filosofia di Leela LC0.

Perchè è stato abbandonato il filone dell'apprendimento non supervisionato che cosi' tanto successo ha avuto nel recente passato ?

Molti diranno che la ragione principale è dovuta al tentativo di essere competitivi contro Stockfish NNUEE. Questa e' la ragione principale, ma ve ne è un'altra più sottile.

Come saprete il progetto AlphaZero venne abbandonato perchè la curva di apprendimento non riusciva a dimostrare miglioramenti significativi dopo un certo numero elevato di ore macchina. Google stessa non gradiva che i suoi computer potentissimi venissero impiegati troppo a lungo senza dimostrare risultati consistenti. I programmatori di Alphazero a quel punto percorsero una nuova strada per i giochi ad informazione completa, consistente nell'inaugurare il nuovo progetto AlphaMuZero, avviato a dimostrazione delle potenzialità delle reti neurali di apprendere dei giochi molto complessi senza nemmeno che sia codificata la conoscenza delle regole sottostanti, ma solamente introducendo delle forme sofisticate di pianificazione che in AlphaZero erano assenti.

I risultati a Go del nuovo progetto AlphaMuZero furono ancora una volta sorprendenti, perche' AlphaMuZero miglioro' notevolmente la forza di gioco nel Go. Tuttavia negli scacchi l'algoritmo MuZero non miglioro' AlphaZero riuscendo ad eguagliarne solo la forza di gioco precedente.

Questo esperimento di AlphaMuzero indusse a ritenere che negli scacchi non vi erano dei margini di miglioramento e che l'obiettivo di ottenere un risultato sicuro di pareggio con il Nero a prescindere da qualsiasi strategia del Bianco era divenuta una certezza.

Lo stesso ragionamento applicato ai programmi di Google si può argomentare anche per l'ultima versione di Lc0: non e' battibile con il nero da parte di Stockfish NNUE a condizione che le aperture non vengano forzate o preimpostate. Nell'ultimo match svoltosi nel sito TCEC, nessuno dei due programmi e' riuscito a prevalere sull'altro sia nel caso di un'uscita dal libro con posizione pari e nemmeno in caso di uscita dal libro in una posizione leggermente superiore per una delle due parti. Tutte le partite decisive si sono verificate quando il libro prevedeva un vantaggio di apertura sensibile.

Il nuovo tentativo basato sull'apprendimento supervisionato - che si dipartirà in vari rami di ricerca - cercherà di ovviare alla evidente inferiorita' di LC0 rispetto a Stockfish NNUE nel caso le aperture vengono condizionate, per esigenze richieste dalla totalità dei giocatori di scacchi umani che certamente giocano aperture che sono in larga parte diverse dalle aperture "perfette" che gioca LC0 in assenza di libro.

Un saluto
Giorno: 25/11/2020, 02:52:25
Aspettatevi un grande livellamento della forza dei motori.
Giorno: 02/12/2020, 18:36:24
Certamente, il livellamento verso l'alto è inevitabile dato il vincolo della patta esistente o il vincolo del materiale superiore insufficiente per mattare con lo stallo.

Credo che già da oggi il metro di valutazione degli engine non è più costituito dagli head to head, tutte partite patte in condizioni di scelte standard di aperture equilibrate, ma da condizioni artificiali imposte in competizioni come il Tcec, ovvero scelte di aperture secondarie indirizzate ad enfatizzare delle scelte strategiche e tattiche molto complesse, tipicamente caratterizzate dalla presenza di arrocchi contrapposti su lati diversi della scacchiera.
Giorno: 04/12/2020, 13:57:41
La prima J96 allenata con una % tra il 10% e il 20% dellE partite di Stockfish NNUE conferma i 20 punti di miglioramento sulla J92 -330

Poichè oggi lo scarto tra la migliore dev. attuale di Stockfish e LC0 e di 31 punti Elo a lampo (CCC Championship in corso)

1 Stockfish : 3515.4 31.0 57 54
2 Lc0 : 3484.6 26.0 57 46

La differenza appare minima.

Inoltre c'e' da considerare l'uscita delle nuove schede Nvidia 3090 che appaiono iperveloci e l'uscita di nuove librerie al posto delle attuali che promettono anch'esse un interessante aumento di velocita', calcolato sui 20 punti Elo a LTC
Giorno: 06/12/2020, 16:29:03
Aggiornamento, come chiesto da Masticone, per gli interessati.

Dopo quasi 200 partite il match lampo su CCC tra LC0 vs. Stockfish si avvia alla fine. Il distacco e' di circa 20 punti Elo a favore di Stockfish. Le versioni erano aggiornate al 22.10 per LCO (una delle ultime versioni della J92 dismessa) e al 27.11 per Stockfish.

Ora la nuova versione J96 che impara a modificare le proprie valutazioni in accordo con Stockfish NNUE" pare fin da subito più forte in autotest della J92

https://www.sp-cc.de/nn-vs-sf-testing.htm

e quindi in grado potenzialmente di colmare il leggero gap ancora esistente.

Ci aspettano quindi emozionanti sfide in futuro ad un estremo livellamento tra i due più interessanti, ed alternativi, approcci al gioco.

Un saluto
Giorno: 06/12/2020, 18:06:03
Che vuol dire "impara a modificare le proprie valutazioni in accordo con Stockfish NNUE" ?

Stanno facendo una rete antifish per battere lo stoccafisso ?
Il che avrebbe pure senso se non si fosse messo in mezzo Komodo Dragon...
Giorno: 06/12/2020, 19:34:45
Come già scrivevo all'inizio del 3D, l'apprendimento di una rete neurale può essere classificato in 3 modalita'

- apprendimento non supervisionato
- apprendimento supervisionato
- apprendimento con rinforzo.

Come AlphaZero, Leela era inizialmente un progetto di apprendimento non supervisionato, cioe' il software apprendeva da solo giocando contro se stesso e senza alcun intervento esterno.

Gia' con l'intervento di Sergio Vieri lo spirito iniziale di AlphaZero era stato messo in discussione, perche' Leela era divenuto un progetto di apprendimento supervisionato. Qualcuno potrebbe anche obiettare che neppure Alpha Zero era un modello di apprendimento non supervisionato, in quanto l'immissione di vari parametri come la varieta' di gioco, la temperatura, etc. erano stabiliti empiricamente, dopo vari tentativi.

Ad essere rigorosi, l'unico progetto di apprendimento non superivisionato negli scacchi e' rimasto MuZero, per quanto io possa aver capito finora.

Attualmente il programmatore Hjortos supervisiona con la massima discrezionalita' che gli e' concessa pur di migliorare la forza di gioco di LC0 il materiale di apprendimento, assegnando per l'apprendimento di LC0 una percentuale variabile di mosse che va dal 10% al 20% delle mosse che gioca Stockfish NNUE, allo scopo di allenare Leela a riconoscere le proprie valutazioni errate paragonate alle valutazioni di Stockfish.

In questo senso metaforico, ecco perche' in precedenza avevo scritto che ora Leela non può considerarsi piu' LC0, ma bensi dovrebbe chiamarsi perlomeno "LC1", a segnare il netto stacco rispetto al passato. A prescindere dall'onomastica, nei fatti Leela ora si comporta da vampiro, in quanto cerca di attingere linfa vitale che e' contenuta nella conoscenza di StockFish NNUEE.

Lungo questo processo di vampirizzazione, la domanda da porsi e':

riuscira' Leela a raggiungere o addirittura a superare di nuovo StockFish NNUEE ?

Ai posteri l'ardua sentenza :)