Empirical Computation: Prompting versus Programming
Dit visiedocument stelt "empirische computatie" voor als een nieuw paradigma waarbij Large Language Models computationele problemen oplossen via prompting in plaats van traditionele programmering, waarbij wordt betoogd dat hun unieke capaciteiten en beperkingen de software engineering-gemeenschap vereisen om nieuwe fundamentele theorieën en technieken te ontwikkelen voor het analyseren van correctheid en fundamentele grenzen.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je twee manieren hebt om een klus te klaren: Programmeren en Prompten.
De oude manier: Programmeren (De strikte architect)
Denk aan traditioneel programmeren als het inhuren van een strikte, regels volgelijke architect. Je geeft hem een blauwdruk met exacte afmetingen, specifieke materialen en een stapsgewijs plan.
- Hoe het werkt: Je vertelt de computer precies hoe een probleem moet worden opgelost, zoals het sorteren van een lijst met getallen. Je zegt: "Gebruik dit specifieke algoritme (Merge Sort), neem deze inputs en volg deze regels."
- Het resultaat: Als de architect een fout maakt, kun je de exacte kapotte steen in de blauwdruk vinden, deze repareren en weten dat het gebouw de volgende keer met zekerheid zal blijven staan.
- De beperking: De tijd die het kost om te bouwen, hangt af van de complexiteit van de wiskunde. Het sorteren van een enorme lijst met getallen kost een voorspelbare hoeveelheid tijd op basis van de grootte van de lijst (specifiek ).
De nieuwe manier: Prompten (De intuïtieve kunstenaar)
Stel je nu voor dat je een briljante, intuïtieve kunstenaar inhuurt. Je geeft hem geen blauwdruk. Je zegt alleen maar: "Hé, hier is een rommelige stapel getallen, zou je ze voor me willen sorteren?"
- Hoe het werkt: Je gebruikt natuurlijke taal (een "prompt") om het probleem te beschrijven. De "computer" (een Large Language Model of LLM) volgt geen strikte set regels. In plaats daarvan raadt hij het meest waarschijnlijke antwoord op basis van alles wat hij ooit op het internet heeft gelezen. Het is alsof een chef een soep proeft en de ingrediënten raadt, in plaats van een recept te volgen.
- Het resultaat: Het antwoord komt snel terug, maar het is een gok, geen garantie. Het is het "meest waarschijnlijke" antwoord, niet het "bewijsbaar correcte" antwoord.
Wat het paper vond: De "empirische" verrassing
De auteurs van dit paper hebben experimenten uitgevoerd om te zien hoe goed deze "intuïtieve kunstenaar" presteert op klassieke wiskundige problemen, zoals het sorteren van getallen of het vinden van items in een lijst. Dit is wat zij ontdekten:
1. Tijd werkt niet op dezelfde manier
- Programmeren: Als je het aantal items dat gesorteerd moet worden verdubbelt, neemt de tijd die nodig is op een specifieke, wiskundige manier toe.
- Prompten: De tijd die de LLM nodig heeft om getallen te sorteren, neemt lineair toe (gewoon een rechte lijn) naarmate de lijst groter wordt. Waarom? Niet omdat de wiskunde moeilijker wordt, maar omdat de LLM meer woorden (tokens) moet lezen en schrijven om de langere lijst te verwerken. Het is alsof je een langer boek leest; het kost meer tijd om de woorden te lezen, niet omdat het verhaal complexer is.
2. Nauwkeurigheid daalt naarmate zaken groter worden
- Programmering: Een correct programma is 100% correct, elke keer weer.
- Prompting: De LLM is erg goed in kleine taken, maar raakt in de war naarmate de lijst groter wordt.
- Voor een lijst van 50 getallen had de LLM het ongeveer 90% van de tijd goed.
- Voor een lijst van 150 getallen had hij het slechts ongeveer 58% van de tijd goed.
- Als je de LLM vraagt om een specifiek patroon in een korte reeks tekens te vinden, kan hij bijna onmiddellijk falen als de reeks iets langer wordt.
- De "denkmodus": Wanneer de LLM de ruimte krijgt om te "denken" (stap voor stap redeneren) voordat hij antwoordt, blijft hij zeer nauwkeurig, maar het duurt veel langer.
3. Het taalspel
- Programmeren: Het maakt niet uit of je de code in het Engels of Duits schrijft; de computer leest de symbolen op dezelfde manier.
- Prompting: De LLM is bevooroordeeld door wat hij op het internet heeft gelezen.
- Als je de LLM vraft om getallen te sorteren die als Engelse woorden zijn geschreven ("one, two, three"), doet hij het erg goed.
- Als je hem vraagt om getallen in het Duits te sorteren ("eins, zwei, drei"), faalt hij bijna volledig.
- Waarom? De LLM heeft miljoenen Engelse voorbeelden op het internet gezien, maar veel minder Duitse. Het is alsof je een chef vraagt een gerecht te koken dat hij nog nooit heeft gezien; hij kan de verkeerde gok maken.
4. Het "Kapotte Steen"-probleem
- Programmeren: Als een programma faalt, kun je de bug vinden, de code repareren en het probleem is voor altijd opgelost.
- Prompting: Als de LLM een fout antwoord geeft, kun je niet gemakkelijk "de bug" vinden. Je kunt niet naar een specifieke regel code wijzen om het te repareren. Je kunt proberen je prompt aan te passen of hem te vragen "harder na te denken", maar er is geen garantie dat dit de volgende keer werkt. Het is als proberen een droom te repareren door de stemming van de dromer te veranderen.
De belangrijkste conclusie
Het paper betoogt dat we een nieuw tijdperk ingaan dat "Empirische Computatie" wordt genoemd.
In de oude wereld vertrouwden we op computers omdat ze strikte regels volgden (het rationalistische kader). In deze nieuwe wereld vertrouwen we op computers omdat ze "geïnformeerde gokken" doen op basis van data (het empirische kader).
De auteurs roepen software engineers op om te stoppen met het analyseren van deze AI-systemen als traditionele programma's. We hebben nieuwe instrumenten nodig om te meten, te testen en te begrijpen hoe deze "gokmachines" werken, omdat de oude regels van wiskunde en logica niet meer volledig van toepassing zijn op hen. We moeten uitzoeken hoe we een resultaat kunnen vertrouwen dat "waarschijnlijk juist" is, in plaats van "absoluut juist".
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.