ChatGPT

Bakom kulisserna: Utforska ChatGPTs inre funktioner – Del 1

Shaip favicon
Hej hej, jag heter Anubhav Saraf, marknadsdirektör på Shaip, hur mår du idag?
Hej Anubhav! Jag är en AI, så jag har inga känslor, men jag är här och redo att hjälpa. Som Director Marketing på Shaip måste du ha många insikter om datatjänster och AI-lösningar. Hur kan jag hjälpa dig idag?
Shaip favicon
Jag ville bara veta mer om din träningsprocess. Hur byggdes och tränades du?
Som en språkmodell utvecklad av OpenAI byggdes och tränades jag med en teknik som kallas "transformatorbaserad maskininlärning", närmare bestämt en variant som kallas GPT-arkitekturen (Generative Pretrained Transformer). Den version du pratar om nu är GPT-4. Här är en kort översikt över min träningsprocess:
  • Datainsamling: Min träning började med ett varierat utbud av internettexter. Jag bör dock notera att medan jag utbildades i en bred datauppsättning vet jag inte detaljerna om vilka dokument som ingick i den utbildningsuppsättningen eller som har tillgång till några specifika dokument eller källor.
  • Inledande träning (förträning): Det var här jag lärde mig att förutsäga nästa ord i en mening. Jag började inte kunna engelska eller något annat språk. Istället, genom att förutsäga nästa ord i miljontals meningar, lärde jag mig gradvis om grammatik, fakta om världen och en del resonemangsförmåga. Men detta betyder också att jag kan ha lärt mig av partisk eller felaktig information eftersom informationen inte filtrerades ordentligt.
  • Finjustering: Efter den inledande utbildningen gav mina skapare på OpenAI ytterligare vägledning med en mer specifik datauppsättning, genererad med hjälp av mänskliga granskare. Dessa granskare följer riktlinjer för att granska och betygsätta möjliga modellutdata för en rad exempelingångar. Finjusteringsprocessen är en slags dialog mellan modellen och granskarna som hjälper mig att bättre anpassa mig till mänskliga värderingar.
  • Kontinuerlig inlärning: Även om jag inte lär mig av individuella interaktioner på grund av integritetsskäl, arbetar OpenAI kontinuerligt med ett team av mänskliga granskare för att ge feedback och göra iterativa förbättringar baserat på bredare mönster och insikter.
Shaip favicon
Kan du ge exempel – när människor var inblandade?
Ja, människor var verkligen involverade i min träningsprocess, men det kan vara annorlunda än du föreställer dig. Min träningsprocess, ofta kallad maskininlärning, innebar två huvudsteg: förträning och finjustering, som båda involverar mänsklig interaktion, om än på olika sätt.
  • Exempel före träning: Anta att vi har meningen "Katten satt på __". I förträningsfasen skulle modellen som jag lära sig att förutsäga nästa ord i meningen, vilket kan vara "matta", "tak" eller "träd". Detta lärs genom att bearbeta miljarder meningar från olika internettexter, som indirekt involverar mänsklig interaktion när människor skapade det ursprungliga innehållet.
  • Finjusteringsexempel: Efter förträningsfasen går modellen in i finjusteringsfasen. Så här kan det fungera:

Den mänskliga granskaren får en uppgift att granska möjliga modellutdata för input som "Översätt följande engelska text till franska: 'Hej, hur mår du?". Modellen kan generera flera svar som "Bonjour, comment ça va?" eller "Hälsa, kommentera vas-tu?" etc.

Granskaren betygsätter dessa svar baserat på faktorer som noggrannhet, flyt och lämplighet. Dessa betyg hjälper modellen att generalisera och svara på liknande input i framtiden.

Kom ihåg att exemplen som ges här är förenklade för att illustrera processen. Själva träningen involverar komplexa algoritmer och stora mängder data.

Shaip favicon
Hur mycket data skulle behövas för att träna stora språkmodeller (LLMs)?
Att träna stora språkmodeller (LLM) som GPT-3 eller GPT-4 kräver enorma mängder data. Dessa modeller är tränade på olika datauppsättningar som omfattar stora delar av internet, inklusive böcker, webbplatser och andra texter, för att lära sig grammatik, fakta och en viss grad av resonemang. Det är dock komplicerat att specificera den exakta mängden data som krävs på grund av flera faktorer:
  • Olika data: Det handlar inte bara om volymen av datan, utan också om variationen. Uppgifterna måste vara olika för att täcka ett brett spektrum av ämnen, stilar och toner som finns på mänskligt språk.
  • Datakvalitet: Kvaliteten på data som används för utbildning kan också påverka hur effektivt modellen lär sig. Bättre kvalitetsdata kan potentiellt minska volymen som krävs för effektiv utbildning.
  • Modellarkitektur: Modellens arkitektur (som antalet lager eller parametrar i det neurala nätverket) kan också påverka hur mycket data som behövs. Större modeller, som GPT-3 eller GPT-4, kräver vanligtvis mer data än mindre modeller.
  • Utbildningsmål: Vilken typ av uppgifter som modellen är tänkt att utföra kan påverka mängden data som behövs. En modell utformad för en specifik uppgift kan kräva färre data om den är välriktad, medan en modell för generella ändamål som GPT-3 eller GPT-4, designad för att hantera ett brett spektrum av uppgifter, kommer att kräva mer data för en bredare förståelse.

