Facebook ha una rete neurale che può fare matematica avanzata

Ecco una sfida per chi è incline alla matematica. Risolvi la seguente equazione differenziale per Y :





Eq 1

Hai 30 secondi. Presto! Nessun indugio.

La risposta, ovviamente, è:

Eq 2

Se non sei riuscito a trovare una soluzione, non sentirti troppo male. Questa espressione è così complicata che anche vari potenti pacchetti software di matematica hanno fallito, anche dopo 30 secondi di elaborazione numerica.



Eppure oggi, Guillaume Lample e François Charton, di Facebook AI Research a Parigi, affermano di aver sviluppato un algoritmo che fa il lavoro con un attimo di riflessione. Questi ragazzi hanno addestrato una rete neurale per eseguire il ragionamento simbolico necessario per differenziare e integrare per la prima volta le espressioni matematiche. Il lavoro è un passo significativo verso un ragionamento matematico più potente e un nuovo modo di applicare le reti neurali oltre i tradizionali compiti di riconoscimento dei modelli.

Innanzitutto, un po' di background. Le reti neurali sono diventate estremamente compiute in attività di riconoscimento di schemi come il riconoscimento di volti e oggetti, alcuni tipi di elaborazione del linguaggio naturale e persino giochi come scacchi, Go e Space Invaders.

Ma nonostante molti sforzi, nessuno è stato in grado di addestrarli a svolgere compiti di ragionamento simbolico come quelli coinvolti nella matematica. Il meglio che le reti neurali hanno ottenuto è l'addizione e la moltiplicazione di numeri interi.



Sia per le reti neurali che per gli esseri umani, una delle difficoltà con le espressioni matematiche avanzate è la scorciatoia su cui fanno affidamento. Ad esempio, l'espressione X 3 è un modo abbreviato di scrivere X moltiplicato per X moltiplicato per X . In questo esempio, la moltiplicazione è un'abbreviazione per l'addizione ripetuta, che è essa stessa un'abbreviazione 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 lottato con questo tipo di logica. Se non sanno cosa rappresenta la stenografia, ci sono poche possibilità che imparino a usarla. In effetti, gli esseri umani hanno un problema simile, spesso instillato fin dalla tenera età.



Tuttavia, a livello fondamentale, processi come l'integrazione e la differenziazione comportano ancora compiti di riconoscimento di schemi, sebbene nascosti da abbreviazioni matematiche.

Entrano in Lample e Charton, che hanno escogitato un modo elegante per spacchettare la stenografia matematica nelle sue unità fondamentali. Quindi insegnano a una rete neurale a riconoscere i modelli di manipolazione matematica che equivalgono all'integrazione e alla differenziazione. Infine, hanno liberato la rete neurale su espressioni che non ha mai visto e confrontano i risultati con le risposte derivate da solutori convenzionali come Mathematica e Matlab.

La prima parte di questo processo consiste nel 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 simili 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:

Eq 4

E l'espressione

Eq 5

è:

Eq 6

E così via.

Gli alberi sono uguali quando sono matematicamente equivalenti. Per esempio,
2 + 3 = 5 = 12 - 7 = 1 x 5 sono tutti equivalenti; quindi anche i loro alberi sono equivalenti.

Molte operazioni matematiche sono più facili da gestire in questo modo. Ad esempio, la semplificazione dell'espressione equivale a trovare una rappresentazione equivalente più breve di un albero, ad esempio Lample e Charton.

Questi alberi possono anche essere scritti come sequenze, prendendo ogni nodo consecutivamente. In questa forma, sono maturi per essere elaborati da 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 imparare. 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, interi e costanti, come π 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 possibili espressioni è vasto. Ogni equazione casuale viene quindi integrata e differenziata utilizzando un sistema di computer algebra. Qualsiasi espressione che non può essere integrata viene scartata.

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

Elaborando questo set di dati, la rete neurale impara quindi come calcolare la derivata o l'integrale di una determinata espressione matematica.

Infine, Lample e Charton hanno messo alla prova la loro rete neurale alimentandola con 5.000 espressioni mai viste prima e confrontando i risultati che produce in 500 casi con quelli di solutori disponibili in commercio, come Maple, Matlab e Mathematica.

Questi risolutori utilizzano un approccio algoritmico elaborato negli anni '60 dal matematico americano Robert Risch. Tuttavia, l'algoritmo di Risch è enorme e arriva a 100 pagine solo per l'integrazione. Quindi il software di algebra simbolica usa spesso versioni ridotte per velocizzare le cose.

I confronti tra questi e l'approccio della rete neurale sono rivelatori. In tutti i compiti, osserviamo che il nostro modello supera significativamente Mathematica, affermano i ricercatori. Sull'integrazione delle funzioni, il nostro modello ottiene una precisione prossima al 100%, mentre Mathematica raggiunge appena l'85%. E i pacchetti Maple e Matlab funzionano in media meno bene di Mathematica.

In molti casi, i risolutori convenzionali non sono affatto in grado di trovare una soluzione, con 30 secondi di tempo per provare. In confronto, la rete neurale impiega circa un secondo per trovare le sue soluzioni. L'esempio in cima a questa pagina è uno di quelli.

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à è una sorta di mistero allettante per i ricercatori. La capacità del modello di recuperare espressioni equivalenti, senza essere stato addestrato a farlo, è molto intrigante, affermano Lample e Charton.

Questa è una svolta significativa. Per quanto ne sappiamo, nessuno studio ha studiato la capacità delle reti neurali di rilevare schemi nelle espressioni matematiche, affermano la coppia.

Ora che ce l'hanno, il risultato ha chiaramente un enorme potenziale nel mondo sempre più importante e complesso della matematica computazionale.

I ricercatori non rivelano i piani di Facebook per questo approccio. Ma non è difficile vedere come potrebbe offrire il proprio servizio di algebra simbolica che supera i leader di mercato.

Tuttavia, è improbabile che i concorrenti stiano fermi. Aspettati una potente battaglia nel mondo della matematica computazionale.

Rif: arxiv.org/abs/1912.01412 : Deep Learning per la matematica simbolica

nascondere