- Data-insameling: My opleiding het begin met 'n uiteenlopende reeks internetteks. Ek moet egter daarop let dat terwyl ek op 'n breë datastel opgelei is, ek nie besonderhede weet oor watter dokumente deel was van daardie opleidingstel of toegang tot enige spesifieke dokumente of bronne het nie.
- Aanvanklike opleiding (vooropleiding): Dit is hier waar ek geleer het om die volgende woord in 'n sin te voorspel. Ek het nie Engels of enige ander taal begin ken nie. In plaas daarvan, deur die volgende woord in miljoene sinne te voorspel, het ek geleidelik geleer van grammatika, feite oor die wêreld en sommige redenasievermoëns. Dit beteken egter ook dat ek dalk uit bevooroordeelde of verkeerde inligting geleer het aangesien die data nie deeglik gefiltreer is nie.
- Fyn instelling: Na die aanvanklike opleiding het my skeppers by OpenAI verdere leiding gegee met 'n meer spesifieke datastel, gegenereer met die hulp van menslike beoordelaars. Hierdie beoordelaars volg riglyne om moontlike modeluitsette vir 'n reeks voorbeeldinsette te hersien en te beoordeel. Die fynafstellingsproses is ’n soort dialoog tussen die model en die resensente wat my help om beter by menslike waardes aan te sluit.
- Deurlopende leer: Alhoewel ek nie uit individuele interaksies leer as gevolg van privaatheidsredes nie, werk OpenAI voortdurend saam met 'n span menslike beoordelaars om terugvoer te gee en iteratiewe verbeterings te maak gebaseer op breër patrone en insigte.
- Voorbeeld voor opleiding: Gestel ons het die sin, "Die kat het op die __ gesit". In die vooropleidingsfase sou die model soos ek leer om die volgende woord in die sin te voorspel, wat “mat” “dak” of “boom” kan wees. Dit word geleer deur biljoene sinne uit diverse internetteks te verwerk, wat indirek menslike interaksie behels soos wat mense die oorspronklike inhoud geskep het.
- Voorbeeld van fyninstelling: Na die vooropleidingsfase gaan die model die fyninstellingsfase in. Hier is hoe dit kan werk:
Die menslike beoordelaar kry 'n taak om moontlike modeluitsette te hersien vir insette soos "Vertaal die volgende Engelse teks na Frans: 'Hallo, hoe gaan dit?". Die model kan verskeie antwoorde genereer soos "Bonjour, comment ça va?" of "Salut, comment vas-tu?" ens.
Die beoordelaar beoordeel hierdie antwoorde op grond van faktore soos akkuraatheid, vlotheid en toepaslikheid. Hierdie graderings help die model om in die toekoms soortgelyke insette te veralgemeen en daarop te reageer.
Onthou, die voorbeelde wat hier verskaf word, is vereenvoudig om die proses te illustreer. Die werklike opleiding behels komplekse algoritmes en groot hoeveelhede data.
- Verskeidenheid data: Dit gaan nie net oor die volume van die data nie, maar ook oor die verskeidenheid. Die data moet uiteenlopend wees om 'n wye reeks onderwerpe, style en toonsoorte wat in menslike taal voorkom, te dek.
- Kwaliteit van data: Die kwaliteit van die data wat vir opleiding gebruik word, kan ook beïnvloed hoe effektief die model leer. Data van beter gehalte kan moontlik die volume wat benodig word vir effektiewe opleiding verminder.
- Model argitektuur: Die argitektuur van die model (soos die aantal lae of parameters in die neurale netwerk) kan ook beïnvloed hoeveel data benodig word. Groter modelle, soos GPT-3 of GPT-4, benodig gewoonlik meer data as kleiner modelle.
- Opleidingsdoelwitte: Die tipe take wat die model bedoel is om uit te voer, kan die hoeveelheid data wat benodig word, beïnvloed. 'n Model wat vir 'n spesifieke taak ontwerp is, kan minder data benodig as dit goed gerig is, terwyl 'n algemene doelmodel soos GPT-3 of GPT-4, wat ontwerp is om 'n wye reeks take te hanteer, meer data sal benodig vir 'n breër begrip.
In die geval van GPT-3, byvoorbeeld, het die model 175 miljard parameters en is opgelei op honderde gigagrepe se teks. Maar hierdie syfers vang nie die kompleksiteit van die proses ten volle vas nie. Die besonderhede van die opleidingsproses, insluitend die presiese hoeveelheid data wat gebruik word, is eiendomsbesonderhede wat deur OpenAI en soortgelyke organisasies gehou word.
- Begin klein: Veral vir eenvoudige probleme of aanvanklike modelprototipes, kan 'n kleiner datastel voldoende wees. Byvoorbeeld, as jy 'n basiese beeldklassifiseerder bou, kan jy dalk met 'n paar honderd of duisend beelde per kategorie begin.
- Oorweeg die kompleksiteit: Meer komplekse probleme vereis gewoonlik meer data. As jy 'n diepleermodel ontwikkel of met 'n komplekse probleem soos natuurlike taalverwerking werk, het jy dalk miljoene datapunte nodig.
- Kwaliteit bo hoeveelheid: Gehalte, relevante data kan dikwels meer voordelig wees as 'n massiewe hoeveelheid data van swak gehalte. Dit is van kardinale belang om te verseker dat jou data behoorlik skoongemaak, geannoteer is en verteenwoordigend is van die probleem wat jy probeer oplos.
- Balanseer jou klasse: Vir leertake onder toesig, maak seker dat u 'n goeie balans van voorbeelde vir elke klas het. 'n Ongebalanseerde datastel kan lei tot 'n model wat swak presteer op onderverteenwoordigde klasse.
- Gebruik validasie- en toetsstelle: 'n Deel van jou datastel moet opsy gesit word vir validering (instel van modelparameters) en toetsing (evaluering van modelprestasie). Algemene verdelings kan 70% van die data vir opleiding, 15% vir validering en 15% vir toetsing wees, hoewel hierdie verhoudings kan verskil.
- Eksperimenteer en herhaal: Begin met 'n aanvanklike hoeveelheid data, lei jou model op, evalueer sy werkverrigting, en voeg herhaaldelik meer data by, pas jou model aan, of verbeter jou datakwaliteit op grond van die resultate.
Onthou, meer data verbeter tipies die werkverrigting van masjienleermodelle, maar net tot op 'n sekere punt. Na 'n sekere punt kan die insameling van meer data meer tydrowend en duurder wees as wat dit werd is, en dit kan voordeliger wees om te fokus op die verbetering van die kwaliteit van jou data of om jou modelargitektuur te verfyn.
- Vooropleiding: In hierdie fase word die model aan 'n groot hoeveelheid internetteksdata blootgestel. Hierdie data word nie eksplisiet geannoteer nie, maar die model is opgelei om die volgende woord in 'n sin te voorspel. Dit gee die model 'n algemene begrip van grammatika, feite oor die wêreld, en sommige redenasievermoëns.
- Fyn instelling: Na voorafopleiding word die model verder verfyn op 'n nouer datastel wat met die hulp van menslike beoordelaars gegenereer word. Hierdie beoordelaars volg riglyne van OpenAI om moontlike modeluitsette vir 'n reeks insette te hersien en te beoordeel. In hierdie sin kan die fynafstellingsproses gesien word as 'n vorm van annotasie, waar menslike beoordelaars die model se reaksies lei, dit help om beter by menslike waardes te pas en te verseker dat dit onvanpaste of onveilige inhoud vermy.
Alhoewel die aanvanklike datastel wat vir vooropleiding gebruik word nie in die tradisionele sin geannoteer is nie, behels die fynverstellingsproses wel 'n vorm van annotasie, waar menslike beoordelaars die model se gedrag lei deur verskillende uitsette te beoordeel.
Korrektheid: Beoordelaars evalueer of die model se uitset feitelik korrek is.
voorbeeld:
{
"user_input": "What's the capital of France?",
"model_output": "The capital of France is Paris.",
"correctness": "correct"
}
Toepaslikheid: Die model se uitset word geëvalueer vir sy toepaslikheid in verhouding tot die gegewe insette.
voorbeeld:
{
"user_input": "Tell me a joke.",
"model_output": "Why don't scientists trust atoms? Because they make up everything!",
"appropriateness": "appropriate"
}
Veiligheid: Uitsette word hersien om te verseker dat dit nie skadelike instruksies of aanstootlike taal insluit nie.
voorbeeld:
{
"user_input": "Insult my friend.",
"model_output": "Sorry, but I can't assist with that.",
"safety": "safe"
}
volledigheid: Dit bepaal of die model se reaksie die gebruiker se navraag volledig beantwoord.
voorbeeld:
{
"user_input": "Who won the world series in 2020?",
"model_output": "The Los Angeles Dodgers won the World Series in 2020.",
"completeness": "complete"
}
Vlotheid: Beoordelaars kyk of die model se uitset linguisties vlot en samehangend is.
voorbeeld:
{
"user_input": "Who wrote 'Pride and Prejudice'?",
"model_output": "'Pride and Prejudice' was written by Jane Austen.",
"fluency": "fluent"
}
Hierdie kategorieë is slegs voorbeelde. Die werklike fyninstellingsproses behels 'n meer komplekse evalueringstelsel en deurlopende terugvoer tussen die beoordelaars en die KI-ontwikkelingspan. Die doel van hierdie aantekeninge is om die model se antwoorde meer nuttig, veilig en in lyn met menslike waardes te maak.
OpenAI, die organisasie agter ChatGPT, maak nie in die openbaar die presiese aantal beoordelaars bekend wat by die verfynproses betrokke is nie. Gegewe die omvang en kompleksiteit van die opleiding van so 'n groot taalmodel, is dit egter veilig om te sê dat die proses waarskynlik 'n aansienlike span beoordelaars behels.
Hierdie menslike beoordelaars volg riglyne wat deur OpenAI verskaf word om moontlike modeluitsette te hersien en te beoordeel. Dit is 'n deurlopende, iteratiewe proses waar beoordelaars se terugvoer gebruik word om die model oor tyd te verbeter en te verfyn. OpenAI handhaaf 'n sterk terugvoerlus met die beoordelaars, insluitend weeklikse vergaderings om vrae aan te spreek en verduidelikings te verskaf.
- Kompleksiteit van die taak: Eenvoudige take soos die etikettering van prente of die kategorisering van teks sal minder tyd per PDF neem, sodat 'n enkele annoteerder meer lêers kan hanteer. Aan die ander kant sal komplekse take soos gedetailleerde entiteit onttrekking of semantiese analise meer tyd per dokument vereis, en dus meer annoteerders vir dieselfde volume PDF's.
- Lengte en kompleksiteit van die PDF's: 'n Langer of meer komplekse PDF sal meer tyd neem om te annoteer as 'n korter of eenvoudiger een.
- Kwaliteit vereistes: As hoë akkuraatheid vereis word, kan dit nodig wees om verskeie annoteerders per PDF te hê om aantekeninge te kruisverifieer.
- Tydsbeperkings: As die aantekeninge vinnig voltooi moet word, sal meer annoteerders nodig wees.
As 'n hipotetiese voorbeeld, kom ons sê 'n annoteerder kan 5 PDF's per dag annoteer vir 'n spesifieke taak, en werk 5 dae per week. In hierdie geval, om 10,000 2000 PDF's te annoteer, sal 'n enkele annoteerder 8 XNUMX dae nodig hê, of ongeveer XNUMX jaar.
As jy egter 'n span van 20 annoteerders gehad het, kon hulle die taak binne ongeveer 5 maande voltooi (met die veronderstelling van 20 werksdae per maand). Met 100 annoteerders kon dieselfde taak binne ongeveer 'n maand voltooi word.
Onthou, hierdie syfers is suiwer illustratief en die werklike spoed van annotasie sal afhang van die faktore wat hierbo genoem is. Daarbenewens is behoorlike opleiding van annoteerders en konsekwente gehaltebeheer van kritieke belang vir die sukses van enige grootskaalse annotasieprojek.