Waarom bedenken AI-chatbots dingen? - Liever verzonnen dan gezwegen. Werking van grote taalmodellen 17-06-2023 bron: Tweakers.Net
Enkele relevante passages voor de begripsvroming; zie voor het complete cerhaal het bovenstaaande artikel.
Het is goed om te beginnen bij de werking van grote taalmodellen voordat we gaan onderzoeken waar het precies misgaat. Een groot taalmodel is een neuraal netwerk. Dat werkt met neuronen en verbindingen tussen die neuronen. De naamgeving komt uit de biologie van onze hersenen, al werken digitale neurale netwerken anders dan de analoge in ons hoofd. Als architectuur bestaat een neuraal netwerk uit een laag inputneuronen, een verborgen of hidden laag die uit een of meer lagen neuronen bestaat, en een uitvoerlaag. Een netwerk kan tientallen lagen bevatten.
Een neuron is niet 1 of 0, maar een willekeurige waarde tussen 1 en 0. Het netwerk geeft elke input een willekeurige waarde tussen 0 en 1. Die data wordt naar een tweede laag 'neuronen' gestuurd. Die tweede laag bestaat uit een veel kleiner aantal neuronen en elk neuron krijgt input van elk neuron uit de eerste laag. Daarbij krijgt de data een weging. De data van de tweede laag neuronen, ook weer waarden tussen 0 en 1, wordt weer naar de uitvoerneuronen gestuurd, opnieuw met een weging. Het neuron dat het dichtst bij waarde 1 komt, geeft aan welk cijfer het neurale net heeft 'gezien' en bepaalt dus de waarschijnlijkste output. Zo komt een neuraal netwerk tot 'antwoorden'.
Die wegingen zijn niet ingeprogrammeerd, maar die leert de software in eerste instantie zichzelf. Dat gebeurt doordat hij checkt of de output de goede was. Dat gebeurt in de eerste van twee fases, waarin een groot taalmodel training ondergaat.
1. Die eerste fase is de fase waarbij de ontwikkelaars een grote dataset in het systeem gooien. Dat zijn doorgaans verzamelingen van teksten van internet: websites, fora, boeken en andere plekken waar veel tekst verschijnt.
De software probeert, zoals het toetsenbord op een telefoon al jaren doet, simpelweg het volgende woord in een tekst te voorspellen van teksten in de dataset. De output van het neurale netwerk is daarmee te vergelijken met het juiste antwoord uit de tekst. Als dat goed is, dan geeft de software zichzelf een signaal dat hij de goede wegingen heeft toegepast en dan slaat hij dat op. Als het volgende woord helemaal fout is, dan verandert de software de parameters.
Dit is een proces dat veel computerkracht vergt.
Deze fase van training gebeurt daarom op supercomputers, of in elk geval op systemen met zoveel mogelijk gpu's. Op die manier gaat die training zo snel mogelijk. In deze fase leert het model zichzelf dus hoe zinnen zijn opgebouwd in de diverse talen en hoe het dus antwoorden moet structureren.
Als de training klaar is, dan ligt er een taalmodel dat goed inschattingen kan maken van wat de volgende woorden zijn, maar dan begint stap 2. Daar komen mensen om de hoek kijken. Dat heet reinforcement learning from human feedback, of rlhf. Daarbij voeren mensen prompts in, waarna het model met een antwoord komt en mensen vervolgens aangeven of het gegeven antwoord goed is.
2. Bij chatbots als ChatGPT zit daar ook een tweede element bij. Volgens OpenAI is ChatGPT ook getraind met gesprekken waarbij de trainers de prompts én de antwoorden gaven. Die kan het model vervolgens gebruiken om zijn parameters te updaten om een beter antwoord te geven. Die menselijke tweede fase is ook de fase waarin het model moet leren waarop het antwoord geeft en niet. De trainers krijgen regels mee, zodat het taalmodel bepaalde onderwerpen mijdt in antwoorden en weigert te antwoorden als het model naar aanleiding van een prompt vermoedt dat het de verkeerde kant op gaat.
What Is ChatGPT Doing … and Why Does It Work? February 14, 2023 Stephen Wolfram
That ChatGPT can automatically generate something that reads even superficially like human-written text is remarkable, and unexpected. ....
lees bovenstaand artikel voor verdere details
Update 19.06.2023