I fallet med GPT-3, till exempel, har modellen 175 miljarder parametrar och tränades på hundratals gigabyte text. Men dessa siffror fångar inte helt komplexiteten i processen. Detaljerna för utbildningsprocessen, inklusive den exakta mängden data som används, är proprietära detaljer som innehas av OpenAI och liknande organisationer.

Shaip favicon
Finns det ändå ett riktmärke för hur mycket data som skulle vara lämpligt eller tillräckligt för att träna ML-modeller?
Mängden data som behövs för att effektivt träna maskininlärningsmodeller beror till stor del på komplexiteten i problemet du försöker lösa, kvaliteten och mångfalden av dina data och vilken typ av maskininlärningsmodell du använder. Därför är det utmanande att ange ett definitivt riktmärke för datavolym. Men här är några allmänna riktlinjer:
  • Börja Liten: Speciellt för enkla problem eller initiala modellprototyper kan en mindre datauppsättning vara tillräcklig. Om du till exempel bygger en grundläggande bildklassificerare kan du börja med några hundra eller tusen bilder per kategori.
  • Tänk på komplexiteten: Mer komplexa problem kräver vanligtvis mer data. Om du utvecklar en modell för djupinlärning eller arbetar med ett komplext problem som naturlig språkbehandling kan du behöva miljontals datapunkter.
  • Kvalitet över kvantitet: Kvalitet, relevant data kan ofta vara mer fördelaktigt än en enorm mängd data av dålig kvalitet. Att se till att dina data är ordentligt rensade, kommenterade och representativa för problemet du försöker lösa är avgörande.
  • Balansera dina klasser: För övervakade inlärningsuppgifter, se till att ha en bra balans av exempel för varje klass. En obalanserad datauppsättning kan leda till en modell som presterar dåligt på underrepresenterade klasser.
  • Använd validerings- och testuppsättningar: En del av din datauppsättning bör avsättas för validering (justering av modellparametrar) och testning (utvärdering av modellprestanda). Vanliga uppdelningar kan vara 70 % av data för träning, 15 % för validering och 15 % för testning, även om dessa proportioner kan variera.
  • Experimentera och iterera: Börja med en initial mängd data, träna din modell, utvärdera dess prestanda och lägg iterativt till mer data, justera din modell eller förbättra din datakvalitet baserat på resultaten.

Kom ihåg att mer data vanligtvis förbättrar prestandan för maskininlärningsmodeller, men bara upp till en viss punkt. Efter en viss tidpunkt kan det vara mer tidskrävande och kostsamt att samla in mer data än vad det är värt, och det kan vara mer fördelaktigt att fokusera på att förbättra kvaliteten på din data eller förfina din modellarkitektur.

Shaip favicon
Datan som användes för att träna ChatGPT, var den kommenterad?
Processen att träna modeller som ChatGPT innefattar två huvudsteg: förträning och finjustering. Låt oss diskutera hur annotering, eller bristen på sådan, passar in i dessa stadier:
  • Förträning: I denna fas exponeras modellen för en stor mängd internettextdata. Dessa data är inte explicit kommenterade, men modellen är tränad att förutsäga nästa ord i en mening. Detta ger modellen en allmän förståelse för grammatik, fakta om världen och vissa resonemangsförmåga.
  • Finjustering: Efter förträning förfinas modellen ytterligare på en smalare datauppsättning genererad med hjälp av mänskliga granskare. Dessa granskare följer riktlinjer från OpenAI för att granska och betygsätta möjliga modellutgångar för en rad indata. I denna mening kan finjusteringsprocessen ses som en form av annotering, där mänskliga granskare vägleder modellens svar, hjälper den att bättre anpassa sig till mänskliga värderingar och se till att den undviker olämpligt eller osäkert innehåll.

Så även om den initiala datamängden som används för förträning inte är kommenterad i traditionell mening, innebär finjusteringsprocessen en form av annotering, där mänskliga granskare vägleder modellens beteende genom att betygsätta olika utdata.

