AlphaZero e compagnia bella


Questa pagina ha una gerarchia - Pagina madre:Programmazione

Home Forum Programmazione AlphaZero e compagnia bella

Questo argomento contiene 11 risposte, ha 8 partecipanti, ed è stato aggiornato da Lissandrello Luca Lissandrello Luca 6 mesi, 3 settimane fa.

Stai vedendo 12 articoli - dal 1 a 12 (di 12 totali)
  • Autore
    Articoli
  • #11763
    Lissandrello Luca
    Lissandrello Luca
    Moderatore

    Salvatore Giannotti
    Avete letto questo?
    https://arxiv.org/pdf/1712.01815.pdf

    Stefano Gemma
    @Salvatore: interessantissimo articolo!
    in Satana avevo fatto una cosa simile ma molto più “spartana”, con un algoritmo genetico invece che con la rete neurale (e con scarso successo)

    Stefano Gemma
    sembra che con AlphaZero siano riusciti a superare StockFish, senza introdurre conoscenza manualmente
    ma forse ho capito male il senso dei grafici che riportano

    Salvatore Giannotti
    Hai capito bene, in 4 ore AlphaZero ha autoappreso il gioco giocando contro se stesso, diventando più forte di Stockfish!
    Ed è partito conoscendo solo le regole del gioco
    Incredibile
    Lo avevano già fatto con il Go, il passaggio agli Scacchi era nell’aria

    Stefano Gemma
    e dopo questo, smetto di programmare e mi dedico ad altro! 😉

    Salvatore Giannotti
    Dovremmo metterci tutti a studiare reti neurali, AI e reinforced learning!!!

    Stefano Gemma
    per rincorrere nuovamente qualcuno che è già al top?
    no no… o ci si inventa qualcosa di nuovo o non ne vale la pena
    io sistemo Sabrina abbastanza per… tenere lontano Neurone 😉 e poi passo a programmare la FPGA (che sarà poi una cosa “rivendibile”, come esperienza)
    pensa che le mie Transposition Tables non gestiscono nemmeno la mossa migliore e non le uso per l’ordinamento….
    …fa te quanto lavoro avrei ancora, solo per arrivare ad un programma decente!
    però reti neurali contro algoritmi genetici, potrebbe essere stuzzicante 😉

    Salvatore Giannotti
    Stefano, l’obiettivo non è rincorrere nessuno, ma toccare con mano temi che entreranno molto velocemente a far parte del nostro quotidiano
    L’AI è all’ordine del giorno, vedi a esempio gli assistenti vocali in grado di riconoscere e rispondere in linguaggio naturale
    In questi giorni ho giocato con Google Assistant in italiano sul mio cell

    Fabio Gobbato
    Veramente impressionante! Più di 50 anni di sviluppo sui software scacchistici colmati in poche ore.

    Salvatore Giannotti
    sì, poche ore ma con una potenza di calcolo non proprio alla portata di tutti 🙂

    Stefano Gemma
    beh, l’AI era l’idea di base fin da fine ‘900 ma non ho mai avuto le conoscenze necessarie.

    Luca Lissandrello
    Ho letto la notizia; notevole, ci ho sempre provato e son felice che qualcuno sia riuscito
    Qualcuno riesce a compilare il codice?

    Marco Belli
    Quale codice?

    Fauzi Dabat
    https://github.com/Zeta36/chess-alpha-zero
    poi anche snicolet ha provato a fare una versione per stockfish ma non ne ho capito molto: https://groups.google.com/forum/?fromgroups=#!topic/fishcooking/AE4EgWQ20dY
    poi ho letto un user scrivere sul forum di fishtest che
    Keep in mind that “only” 9 hours of this 5000 TPUs is like 4 years of fishtest.
    non so se sia vero o no, pero’ cosi’ renderebbe le cose piu’ accettabili
    oltre al fatto che le opzioni del match erano molto imparziali
    tra hardware, hash, Time Control e opening book
    pero’ nonostante tutto questo rimane sicuro il fatto che alpha0 abbia davvero lasciato il segno nel mondo del computer chess

    Stefano Gemma
    il punto non è la potenza dei computer usati o la disparità di condizioni: il punto è che una rete neurale si è dimostrata in grado di apprendere e giocare ai massimi livelli
    hanno fatto tanti tentativi, più o meno riusciti
    ma quando ci si mette di mezzo Google…

    Marco Giusfredi
    E ‘ come un Kasparov che analizza 80.000 mosse al secondo ( contro le 3 di Kasparov )

    Stefano Gemma
    eh sì
    (ciao)
    chissà se Google parteciperà al nostro prossimo IGT? 😉
    magari come sponsor :):):):)
    qui rischiamo un terzo livello: 1: umani, 2:software standard, 3:AlphaZero!
    i match umani-software non hanno più molto senso, tra poco non ce l’avranno i match software-alphazero (e derivati)

    Salvatore Giannotti
    tra qualche anno, tutti potremo permetterci computer multicore adatti al deep learning.. e anche noi comuni mortali potremo giocare con l’AI

    Ubaldo Andrea Farina
    Ho letto solo adesso
    E niente, possiamo buttare 50 anni di computer chess nel cestino 🙂
    Ho visto le partite è lo stile è molto bello, aggressivo, alla Tal
    la 30. Bxg6!! è veramente impressionante
    come anche la 21.Bg5!!
    anche alcune mosse del re verso il centro della scacchiera in mediogioco
    Ho letto alcune obiezioni ridicole, come il fatto che Stockfish utilizzasse solo 64 thread
    Evidentemente non sanno che il guadagno di Elo è gia abbastanza basso passando da 16 a 32, ne potevano dare anche 1024 che non sarebbe cambiato molto a mio avviso
    Al contrario la MCTS scala molto bene all’aumentare dei core
    Certo potevano fargli usare piu’ di 1GB di hash table, visto che il lazy smp dipende molto dall’hash table, però ha giocato con 1 min/mossa
    Comunque per noi, per qualche anno, non cambierà niente, alla fine mi pare che una TPU valga 5-10 top di gamma nVidia GTX e loro ne hanno usate migliaia. Al massimo è un problema di Komodo se vogliono partecipare al mondiale 🙂

    Salvatore Giannotti
    hanno 4 milioni di dollari di hardware a disposizione

    Stefano Gemma
    Ma sì, è ovvio che non sono hardware comparabili ma è il concetto che conta, anzi: la filosofia! Non è più ricerca bruta ma auto-apprendimento. Forse si potranno unire le due cose, ottenendo un ibrido che richiede meno hardware ma che raggiunge risultati anche migliori. Dopo il Go e gli Scacchi, a cosa passeranno?

    Ubaldo Andrea Farina
    Beh, la bellezza del deep learning è che lo puoi utilizzare per un sacco di cose, gli algoritmi standard della computer chess servono solo per la computer chess nonostante tutte le chiacchiere che si dissero al tempo di Deep Blue

    Fauzi Dabat
    Parlando di iplementazioni del machine learning
    questo e’ un video interessante
    –video rimosso–

    Stefano Gemma
    Una cosa che ho imparato, riprendendo a giocare “attivamente” a scacchi a tavolino, è che l’apprendimento (ovvero lo studio) è essenziale! Ho sempre trascurato lo studio (degli scacchi) da giovane ed ho ottenuto risultati discreti ma non eccezionali, proprio per quel motivo. Anche per i software/computer è lo stesso.
    Stiamo però perdendo un’occasione, parlandone in chat in modo asincrono: dovremmo aprire un thread sul nostro forum, così da rendere più organica la discussione e più facile recuperare gli interventi di ciascuno.
    La chat è per gli scambi veloci “sincroni”, non per gli interventi “asincroni”, anche se io stesso trovo comodo buttare lì un’idea o un pensiero al volo, tra un lavoro e l’altro, qui in chat.

    LL

    #11764

    kuket15
    Membro

    Impressionante… Grazie del post!

    #11766

    Ciao ragazzi,
    ho letto il paper, mancano un sacco di dettagli (in particolare riguardo l’architettura della rete neurale) ma il risultato è davvero notevole. Forse il punto più interessante è che il loro approccio è generico e può essere applicato a qualunque gioco a informazione completa.
    Ora però viene la parte più divertente (per noi): come facciamo a modificare le loro tecniche per farle girare su un normale laptop? A differenza di Salvatore, non ho voglia di aspettare che vengano messi in commercio dei processori dedicati alle reti neurali…
    🙂

    #11769
    stegemma
    stegemma
    Moderatore

    Puoi sempre programmarti una o più FPGA…

    #11771

    sasachess
    Membro

    A differenza di Salvatore, non ho voglia di aspettare che vengano messi in commercio dei processori dedicati alle reti neurali…

    Perché tu Edo, hai già una discreta conoscenza delle Reti Neurali.. invece, io finché me le studio per bene, passeranno anni.. e i nuovi computer saranno ormai in commercio! :))

    Si potrebbe anche usare un cluster di Raspberry Pi, ma non so se a livello di prestazioni sarebbe sufficiente.

    #11778

    Queste breaking news mi stanno facendo uno strano effetto: ho iniziato a programmare un chess engine per imparare meglio a giocare a Scacchi *io*, per avere un ausilio computazionale fatto da me, i motori esistenti non mi davano altro che PV e valutazioni numeriche…solo che non sapevo bene cosa cercavo.
    Infatti il mio sorgente è un vero e proprio inferno dantesco di minchiate (come dicono nella vicina Francia), che ho cercato di far virare verso un qualcosa di decente e più tradizionale, con risultati un po’…vabbe’, fate voi… 🙂

    Ad un certo punto avevo iniziato ad interessarmi di ricerca “tipo” alfabeta, ma su giochi con elementi casuali (mi interessavano le AI per giochi strategici – tipo warhammer, per intenderci), e avevo intercettato da qualche parte la MCTS (qualche articolo, forse, non ricordo), che per la mia formazione aveva perfettamente senso! Avevo iniziato a implementarla per una specie di book learning, ma Chexa è troppo inefficiente come velocità di calcolo perché facessi passi avanti. Altro progetto mai realizzato è quello usare MCTS per valutare le posizioni in termini di finali raggiungibili (e anche lì c’era il muro computazionale…).

    Poi sono arrivati i successi per i motori MCTS che hanno raggiunto risultati top of the crop prima nel Go, e poi negli Scacchi (e credo siano da quelle parti anche nello Shogi). Da un lato sono contento che esista uno strumento come alphazero, che usa proprio quelle idee (finalmente nuove, nel settore) e le applica IN GENERALE. Dall’altro so che non c’è verso che io riesca ad usarle nel piccolo, il che mi toglie un po’ motivazione.

    Certo che ho visto certe partite contro stockfish e lo stile di gioco di alphazero è davvero impressionante, per cui la parte agonistica di me dice: “ma chi se ne frega, birra e poltrona e godiamoci lo spettacolo!” 🙂
    Peraltro probabilmente riusciamo ad imparare finalmente qualcosa da come gioca “il mostro”, per cui da scacchista esulto!

    In fondo in fondo però penso che stanno succedendo cose che possono condizionare il futuro della nostra civiltà in maniera radicale, e che questi cambiamenti vadano governati in anticipo (cioè ORA): c’è chi è fiducioso (come Kasparov) e chi invece è più preoccupato (vedi per esempio Cathy O’Neil).
    Ma tutto ciò va oltre la CC, ovviamente…

    #11779

    Per chi fosse interessato alle reti neurali ( io me ne dissocio ) c’e’ il motore freeware GIRAFFE con codice pubblicato, basato sul deep learning scritto da uno dei programamtori di AlphaZero ( elo circa 2400 ) che funzione come un normale chess engine, ma la funzione di valutazione e’ autoappresa.
    C’e’ poi Python che ha diverse librerie già fatte per le reti neurali e una libreria dedicata agli scacchi per la genereazione delle mosse, scacchi, perft, ecc., ma la velocità non e’ il suo forte.
    A quanto ho capito sembra comunque che Goggle utillizi Python (già lo faceva con i suoi database ) anche per inteffacciarsi con AlphaZero, anche se poi il programma gira solo a livello hardware.
    Ciao, Marco

    #11824

    lucaNaddei
    Membro

    Oggi nell’ambito di una conferenza sull’AI c’era la possibilità di fare domande via streaming ad un ricercatore che ha fatto parte del team di AlphaGO. Gli ho chiesto se durante la fase di autoapprendimento di AlphaZero il software aggiornava solo i parametri della rete neurale o se avesse anche immagazzinato i dati delle partite per riutilizzarli in fase di ricerca (come pattern); lui mi ha risposto che non è stato salvato nessun dato ed il software ha solo aggiornato i parametri.

    Rispondendo ad un altro ragazzo, che poi ho scoperto essere un amico di Edo Manino, ha detto testualmente che è una “Fake News” il fatto che AlphaGo abbia autoappreso totalmente la tecnica del GO conoscendo solo le regole del gioco, ma ha affermato che nella prima fase dell’apprendimento c’era un team umano che valutava la bontà delle mosse dell’engine.

    Da quanto ho capito lui ha fatto parte solo del team di AlphaGo.

    LucaN

    #11825

    Ok, però per AlphaGo Zero (e poi Alpha Zero) hanno tolto anche quel contributo umano, vedi per esempio il link su wikipedia.

    #11900
    Lissandrello Luca
    Lissandrello Luca
    Moderatore

    Invito alla visione del seguente video del nostro amico David Dolci:

    LL

    #11921
    stegemma
    stegemma
    Moderatore

    Buono, come video divulgativo, un po’ meno dal nostro punto di vista. Apprezzo l’autore, che ha umilmente ammesso di aver capito poco dell’argomento 😉 (e non è che noi ne sappiamo tanto di più).

    Mi aspetto (ed auspico) che facciano un’altra sessione di apprendimento da zero e che si ritrovino con due AlphaZero, con due stili completamente diversi.

    #11962
    Lissandrello Luca
    Lissandrello Luca
    Moderatore

    Allego ancora due video, giusto per vedere come gioca Alpha Zero:

    Personalmente ho visto il secondo video e mi ha impressionato il tipo di gioco di Alpha Zero, apparentemente senza compromessi.

    LL

Stai vedendo 12 articoli - dal 1 a 12 (di 12 totali)

Devi essere loggato per rispondere a questa discussione.

© 2018 G 6 Tutti i diritti riservati - Buon divertimento!

By continuing to use the site, you agree to the use of cookies. more information

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi