Facebook heeft een neuraal netwerk dat geavanceerde wiskunde kan doen

Hier is een uitdaging voor de wiskundigen onder jullie. Los de volgende differentiaalvergelijking op voor ja :





Vgl 1

Je hebt 30 seconden. Snel! Geen gedoe.

Het antwoord is natuurlijk:

Vgl 2

Als je geen oplossing hebt kunnen vinden, voel je dan niet al te slecht. Deze uitdrukking is zo lastig dat zelfs verschillende krachtige softwarepakketten voor wiskunde faalden, zelfs na 30 seconden rekenwerk.



En toch zeggen Guillaume Lample en François Charton, van Facebook AI Research in Parijs, dat ze een algoritme hebben ontwikkeld dat het werk doet met slechts een moment van nadenken. Deze jongens hebben een neuraal netwerk getraind om de noodzakelijke symbolische redenering uit te voeren om voor de eerste keer wiskundige uitdrukkingen te differentiëren en te integreren. Het werk is een belangrijke stap in de richting van krachtiger wiskundig redeneren en een nieuwe manier om neurale netwerken toe te passen die verder gaan dan traditionele patroonherkenningstaken.

Eerst wat achtergrond. Neurale netwerken zijn enorm succesvol geworden in patroonherkenningstaken zoals gezichts- en objectherkenning, bepaalde soorten natuurlijke taalverwerking en zelfs het spelen van games zoals schaken, Go en Space Invaders.

Maar ondanks veel moeite is niemand in staat geweest ze te trainen om symbolische redeneertaken uit te voeren, zoals die bij wiskunde. Het beste dat neurale netwerken hebben bereikt, is het optellen en vermenigvuldigen van gehele getallen.



Voor zowel neurale netwerken als mensen is een van de problemen met geavanceerde wiskundige uitdrukkingen de steno waarop ze vertrouwen. Bijvoorbeeld de uitdrukking x 3 is een verkorte manier van schrijven x vermenigvuldigd met x vermenigvuldigd met x . In dit voorbeeld is vermenigvuldigen een afkorting voor herhaald optellen, wat zelf een afkorting is voor de totale waarde van twee gecombineerde hoeveelheden.

Het is gemakkelijk in te zien dat zelfs een eenvoudige wiskundige uitdrukking een zeer beknopte beschrijving is van een reeks veel eenvoudigere wiskundige bewerkingen.

Het is dus geen verrassing dat neurale netwerken met dit soort logica hebben geworsteld. Als ze niet weten wat de steno betekent, is de kans klein dat ze het leren gebruiken. Mensen hebben inderdaad een soortgelijk probleem, vaak van jongs af aan ingeprent.



Desalniettemin houden processen zoals integratie en differentiatie op het fundamentele niveau nog steeds patroonherkenningstaken in, zij het verborgen door wiskundige steno.

Voer Lample en Charton in, die een elegante manier hebben bedacht om wiskundige steno uit te pakken in zijn fundamentele eenheden. Vervolgens leren ze een neuraal netwerk de patronen van wiskundige manipulatie te herkennen die equivalent zijn aan integratie en differentiatie. Ten slotte laten ze het neurale netwerk los op uitdrukkingen die het nog nooit heeft gezien en vergelijken de resultaten met de antwoorden van conventionele oplossers zoals Mathematica en Matlab.

Het eerste deel van dit proces is om wiskundige uitdrukkingen op te splitsen in hun samenstellende delen. Lample en Charton doen dit door uitdrukkingen weer te geven als boomachtige structuren. De bladeren aan deze bomen zijn getallen, constanten en variabelen zoals: x ; de interne knooppunten zijn operators zoals optellen, vermenigvuldigen, differentiëren-met-respect-naar, enzovoort.



De uitdrukking 2 + 3 x (5+2) kan bijvoorbeeld worden geschreven als:

Vgl 4

En de uitdrukking

Vgl 5

is:

Vgl 6

Enzovoorts.

Bomen zijn gelijk als ze wiskundig equivalent zijn. Bijvoorbeeld,
2 + 3 = 5 = 12 - 7 = 1 x 5 zijn allemaal equivalent; daarom zijn hun bomen ook gelijkwaardig.

Veel wiskundige bewerkingen zijn op deze manier gemakkelijker te hanteren. Vereenvoudiging van uitdrukkingen komt bijvoorbeeld neer op het vinden van een kortere equivalente representatie van een boom, laten we zeggen Lample en Charton.