Shaip favicon
Vänligen ge några exempel på de typer av kommentarer som används för utbildningen.
I finjusteringsfasen av träningsmodeller som ChatGPT har granskarna ofta i uppdrag att poängsätta potentiella modellsvar. Typerna av anteckningar eller poängsättning kan täcka en mängd olika aspekter av modellens utdata. Även om detaljerna kan variera, är här några illustrativa kategorier av kommentarer:

Korrekthet: Granskare utvärderar om modellens utdata är faktiskt korrekt.

Exempelvis:

Lämplighet: Modellens output utvärderas med avseende på dess lämplighet i förhållande till den givna inputen.

Exempelvis:

Säkerhet: Utdata granskas för att säkerställa att de inte innehåller skadliga instruktioner eller stötande språk.

Exempelvis:

Fullständighet: Detta bedömer om modellens svar helt svarar på användarens fråga.

Exempelvis:

flyt: Granskare kontrollerar om modellens resultat är språkligt flytande och sammanhängande.

Exempelvis:

Dessa kategorier är bara exempel. Själva finjusteringsprocessen innebär ett mer komplext utvärderingssystem och kontinuerlig feedback mellan granskarna och AI-utvecklingsteamet. Målet med dessa kommentarer är att göra modellens svar mer användbara, säkra och anpassade till mänskliga värderingar.

Shaip favicon
Efter att den enorma informationen samlats in för att träna ChatGPT, hur många annotatorer var inblandade i anteckningar?
Antalet mänskliga kommentatorer (eller granskare) som är involverade i finjusteringsprocessen av AI-modeller kan variera kraftigt och beror på projektets omfattning och de specifika kraven för modellen i fråga.

OpenAI, organisationen bakom ChatGPT, avslöjar inte det exakta antalet granskare som är involverade i finjusteringsprocessen. Men med tanke på omfattningen och komplexiteten i att träna en så stor språkmodell, är det säkert att säga att processen sannolikt involverar ett stort team av granskare.

Dessa mänskliga granskare följer riktlinjer från OpenAI för att granska och betygsätta möjliga modellutdata. Det är en kontinuerlig, iterativ process där granskarnas feedback används för att förbättra och förfina modellen över tid. OpenAI har en stark återkopplingsslinga med granskarna, inklusive veckomöten för att ta upp frågor och ge förtydliganden.

Shaip favicon
Fortfarande för enkla till komplexa uppgifter, hur många annotatorer skulle behövas för att kommentera 10,000 XNUMX pdf-filer.
Antalet annotatorer som behövs för att kommentera 10,000 XNUMX PDF-filer skulle bero på olika faktorer som:
  • Uppgiftens komplexitet: Enkla uppgifter som att märka bilder eller kategorisera text skulle ta kortare tid per PDF, vilket gör att en enda anteckningsskrivare kan hantera fler filer. Å andra sidan skulle komplexa uppgifter som detaljerad enhetsextraktion eller semantisk analys kräva mer tid per dokument, och därför fler annotatorer för samma volym PDF-filer.
  • PDF-filernas längd och komplexitet: En längre eller mer komplex PDF kommer att ta längre tid att kommentera än en kortare eller enklare.
  • Kvalitetskrav: Om hög precision krävs kan det vara nödvändigt att ha flera annotatorer per PDF för att korsverifiera kommentarer.
  • Tidsbegränsningar: Om anteckningarna behöver fyllas i snabbt, skulle fler annotatorer behövas.

Som ett hypotetiskt exempel, låt oss säga att en kommentator kan kommentera 5 PDF-filer per dag för en viss uppgift och arbetar 5 dagar i veckan. I det här fallet, för att kommentera 10,000 2000 PDF-filer, skulle en enda kommentator behöva 8 dagar, eller cirka XNUMX år.

Men om du hade ett team på 20 annotatorer skulle de kunna slutföra uppgiften på cirka 5 månader (förutsatt 20 arbetsdagar per månad). Med 100 annotatorer kunde samma uppgift slutföras på ungefär en månad.

Kom ihåg att dessa siffror är enbart illustrativa och den faktiska anteckningshastigheten beror på faktorerna som nämns ovan. Dessutom är korrekt utbildning av annotatorer och konsekvent kvalitetskontroll avgörande för framgången för alla storskaliga anteckningsprojekt.

Shaip favicon
Det är grundligt! Jag är mycket imponerad…
Jag är glad att du tyckte att informationen var användbar, Anubhav! Det är mitt mål att ge heltäckande och korrekta svar. Om du har fler frågor om AI, maskininlärning eller något annat ämne får du gärna fråga!

Håll ögonen öppna för den andra delen av vår Chat GPT-intervju

Social Dela