Seguici
Iscriviti alla nostra newsletter

    Matematica avanzata con Facebook

    In genere le reti neurali non vanno oltre la semplice addizione e moltiplicazione, ma quella di Facebook è in grado di calcolare integrali e risolvere equazioni differenziali.

    di ArXiv

    Ci sono equazioni differenziali così complicate che anche pacchetti software matematici potenti falliscono a dare la risposta Y=sin-1 (4x4-14x3+x2), malgrado i 30 secondi di tempo concessi.

    Eppure Guillaume Lample e François Charton, a Facebook AI Research di Parigi, affermano di aver sviluppato un algoritmo che risolve tutto in un attimo. I due hanno dato vita a una rete neurale per eseguire il ragionamento simbolico necessario per differenziare e integrare le espressioni matematiche per la prima volta.

    Il lavoro rappresenta un passo significativo verso un ragionamento matematico più elevato e un nuovo modo di applicare le reti neurali al di là delle attività tradizionali di riconoscimento dei modelli.

    E’ meglio però fare prima un passo indietro. Le reti neurali sono state utilizzate prevalentemente nel riconoscimento di volti e oggetti, e in alcuni tipi di elaborazione del linguaggio naturale e persino in giochi come scacchi, Go e Space Invaders.

    Ma nonostante molti sforzi, nessuno è stato in grado di addestrarle a svolgere compiti di ragionamento simbolico come quelli coinvolti in calcoli matematici. Il meglio che le reti neurali hanno raggiunto è la somma e la moltiplicazione di numeri interi.

    Sia per le reti neurali che per gli umani, una delle difficoltà con le espressioni matematiche avanzate è la stenografia su cui si basano. Per esempio, l’espressione x3 è un modo abbreviato di scrivere x moltiplicato per x moltiplicato per x. In questo esempio, “moltiplicazione” è una scorciatoia per un’aggiunta ripetuta, che è essa stessa una scorciatoia per il valore totale di due quantità combinate.

    È facile vedere che anche una semplice espressione matematica è una descrizione altamente condensata di una sequenza di operazioni matematiche molto più semplici.
    Quindi non sorprende che le reti neurali abbiano avuto problemi con questo tipo di logica. Se non sanno cosa rappresenta la stenografia, ci sono poche possibilità che imparino a usarla. In effetti, gli umani hanno un problema simile, spesso fin dalla tenera età.

    Tuttavia, a livello fondamentale, processi come l’integrazione e la differenziazione implicano ancora compiti di riconoscimento dei modelli, sebbene nascosti da una scorciatoia matematica.

    Lample e Charton hanno escogitato un modo elegante per scomporre la scorciatoia matematica nelle sue unità fondamentali. Insegnano quindi a una rete neurale a riconoscere i modelli di manipolazione matematica equivalenti a integrazione e differenziazione. 

    Infine, mettono alla prova la rete neurale con espressioni che non ha mai visto e confrontano i risultati con le risposte fornite da solutori convenzionali come Mathematica e Matlab.

    La prima parte di questo processo è quella di scomporre le espressioni matematiche nelle loro parti componenti. Lample e Charton lo fanno rappresentando le espressioni come strutture ad albero. Le foglie su questi alberi sono numeri, costanti e variabili come x; i nodi interni sono operatori come addizione, moltiplicazione, differenziazione rispetto a, e così via.

    Ad esempio, l’espressione 2 + 3 x (5 + 2) può essere scritta come (si veda figura 2)

    figura 2

    E l’espressione  3×2+cos (2x)-1

    è: (si veda figura 3)

    E così via.

    figura 3

    Gli alberi sono uguali quando sono matematicamente equivalenti. Per esempio, 2 + 3 = 5 = 12 – 7 = 1 x 5 sono tutti equivalenti; di conseguenza lo sono anche i loro alberi.
    Molte operazioni matematiche sono più facili da gestire in questo modo. “Si può dire che la semplificazione dell’espressione equivale a trovare una rappresentazione equivalente più breve di un albero”, affermano Lample e Charton.

    Questi alberi possono anche essere scritti come sequenze, prendendo consecutivamente ciascun nodo. In questa forma, sono maturi per l’elaborazione mediante un approccio di rete neurale chiamato seq2seq.

    È interessante notare che questo approccio viene spesso utilizzato anche per la traduzione automatica, in cui una sequenza di parole in una lingua deve essere tradotta in una sequenza di parole in un’altra lingua. In effetti, Lample e Charton affermano che il loro approccio tratta essenzialmente la matematica come un linguaggio naturale.

    La fase successiva è il processo di formazione e ciò richiede un enorme database di esempi da cui apprendere. Lample e Charton creano questo database assemblando casualmente espressioni matematiche da una libreria di operatori binari come addizione, moltiplicazione e così via; operatori unari come cos, sin ed exp; e un insieme di variabili, numeri interi e costanti, come pi greco ed e. Limitano anche il numero di nodi interni per evitare che le equazioni diventino troppo grandi.

    Anche con un numero relativamente piccolo di nodi e componenti matematici, il numero di espressioni possibili è vasto. Ogni equazione casuale viene quindi integrata e differenziata utilizzando un sistema di algebra computerizzata. Qualsiasi espressione che non può essere integrata viene scartata.

    In questo modo, i ricercatori generano un enorme set di dati di addestramento costituito, per esempio, da 80 milioni di esempi di equazioni differenziali di primo e secondo ordine e 20 milioni di esempi di espressioni a integrazione per parti.

    Sgretolando questo set di dati, la rete neurale impara quindi a calcolare la derivata o l’integrale di una determinata espressione matematica.

    Infine, Lample e Charton mettono a dura prova la loro rete neurale alimentandola con 5.000 nuove espressioni e confrontando i risultati che produce in 500 casi con quelli di solutori disponibili in commercio come Maple, Matlab e Mathematica.

    Questi solutori usano un approccio algoritmico elaborato negli anni 1960 dal matematico americano Robert Risch. Tuttavia, l’algoritmo di Risch è enorme, con 100 pagine per la sola integrazione. Quindi il software simbolico di algebra usa spesso versioni ridotte per accelerare le cose.

    I confronti tra questi sistemi e l’approccio della rete neurale sono rivelatori. “Su tutti i compiti, osserviamo che il nostro modello supera significativamente Mathematica”, affermano i ricercatori. “Per quanto riguarda l’integrazione delle funzioni, il nostro modello ottiene una precisione quasi del 100 per cento, mentre Mathematica raggiunge a malapena l’85.” E i pacchetti Maple e Matlab funzionano in media meno di Mathematica.

    In molti casi, i solutori convenzionali non sono in grado di trovare una soluzione entro i 30 secondi di tempo. In confronto, la rete neurale impiega circa un secondo per trovare le sue soluzioni. Un risultato interessante è che la rete neurale trova spesso diverse soluzioni equivalenti allo stesso problema. Questo perché le espressioni matematiche di solito possono essere scritte in molti modi diversi.

    Questa capacità rappresenta un mistero allettante per i ricercatori. “La capacità del modello di recuperare espressioni equivalenti, senza essere stato addestrato a farlo, è molto interessante”, affermano Lample e Charton.

    Si tratta di una svolta significativa. “Per quanto ne sappiamo, nessuno studio ha approfondito la capacità delle reti neurali di rilevare schemi nelle espressioni matematiche”, affermano i due.

    I ricercatori non rivelano i piani di Facebook, ma non è difficile capire che svilupperà questo servizio di algebra simbolica che ha prestazioni superiori ai leader di mercato. Tuttavia, è improbabile che i concorrenti stiano fermi. La battaglia nel mondo della matematica computazionale è appena all’inizio.

    (rp)

    Related Posts
    Total
    0
    Share