Deze bomen kunnen ook als reeksen worden geschreven, waarbij elke knoop opeenvolgend wordt genomen. In deze vorm zijn ze rijp voor verwerking door een neurale netwerkbenadering genaamd seq2seq.

Interessant is dat deze benadering ook vaak wordt gebruikt voor machinevertaling, waarbij een reeks woorden in de ene taal moet worden vertaald in een reeks woorden in een andere taal. Inderdaad, Lample en Charton zeggen dat hun benadering wiskunde in wezen behandelt als een natuurlijke taal.

De volgende fase is het trainingsproces, en dit vereist een enorme database met voorbeelden om van te leren. Lample en Charton maken deze database door willekeurig wiskundige uitdrukkingen samen te voegen uit een bibliotheek van binaire operatoren zoals optellen, vermenigvuldigen, enzovoort; unaire operatoren zoals cos, sin en exp; en een reeks variabelen, gehele getallen en constanten, zoals π en e. Ze beperken ook het aantal interne knooppunten om te voorkomen dat de vergelijkingen te groot worden.

Zelfs met relatief kleine aantallen knooppunten en wiskundige componenten, is het aantal mogelijke uitdrukkingen enorm. Elke willekeurige vergelijking wordt vervolgens geïntegreerd en gedifferentieerd met behulp van een computeralgebrasysteem. Elke uitdrukking die niet kan worden geïntegreerd, wordt weggegooid.

Op deze manier genereren de onderzoekers een enorme trainingsdataset bestaande uit bijvoorbeeld 80 miljoen voorbeelden van eerste- en tweede-orde differentiaalvergelijkingen en 20 miljoen voorbeelden van uitdrukkingen geïntegreerd door delen.

Door deze dataset te kraken, leert het neurale netwerk vervolgens hoe de afgeleide of integraal van een bepaalde wiskundige uitdrukking te berekenen.

Ten slotte hebben Lample en Charton hun neurale netwerk op de proef gesteld door het 5.000 uitdrukkingen te geven die het nog nooit eerder heeft gezien en de resultaten die het in 500 gevallen oplevert te vergelijken met die van commercieel beschikbare oplossers, zoals Maple, Matlab en Mathematica.

Deze oplossers gebruiken een algoritmische benadering die in de jaren zestig door de Amerikaanse wiskundige Robert Risch is uitgewerkt. Het algoritme van Risch is echter enorm en loopt tot 100 pagina's voor alleen integratie. Dus symbolische algebra-software gebruikt vaak verkleinde versies om dingen te versnellen.

De vergelijkingen tussen deze en de neurale netwerkbenadering zijn onthullend. Bij alle taken zien we dat ons model aanzienlijk beter presteert dan Mathematica, zeggen de onderzoekers. Bij functie-integratie verkrijgt ons model een nauwkeurigheid van bijna 100%, terwijl Mathematica amper 85% bereikt. En de Maple en Matlab pakketten presteren gemiddeld minder goed dan Mathematica.

In veel gevallen kunnen de conventionele oplossers helemaal geen oplossing vinden, als ze 30 seconden de tijd krijgen om het te proberen. Ter vergelijking: het neurale netwerk heeft ongeveer een seconde nodig om zijn oplossingen te vinden. Het voorbeeld bovenaan deze pagina is er zo een.

Een interessante uitkomst is dat het neurale netwerk vaak verschillende gelijkwaardige oplossingen voor hetzelfde probleem vindt. Dat komt omdat wiskundige uitdrukkingen meestal op veel verschillende manieren kunnen worden geschreven.

Dit vermogen is iets van een prikkelend mysterie voor de onderzoekers. Het vermogen van het model om equivalente uitdrukkingen te herstellen, zonder daarvoor getraind te zijn, is zeer intrigerend, zeggen Lample en Charton.

Dat is een belangrijke doorbraak. Voor zover wij weten, heeft geen enkele studie het vermogen van neurale netwerken onderzocht om patronen in wiskundige uitdrukkingen te detecteren, zegt het paar.

Nu ze dat hebben gedaan, heeft het resultaat duidelijk een enorm potentieel in de steeds belangrijker en complexere wereld van computationele wiskunde.

De onderzoekers onthullen de plannen van Facebook voor deze aanpak niet. Maar het is niet moeilijk in te zien hoe het zijn eigen symbolische algebraservice zou kunnen aanbieden die beter presteert dan de marktleiders.

Het is echter onwaarschijnlijk dat de concurrenten stil blijven zitten. Verwacht een machtige strijd in de wereld van computationele wiskunde.

Referentie: arxiv.org/abs/1912.01412 : Diep leren voor symbolische wiskunde

zich verstoppen