Chat GPT, hoe werkt het?

Ingediend door Dirk Hornstra op 17-apr-2023 21:45

Eind februari had ik al gedeeld "wat kun je met Chat GPT": link.  Dat was nog een beetje "spielerij", maar je kunt er natuurlijk veel meer mee doen. Want de dataset waar Chat GPT zijn/haar kennis uit kan putten is groot. Als developer loop je wel eens tegen een probleem aan. Vroeger pakte je een boek van de plank en hoopte je dat daar iets (vergelijkbaars) met de oplossing er in stond, zodat je het op kon lossen. Nu heb je Internet en ga je standaard naar Google, typ je wat zoekwoorden in en in 9 van de 10 gevallen vind je een linkje naar Stack Overflow, had iemand hetzelfde probleem en hebben een aantal mensen met oplossingen gereageerd, waarbij de "beste" met het meeste aantal punten bovenaan staat.

Maar goed, je moet daarbij dus zelf de juiste zoekwoorden invoeren, je moet mogelijk door verschillende sites heen bladeren (met ieder hun eigen irritante cookiebalk), dus je bent gauw 15 minuten verder. Als Chat GPT "al die kennis heeft", je plakt de foutmelding in de chat-console van Chat GPT en de kunstmatige intelligentie geeft je in leesbare taal een mogelijke oorzaak en oplossing en dat binnen de minuut, natuurlijk is dat interessant. Want als dat echt zo goed werkt, dan is over een jaar het zoekverkeer op Google met 50% gedaald, we gebruiken allemaal Chat GPT. En daar loopt Google flink wat advertentie-inkomsten mis. Ik ben heel benieuwd hoe zich dit verder gaat ontwikkelen.

Maar goed, wil je weten hoe Chat GPT werkt, in het Technisch Weekblad van 15 maart 2023 stond een hele uitleg voor dummy's. Ik deel hier even de samenvatting. Mocht je het hele artikel willen lezen, daarvoor zul je je moeten abonneren op het Technisch Weekblad. Online kun je een deel lezen: link.

 

Bij het artikel zien we een tijdlijn hoe we bij ChatGPT gekomen zijn. In 2016 is OpenAI opgericht. In juli 2017 publiceerde Google "Attention is all you need", in juli 2018 kwam GPT uit, begin 2019 GPT-2, juli 2020 GPT-3, begin 2022 InstructGPT en net voor de start van 2023 ChatGPT.

De oprichters van OpenAI zijn Sam Altman, Elon Musk, Greg Brockman, Peter Thiel en anderen.

De basis van "kunstmatige intelligentie" bestaat uit taalmodellen. Als iemand een zin begint met "Henk slaat met een hamer op.." dan is de kans groot dat dit "een spijker" is. En niet "zijn kleine zusje". Het voorspellen van een volgend woord is next-token-prediction, als je een reeks woorden hebt en je moet daar een missend woord invullen, dat is gemaskeerde taalmodellering genoemd.

Het is niet altijd goed om altijd de woorden met de hoogste waarschijnlijkheid te kiezen, want dan is de kans groot dat je herhalende teksten krijgt. Er moet dus wat extra's gekoppeld worden.

NLP is natuurlijke taalverwerking, dat proces doorloopt een aantal stappen.

  • Voorbewerking: opschonen van de tekst met zinsherkenning, tokenisatie, stemming, verwijderen stopwoorden, corrigeren van de spelling.
  • Coderen: verander deze tekst in een vector van getallen zodat het model ermee kan rekenen.
  • Invoer model: de gecodeerde invoer aanbieden aan het model.
  • Resultaat ontvangen: je krijgt een output met een kansverdeling van potentiĆ«le woorden weergegeven in vectoren van getallen uit het model.
  • Decoderen: die vector moet weer omgezet worden naar leesbare tekst voor mensen.
  • Nabewerking: spellingcontrole, grammaticacontrole, interpunctie, hoofdlettergebruik.


GPT staat voor Generative Pre-trained Transformer. Bij het trainen van de eerste versie gebruikten onderzoekers pre-training met de BookCorpus-database, deze bestaat uit meer dan 7.000 unieke ongepubliceerde boeken. En zonder toezicht. Dat was de pre-training. Hierna kwam het bijschaven, wel met toezicht. Aan het model worden voorbeelden van vragen gesteld en wordt ook aangeleverd wat de correcte antwoorden zijn: het model moet daarvan leren.

In GPT-3 werd het model uitgebreid, 175 miljard parameters, de "corpus" bestond uit honderden miljarden woorden van het web, boeken en Wikipedia. Bevinding was dat met 1 of een paar voorbeelden in de prompt zonder expliciete fine-tuning het model kon leren.

Vervolg was het onderzoek hoe het mensenselijke instructies kan volgen en gesprekken met mensen kan voeren. Daar ontstond InstructGPT en later ChatGPT.
Daaruit bleek dat een hele grote dataset niet garant stond voor goede output. Want wat "bedoelt" de vragensteller?
Hier kwamen supervised learning en reinforcement learning from human feedback (RLHF) om de hoek kijken.

ChatGPT is een zustermodel van InstructGPT. Het verschil is dat ChatGPT getraind is met voorbeelden van gesprekstaken, zoals het beantwoorden van vragen, praten over koetjes-en-kalfjes, trivia (ook gij Brutus, wie zei dit?). Hierdoor kunnen gesprekken gevoerd worden met mensen in dialogen.

De trainingset is wel uitgebreid maar op zich ook weer "beperkt", en kan dus vooroordelen bevatten. Ook kan er niet in realtime gezocht worden, dus als je informatie over "de huidige president van de Verenigde Staten" wilt hebben, dan zul je het moeten doen door zelf Joe Biden te noemen en genoegen te nemen met de informatie die ChatGPT over hem heeft.

 

Voor meer informatie, kijk ook even op deze pagina van TechRepublic: link

Voor de mensen die goed zijn in het vinden van security-issues, er is een bug-hunting programma, dus als je ChatGPT beter/veiliger wilt maken en wat wilt verdienen, succes! Link uit het TechRepublic-artikel: link.