3. predavanje: Učenje velikih jezikovnih modelov
Izvirni naslov vira: Stanford CME295 Transformers & LLMs | Jesen 2026 | Predavanje 3 – Učenje velikih jezikovnih modelov
Učenje velikih jezikovnih modelov poteka od predhodnega učenja napovedovanja naslednjega žetona, ki daje večkrat uporabno osnovo, prek usmerjenega vmesnega učenja, nadzorovanega prilagajanja navodilom in usklajevanja s preferencami do učenja sklepanja. RLHF, DPO, preverljive nagrade in destilacija na podlagi lastnih izhodov modela ponujajo različne načine za izboljšanje vedenja in zmožnosti, pri čemer ostajajo ključne omejitve kakovost podatkov, računski stroški in ohranjanje zmožnosti.
Video1 vir
- Potrjeno pri drugem viru: 2
- Le tu: 47
Kaj pravi
- Pri predhodnem učenju se veliki jezikovni modeli z napovedovanjem naslednjega žetona učijo večkrat uporabnih jezikovnih vzorcev, pri čemer uporabljajo vsiljevanje pravilnih predhodnih žetonov, vzročno maskiranje in izgubo na podlagi križne entropije. Na uspešnost vplivata kakovost podatkov in izbira njihove mešanice. Vmesno učenje dodaja kakovostnejše podatke, usklajene z nalogami, in podaljšuje kontekst, za kar so potrebne prilagoditve kodiranja položaja ter primeri z dejanskimi odvisnostmi med oddaljenimi deli. Nadzorovano dodatno učenje s pari vhodov in izhodov uči sledenje navodilom, izguba pa se računa na žetonih odgovora; LoRA zmanjšuje stroške prilagajanja s posodobitvami uteži nizkega ranga. Prilagajanje preferencam uči, katerim odgovorom dajati prednost in katerim se izogibati. RLHF se iz preferenc nauči modela nagrajevanja, nato pa veliki jezikovni model optimizira glede na ta zamrznjeni model, pri čemer omejuje odmik od referenčnega modela, da bi zmanjšal izigravanje nagrajevanja. DPO se namesto tega uči neposredno iz fiksnih parov preferenc, brez ločenega modela nagrajevanja. Učenje sklepanja uporablja preverljive nagrade, GRPO pa primerja odgovore na isti poziv. Destilacija na podlagi lastnih izhodov modela zagotavlja podrobne povratne informacije učiteljskega modela za zaporedja, ki jih ustvari učenčev model. GLM-5 ponazarja te stopnje, vključno z učenjem za dolg kontekst in ločenimi fazami spodbujevalnega učenja. Tveganja kolapsa modela poudarjajo pomen skrbnega izbora in urejanja podatkov, destilacija med stopnjami pa pomaga ohranjati zmožnosti, ki bi se lahko med poznejšim učenjem izgubile.
- Predavanje navaja, da je članek Chinchilla priporočil približno 20 učnih žetonov na parameter modela in ugotovil, da so bile številne povečane arhitekture premalo naučene. u6–7 · Razmerje je predstavljeno kot okvirna smernica za računsko optimalno učenje.
- Mera bitov na bajt preračuna križno entropijo, povprečeno po žetonih, tako, da jo pomnoži s številom žetonov, deljenim s številom vhodnih bajtov, in z 1/log(2). u47–51 · Predavanje to normalizacijo uvede za primerjavo izgub modelov z različnimi razčlenjevalniki v žetone.
- Predavanje navaja raziskavo, v kateri je do štirikratno ponavljanje učnih podatkov izboljšalo uspešnost v razmerah z omejeno količino podatkov. u59–61 · Rezultat je predstavljen za fiksno razpoložljivo količino učnih žetonov, ne kot splošno pravilo o ponavljanju brez omejitev.
- DataComp-LM ohranja arhitekturni vidik modela pri učenju pod nadzorom, da bi ločeno ugotovil vpliv kakovosti podatkovne zbirke na uspešnost. u62–64 ·
- Predavatelj navaja, da je bil model GLM-5 z odprtimi utežmi naučen na 30 bilijonih žetonov. u68 · Podatek ponazarja infrastrukturne zahteve obsežnega predhodnega učenja.
- Predavatelj navaja 30. april 2026 kot presečni datum učnih podatkov za GPT-6 Astra. u96–98 · Primer ponazarja trditev predavanja, da model iz svojih prvotnih učnih podatkov ne pridobi znanja o poznejših dogodkih.
- V opisanem postopku prilagajanja navodilom izguba kaznuje napovedi žetonov odgovora, ne pa napovedi žetonov podanega poziva. u113–119 · Vsaka napoved žetona odgovora je pogojena s pozivom in doslej dekodiranimi žetoni odgovora.
- Predavanje za ozek primer uporabe predlaga stotine ali tisoče primerov za SFT, za vedenje pomočnika pri številnih nalogah pa potencialno milijone. u116–118 · To so ponazoritvene velikosti podatkovnih zbirk, pri čemer so enota primeri, ne žetoni za predhodno učenje.
- Formulacija Bradley-Terry modelira verjetnost, da ima odgovor y_i prednost pred odgovorom y_j, kot σ(r_i − r_j), pri čemer sta r_i in r_j njuni nagradi. u176–178 ·
- Parna izguba modela nagrajevanja minimizira negativni logaritem sigmoidne funkcije razlike med nagrado zmagovalnega in nagrado poraženega odgovora, povprečen po podatkih o preferencah. u187–190 ·
- Model nagrajevanja lahko uporablja osnovo velikega jezikovnega modela s klasifikacijsko glavo na predstavitvi zadnjega vhodnega žetona ali arhitekturo, sestavljeno samo iz kodirnika. u190–194 ·
- Žetoni sklepanja štejejo kot izhod modela, uporabnikom obravnavanih storitev sklepanja pa se zaračuna tako skrito sklepanje kot vidni odgovor. u246–248 · Afshine na to opozori kot na dejavnik pri načrtovanju stroškov.
- Shervine navaja, da je predhodno učenje GLM-5 uporabljalo kontekst dolžine približno 4,000 žetonov, pri čemer je bil sprva poudarek na spletnih podatkih, pozneje pa so dodali več podatkov za programiranje in sklepanje. u290–292 · Opis je predstavljen kot pregled tehničnega poročila o GLM-5.
- Primer vmesnega učenja GLM-5 uporablja pakiranje po načelu najboljšega prileganja, da dokumenti ostanejo celi, neizkoriščeni prostor pa zapolni z dopolnilnimi žetoni, namesto da bi dokumente poljubno rezal na odseke. Spremljajoči prikaz kaže dolžine konteksta od 32K do 200K žetonov. u307–308 · Razpon dolžin konteksta je prikazan na prosojnici; učenje še vedno temelji na napovedovanju naslednjega žetona.
- Shervine navaja, da GLM-5 deli spodbujevalno učenje na spodbujevalno učenje sklepanja za preverljive probleme, agentsko spodbujevalno učenje za naloge v izvajalnem ogrodju in splošno spodbujevalno učenje za širše vidike kakovosti odgovorov. u314–317 · Primeri vključujejo matematična tekmovanja, odpravljanje napak, preverjeno s testi, in čustveno inteligenco.
- Majhne nadomestne modele učite na različnih mešanicah podatkov in iz njihove uspešnosti sklepajte, katera mešanica je obetavna za učenje v večjem obsegu. u64–65 ·
- Metode za razširitev RoPE, kot je YaRN, prilagodijo frekvence tako, da razlike med položaji v dolgih kontekstih padejo v razpone, s katerimi se je model srečal med učenjem na kratkih kontekstih. u81–85 · Namen prilagoditve je olajšati učenje odnosov v daljših kontekstih.
- Predavatelj priporoča uporabo LoRA tako za matrike mrež s povezavami naprej kot za matrike samopozornosti, pri čemer navaja izboljšanje uspešnosti zaradi prilagajanja delov, v katerih je velik delež parametrov modela. u137–139 ·
- Pri specializirani nalogi, ki se pogosto ponavlja, lahko enkratna posodobitev z dodatnim učenjem nadomesti dolg poziv, ki modelu vsakič znova naroča, kako naj se vede. u147–149 · Predavatelj to predstavlja kot možnost za uporabnike, ki jih skrbijo stroški, pri čemer je primernost odvisna od primera uporabe.
- Ob nepričakovanem vedenju LLM je treba pregledati podatke za SFT in preveriti, ali so bili učni primeri in njihova kakovost res takšni, kot je bilo predvideno. u159–161 ·
- Kadar ločen učitelj ni na voljo, lahko samodestilacija na lastnih izhodih kot učitelja uporabi isti model, ki mu pri tem poda pravilen odgovor. u274–275 ·
- Učenje na dolgih kontekstih lahko težavo slabšanja uporabe konteksta naslovi tako, da v sredino sintetičnega gradiva vstavi dejstvo in od modela zahteva, da se pozneje nanj znova opre. u305–306 · Predlagana vaja je usmerjena v težave s pomnjenjem predhodnih dejstev v dolgih kontekstih.
- Vsiljevanje pravilnih predhodnih žetonov omogoča vzporedno učenje napovedovanja naslednjega žetona, saj zagotovi prave predhodne žetone ne glede na napovedi modela, maskirana samopozornost pa modelu preprečuje vpogled v prihodnje žetone. u24–32 · Med učenjem ni treba zaporedno ustvariti vsakega predhodnega žetona, preden model napove naslednjega.
- Križna entropija pri napovedovanju naslednjega žetona izhaja iz maksimiranja verjetnosti učnega zaporedja: verjetnost zaporedja razstavimo na produkt pogojnih verjetnosti, logaritmiramo, spremenimo predznak in izračunamo povprečje po žetonih. u37–46 · Z logaritmiranjem se izognemo numerični nestabilnosti pri množenju številnih verjetnosti, s povprečenjem pa odpravimo odvisnost od dolžine zaporedja.
- To, da RoPE nima naučenih parametrov, ne zagotavlja zanesljive ekstrapolacije na dolge kontekste: model, naučen samo na kratkih zaporedjih, se ni srečal z rotacijami, povezanimi z daljšimi zaporedji. u78–80 · Učenje z dolgim kontekstom model izpostavi položajnim razmerjem, ki jih pri učenju s kratkim kontekstom ni.
- Prednaučen LLM lahko vprašanje nadaljuje, namesto da bi nanj odgovoril, ker se je s svojim učnim ciljem naučil nadaljevanja besedila, ne pa vedenja pomočnika. u99–102 · Primer s pranjem plišastega medvedka utemeljuje potrebo po ločeni fazi prilagajanja vedenja.
- LoRA prihrani prostor za shranjevanje pri specializiranih nalogah, ker lahko vse naloge uporabljajo iste prednaučene uteži, za vsako nalogo pa se shranijo le njene majhne matrike posodobitev. u135–137 · Pri ločenih, v celoti dodatno naučenih modelih bi bilo treba za vsako nalogo shraniti vse uteži modela.
- Ljudje lažje podajajo preference med pari odgovorov kot absolutne ocene kakovosti, saj je primerjati dva odgovora preprosteje kot presoditi, kako dober je posamezen odgovor na absolutni lestvici. u157–158 · Preprostost primerjanja je razlog za zbiranje parov s podatkom o prednostnem odgovoru.
- Afshine navaja dva razloga, zakaj ponudniki varujejo verige sklepanja: te lahko razkrijejo informacije iz pogovorov uporabnikov, konkurenti pa bi lahko kakovostne verige uporabili za učenje drugih modelov. u241–245 · Afshine te pomisleke povezuje s tem, da vmesniki razkrivajo manj sklepanja kot prej.
- GRPO za poziv ustvari več odgovorov in kot prednost vsakega uporabi njegovo uspešnost glede na skupino. Učenje daje prednost odgovorom z višjo prednostjo, hkrati pa kaznuje odmik od referenčnega modela. u256–260 · V opisani ureditvi s preverljivimi nagradami GRPO ne potrebuje naučenega modela nagrajevanja.
- Shervine tveganje kolapsa modela pojasnjuje s kopičenjem sprememb porazdelitve: končni vzorci izpustijo redke podatke človeškega izvora, modeli nepopolno približajo porazdelitev vzorčenih podatkov, prilagajanje na podlagi preferenc pa daje preveliko težo določenim jezikovnim vzorcem. u296–301 · Zaradi teh učinkov je skrbno urejanje podatkov pomembno, kadar učni korpusi vključujejo besedilo, ki so ga ustvarili modeli.
- Končna medstopenjska destilacija modela GLM-5 na lastnih izhodih uporablja učitelje iz zgodnejših kontrolnih točk, da ohrani zmožnosti, ki so se pri poznejšem učenju morda izgubile. u319–320 · Kontrolne točke učiteljev so vzete po SFT in po prvi fazi RL.
- Predhodno učenje velikih jezikovnih modelov je obsežna stopnja učenja jezikovnih vzorcev, ki daje večkrat uporabno osnovo; predhodno naučeni model je nato mogoče specializirati za posamezne naloge, namesto da bi ga vsakič učili od začetka. u14–18 ·
- Vmesno učenje dodaja kakovostnejše podatke, usklajene z nalogami, pri tem pa ohranja napovedovanje naslednjega žetona; SFT nasprotno uporablja izrecne pare vhodov in izhodov za usmerjanje vedenja modela. u110–114 ·
- LoRA zmanjšuje število učljivih parametrov tako, da posodobitve predhodno naučenih matrik uteži izrazi z matrikami nizkega ranga, pri čemer dosega približno primerljivo uspešnost, odvisno od naloge in velikosti podatkovne zbirke. u131–134 ·
- Prilagajanje preferencam dodaja negativne signale, ki jih predhodno učenje in nadzorovano dodatno učenje ne zagotavljata izrecno, zato se lahko veliki jezikovni model nauči, katerim odgovorom ljudje dajejo prednost in katerim odgovorom se je treba izogibati. u151–156 ·
- RLHF se najprej iz človeških preferenc nauči modela nagrajevanja, nato pa ta model ohranja zamrznjen, medtem ko posodablja veliki jezikovni model, da bi dosegal višje nagrade, ne da bi se preveč oddaljil od svojega referenčnega modela. u197–204 ·
1 vir
- DPO učenje iz preferenc pretvori v nadzorovano ciljno funkcijo brez ločeno naučenega modela nagrajevanja. Njegova izguba spodbuja višje verjetnosti za prednostne odgovore in nižje verjetnosti za manj zaželene odgovore glede na referenčni model. u210–214 ·
- Učenje sklepanja lahko namesto naučenega modela nagrajevanja na podlagi preferenc uporablja preverljive nagrade: programske rešitve je mogoče preizkusiti, matematične odgovore pa primerjati s pravilnimi referenčnimi odgovori. Nagrada, predlagana v predavanju, preverja tudi, ali izhod vsebuje verigo sklepanja. u250–254 ·
- Destilacija na podlagi lastnih izhodov modela združuje odgovore, ki jih ustvari učenčev model, s povratnimi informacijami učiteljskega modela na ravni žetonov. Učenje kaznuje razlike med napovedmi učiteljskega in učenčevega modela vzdolž zaporedja, ki ga je ustvaril učenčev model. u270–273 ·
1 vir
- Učiteljsko vsiljevanje povzroča neskladje med učenjem in izvajanjem: pri učenju model dobi pravilne predhodne žetone, med izvajanjem pa uporablja žetone, ki jih je ustvaril sam. u27–29 · Predavatelj prizna obstoj težave, obravnavo metod za njeno reševanje pa odloži.
- Učenje na dolgih kontekstih zahteva tako bistveno več računanja pozornosti kot primere, pri katerih je napoved žetona resnično odvisna od oddaljenih informacij. u91–94 · Računska zahtevnost samopozornosti narašča kvadratno z dolžino zaporedja, ustrezne učne primere z odvisnostmi na dolge razdalje pa je težko pridobiti.
- SFT zahteva izjemno dobre primere vedenja in ustrezno porazdelitev pozivov, saj model tesno posnema učne podatke in lahko postane pristranski v korist preveč zastopanih vzorcev odgovorov. u125–126 · Dodatna izziva ostajata posploševanje in vrednotenje.
- Maksimiziranje naučene nagrade lahko privede do izigravanja nagrajevanja: LLM lahko zadovolji nepopoln model nagrajevanja, ne da bi se vedel tako, kot si ljudje dejansko želijo. u202–206 · Kaznovanje odstopanja od referenčnega modela omejuje, kako daleč lahko optimizacija nagrade odmakne LLM.
- DPO omogoča preprostejše nadzorovano učenje, vendar se uči na nespremenljivih odgovorih, ki ne izvirajo nujno iz trenutnega LLM. RLHF je kompleksnejši in lahko računsko zahteven, vendar uporablja odgovore, ki jih LLM dejansko ustvari. u223–226 · Afshine to razliko označi kot učenje na lastnih izhodih v nasprotju z učenjem na izhodih druge politike.
- Nagrade za pravilnost na ravni zaporedja dajejo le grobo povratno informacijo o lastnih izhodih modela, medtem ko običajno nadzorovanje na ravni žetonov daje gosto povratno informacijo, vendar uporablja zaporedja, ki jih model ni ustvaril sam. u265–269 · Ta kompromis je razlog za destilacijo na lastnih izhodih.
- Poročila o modelih z odprtimi utežmi lahko razkrijejo precej podrobnosti o učenju, ne da bi v celoti razkrila recept za sestavo podatkov. Shervine opozarja, da je domnevna destilacija iz modelov drugih ponudnikov lahko del mešanice podatkov, ne da bi bila omenjena v tehničnem poročilu. u321–322 · Shervine trditve o destilaciji izrecno označi za domneve, ne za potrjena dejstva.
- Za razvoj zmogljivih in koristnih velikih jezikovnih modelov je potrebno večstopenjsko učenje, ki združuje večkrat uporabno osnovo napovedovanja naslednjega žetona z nadzorovanim usmerjanjem vedenja, nagradami na podlagi preferenc ali preverjanja ter destilacijo, ob skrbnem izboru in urejanju podatkov ter ohranjanju zmožnosti. Kako stopnje in ciljne funkcije učenja velikih jezikovnih modelov napovedovalnik naslednjega žetona spremenijo v koristen model s specializiranimi zmožnostmi, zmožnostmi obdelave dolgega konteksta in sklepanja?
Kako utemeljuje
- thesis Staged training builds helpful LLMs while preserving capabilities How do the stages and objectives of LLM training turn a next-token predictor into a helpful model with specialized, long-context, and reasoning capabilities?
- theme Learning reusable foundations requires curated data Next-token learning creates reusable models, but training efficiency and reliability depend on data quantity, mixture, and provenance.
- theme Long context must be explicitly learned Reliable long-context behavior requires positional adaptation and training examples that genuinely demand distant information.
- theme Continuation must become assistant behavior Task-aligned training and carefully designed supervision specialize pretrained models, with low-rank updates reducing adaptation costs.
- idea Text continuation does not teach assistant behavior
- action Midtraining aligns data; SFT explicitly steers behavior
- idea Finetuning can replace repeatedly supplied behavioral instructions
- idea LoRA specializes models through low-rank weight updates
- idea Text continuation does not teach assistant behavior
- theme Preferences teach what responses to avoid RLHF and DPO add comparative feedback through different optimization procedures, each with limitations.
- theme Verifiable rewards train reasoning Automatically checked outcomes enable reasoning reinforcement learning, including group-relative optimization.
- theme Distillation improves feedback and preserves capabilities On-policy distillation supplies dense feedback on student-generated sequences and can recover capabilities lost during later training.
Vir, odlomek za odlomkom
Prepis, preveden z umetno inteligenco iz angleščine.
- u1 UvodIntroduction
- u2 Pozdravljeni vsi in dobrodošli na 3. predavanju pri CME 295. Danes je vznemirljiv dan, saj se bomo naučili, kako dejansko učiti velik jezikovni model tako, da bo usklajen z našim končnim ciljem. Pred tem pa bomo, kot vedno,Hello, everyone, and welcome to lecture 3 of CME 295. So today is an exciting day because we will learn how to actually train a large language model in a way that aligns with our end goal. But before we do that, as always,
- u3 ponovili, kaj smo obravnavali zadnjič. Če se spomnite, smo zadnjič govorili o tem, kako bi lahko uporabili arhitekturo transformerja, ki smo jo spoznali na 1. predavanju, in zlasti preverili, ali lahko katero od njegovih komponent izkoristimo za kaj večjega.we will recap what we saw last time. So if you remember, last time, we talked about how we could use the transformer architecture that we had seen in lecture 1 and, in particular, see if there is any component of the transformer that we could leverage for something bigger.
- u4 Videli smo, da transformer sestavljata kodirnik in dekodirnik. Če odstranimo kodirniški del, lahko dobimo precej preprostejšo arhitekturo, ki problem preoblikuje v problem preslikave besedila v besedilo. Videli smo, da če takšno arhitekturo povečujemoSo we saw that the transformer was composed of an encoder and a decoder. And in particular, if you remove the encoder part, you could have a much simpler architecture that would reframe the problem as a text-to-text problem. And we saw that if we were to scale such an architecture
0:47 · Lecture recap slide on encoder-decoder models at Stanford · A lecturer in a pink t-shirt and glasses stands in front of large chalkboards in a lecture hall, with a projected slide behind him. The slide, titled "Recap of last episode...", shows an encoder block and a decoder block. The encoder is labeled "Compute meaningful embeddings" and the decoder "Generate next token". - u5 glede na število parametrov, torej velikost modela, in število žetonov, na katerih se model uči, dobivamo vse boljšo uspešnost. To so bili zakoni skaliranja, ki smo jih spoznali. Videli pa smo tudi, da imamo na voljo le omejeno količino računskih virov,in terms of number of parameters-- so model size, number of tokens that the model is trained on-- we saw a better and better performance. So these were the scaling laws that we saw. But something else that we saw is that, given that we only have a limited amount of compute,
- u6 zato moramo pri dani količini računskih virov, če jih želimo kar najbolje izkoristiti, paziti, da modela ne učimo premalo. Zlasti članek Chinchilla je pokazal, da je pravzaprav, približno rečeno,that in order for us, given some amount of compute, to use it in the best way possible, that we should be careful to not undertrain our model. And in particular, there was a paper, the Chinchilla paper, that saw that actually, roughly speaking,
1:36 · Recap slide: LLM scaling laws from Kaplan and Hoffmann · A Stanford ICME lecture slide titled "Recap of last episode…" with a faded decoder-only diagram on the left (encoder crossed out, "Generate next token") and six scaling-law plots on the right. The top row shows test loss falling as a straight line on log-log axes with compute, dataset size and parameters. The bottom row shows compute-optimal training curves (Hoffmann et al.). A speaker stands in a small inset at top right. - u7 za vsak parameter treba model učiti na 20 žetonih. Ugotovil je, da so bile številne povečane arhitekture dejansko premalo naučene. Ker večji modeli prinašajo boljšo uspešnost, smo se nato vprašali,for every parameter you have to actually train it on 20 tokens. And it found that many of the architectures that were scaled up were actually undertrained. And then, given that having bigger models lead to better performance, we then wondered
- u8 ali je aktiviranje vseh parametrov sploh koristno. Spoznali smo razred modelov, imenovan mešanica ekspertov, ki za posamezen prehod naprej izbere določene eksperte za aktiviranje. Videli smo, da lahko takšno arhitekturoif actually activating all the parameters was actually useful. So we saw a class of models called mixture of experts, which selected specific experts to activate for a given forward pass. And we saw that such an architecture
- u9 umestimo v nevronsko mrežo s povezavami naprej, kjer je potekala večina računanja. Spoznali smo še vrsto drugih metod, ki so od prve objave transformerja izboljšale uporabo arhitektur na njegovi osnovi.was something we could place within the feedforward neural network, which was where most of the compute was happening. And we saw a bunch of other methods that improved the way we use transformer-based architectures since it was first released.
- u10 Zlasti smo obravnavali položajne vložitve, ki jih je dejansko bolje vključiti v plast pozornosti. Spoznali smo RoPE. Spoznali smo še druge oblike pozornosti, ne globalne, temveč z drsečim oknom. Spoznali smo pozornost z združenimi poizvedbami kot način varčevanja pri ključih in vrednostih, ki jih moramo shraniti, da lahkoSo in particular, we saw the position embeddings, which was actually something that would be better to happen within the attention layer. So we saw RoPE. We saw some other forms of attention-- so not global, but Sliding Window. We saw a Group Query Attention as a way to save on the keys and values that we need to store in order
- u11 dekodiramo zaporedje. Spoznali smo tudi nekaj metod normalizacije. Tu smo končali 2. predavanje. Kot sem omenil, pa je to predavanje namenjeno temu, kako dejansko učiti velik jezikovni model.to decode our sequence. And we also saw some normalizing methods. And this is where we left off-- lecture 2. And as I mentioned, this lecture is about learning how we can actually train a large language model.
- u12 Začeli bomo s prvim korakom, kiSo we're going to start with the first step, which
- u13 Predhodno učenjePretraining
- u14 se imenuje predhodno učenje. Smisel tega koraka želim pojasniti s tem, kako so ljudje tradicionalno učili modele. Če bi ta predmet potekal pred morda 15 leti, bi modele učili za vsak primer uporabe posebej.is called pretraining. And I want to motivate that step by telling you about how people usually trained models traditionally. So if this class was being held maybe 15 years ago, we would actually try to train models on a per-use-case basis.
- u15 Če bi na primer želeli zaznavati neželeno pošto, bi imeli en model za zaznavanje neželene pošte, drug model za, denimo, prepoznavanje sentimenta, tretjega za prevajanje in tako naprej. Tu pa je zamisel, da znanje, pridobljeno v enem učenju, izkoristimo in ponovno uporabimo za druge primere uporabe.So if, for instance, we wanted to detect spam, we would have one model for spam detection, another model for, let's say, sentiment extraction, another one for, let's say, translation and so on. But the idea here is to actually leverage what we learn in one go and re-use that for other use cases.
- u16 To je znano tudi kot prenosno učenje. Zamisel je torej, da izvedemo enkratno obsežno tako imenovano predhodno učenje, pri katerem se model uči o jeziku, nato pa izhajamo iz tega, če ga želimo specializirati za določen primer uporabe.So this is also something that is known as transfer learning. So actually, the idea behind what we want to do is to do a one-time big what we call pretraining to learn about language and then start from there if we want to specialize that for a specific use case.
4:26 · Paradigm shift: from traditional ML to transfer learning · A Stanford ICME lecture slide titled "Paradigm shift". A faded line describes traditional ML as training a model from scratch for each task, while the highlighted line defines transfer learning as reusing a trained model to some capacity. Three stacked boxes (spam detection, sentiment extraction, translation) illustrate models for different tasks, with spam detection highlighted. A small video inset shows the lecturer standing at the top right. - u17 To je torej zamisel. Želimo, da je prvi korak našega učnega procesa učenje o jeziku. Imenuje se predhodno učenje in o njem bomo še govorili. Druga stopnja pa je bolj namenjena prilagajanju za določen primer uporabe.So this is the idea. We want to have the first step of our training process as being something that learns about language. So it's called pretraining. And we're going to talk more about this. And then the second stage is more about tuning this for a specific use case.
- u18 V prejšnjem primeru predpostavimo, da nimamo splošnonamenskega modela, temveč en velik predhodno naučen model. Ta model bi prilagodili za konkretno nalogo. Videli pa bomo, da so veliki jezikovni modeli dovolj splošni, da lahko rešujejo vrsto nalog,So in the previous example, let's assume we don't have a general-purpose model but we have one big pretrained model. We would tune that pretrained model for this specific task. And we will actually see that LLMs are general enough to be able to actually tackle a bunch of tasks
- u19 ne da bi jih morali ponovno učiti, a o tem pozneje. Super. Kot sem omenil, je prvi korak namenjen učenju o jeziku. Želimo si torej ogledati veliko besedil, veliko programske kode, veliko ustvarjenih izhodov,without us having to retrain those, but we will see that more later on. Cool. So as I mentioned, this first step is about learning about language. So what we want to do is to see a bunch of texts, a bunch of codes, a bunch of generated generations,
- u20 z vsega interneta. Običajno bi zbrali odlomke besedil v angleščini, pa tudi v drugih jezikih. Zbrali bi na primer programsko kodo v Pythonu in drugih jezikih, matematiko, znanost, karkoli. Model bi učili z napovedovanjem naslednjega žetona.all over the internet. So here, typically, we would assemble pieces of text in English, but also in other languages. We would assemble, let's say, codes in Python, in other languages-- math, science, you name it. And we would train our model in a next-token-prediction fashion.
- u21 Natančno vam bom povedal, kako bi to delovalo. Predpostavimo, da imamo besedilo, na katerem želimo model predhodno naučiti. Nekaj besedila bi podali kot vhod in model prosili, naj napove naslednji žeton,So I'm going to tell you exactly how that would work. So let's assume we have a piece of text on which we want our model to be pretrained on. So here what we would try to do is to feed some text as input and ask the model to predict the next token,
6:22 · Lecture on LLM pretraining at Stanford ICME · A presenter in a pink t-shirt stands in a lecture hall, gesturing toward a projected slide titled "Pretraining overview" over large blackboards. The slide states the objective function is to predict the next token, illustrated with a sample passage about a teddy bear reading Persian poetry. The goal line above it appears faded, as if mid-animation. - u22 nato pa ta postopek ponovili za vse žetone v besedilu. V tem primeru predpostavimo, da imamo to besedilo in ga razdelimo na žetone s svojim najljubšim razčlenjevalnikom. Tu je način razdelitve poljuben. Vzeli bi svoj veliki jezikovni model, ki, kot smo videli,and repeat that process for all the tokens in the text. So in this example, let's assume we have this piece of text, and we tokenize that with your favorite tokenizer. So here it's an arbitrary way of tokenizing things. And what we would do is we would take our LLM, which, as we saw,
- u23 običajno temelji na arhitekturi samo z dekodirnikom, in vanj podali prvi žeton. Nato bi poskušali napovedati naslednjega. Na samem začetku naloge napovedovanja imamo le žeton za začetek zaporedja,is typically a decoder-only-based architecture, and we would feed in the first token. And what we would do is try to predict the next token. So here, the very beginning of the prediction task, we only have the beginning-of-sequence token
- u24 ki ga podamo modelu. Tu bi poskušali napovedati prvi žeton. Nato bi ta žeton podali kot vhod za napoved naslednjega in tako naprej. Pri predhodnem učenju tega pravzaprav ni treba izvajati zaporedno, saj je postopekthat is fed. And here we would try to predict the first token. And then we would input that token to try to predict the next one, and so on and so forth. And actually, you don't need to do that sequentially when you do your pretraining, because it's
- u25 zelo primeren za vzporedno izvajanje. Dejansko bi celoten vhod podali modelu in za vse te vhode poskušali napovedati naslednji žeton. Torej je zelo primeren za vzporedno izvajanje.highly parallelizable. So what you would actually do is feed the entire input as inputs and try to predict the next token for all these inputs. So it's highly parallelizable.
- u26 Lahko si ga predstavljate kot ogromno množenje matrik, ki poteka v ozadju. Za to boste zasledili tudi izraz vsiljevanje učitelja, saj tu ne glede na to, kaj model napove — mimogrede, tudi tukaj velja enako.You can think of it as a huge matrix multiplication that is happening under the hood. And it's something that you will also find as being mentioned as being teacher-forcing because here, no matter what the LLM predicts-- so by the way, it's the same thing here.
- u27 Ne glede na napoved modela mu v naslednjem koraku kot vhod vedno podamo besedo, ki bi jo moral napovedati. Model torej prisilimo, da ob danem vhodu napove naslednji žeton iz tega besedila. Videli smo, da je to mogoče, ker —No matter what the LLM predicts, we always put as input for the next step which word it should have predicted. So we're forcing the model, given some input, to predict the next token that is in that text. And we saw that this is possible because--
- u28 o, imate vprašanje. Odlično vprašanje. Vprašanje je: če model z vsiljevanjem učitelja učite na določen način, pravzaprav ne dobiva tistega, kar sam ustvarja kot vhod. Torej obstaja neskladje med učenjem in sklepanjem. To je odlična pripomba.oh, you have a question. So excellent question. The question is, well, if you teacher-force the model to learn a certain way, it is not actually having things. It is generating itself as inputs. So there is a mismatch between training and inference. So that's an excellent point.
8:29 · Stanford lecture on LLM pretraining with teacher forcing · A presenter in a pink t-shirt stands in a lecture hall gesturing with both hands, in front of a projected slide titled "Pretraining is highly parallelizable via teacher forcing." The slide gives the objective as predicting the next token. It shows a masked self-attention matrix, a triangular yellow and purple grid, and an LLM box fed the input tokens [BOS], A, teddy, bear, is. - u29 Pozneje bomo videli, kako lahko to rešimo. Zelo dobra pripomba. Spoznali bomo nekaj metod. Ja? Vprašanje je: če podate le začetek zaporedja, model nima informacij, torej ali podate poziv? Odgovor je: na tej stopnji ne.And we will see, actually, how we can solve that later on. So it's a great remark. We will see some methods. Yeah? So the question is, if you give only the beginning of sequence, the LLM has no information, and so do you give a prompt? So the answer is not at this stage.
- u30 Če modelu ne podate ničesar, se bo naučil začeti zaporedje z nečim, kar pač začne zaporedje. Naučil se bo žetonov, ki se verjetno pojavijo na začetku zaporedja. Toda vaša pripomba drži, informacij ni. Torej — ja.But if you don't give anything to your LLM, it will learn to just start the sequence with something that starts the sequence. So it will learn tokens that could be likely to appear at the beginning of the sequence. But to your point, there is no information. So-- yeah.
- u31 Super. Dodati sem želel, da lahko to izvajamo vzporedno zaradi trika, ki smo ga, mislim, na kratko spoznali na 1. predavanju: maskirane samopozornosti, ki omogoča usmerjanje pozornosti le na žetone,Cool. One thing I wanted to add here is that we can do that in a parallel fashion because of a trick that I believe we briefly saw during lecture 1, which is the masked self-attention that allows you to only attend to tokens that
- u32 ki so pred trenutnim žetonom, in nanj samega. Z drugimi besedami, če želite napovedati naslednji žeton za »teddy«, lahko zaradi maskirane samopozornosti upoštevate le žeton »teddy« in vse predhodne žetone.are before you and yourself. So in other words, if you want to predict, let's say, the next token after "teddy," you would only be able to attend to the token "teddy" and all the tokens before you, thanks to the Masked self-attention.
- u33 Odlično. Če to nekoliko formaliziramo: modelu podamo nekaj, kar si lahko predstavljate kot zaporedje žetonov do, denimo, t minus 1. Želimo, da model izračuna verjetnost naslednjega žetonaGreat, and so just formalizing that a little bit more, so what we're doing is we're inputting something into the LLM, which you can think of it as a sequence of tokens, until, let's say, t minus 1. And what you want to do is the LLM to actually produce the probability of the next token
- u34 glede na vaš vhod.given your input.
- u35 Izguba navzkrižne entropijeCross-entropy loss
- u36 Bolj formalno za to uporabimo izgubo navzkrižne entropije. Na prosojnici imam formulo, vendar jo bom izpeljal iz osnovnih načel. Kot pri običajnem učenju poskušamo določiti parametre theta tako,And so in a more formal fashion, you will use the cross-entropy loss in order to do that. So I have a formula on the slide, but I'm going to just derive it from first principles. So as with a usual training setup, what we're trying to do is to learn parameters theta such
10:33 · Pretraining parallelizable via teacher forcing: next-token prediction objective · A Stanford ICME lecture slide titled "Pretraining is highly parallelizable via teacher forcing". It states the goal (learn patterns of language and code, greyed out) and the objective function (predict next token). A diagram shows the input x_<t entering a box labeled LLM, which outputs p_θ(x_t | x_<t). A small video inset shows the lecturer standing at the right. - u37 da bo verjetnost, da naš model vidi učne podatke, največja. Verjetnost zaporedja si lahko predstavljate kot p žetonov, torej od x1 do xn. To verjetnostthat the probability of our model seeing the training data is maximized. So the probability of the sequence-- you can think of it as p of the token-- so x1 until xn. And this probability is something
- u38 poda model, zato je parametrizirana s theta. Želimo najti parametre theta, ki maksimirajo verjetnost, da model vidi učno množico. Cilj je torej maksimirati to količino.that is produced by the model. So it's parameterized by theta. So what you want to do is to find the parameters theta that maximize the probability of a model seeing the training set. So your goal is to maximize this quantity.
- u39 Če se vrnemo k osnovam verjetnosti, lahko to zapišemo tudi drugače. Imamo p od x1 krat p od x2 pri danem x1 in tako naprej do p od, denimo, xn pri danih x1 do xn minus 1,And just going back to the basics of probability, it just turns out that you can have some other way of writing this. So you have p of x1 times p of x2 given x1 times all the way to p of x, let's say, n, given x1 until xn minus 1,
- u40 kar lahko zapišemo s tem produktom. Torej produkt za t od 1 do n vrednosti p theta od xt pri danem vhodu. To količino želimo maksimirati.which you can rewrite with this product. So it's t from 1 to n of p of theta of xt given your input. You want to maximize this quantity.
- u41 Težava pri maksimiranju produkta verjetnosti, ki so vsaka med 0 in 1, je, da produkt teži proti 0, kar lahko povzroči numerično nestabilnost. Zato običajno vzamemo logaritem te količine.The problem with maximizing the products of probabilities, which are each between 0 and 1, is that the product tends to 0, so it can lead to numerical instabilities. So what people do is they typically take the log of this quantity.
- u42 Naredil bom naslednje. Imamo — poglejmo — logaritem te količine. Torej preprosto vzamemo njen logaritem. To se pretvori v vsoto logaritmov verjetnosti.So I'll just do the following. We have-- so let's see-- log of this quantity. So we just take log of this. And this gets transformed to a sum of the log of the probabilities.
- u43 To je lastnost logaritma. Nato želimo to količino maksimirati. Toda pri strojnem učenju radi stvari minimiziramo. Zato dejansko minimiramo negativno vrednost te količine. Poleg tega ne želimo, da bi bila njena velikostSo this is just a property of the logarithm. And then what we do is we want to maximize this quantity. But in machine learning, what we like to do is to minimize things. So we actually minimize the minus of this quantity. And then we just want to not have this quantity be
- u44 odvisna od števila žetonov v zaporedju, zato jo delimo s številom žetonov. To je naša izguba in je funkcija parametrov theta.a function of the number of tokens in the sequence in terms of scale, which is why we divide by the number of tokens. And this is our loss. And it's a function of theta.
13:45 · Lecture on LLM pretraining and teacher forcing at Stanford · A lecturer in a pink shirt stands in a classroom, gesturing toward a projected slide titled "Pretraining is highly parallelizable via teacher forcing." The slide shows an LLM box that takes the previous tokens x<t as input and outputs p_θ(x_t | x<t), next to the cross-entropy loss formula. Partially erased handwritten derivations of the log-likelihood are on the chalkboard behind him. - u45 Theta prihaja iz p theta, ki ga naš model poda v zadnji plasti. Vse to zato, da povem, da boste izgubo navzkrižne entropije srečali marsikje. Namesto da si formulo zapomnite, o njej razmišljajte iz osnovnih načel.And the theta comes from the p of theta, which is something that our model outputs in the last layer-- so all that to say that you will find the cross-entropy loss in a lot of places. And just instead of memorizing this formula, just think of it from first principles.
- u46 Preprosto iščete parametre theta, ki maksimirajo verjetnost, da model vidi učne podatke. V redu, super. Kot sem omenil, je p theta napovedana verjetnost, x je vaš ciljni žeton, x manj kot t pa so pretekli žetoni.It's just you trying to find parameters theta that maximize the probability of your model seeing the training data. OK, cool. So as I mentioned, p theta is the predicted probability, exceeds your target token x less than t is the past tokens.
14:31 · LLM pretraining via teacher forcing: next-token cross-entropy loss · A Stanford lecture slide explaining that pretraining is highly parallelizable via teacher forcing. The objective is to predict the next token. A box labeled LLM takes the preceding tokens x_<t and outputs p_θ(x_t | x_<t). The cross-entropy loss is the negative average of the log predicted probability over T positions. A small video inset shows a lecturer standing at the right. - u47 Veliki T je število žetonov. Včasih boste videli še drugo izgubo, ki je pravzaprav ista izguba, le drugače skalirana, imenovano biti na bajt oziroma BPB. Zamisel je, da je pri izgubi navzkrižne entropije, ki sem jo pravkarAnd big T is the number of tokens. So you will sometimes see another loss that is actually the same loss but rescaled called Bits Per Byte, BPB. And the idea is that in the cross-entropy loss that I just
- u48 omenil, absolutna vrednost dejansko odvisna od vašega razčlenjevalnika na žetone. Glede na to, kako podatke razdelite na žetone, je lahko vrednost drugačna. Če torej želite primerjati izgubo med,mentioned, the absolute value is actually a function of your tokenizer. Depending on how you tokenize your data, this value might be different. So in case you want to compare your loss between,
- u49 denimo, modelom z določeno vrsto razčlenjevalnika in drugim modelom z drugačno vrsto, vrednosti morda niso neposredno primerljive. Zato boste včasih videli izgubo izraženo neodvisno od razčlenjevalnika: vzamete to izgubo,let's say, a given model that has a certain type of tokenizer and another model that has another kind of tokenizer, things may not be exactly comparable, which is why sometimes you will see this loss expressed in a tokenizer-free manner where you take that loss,
- u50 jo pomnožite s številom žetonov, deljenim s številom bajtov, in še z 1 deljeno z logaritmom 2, da jo lahko interpretirate kot bite. Od tod biti na bajt. Super, torej zdaj, ko vemo —you actually multiply this by the number of tokens divided by the number of bytes, and you also multiply this by 1 over log of 2, just so that you can interpret this as bits, which is why bits per byte. Cool, OK, so now that we know--
- u51 ja, imate vprašanje. Vprašanje je, kaj je B. B je število bajtov v vašem vhodu, saj lahko vsak znak kodiramo z bajti. Torej ja. Ja?yeah, you have a question. So the question is, what is B? So B is the number of bytes in your input because each character can be encoded with bytes. So yeah. Yeah?
- u52 Vprašanje je: maskirano samopozornost uporabljamo, da ne moremo upoštevati nečesa v prihodnosti. Ali to velja le za dekodirnik ali tudi za kodirnik? V tem primeru nimamo kodirnika, le dekodirnik. Naš cilj je napovedati naslednji žeton. Poskrbeti moramo, da se pri njegovi napovediSo the question is, you use the masked self-attention so that you cannot attend to something in the future. Is it something that is only for decoder or also for encoder? So here in this case, we don't have an encoder, and we only have a decoder. And our goal is to predict the next token. We need to make sure that when we predict the next token,
- u53 lahko opremo le na tisto, kar smo do takrat dekodirali, da posnemamo razmere pri sklepanju. Skratka, uporabljamo samo dekodirnik. Če bi uporabljali samo kodirnik, tega ne bi mogli početi tako. Žetonov ne bi mogli napovedovati enega za drugim, razen če naredimo nekaj drugega.we can only rely on the things that we have decoded so far to mimic the inference setup. So long story short is we're in a decoder-only setup. If we were in an encoder-only setup, we could not do this in this fashion. We could not predict tokens one at a time, unless you do something else.
- u54 To bomo videli na 8. predavanju. Ja. V redu, super.And we will see that in lecture 8. Yeah. OK, cool.
- u55 Mešanice podatkovData mixtures
- u56 Zdaj vemo, kako lahko učimo model in katero izgubo uporabimo. Tu je izguba navzkrižne entropije. Naslednje vprašanje je, na kakšnih podatkih lahko model sploh učimo. Izbiri vrste učnih podatkov je namenjenega veliko truda.So now we know how we can train our model, which loss we can use. So here's the cross-entropy loss. The next question is, what kind of data can we actually train our model on? And so here there is a lot of effort that is actually put into the kind of data that you want to train on.
- u57 Ti podatki lahko prihajajo s spleta, iz repozitorijev, s krajev, kjer je programska koda. V zadnjem času je poudarek na reševanju matematičnih in na splošno znanstvenih problemov. Zamisel je imeti velik korpus, na katerem seThis data can come from the web. It can come from repositories, from places where there's code. Lately there's an emphasis on being able to solve things with math, with science just in general. The idea is to have a big-sized corpus on which you
- u58 model lahko uči jezikovnih vzorcev in vzorcev programske kode. Običajno je zelo obsežen. Predstavljajte si bilijone žetonov. Mislim, da je bilo zadnjič vprašanje,can have your model learn about patterns of language, patterns of codes, and it's typically very big in size. Think of it as trillions of tokens. And I think last time there was a question
18:09 · Pretraining overview: returns on compute when repeating data · A Stanford lecture slide on pretraining, highlighting that repeating data has value. The chart plots final test loss against tokens (epochs): the loss predicted by data-constrained scaling laws (solid) falls more slowly than the loss assuming repeated data equals new data (dotted), and flattens near 2.4 by about 40 epochs. Up to about 4 epochs, repetition is almost as good as new data. - u59 ali pri učenju iste podatke ponavljamo ali vidimo le edinstvene žetone. To je raziskovalo nekaj člankov. Eden je tu na prosojnici in je preučeval primer, ko smo omejeni s podatki,on whether we would actually repeat the same data if we train it, or if we only were seeing unique tokens. Well, there has been some papers actually looking into this. And there's one paper that is here on the slide, which was looking at the case where you're in a data-constrained regime
- u60 torej imamo le določeno količino žetonov. Vprašanje je, ali je bolje učenje ustaviti ali pa se splača večkrat učiti na istih žetonih. Odgovor je v tem primeru da, do štirikrat. To dejansko omogoča,where you only have, let's say, a set amount of tokens. The question is, would you rather stop the training, or is it worth for you actually training multiple times on the same tokens? And the answer in this case is actually yes, up to four times. It's actually something that is allowing
- u61 da dosežete boljšo uspešnost. Gre torej za kompromis: ali raje videti več edinstvenih žetonov — so kakovostni ali ne? — in ali jih tudi ponavljati. To je vprašanje, ki si ga ljudje zastavljajo.you to get better performance. So there is this trade-off of whether you would rather see more unique tokens-- is it of high or low quality?-- and whether you want to actually repeat that as well. So that's the question that people ask themselves.
19:14 · Pretraining overview: data mixtures and the DataComp-LM pipeline · A Stanford lecture slide on pretraining, with the "Data mixtures" item highlighted and the goal and objective lines greyed out. A four-step diagram shows the DataComp-LM benchmark workflow: select a scale, build a dataset by filtering or mixing, train a model with a fixed recipe, and evaluate on 53 downstream tasks. A small inset shows the lecturer standing at the right. - u62 Glede ugotavljanja, katere podatke uporabiti, je bilo opravljenega veliko dela. Omenil bom tudi DataComp-LM, ki poskuša ločiti vpliv kakovostne podatkovne množice od vpliva boljše arhitekture,Again, on the topic of figuring out which data to use-- so there's been a lot of work in trying to figure that out. And so I'll just cite this work as well, DataComp-LM, which tries to tease out the impact of having a high-quality data set versus having a better architecture,
- u63 saj lahko dva človeka učita vsak svoj model in se sprašujeta, ali so neki podatki dovolj kakovostni za njun primer. Uspešnost pa je lahko v resnici posledica arhitekture njunega modela. Tu poskušajo arhitekturni vidik poenotiti, da biBecause two people can try to train their model and wonder if a given data is of high enough quality for their setup. But then the performance could be actually due to their own model architecture. So this is trying to normalize the architecture side so that we
- u64 lahko izločili le vpliv boljše kakovosti podatkov. Tudi na tem področju je veliko dela. Lahko se vprašate tudi, kako sestaviti končno podatkovno množico. Naj vključim 20 % kode, 50 % spleta in tako naprej? Tega se ljudje lotevajo na različne načine.can only tease out the impact of having a better data versus not. There's a lot of work on that piece as well. And you can also wonder, well, OK, how can I obtain my final data set? Should I put 20% of code, 50% of web, and so on, so on? And so here people have been doing that in multiple ways.
20:10 · Pretraining overview: choosing data mixtures via RegMix regression · A Stanford lecture slide explains the RegMix method for choosing a pretraining data mixture. Small proxy models are trained on different mixes of Hacker News, Github and Philpapers, a regression model is fit to predict target loss from the mix, and new mixes are simulated. The best simulated mixture (22.8% Hacker News, 67.0% Github, 10.2% Philpapers) has a predicted target of 5.34 and is used to train a large-scale model. - u65 Eden od načinov je učenje več majhnih modelov na različnih mešanicah podatkov in preverjanje njihove uspešnosti, da lahko sklepamo o morebitni dobri mešanici, ki bi lahko dobro delovala tudi pri povečanju obsega.And here one way is to train multiple small models on different mixtures of data and see how each of these small models perform so that we can then infer a potential good mix of data that could work well if we were to scale that up.
- u66 Če vas to zanima, toplo priporočam tudi branje tega članka. Ponovno želim poudariti, da je priprava podatkov zahtevno delo. Zato sem želel navesti ta diagram iz Olmol 3, modela z odprtimi utežmi.So yeah, I highly recommend also reading that paper in case you're interested. And again, I want to emphasize that the data, preparation data work, is actually an involved one. So I wanted to cite this diagram from Olmol 3, which is an open-weight model.
- u67 Prikazuje potek učenja in priprave podatkov, ki je precej zapleten. Kot sem omenil, je podatkovna množica za predhodno učenje običajno ogromna, reda bilijonov žetonov, zadnje čase celo desetin bilijonov žetonov.And here it just goes through the training pipeline, the data preparation pipeline, which is quite involved. And as I mentioned, the size of the pretraining data set is typically huge, on the order of trillions of tokens, and lately, even tens of trillions of tokens.
- u68 Kot primer: GLM-5, razmeroma nov model z odprtimi utežmi, je bil učen na 30 bilijonih žetonov, zgolj za orientacijo. Lahko si predstavljate, da za učenje tako velikega modela potrebujete ustrezno infrastrukturo.So as an example, GLM-5, which is a relatively recent open-weight model, was trained on 30 trillion tokens, just as a point of reference. So you can imagine that in order to train such a big model, you need to have the right infra in place.
- u69 Povedati sem želel le, da se s tem na tem predavanju ne bomo ukvarjali, bomo pa se na 5. predavanju. Če vas tema zanima, ostanite z nami. Super, to je bil tradicionalno prvi korak pri učenju velikih jezikovnih modelov.So I just wanted to say that we will not focus on that in this lecture, but we'll focus on that in lecture 5. So stay tuned if you're interested on that topic. Cool, so this was traditionally the first step that people would do in order to train their LLMs.
- u70 V zadnjih letih pa se je pojavila druga stopnja,But in recent years, there is a second stage
- u71 Vmesno učenjeMidtraining
- u72 imenovana vmesno učenje, katere cilj je dodati znanje o nalogah, bolj usklajenih z vašim primerom uporabe. Če vam je na primer pomembno, da je model sposoben sklepanja, ga želitethat has emerged which is called midtraining, which aims at injecting knowledge on tasks that are more aligned with your use case. So if, for instance, you care about your model, let's say, being able to reason, what you want to do
22:18 · Pretraining overview lecture slide, Stanford ICME · A Stanford University ICME lecture slide titled "Pretraining overview" with faded body text listing the goal, objective, data mixtures and size of LLM pretraining. A pink banner notes that training systems and infrastructure will be covered in Lecture 5. A small inset at top right shows the lecturer standing in a classroom. - u73 izpostaviti več takšnim podatkom s kodo in maskiranim besedilom. Tu bi uporabili vmesno učenje in kakovostnejše podatke, še vedno z napovedovanjem naslednjega žetona, da se model nauči večis to expose your model to more of that code and masked text data. And so here you would use midtraining and rely on higher-quality data, still doing next-token prediction, in order to have your model learn more
- u74 o teh primerih uporabe. To je prvo. Drugo pa je učenje modela na daljših kontekstih oziroma vhodih. Nečesa tu nisem poudaril: pri predhodnem učenju običajnoabout these use cases. So that's one. And the second thing is training your model to see longer contexts, inputs, because one thing that I did not emphasize here is for pretraining, typically
- u75 zaradi učinkovitosti uporabljamo dolžine zaporedij reda nekaj tisoč žetonov. V resnici pa imate lahko vhode z več deset tisoč ali celo več sto tisoč žetoni.for efficiency purposes, we pretrain based on sequence lengths that are on the order of several thousands of tokens. But in reality, you could have tens of thousands of tokens as inputs or even hundreds of thousands of tokens.
- u76 Model morate naučiti, da to obvlada. Zato bomo morda minuto ali dve nameniliAnd you need to teach your model to actually be able to handle that. So we're going to spend maybe one or two minutes
- u77 Učenje na dolgem kontekstuLong context training
- u78 učenju na dolgem kontekstu. Videli smo, da je to odvisno od naše sposobnosti kodiranja položajev. Dandanes za to uporabljajo RoPE. Videli smo, da RoPE nima naučenih parametrov.on the long context training. So we saw that this was dependent on our ability to encode positions, which is something that nowadays people do. People use RoPE. We saw that there is no learned parameter within RoPE.
- u79 Teoretično bi ga torej lahko uporabili neposredno. Težava pa je, da če ne naredite ničesar in model učite le na kratkih zaporedjih, nato pa ga želite pri sklepanju uporabiti za daljša, model dejansko še nikoli niSo we could, in theory, use that out of the box. But the problem is, if you don't do anything, if you just train your model on short sequences and want to actually use that for inference for longer sequences, the reality is that your model actually has never
- u80 videl rotacij teh daljših zaporedij, zato se lahko zmede. Zato imamo stopnjo učenja na dolgem kontekstu, kjer model poskušamo izpostaviti daljšim zaporedjem.seen the rotations of these longer sequences, so it may get confused. So this is the reason why we have this long context training stage where we're trying to expose our model on these longer sequences.
24:32 · Long context training: extending RoPE with YaRN · A Stanford lecture slide on long context training, whose idea is to teach the model to use information over longer distances. It explains that RoPE can be extended, for example with YaRN, and uses a clock analogy (hour slow, minute fast, second very fast) to illustrate rotation at different frequencies. It also shows the block-diagonal rotation matrix R_{θ,m} and diagrams of query and key vectors rotated by angles mθ and nθ. A small inset at top right shows a lecturer at a board. - u81 Običajno se pri tem nekoliko prilagodijo frekvence RoPE, da se model lažje uči. Zasledili boste vrsto metod za razširitev RoPE.And in particular, there are typically some little tweaks that are made to the RoPE frequencies in order to help our model learn better. So in particular, you will see a bunch of extension methods from RoPE.
- u82 Omenil bom eno. Morda boste videli YaRN. Morda se vprašate, zakaj to potrebujemo. Če bi model, ki ste ga prej učili na krajših kontekstih, preprosto učili na vhodih z dolgim kontekstom,So I'll cite one. You may see YaRN. And you may wonder, well, why do you need that? So if you were to simply train your model that you previously trained on shorter contexts, if you were to train that model on long context inputs,
- u83 bi mu otežili učenje teh večjih položajnih razlik v kontekstu, saj bi bile z njegovega vidika povsem nove. Zato dejanskothen you would actually give your model a hard time to learn these longer context position differences, because this would be completely unseen from the model perspective. So what people do is they actually
- u84 interpolirajo frekvence, da velike položajne razlike ostanejo znotraj razpona frekvenc, ki jih je model videl med učenjem na kratkem kontekstu. Gre za manjše prilagoditve frekvenc,interpolate the frequencies in order to have long position differences be within the range of frequencies that were seen during the short context training. So there are some little tweaks on the frequencies
- u85 ki jih uporablja RoPE, da se model bolje uči. Poleg tega obstaja koncept kurikularnega učenja, torej učenja — ja? Vprašanje je, kako ugotovijo, kakšno dolžino bodo srečevali.that are used by RoPE in order to help the model learn better. And in addition to that, there is this concept of curriculum learning, so learning-- yes? So the question is, how do they figure out what is the length that they will encounter?
- u86 To je vnaprej načrtovano. Rečejo si torej — na sliki dejansko vidite primer GLM-5. Učenje na kratkem kontekstu poteka na vhodih dolžine 4.000. Pri učenju na daljšem kontekstu pa se to podaljša na 128 tisoč ali celo 200 tisoč.So it's preplanned. So they will say, OK-- on the figure, actually, you can see an example from GLM-5. The short context training is done on 4,000 long inputs. And then for the longer context training, it's elongated to 128k or even 200k.
- u87 To število torej poznajo od začetka in temu ustrezno interpolirajo. Nato uporabijo prilagojene frekvence, izvedejo učenje in pustijo, da se model ustrezno nauči uteži. Vprašanje je, kaj pa sklepanje. Uporabili bi prilagojene frekvenceSo they know that number from the start, and they will interpolate accordingly. And then they will use that tweaked frequency and do the training and then let the model learn the weights accordingly. So the question is, how about inference? So they would use the tweaked frequencies
- u88 po učenju na dolgem kontekstu. Sprva bi model učili na kratkem kontekstu z določenimi frekvencami, nato pa izvedli vmesno učenje. Izvedejo učenje na dolgem kontekstu, pri katerem frekvence nekoliko prilagodijo. Nato te frekvence uporabljajo pri sklepanjuafter the long context training. So they would initially train the model for short context on some frequencies, and then they perform midtraining. They perform long context training in which they tweak a little bit the frequencies. And then they use these frequencies for inference
- u89 in tako naprej. Ja? Vprašanje je, ali z uporabo YaRN povsem spremenite svojo postavitev. Tu se dejansko opirate na obstoječi RoPE, spremenite pa frekvence, da je model bolje seznanjen z njihovimi razponi, ki se pojavljajoand so on. Yeah? So the question is, if you use YaRN, do you completely change your setup? So here you actually rely on the RoPE that you had, but you change the frequencies so that the model is more familiar with the ranges of frequencies encountered
- u90 pri dolgih kontekstih, saj je takšne frekvence videl že med učenjem na kratkem kontekstu. Točno tako, ja. Odlično.during long contexts and is more familiar with that, as in, it has seen such frequencies during the short context training. Exactly, yeah. Great.
- u91 Zakaj je to težko? Če se spomnite, transformer temelji na samopozornosti. Pri samopozornosti vse upošteva vse drugo, s kompleksnostjo O od n na kvadrat. Če vhode povečate s 4.000 na več sto tisoč, imate precej več računanja.So why is this hard? So if you remember, transformer is based on self-attention. Self-attention is everything attends to everything else-- O of n squared complexity. So if you scale up from 4,000 as inputs to hundreds of thousands, well, you have a lot more computation.
- u92 To pa ni edino. Druga težava je, da je težko dobiti podatke, pri katerih nekateri deli za napoved določenega žetona potrebujejo druge, močno oddaljene dele. Naj navedem primer.But it's not the only thing. The second thing is it's actually hard to get data on which some parts of the data need some other parts in a long range fashion in order to predict that specific token. So I'll give you an example.
- u93 Model se mora naučiti uporabiti informacije iz daljne preteklosti za napoved v daljni prihodnosti. Potrebujete torej primere, ki uporabljajo nekaj iz daljne preteklosti, in to ni nekaj, kar bi bilo trivialno —You need your model to learn to use information far in the past in order to make a prediction far in the future. So you need to have some observation that makes use of something that is far in the past and that is not something that is trivially--
- u94 nekaj, kar bi zlahka sestavili. Nekaj dela je torej namenjenega ustvarjanju takšnih primerov. Izzivov je več. A na koncu, če izvedete predhodno, vmesno in učenje na dolgem kontekstu, boste ob koncu te stopnjesomething that you can come up with. So there is some amount of work that is around coming up with such observations. So there's a number of challenges. But at the end of the day, if you do your pretraining, your midtraining, and your long context training, at the end of that stage,
29:06 · Challenges slide: cost of large-scale model training · A Stanford ICME lecture slide titled "Challenges" with the heading "Cost." and three bullets: the cost is at least millions of dollars, it takes time, and it has environmental/electricity impact. A small inset in the top right shows a person standing near a chalkboard in the lecture room. - u95 najprej porabili veliko dolarjev. Dobra stran pa je, da boste imeli model, ki pozna besedila in programsko kodo ter je usvojil določeno količino znanja iz teh podatkov.you will, first of all, have spent a bunch of dollars. But then the nice thing is you will have a model that knows about text, that knows about codes, and that has acquired a certain amount of knowledge that was in that data.
- u96 Če pogledate kartice svojih najljubših modelov pri zunanjih ponudnikih, boste videli datum preseka znanja, torej datum, do katerega segajo učni podatki.And in particular here, if you look at the model cards of your favorite models on third-party providers, you will see that there is a knowledge cutoff date, which is the date that is used up until which you have your training data.
- u97 V primeru GPT-6 Astra na primer veste, da so podatki za učenje tega modela segali do 30. aprila 2026. Težava je, da je to znanje časovno fiksirano. To pomeni, da model brez dodatnih posegov,So for instance, in the case of GPT-6 Astra, you know that the data that was used to train that model was up till April 30th of 2026. And the problem is that that knowledge is fixed in time. So that means that out of the box,
- u98 če ga vprašate o nečem, kar se je zgodilo po tem presečnem datumu, o tem ne bo imel pojma, saj tega med učenjem ni videl. Tega znanja torej nima. Spoznali pa bomo tehnike, s katerimi lahko to obidemo. Več o tem pozneje.if you were to ask your model about something that happened after that cutoff date, your model would have no idea about it because it didn't see it at training. So it doesn't have the knowledge. But we will see techniques to actually circumvent that. So more on that later.
- u99 Imam vprašanje za vas. Opravili smo vse to delo. Začeli smo z velikim jezikovnim modelom in izvedli predhodno, vmesno in učenje na dolgem kontekstu. Predpostavimo, da vnesemo naslednji poziv: »Ali lahko svojega plišastega medvedka dam v pralni stroj?« Kakšen odgovor nam lahko model poda na tej stopnji?So I have a question for you. We've done all this work. We've started from our LLM, just did all of that pretraining, midtraining, and long context training. And let's suppose we input the following prompt. "Can I put my teddy bear in the washer?" What is one response that the LLM can give us at that stage?
- u100 Ja? Mislim, da pravilno sklepate. Naredil bo — no, na vprašanje ne bo odgovoril. Običajno bo poskušal besedilo samodejno dopolniti, saj smo ga doslej učili napovedovanja naslednjega žetona. Učili smo ga ugibati naslednjo besedo.Yeah? I think you have the right intuition. So here what it will do is-- well, it will not respond to the question. Typically, it will actually try to autocomplete because the model so far has been trained in a next token prediction fashion. It has been trained to guess the next word.
- u101 Odgovoril bo nekako takole. »Ali lahko svojega plišastega medvedka dam v pralni stroj?« No: »Plišasti medvedki so pogosto izdelani iz materialov, kot sta poliester in bombaž, s plastičnimi očmi in včasih majhnimi dodatki« — nekaj, kar bi običajno videli v besedilu. Je koristno? Ne, ni koristno.So here it will respond something along these lines. So, "Can I put my teddy bear in the washer?" Well, "Teddy bears are often made of materials like polyester and cotton, with plastic eyes and sometimes small accessories"-- typically the kind of thing that you would see in text. Is it useful? No, it's not useful.
- u102 Torej še nismo končali.So we're not done.
- u103 Nadzorovano dodatno učenje (SFT)Supervised finetuning (SFT)
- u104 To je bilo predhodno učenje. Zdaj pojdimo na naslednjo stopnjo, kjer poskušamo model narediti uporaben. Če mu postavljamo vprašanja, želimo odgovore. Ta stopnja se imenuje SFT, nadzorovano dodatno učenje.This was pretraining. Now let's go into the next stage, which is trying to make our LLM useful. So if we ask it questions, we want answers. So in this stage-- so first, this stage is called SFT, Supervised Fine-Tuning.
- u105 Cilj je spremeniti vedenje modela in ga uskladiti s tem, kar želimo doseči. Če želite v prejšnjem primeru postaviti vprašanje, želite odgovor, torej vedenje pomočnika. Zamisel te stopnje je pripravitiAnd the goal is to change the model behavior to align with what we wanted to do. So in the previous example, if you want to ask a question, you want an answer, so you want to an assistantlike behavior. So the idea behind this stage is to come up
- u106 pare vhodov in izhodov, pri katerih želite, da se model na dani vhod odzove kot podani izhod. Ciljna funkcija bo še vedno napovedovanje naslednjega žetona.with input/output pairs for which you want your model to respond like the output for a given input. So here the objective function will still be next token prediction.
- u107 Imate neki vhod in želite napovedati naslednji žeton. Za usvajanje vedenja pomočnika potrebujete zlasti pare navodil in odgovorov.You want some input, and you want to predict what the next token is. So in particular, when it comes to acquiring a behavior that is like an assistant, you want pairs of instructions and responses.
32:51 · Supervised finetuning (SFT) lecture slide, Stanford ICME · A lecture slide titled "Supervised finetuning" defines SFT as Supervised FineTuning. It gives the idea (change model behavior by tuning weights), the strategy (collect input/output pairs, train with next-word prediction given the input), and a special case, instruction tuning. The "Idea" and "Strategy" text is faded, while the heading and special case are in full contrast. A small video inset at top right shows a person standing near a blackboard. - u108 Navodilo bi bilo na primer: »Napiši kratko zgodbo o plišastem medvedku, ki rad bere poezijo.« Nato imate, denimo, neko pesem. Drugo bi bilo: »Pojasni, zakaj je plišasti medvedek odličen prijatelj,« nato imate odgovor. Vhod, torej navodilo, bi podali svojemu modeluSo as an example, let's say the instruction can be, "Write a short story about a teddy bear who likes to read poetry." And then you have some poem, let's say. Another one about "explain why a teddy bear is a great friend," and then you have the response. And what you would do here is pass the input, which is the instruction, into your LLM,
- u109 in na njegovi podlagi poskušali napovedati naslednji žeton s ciljno funkcijo napovedovanja naslednjega žetona, kar se, kot smo videli, izvaja na primer z izgubo navzkrižne entropije. Da se bomo vsi razumeli: navodilo bi bilo lahko modro.and try to predict the next token based on that input, via the next-token-prediction objective function, which here we saw is, for instance, done via the cross-entropy loss. So to make sure we're all on the same page here, the instruction could be in blue.
33:44 · Instruction tuning overview: next-token objective given the input · A Stanford lecture slide titled "Instruction tuning overview" states the objective function as predicting the next token given the input. A diagram shows an LLM box with input tokens [BOS], Do, X, ., Sure along the bottom and output tokens Do, X, ., Sure, ... along the top. The pink-highlighted tokens "Sure" and "..." mark the response part, which is where the prediction applies. A small inset shows the lecturer standing at the top right. - u110 Model bi nato poskušal napovedati rožnate žetone, torej odgovor. Postavitev je torej nekoliko drugačna kot pri predhodnem učenju. Ja? Vprašanje je, kako se SFT razlikuje od vmesnega učenja.And then what we would try to do is to have our model predict the ones in pink, which is the answer. So the setup is slightly different with respect to pretraining. Yes? So the question is, how is SFT different from midtraining?
- u111 Pri vmesnem učenju gre za kakovostnejše podatke. Nimate pa enega določenega vhodnega poziva, pri katerem bi želeli posnemati neko izhodno vedenje. Še vedno gre za korpus besedil, v katerem poskušate napovedati naslednji žeton. Glavna razlika med vmesnimSo midtraining is about higher-quality data. But you don't have one specific prompt as input that you're trying to just mimic a behavior as output. It is still a corpus of texts for which you're trying to predict the next token. The main difference is in midtraining compared
- u112 in predhodnim učenjem je v kakovostnejših podatkih, bolj usklajenih z nalogo, ki vas zanima. Če vas zanimajo matematični problemi, bi imeli več matematičnih podatkov. Tu pa je cilj posebej prilagoditi vedenje modela,to pretraining, you have higher-quality data and data that is more aligned with the task of interest. So if you're interested in, let's say, math problems, you would have more math-related data. But here the idea is specifically to tweak your behavior, the behavior of a model,
- u113 da bo usklajeno z vašimi željami. V tem primeru mu podamo vhod x. Modelu torej ne naročimo, naj napoveduje vhodne x. Želimo, da napove naslednji žeton odgovora. Majhna sprememba glede na prejšnjo postavitevto align with what you want. And in this example, we're passing it an input x. So we're not telling our model to predict the x's as input. And what we want it to do is to predict the next token of the answer. So the slight change with respect to the previous setup
- u114 je, da je vhod tu x, torej navodilo oziroma poziv, in doslej dekodirani del odgovora. Želimo napovedati naslednji žeton, spet z izgubo, podobno navzkrižni entropiji.is the input here is x, the instruction or the prompts, and then whatever answer that has been decoded so far. And what you want to do is to predict the next token, again, with a cross-entropy-like loss.
- u115 Imeli bi logaritem verjetnosti ciljnega žetona pri danem vhodnem pozivu in preteklih žetonih, običajno povprečen po žetonih. Uporabili bi podatke, usklajene s tem, kar želite. Tu sem omenil eno vrsto podatkov, povezano s pomočjoSo you would have the log of the probability of the target token given the input prompt and the past tokens, typically averaged across tokens. So in terms of the kind of data that you would use, you would use data that is aligned with what you want. So here I mentioned one kind of data, which is assistance-
- u116 oziroma navodili. Lahko pa imate tudi druge vrste podatkov. Predpostavimo, da želite, ne vem, posebej pisati o pesmih v zelo določenem slogu. Imeli bi le takšne podatke. Obseg podatkov za SFT bi bil precej manjši kot pri predhodnem učenju —or instruction-related data. But you could very well have other kinds of data. So let's assume you want, I don't know, specifically writing about poems in a very specific style. You would have only data about that. And the size of your SFT data, which would be much lower compared to the pretraining one--
- u117 če gre za zelo specifičen primer uporabe, bi jih imeli na stotine ali tisoče — stotine ali tisoče. Če pa želite kaj večjega, denimo vedenje pomočnika pri raznovrstnih nalogah, bi imeli morda milijone primerov,so if, for instance, it is a very specific use case, you would have of hundreds or thousands-- hundreds or thousands. But if you want something bigger, let's say, having an assistant-like behavior on a variety of tasks, you would have maybe millions of examples,
- u118 vendar še vedno precej manj kot pri predhodnem učenju. Vrnimo se k primeru: predpostavimo, da model vprašam: »Ali lahko svojega plišastega medvedka dam v pralni stroj?« Kakšen — ja?but much lower magnitude compared to the pretraining stage. So back to our example-- let's assume I am asking my LLM, "Can I put my teddy bear in the washer?" What is the kind of-- yes?
- u119 Vprašanje je, ali kaznujemo napovedovanje vhoda. Odgovor je ne. Kaznujemo le napovedovanje izhoda. Vhod nas ne zanima, ta nam je dan. Iz te formule bi torej dobili vsoto po t od p theta od —So the question is, do you penalize predicting the input? The answer is no. You only penalize predicting the output. You don't care about the input. The input is given to you. So from this formula you would have, the sum over t of the p theta of--
- u120 logaritma p theta od t pri danih x in y. Ja, x je vhod, ja. Vprašanje je, ali bi računanje izgube za poziv škodovalo uspešnosti. Tega pravzaprav ne bi počeli.log of p theta of t given x and y. Yeah, x is an input, yes, yeah. So the question is, if you compute the loss of the prompt, would it hurt the performance? So you would not really.
- u121 To ni vaš namen. Vaš namen ni napovedovati poziva. To preprosto ni usklajeno s tem, kar želite narediti. Ja. Še kakšno vprašanje? V redu, nazaj k mojemu vprašanju: predpostavimo, da imamo enak vhod kot prej,So it's not your intention. Your intention is to not predict what the prompt is. So it's just not aligned with what you want to do. Yeah. Any other questions? OK, back to the question that I had for you-- so let's assume we have the same inputs as last time,
37:41 · Behavior: teddy bear in washer prompt to LLM · A Stanford ICME lecture slide titled "Behavior" shows a simple flow: the question "Can I put my teddy bear in the washer?" goes into a box labeled "Pretrained + instruction tuned LLM", which outputs a question mark. The slide poses the open question of how such a model will respond. A small inset in the top right shows the lecturer standing in front of a blackboard. - u122 tokrat pa model ni le predhodno naučen, temveč tudi prilagojen navodilom s SFT. Kakšen odgovor bi dobili? Ne. Ja, točno, ne, vendar bo povedal še kaj drugega. Morda: »Ne, lahko se poškoduje,but this time with an LLM that is not only pretrained, but also instruction-tuned with SFT. What would be the kind of response you would get? No. Yeah, exactly, no, but it will say also some other things. Maybe, "No, it might get damaged,
- u123 raje ga operite ročno,« kar je precej bolje, saj odgovori na vaše vprašanje. Morda pa si želite nekoliko prijaznejši odgovor, morda v določenem tonu.try hand-washing instead," which is much better because it answers your question. But maybe you're someone who wants to have an answer that is a bit more friendly, maybe with some specific tone.
- u124 V naslednjem razdelku bomo pogledali, kako lahko ta odgovor izboljšamo. Pred tem pa bi rad predstavil nekaj izzivov stopnje SFT. Prvi je, kot sem omenil,So the next section will be about trying to see how we can improve that answer. But before we do that, I wanted to just go over some challenges of the SFT stage. So the first one is, as I mentioned,
38:41 · Challenges slide from Stanford ICME lecture · A Stanford University slide titled "Challenges" lists five bulleted difficulties, with key phrases in bold. A small inset in the top-right corner shows the lecturer standing beside a chalkboard in the lecture room. The slide appears to concern training or aligning language models, though it does not say so. - u125 da potrebujemo zelo kakovostne podatke, saj se bo model po učenju na podatkih SFT vedel natanko tako, kot smo mu pokazali. Zato moramo poskrbeti, da so podatki točno takšni, kot želimo. Druga težava je, da če imamo preveč podatkov o eni določeni stvari, se lahko modelwe need very high-quality data because when we train our model on that SFT data, the model will really behave exactly like we told it to. So we really need to make sure that the data is exactly what we want. The other thing is, if we have too much data with respect to one specific piece, the model may
- u126 nagiba k odgovarjanju na zelo določen način. Izzivi so torej zagotavljanje ustrezne porazdelitve pozivov za dodatno učenje, sposobnost posploševanja in dejansko vrednotenje. Nekaj minut želim nameniti računskemu vidiku.be biased to answer in a very specific way. So there are some challenges with respect to just making sure we have the right distribution of the prompts that we're tuning it on, along with being able to generalize and actually evaluating it. There's one thing that I want to spend a few minutes on, which is the computational part.
- u127 Kot smo omenili, ima naš model običajno nekaj milijard ali celo več deset oziroma sto milijard parametrov. Model o besedilu že veliko ve, že ima veliko znanja.So as we mentioned, our LLM is typically on the order of billions of parameters or even tens or hundreds of billions of parameters. And your model knows already a lot about text, already knows a lot.
- u128 Tu poskušate njegovo vedenje le usmeriti k želenemu vedenju. Vprašanje je torej, ali res morate prilagoditi vse parametre ali zadostuje, da prilagodite le nekatere.And what you're doing here is trying to just steer its behavior towards something that you would like the model to behave. So the question is, do you really need to tweak all the parameters, or can you actually get away by just tweaking some of them?
- u129 Prav to so se ljudje tudi vprašali.And this is exactly what people have asked.
- u130 Prilagajanje z nizkim rangom (LoRA)Low-Rank Adaptation (LoRA)
- u131 To je motivacija za LoRA. Kdo je že slišal za LoRA? Ja? Še kdo? Odlično. LoRA pomeni prilagajanje z nizkim rangom. Zamisel je, da za določeno vedenje verjetno ni treba posodobiti vseh uteži modela,And this is something that motivates LoRA. So who has heard of LoRA? Yeah? Other people? Great. So LoRA stands for Low-Rank Adaptation. And the idea behind LoRA is you actually probably don't need to update all the weights of your model in order to behave a certain way,
- u132 saj ste že skoraj na cilju. Vzamete učljive parametre, ki so običajno v obliki matrike, in jih razstavite na predhodno naučene uteži W0 ter nekaj prilagodljivih parametrov.because you're almost there already. So the idea is you take the learnable parameters that you have, which is typically as a matrix, and you decompose that as your pretrained, already-learned weights, W0, and then some tunable parameters.
- u133 Ti prilagodljivi parametri so v matrikah precej nižjega ranga, tu B in A. To drastično zmanjša število parametrov, ki jih morate učiti. Prednost je precej večja učinkovitost,And these tunable parameters, they're actually living in much lower-rank matrices, so here B and A. And it slashes completely the number of parameters that you need to train on. So the good thing is it's much more efficient,
- u134 pri čemer se izkaže, da je uspešnost približno podobna, odvisno od obsega podatkov in naloge, kar je odlično. Poleg tega predpostavimo, da imate, kot v začetnem primeru, več primerov uporabe in želite model z LoRA prilagoditi vsakemu posebej.and it turns out to be actually leading to roughly similar performance, depending on the size of your data and your task, which is great. And also-- let's assume, back to our initial example, you have several use cases, and you, let's say, want to tune your model with LoRA for each specific use case.
- u135 Prednost je, da morate shraniti le predhodno naučene uteži W0 in manjše matrike, specifične za posamezno nalogo. Če LoRA učite za neželeno pošto, dobite B in A, specifična za ta primer uporabe.The good thing is that you only need to store the pretrained weights, W0, and then the smaller matrices that are task-specific matrices. So here, for spam, if you train LoRA, you get B and A that are specific to the spam use case.
- u136 Za sentiment lahko znova uporabite W0, B in A pa prilagodite posebej za prepoznavanje sentimenta. Enako za prevajanje in tako naprej. Če LoRA ne bi uporabili, bi morali shraniti vse uteži za prvo nalogo, vse uteži za drugoFor sentiment, you can reuse W0, but then have the B and A tuned specifically for the sentiment extraction task-- same for translation and so on. So in other words, if you didn't use LoRA, you would have to store all the weights for the first one, all the weights for the second one,
- u137 in tako naprej. Tu pa morate shraniti le razliko. To je odlično tudi z vidika shranjevanja. Avtorji LoRA so sprva predlagali, naj to izvajamo na matrikah,and so on. But here you only need to store the delta. So it's also great for storage purposes. So originally, the authors of LoRA, they mentioned people should do that on the matrices that
- u138 ki so v plasti samopozornosti. Od takrat pa so ljudje preizkusili različne postavitve in podatkovne množice. Najnovejše priporočilo je, da uporabimo tudi matrike v nevronski mreži s povezavami naprej,are within the self-attention layer. But since then, people have tried different setups, and they have experimented with different data sets. And the latest recommendation is to actually also leverage the matrices that are within the feedforward neural network,
- u139 saj tam dejansko poteka vse računanje. Tam je veliko parametrov. To zato prinese veliko izboljšanje uspešnosti. Za dodatno branje je na dnu prosojnic odličen članek, mislim, da od Thinking Machine, ki ga je vredno prebrati.because it's actually where all the compute is happening. This is where a lot of the parameters are. So it actually leads to a lot of performance gain. And as a suggested reading, there is a great article, I believe, from Thinking Machine that is worth reading that is at the bottom of the slides.
43:18 · Stanford lecture on Transformers and Large Language Models · A still from a lecture video in a Stanford classroom. A man in a pink t-shirt stands beside a chalkboard, looking at a projected title slide, "Transformers & Large Language Models" (Stanford University, ICME). The slide's agenda is on the right, with "Preference tuning" highlighted. Handwritten probability and loss-function equations are on the chalkboard. - u140 Če vas zanima, toplo priporočam ogled. Super. Ja? Vprašanje je: predpostavimo, da postavim neko vprašanje. Kako vem, kateri model prevzame nalogo? Odgovor je, da običajno ne biSo I highly recommend taking a look if you're interested. Cool. Yeah? So the question is, let's assume I'm asking a given question. How do I know which model takes the task? Well, the answer here is you would typically not
- u141 imeli različnih uteži, če želite splošnonamenskega pomočnika. To bomo videli nekoliko pozneje. Običajno bi učili en velik model s čim več želenega znanja oziroma čim več znanja, kolikor je mogoče, ki bi odgovarjal na ta vprašanja. To je predvsem za zelo, zelo specifične primerehave different weights if you want a general-purpose assistant. And we'll see this a little bit later. Typically, you would train one big model and have it have as much knowledge that you want, as much knowledge as you can, and answer these questions. So here it's mostly if you have some very, very specific use
- u142 uporabe. Predpostavimo nekaj povsem po meri, za kar potrebujete dodatno učenje. V splošnem pa tega običajno ne bi počeli. Ja? Vprašanje je: rekli ste, da je za SFT potrebnih 10 na potenco 6 podatkov, kar je več velikostnih redovcases. Let's suppose something extremely custom, and you need, let's say, fine-tuning for that. But for the general case, you typically would not do that. Yeah? So the question is, you said the data that is required for SFT is 10 to the power of 6, which is several order of magnitude
- u143 manj kot za predhodno učenje. Torej manj kot pri predhodnem učenju. Zakaj potem tega ne naredite? Ljudje, ki želijo model dodatno učiti, so običajno ljudje, kot sva vi in jaz. Nimajo izjemno zmogljive strojne opreme. Ne moremo si privoščiti prilagajanja milijard in stotin milijard parametrov.less than for pretraining. So it's less than pretraining. Why don't you do that? Well, people who want to fine-tune, they're usually people like you and I. They don't have super big hardware. And so we cannot afford having to tune billions and hundreds of billions of parameters.
- u144 To je prvo. Drugo je, da model že imate. Ima vse znanje, ima vse. Ponovno prilagajanje vsega preprosto ni tako učinkovito, glede na to, da ste že skoraj na cilju. Če pomislite,So that's one. The second thing is here, your model is already there. It has all the knowledge. It has everything. It just is not as efficient to have to retune everything, considering that you're almost there. So it's also, just when you think about it,
- u145 ne potrebujete vseh teh prostostnih stopenj, da pridete do želenega rezultata. Vprašanje je, ali se modeli različnih podjetij po tej stopnji razlikujejo. Odgovor je, da je odvisno od izbrane arhitekture in vrste mešanice podatkov,you don't need all these degrees of freedom to get where you want to be. So the question is, are the models across different companies different after this stage? So the answer is, it depends on the architecture that you chose. It depends on the kind of data mixture
- u146 na kateri jih učijo. To se med modeli precej razlikuje. Torej ja, lahko se razlikujejo, običajno na način, ki ga določata ta dejavnika. Toda podatki so zelo pomembni. Super.that they're training this on. And it varies quite a lot from model to model. So yeah, they can be different in some way that is determined by these two factors, typically. So yeah, but the data matters a lot. Cool.
- u147 Zdaj želim utemeljiti potrebo — o, ja? Vprašanje je, kako pogosto posodabljate parametre modela. Odvisno od primera uporabe. Če želite, da model opravlja zelo določeno nalogo, in so vam pomembni, denimo, stroški,Now I want to just motivate the need-- oh, yes? So the question is, how often do you update the parameters of your model? Well it depends which use case you have. So I would say if you're in a use case where you want your model to do a very specific task and you care, let's say, about costs,
- u148 ne želite velikega poziva, ki mu vedno znova naroča, kako naj se vede. Morda želite s tem postopkom dodatnega učenja enkrat prilagoditi uteži in model nato velikokrat uporabiti. To je en primer, vendar je zelo odvisno od vaše uporabe,you don't want to have a big prompt that always tells your model to behave in a certain way. Maybe you want to tweak the weights of your model once with this fine-tuning process, and then re-use that model many times. That is one example, but it highly depends on your use case,
- u149 bi rekel. Super. Doslej smo videli, kako doseči,I would say. Cool. OK, so far, we've seen how to have
- u150 Prilagajanje preferencamPreference tuning
- u151 da naš model pridobi več znanja o besedilu in programski kodi. Naučili smo se usmerjati njegovo vedenje k nečemu, kar želimo, na primer odgovarjanju na vprašanja. V tem razdelku bomo videli, kako model uskladiti s podatki o človeških preferencah.our model learn more about knowledge, about text, about code. We learned about how to steer the behavior of our model towards something that we want-- for instance, answering questions. In this section, we will see how we can actually have our model align with human preference data.
- u152 Ta razdelek želim posebej utemeljiti z naslednjim primerom. Predpostavimo, da imamo predhodno in dodatno naučen model. Zna odgovarjati na vprašanja ali navodila. Predpostavimo torej: »Predlagaj novo dejavnost, ki bi jo lahkoAnd in particular, I want to motivate this section with the following example. So let's assume we have our LLM, which we have pretrained and fine-tuned. So it knows how to respond to questions or to instructions. So let's suppose we have "Suggest a new activity I could
- u153 počel s svojim plišastim medvedkom.« Model reče: »Predlagam, da s plišastim medvedkom pravzaprav ne preživljaš časa.« To je odgovor, morda pa ni tak, kot ste ga želeli. Modelu želite povedati, da takšnega izhoda ne želite.do with my teddy bear." And our LLM says, well, "I'd suggest you actually do not spend time with the teddy bear." Well, it's an answer, but it's maybe not the answer that you wanted to output. What you want is to tell your model that this is not the kind of output that you want.
- u154 Doslej smo modelu govorili le, kaj naj počne. Nismo mu povedali, česa naj ne počne, saj smo doslej govorili le: napovedovanje naslednjega žetona, ob tem vhodu želim to. In kot ste prej odlično pripomnili,So, so far, we've only told our model what to do. We have not told it what to not do, because, so far, we've been only saying, OK, next token prediction. Given this input, I want this. And to your point, you had a great point earlier,
- u155 teh podatkov ni ustvaril model. Pravzaprav so modelirani. Te podatke mu vsiljujemo. To želimo tu rešiti. Prvi korak pri tem je zbiranje podatkov o preferencah v parih.which is that this data is not something that the model has produced. It is actually modeled. We are forcing that data in. And so this is what we want to resolve here. So in order to resolve that, what we do, the first stage is to collect preference-paired data.
48:13 · Preference tuning: collecting preference pairs to train LLMs · A Stanford ICME lecture slide on preference tuning. The faded top half shows the problem: an SFT model answers a request for a teddy bear activity with a bad reply. The bottom states the idea of collecting preference pairs and training on them, with a good reply marked by a green check and a bad reply marked by a red X. A small video inset shows a presenter standing near a blackboard. - u156 Za dani poziv bi zbrali negativen primer, tu torej nepreživljanje časa s plišastim medvedkom, in pozitiven primer, morda nekaj želenega o tem, da so odlični spremljevalci pri spanju in podobno. Imeli bi torej pozive s pozitivnimi in negativnimi primeri.So here for a given prompts, we would collect the negative piece, which is here, not spending time with your teddy bear, and then a positive example, which is maybe something that you want about them being great companions for sleep and so on. So you would have prompts with positive/negative example.
- u157 Razlog za obravnavo v parih je preprosto lažje zbiranje takšnih podatkov. Človeku je precej lažje ugotoviti, da je nekaj boljše od nečesa drugega, kot pa trditi, da je nekajAnd the reason why you would frame that as a pairwise problem is just because it is easier to collect such data. So as a human, it is much simpler for you to figure out that something is better than something else, as opposed to stating that something
- u158 dobro na absolutni lestvici. Pri SFT sem omenil tudi, da je model običajno precej občutljiv na porazdelitev pozivov. Tu pa bomo videli prednost, da na ta vidik ni tako občutljiv.is good in absolute scale. Also, for SFT, I mentioned that the distribution of prompts is typically something that causes the model to be quite sensitive. So here the great thing we will see is that the model is not as sensitive to that aspect.
- u159 Model želimo usmeriti, da se ne bi vedel neustrezno. Na primer odgovor »Pravzaprav ne predlagam, da počneš karkoli« je lahko nekaj, kar bi model odgovoril tudi ob pravilno izvedenem SFT.And we want to steer the model to not misbehave in some way. So here, for instance, the fact of responding as, I actually do not suggest you do anything, it's maybe something that the model would respond, and you did your SFT correctly.
- u160 Včasih pa vam neustrezno vedenje pove nekaj o morebitnem nenamernem dogajanju med SFT. Morda ste mu podali podatke, ki jih niste nameravali. Obravnava neustreznega vedenja je tudi stopnja,But sometimes, the model misbehaving actually tells you something about maybe something that happened in the SFT stage that was not intended. So maybe you fed it data that actually you were not intending to do so. The misbehaving parts is also a stage
- u161 na kateri je primerno pregledati podatke SFT in preveriti, ali ste model učili na nameravanih podatkih z želeno kakovostjo. Kako torej zberemo podatke o preferencah? Lahko uporabimo sistem posamičnega ocenjevanja —where, looking at your SFT data and just making sure that you have trained your model on data that you intended, with the quality that you intended, it's a good time to do that there. So how do you collect preference data? So you can either have a pointwise scoring system--
- u162 imate poziv in več odgovorov. Ta je dober, ta ni dober na absolutni lestvici. Toda rekli smo, da je ljudem takšno absolutno presojanje težko. Lahko imamo podatke o preferencah v parih, kot smo pravkar omenili,so you have a prompt and then you have several answers. This one is good. This one is not good on an absolute scale. But we said that this is kind of hard to do as humans, to have an absolute judgment. You can have this pairwise preference data, which is exactly what we just mentioned,
- u163 kjer imamo dva odgovora in povemo, kateri je boljši. To je parni pristop. Pri seznamnem pristopu pa imate poziv in seznam možnih odgovorov, ki jih razvrstite od najbolj do najmanj zaželenega.where we have two responses, and then we say which one is better than the other. So this is the pairwise setting. And then the listwise setting is you have a prompt and then you have a list of possible answers. And you just rank those from, let's say, most preferred to least preferred way.
- u164 Zaradi preprostosti ljudje pri določanju preferenc, ki jih želijo vnesti, večinoma zbirajo podatke v parih. Naslednje vprašanje je, kako pri neznanih podatkih zunaj te množiceFor simplicity purposes, most of the time, people collect pairwise data when it comes to quantifying what kind of preference you want to inject. So the next question is, how can you know, for data that you don't know outside,
- u165 veste, ali je dani odgovor dober ali slab. Kako lahko to posplošite? To je motivacija za prvi korak, o katerem bomo govorili, imenovan modeliranje nagrade.how can you know that a given response is good or bad? How can you generalize that? And this is what is motivating the first step that we're going to talk about, which is called reward modeling.
- u166 Zgraditi želimo model, ki nam lahko pove, ali je odgovor na dani poziv dober. Če imamo tak model, je zamisel druge stopnje uskladiti naš model z dobrim vedenjem, karSo here what we want to do is to build a model that can tell us whether a response to a given prompt is good or not. If we have such a model, then the idea in the second stage is to align our model to align with good behavior, which
- u167 ovrednotimo tako, da model nagrade nekaterim odgovorom dodeli visoke ocene, izogibamo pa se izhodom z nižjimi ocenami. Tu nastopi RLHF.is quantified by our reward model actually outputting good scores for some answers and avoiding outputs that are associated with lower scores. And this is where RLHF comes into the picture.
- u168 Kdo je že slišal za RLHF? Ja, veliko vas. RLHF pomeni spodbujevalno učenje s človeškimi povratnimi informacijami. Gre za metodo usklajevanja modela s človeškimi preferencami. Zakaj se tako imenuje?So who has heard of RLHF? Yeah, a lot of you. So RLHF stands for Reinforcement Learning from Human Feedback. And it is a method to align your model with human preferences. So why is it called RLHF?
- u169 Ker na prvi stopnji, ko se želite naučiti razlikovati dobro od slabega, model nagrade učite na podatkih o človeških preferencah. Tu torej modeliramo človeške preference. Druga stopnja pa je uporaba modela, kiBecause in the first stage, where you want to learn how to distinguish good from bad, you are training your reward model on human preference data. So this is where the human preference gets modeled. And the second stage is to use the model that
- u170 je bil naučen na človeških preferencah, da naš model uskladimo z boljšim vedenjem. To je zamisel. Povedal bi še, da so RLHF in na splošno metode na osnovi spodbujevalnega učenjawas trained on human preferences in order to align your model to behave better. So that's the idea. So one thing that I will say is that RLHF, and just, in general, reinforcement learning-based methods,
53:27 · Disclaimer slide: RL math deferred to Lecture 4 · A Stanford ICME lecture slide titled "Disclaimer" warns that reinforcement learning-based methods are technical and mathematically involved. A pink callout says the mathematical derivations for RL-based methods will come in Lecture 4. A small inset in the top right shows a person standing near a blackboard in the lecture room. - u171 precej tehnične, zato se bomo danes osredotočili predvsem na intuitivno razumevanje. Vso matematiko puščamo za naslednje predavanje. Upam torej, da boste nanj prišli pripravljeni.they are quite technical, which is the reason why, today, we'll focus first and foremost on the intuition. And we're keeping all the mathematical part for next lecture. So I hope next lecture you'll come prepared.
- u172 Ukvarjali se bomo z matematiko. Na tem predavanju pa se bomo bolj osredotočili na intuicijo. Ločujemo ju zato, ker je zadeva precej tehnična in je treba paziti na nekatere podrobnosti. Zdaj pa pojdimo skozi omenjena koraka,We'll do some math. But this lecture, we will focus more on the intuition. And the reason why we're distinguishing the two is because it's actually quite technical, and there are some details to take care of. With that being said, let's now go through the two steps
- u173 torej modeliranje nagrade in spodbujevalno učenje. Pri modeliranju nagrade se želimo naučiti razlikovati dobre odgovore od slabih. Ob danem pozivu in odgovoruthat we mentioned-- so reward modeling and reinforcement learning. So reward modeling, our goal is to learn how to distinguish good answers from bad answers. And here, given a prompt and given some answer,
- u174 želimo, da model reče: da, to je dober odgovor na ta poziv, ali: ne, to ni dober odgovor. To je naš cilj.we want our model to say, yes, it's a good answer to that prompt, or, no, it's not a good answer. So that is our goal.
- u175 Bradley-Terryjeva formulacijaBradley-Terry formulation
- u176 Za to običajno uporabljamo precej specifično formulacijo, imenovano Bradley-Terryjeva formulacija. Ta na zelo določen način modelira verjetnost, da je nekaj bolj zaželeno kot nekajAnd in order to do that, people typically use a formulation that is quite specific. It's called the Bradley-Terry formulation. And it is a formulation that models the probability of something being preferred over something
54:44 · Reward modeling with the Bradley-Terry formulation · A Stanford lecture slide titled "Step 1: Reward modeling" defines the Bradley-Terry probability that output y_i is better than y_j. It equals e^{r_i} / (e^{r_i} + e^{r_j}), which is the sigmoid of the reward difference r_i − r_j. A small plot of the sigmoid curve rises from 0 to 1 and crosses 0.5 at x = 0. A small video inset at top right shows a presenter standing in a lecture room. - u177 drugega. Tu je verjetnost, da ima, denimo, yi prednost pred yj, enaka sigmoidi ri minus rj. Pravimo le, da yi označuje neka nagrada ri,else in a very specific manner. So here it's probability of, let's say, yi being preferred over yj, which is equal to the sigmoid of ri minus rj. So we're just saying that yi, there is some reward ri that
- u178 yj pa neka nagrada rj. Pravimo, da je verjetnost, da ima yi prednost pred yj, enaka sigmoidi razlike med nagradama. To trdimo.characterizes it, yj there is some reward rj that characterizes it. What we're saying is the probability of yi being preferred over yj is the sigmoid of the difference between the two rewards. That is what we're saying.
- u179 Za osvežitev: ne vem, ali vsi poznate sigmoidno funkcijo. Enaka je 1 deljeno z 1 plus eksponentna funkcija od minus x. Ima obliko, prikazano na prosojnici. Ko gre x proti minus neskončno, je 0, proti plus neskončno pa 1.So here, as a reminder-- so I'm not sure if you're all familiar with the sigmoid function. The sigmoid function is equal to 1 over 1 plus exponential of minus x. So it has the shape and the slides. So when it tends to minus infinity, it's 0, and over plus infinity, it is 1.
- u180 Model nagrade bomo učili tako, da bomo izkoristili zbrane podatke o preferencah v parih. Če se spomnite, smo omenili, da je parni pristop najlažji način zbiranja podatkov o preferencah.And the way we're going to train our reward model is we're going to leverage the pairwise preference data that we have collected. So if you remember, we had mentioned that in order to collect preference data, pairwise was the easiest way to do that.
- u181 Za vsak poziv imamo torej zmagovalni in poraženi odgovor. Predpostavimo, da imamo poziv x. Nato imamo odgovor yw, zmagovalni odgovor, in poraženi odgovor yl.So we have for each prompt a winning response and a losing response. So let's assume we have a prompt x. And then we have a response yw, winning response, and a losing response yl.
- u182 Naš cilj je model nagrade naučiti, da zmagovalnemu pripada višja, poraženemu pa nižja nagrada. Model nagrade učimo s parno izgubo. Za dani poziv bi torej vnesli yw in yl.And our goal is to train our reward model in order to say, well, the winning is indeed the high reward and the losing is a lower reward. So the way we train our reward model is by using a pairwise loss. So for a given prompt, we would put yw and yl.
- u183 Z modelom bi izračunali nagrado. Nato bi s to parno izgubo posodobili uteži modela. Parna izguba je morda videti nekoliko strašljiva, zato bom pojasnil njen smisel.We would compute the reward through our model. And then we would update the weights of the model by using this pairwise loss. So this pairwise loss may be a little bit scary. So I'm going to just motivate that.
- u184 Če se spomnite, smo pri navzkrižni entropiji intuitivno želeli določiti parametre theta, ki maksimirajo verjetnost, da model vidi učno množico. Tu pa je dogodek, ki ga želimo modelirati, yw —So if you remember for cross-entropy, what we said was, intuitively, you want to learn parameters theta that maximize the probability of your model seeing the training set. And so here the event that you want to model is yw--
- u185 torej to, da ima zmagovalni odgovor prednost pred poraženim. Želite torej maksimirati verjetnost, da vaš model reče, da ima, denimo, zmagovalni odgovor prednost pred poraženim, približnoso winning response being preferred over a losing response. So here what you want to maximizes the probability that your model says that, let's say, winning response is preferred over a losing response, roughly
58:04 · Person at blackboard about to write, Stanford lecture · A still from a lecture video shows a person seen from behind, wearing a pink t-shirt, glasses and a wristwatch. They hold chalk up to a large, blank dark-gray blackboard as if about to start writing. A faint "Stanford" watermark is in the lower right. - u186 rečeno. Če se spomnite, tisti del, Bradley-Terryjeva formulacija, kaj nam pove? Enak je sigma od r theta, kar je vaš model nagrajevanja, od — torej vašega pozivaspeaking. So if you remember, so that piece the Bradley-Terry formulation, what does it tell us? It is equal to sigma of r theta, which is your reward model, of-- so your prompts
- u187 in zmagovalnega odgovora minus model nagrajevanja vašega poziva in poraženega odgovora. To nam pove Bradley-Terryjeva formulacija. To želite maksimirati po vseh svojih parih. Toda kot smo rekli, radi uporabljate logaritem,and the winning answer minus the reward model of your prompt and the losing answer. So this is what the Bradley-Terry formulation tells us. So you want to maximize this across all your pairs. But as we said, you like logarithm
- u188 ker je monoton. Te količine so lahko zelo majhne in lahko povzročijo nestabilnost. Zato vzamete logaritem. Pri strojnem učenju pa pravzaprav raje stvari minimizirate kot maksimirate. Tu torej želite maksimirati to, maksimirati logaritem tega, kar je isto kot minimiziratibecause it is monotonic. And these quantities can be very small and can lead to instability. So you take the log. And actually, in the machine learning, you like to minimize things as opposed to maximizing things. So here you want to maximize this, maximizing the log of this, which is the same as minimizing
- u189 minus logaritem tega. In če pogledate prosojnico, je zapisano natanko to. Minimizirati želite minus logaritem sigme nagrade zmagovalnega odgovora minus nagrade poraženega odgovora. To je zgolj posledica Bradley-Terryjeve formulacije.minus the log of this. And if you look at the slide, it's exactly what is written. So you want to minimize minus log of sigma of reward of winning minus reward of losing. That is just a result of the Bradley-Terry formulation.
- u190 Predpostavimo, da to naredite. Da bi torej — ja? Ja, vprašanje je, kaj je e? Da, to je pričakovana vrednost po vseh vaših podatkih. Lahko si jo predstavljate kot vsoto ali povprečje, če želite. Vprašanje je torej, kakšna je arhitektura vašega modela nagrajevanja. No, ljudje so nagrade modelirali na več načinov.So let's assume you do that. So in order to-- yeah? Yeah, the question is, what is e? Yes, it's the expectation over your whole data. So you can think of it as a sum or an average if you want. So the question is, what is the architecture of your reward model? Well, there's been several ways people have been modeling rewards.
- u191 En način je, da izkoristite ogrodje svojega LLM-ja. Toda vaš LLM je naučen napovedovanja naslednjega žetona. Če torej vnesete neke vhode, lahko vzamete vektorsko predstavitev, ki ustrezaOne way is to leverage the backbone of your LLM. But your LLM is trained in a next-token-prediction fashion. So what you can do is if you put some inputs, you can take the embedding representation corresponding
- u192 zadnjemu vnesenemu žetonu, in jo projicirate v neki prostor. To lahko naredite. Drugi način je uporaba modela samo s kodirnikom. Vnesete vse, uporabite samopozornost in samo projicirate podatke. Pri prvi metodi je dobro to, da lahko izkoristite ogrodje, ki ga že imate. Torej ja, lahko uporabite kateri koli način.to the last token that was input and project that onto some space. You can do that. Another way you can do that is you can use an encoder-only model. So you put everything, self-attention, and just project on the data. So the first method, the good thing is that you can leverage the backbone that you already have. So yeah, you can do either way.
- u193 Običajno lahko uporabite enega od teh dveh. V redu, super. Oznaka je tu človeška preferenca, ker jo potrebujete, da lahko temu rečete RLHF. In pravkar sem ugotovil, ja,But typically, you can do one of these two. OK, cool. So the label here is human preference because you need that in order to say it's RLHF. And actually, I just realized, yeah,
1:01:00 · Step 1: Reward modeling data for RLHF · A Stanford lecture slide titled "Step 1: Reward modeling" describing the data used: on the order of 10,000 observations, labeled by human ratings. The slide notes that human rating is the source of the "HF" in RLHF. A small inset video in the top right shows a person standing near a blackboard. - u194 to je bila natanko moja naslednja prosojnica. Vrsta modela bi bila torej bodisi ogrodje LLM-ja s klasifikacijsko glavo na zadnjem žetonu, ki ga želite izkoristiti, bodisi model samo s kodirnikom. Super, v redu, v tej prvi fazi stethis was exactly my next slide. So the kind of model would either be a backbone of LLM with the classification head on the last token that you want to leverage or an encoder-only model. Cool, OK, so that first stage, you
- u195 prešli od tega, da imate zgolj preferenčne pare in se želite le naučiti ločevati dobre odgovore od slabih, do tega, da dejansko imate model, ki vam za dani poziv in dani odgovor pove, ali je to res dober ali slab odgovor.went from just having preference pairs and just wanting to learn good responses from bad responses to actually having a model that tells you, for a given prompt and a given response, whether that is actually a good response or a bad response.
- u196 Spodbujevalno učenje s človeškimi povratnimi informacijami (RLHF)Reinforcement Learning from Human Feedback (RLHF)
- u197 Zdaj je druga faza, ki je matematično zahtevnejša, faza spodbujevalnega učenja. Namen te faze je spremeniti uteži vašega modela, da se uskladi z nagradami, ki jih določaSo now the second stage, which is the more mathematically involved stage, is the reinforcement learning stage. And here the purpose of that stage is to change the weights of your model so that it aligns with the rewards that are mentioned
- u198 ta model nagrajevanja. Kako bi to naredili? Imeli bi poziv in svoj model prosili, naj ustvari odgovor. Tu želite vedeti, ali je to vrsta vedenja, ki jo želite spodbujati ali zavirati.by that reward model. So how would you do that? So here, you would have a prompt and ask your model to generate a response. And here, you want to know if this is the kind of behavior you want to promote or demote.
- u199 Svoje vhodne pozive in odgovor bi vnesli v model nagrajevanja — predpostavimo, da reče: ne, to je slab odgovor — in s to presojo posodobili uteži svojega LLM-ja. Tu je torej vpletene veliko matematike.So here what you would do is you would input your input prompts and the response into your reward model-- let's suppose it says, no, it's a bad response-- and use that judgment to update the weights of your LLM. So there's a lot of math involved.
- u200 Toda na kratko: model nagrajevanja je nekaj, kar ste naučili v 1. fazi in je zdaj zamrznjeno. Uteži, ki jih spreminjate, so uteži vašega LLM-ja, torej LLM-ja, katerega vedenje želite uskladiti. To naredite z namensko funkcijo, kiBut long story short, the reward model is something that you have trained in stage 1 that is now frozen. The weights that you're changing are the weights of your LLM, which is the LLM that you want to align the behavior for. And the way you do that is by using an objective function that
- u201 je običajno sestavljena iz dveh delov. Prvi del poskuša maksimirati nagrade, hkrati pa ne preveč odstopati od referenčnega modela, ker je, podobno kot pri moji prejšnji pripombi o LoRA glede na prednaučeni model,is typically composed of two parts. The first part is trying to maximize the rewards, but also to not deviate too much from the reference model, because, similar to my earlier comment with LoRA, with respect to the pretrained model,
- u202 vaš model tu že dovolj dober. Zna odgovarjati na vprašanja. Veliko stvari ve. Uteži ne želite preveč spreminjati. Poleg tega vaš model nagrajevanja ni popoln. Včasih bo rekel: o, to je slabo, čeprav je dobro. Zato ne želite, da se vaš model preveč oddalji od referenčnegayour model here is already good enough. It knows how to respond to questions. It knows a bunch of things. You don't want to change your weights too much. And the thing is, your reward model is not perfect. Sometimes it will say, oh, it's bad, whereas it's good. So you don't want your model to go too far from your reference
- u203 modela. Običajno imate zato dodaten člen, ki kaznuje preveliko razliko glede na referenco. Tu je število opazovanj običajno za več velikostnih redov večje kot pri modelu nagrajevanja. Svoj model bi inicializirali z modelom SFT,model. So you typically have an additional term that penalizes too big of a difference with respect to the reference. So here, typically, the number of observations is orders of magnitude higher than the reward model. And you would initialize your model at the SFT model
- u204 ki ste ga dobili prej. Imeli bi namensko funkcijo, ki je natanko to, kar sem omenil: kompromis med dvema deloma, maksimiranjem nagrad in hkrati ne prevelikim odstopanjem od osnovnega modela. Tu pa želim omeniti še en ključen izraz.that you obtained previously. And you would have an objective function, which is exactly what I mentioned, a trade-off between two pieces, which are maximizing the rewards, but also not deviating too much from the base model. And there's actually a key term that I want to mention here.
- u205 Ljudje včasih rečejo izigravanje nagrajevanja. To je dejstvo oziroma pojav, ko vaš model poskuša ugoditi modelu nagrajevanja tako, da gre v smer, ki je modelu nagrajevanja všeč, ne da bi bilo to nujno dobro, če preprostoPeople sometimes say reward hacking. So reward hacking is the fact or the phenomenon of your model trying to please the reward model by going into the direction that the reward model likes without this being necessarily a good thing, if you just
- u206 s svojega vidika odmislite model nagrajevanja, pač zato, ker model nagrajevanja ni popoln. Ja? Odlično vprašanje. Vaše vprašanje je torej, kako posodabljamo uteži modela. Za to se bomo morali poglobiti v podrobnosti.forget about your reward model from your perspective, just because the reward model is not perfect. Yeah? It's a great question. So your question is, how do we update the weights of the model? And we'll need to go into details for that.
- u207 Zato prihranite vprašanje za naslednji teden. Takrat bomo to podrobno obravnavali. Želim pa, da si tu zapomnite eno stvar: v tej fazi je model nagrajevanja nespremenljiv. Njegovih uteži ne posodabljamo. Posodabljamo samo uteži LLM-ja. Naslednji teden bomo videli, kako natanko to naredimo.So save your question for next week. We'll go into that in detail. But the one thing I want you to remember here is in this stage, the reward model is fixed. We're not updating its weights. We're only updating the weights of the LLM. And we will see next week exactly how we do that.
- u208 Super.Cool.
- u209 Neposredna optimizacija preferenc preferenc (DPO)Direct Preference Preference Optimization (DPO)
- u210 Pravkar smo si ogledali RLHF. Naučiti morate model nagrajevanja in nato na svojem LLM-ju izvajati spodbujevalno učenje, da posodobite njegove uteži in vedenje uskladite s tem, kar želite. Težava je, da je spodbujevalno učenje zapleteno. Potrebujete model nagrajevanja.So we just saw RLHF. You need to train a reward model and then do RL on your LLM in order to update its weights in order to align the behavior with what you want. The problem is, RL is complicated. You need a reward model.
1:05:38 · Direct Preference Optimization (DPO) loss function slide · A Stanford lecture slide titled "Supervised approach with DPO" defines DPO as Direct Preference Optimization and shows its loss function, which rewrites preference learning as a supervised objective. It says DPO needs no separate reward model and works directly on preference data. A small inset in the top right shows a lecturer standing at a board. - u211 Veliko pozornosti je treba nameniti izbiri hiperparametrov in tako naprej, zato so ljudje ta problem poskušali formulirati na nadzorovan način. To je zamisel za DPO, kar pomeni neposredna optimizacija preferenc.A lot of attention is needed to select the hyperparameters and so on, which is why people have tried to formulate this problem in a supervised manner, which is the idea behind DPO, which stands for Direct Preference Optimization.
- u212 Tu se ne bomo poglabljali v matematiko, želim vam le povedati, da je izpeljana funkcija izgube pravzaprav zelo podobna funkciji izgube, ki smo jo dobili za model nagrajevanja. Če predpostavite, da je r enak neki količiniSo we will not go into the math here, but I just want to tell you that the loss function that is derived is something that is actually very similar to the loss function that we obtained for the reward model. If you assume that r is equal to some quantity
- u213 krat logaritem razmerja med verjetnostjo modela, ki ga poskušate prilagoditi, in referenčnega modela, in če to pogledate, boste videli tudi, da ta funkcija izgube vaš model spodbuja k povečanju verjetnosti ustvarjanja zmagovalnega odgovoratimes the logarithm of the probability from the model that you're trying to tweak over the reference model, and if you see that, you will also see that this loss function incentivizes your model to increase the probability of generating the winning answer
- u214 v primerjavi z referenco. Model spodbuja tudi k zmanjšanju verjetnosti ustvarjanja poraženega odgovora v primerjavi z referenco. To bom šel zelo hitro skozi. Tu torej pravimo nekaj,compared to the reference. And it incentivizes your model to decrease the probability of generating a losing answer compared to the reference. So I'll go through that super quickly. So here what we're saying is something,
- u215 recimo minus pričakovana vrednost, recimo logaritma vaših sigmoid, potem pa imate ta ogromen izraz, na primer minus rl — vaša izguba je torej taka, da želite, da je rw minus rllet's say, minus expectation of, let's say, log of your sigmoids, and then you have this huge thing, like minus rl-- so your loss is such that you want rw minus rl
1:07:25 · DPO loss formula overlaid on lecture video frame · A lecture still shows a person in a pink t-shirt and glasses, seen from behind, writing on a green-gray chalkboard. The Direct Preference Optimization (DPO) loss is overlaid along the bottom. Two terms inside the sigmoid are boxed in red: the scaled log-ratio of the policy to the reference model for the preferred response y_w, and the same for the dispreferred response y_l. - u216 čim večji. Kaj to pomeni? Če rečete, da je r enak neki količini krat logaritem verjetnosti modela, ki ga prilagajate, da, recimo, ustvari odgovor, deljene z verjetnostjoto be as big as possible. So what does that mean? So if you say r is equal to some quantity times log of probability from the model that you're tweaking to, let's say, generate an answer over probability
- u217 vašega referenčnega modela, da ustvari odgovor — to pomeni, da bo poskušal rw narediti čim večji, da bi bila razlika velika, kar poskuša doseči vaša izguba. Kako lahko to naredim?of your reference model to generate an answer-- so what this is saying is in order for the difference to be big, which is what your loss is trying to do, it will try to make rw as big as possible. So how can I do that?
- u218 Tako, da je verjetnost modela, ki ga poskušamo prilagoditi, za ta izhod ob danih vhodih višja od verjetnosti vašega referenčnega modela. To pomeni, da poskušamo povečati verjetnost ustvarjanja zmagovalnega odgovora.It is by having the probability of the model we're trying to tweak be higher than the probability of your reference model for that output given the inputs. So this means that we're trying to increase the probability of the winning answer being generated.
- u219 Želite pa zmanjšati rl. Kako zmanjšate rl? Dejansko zmanjšate verjetnost, da vaš model ob danem vhodu ustvari ta poraženi odgovor. Ja? Vprašanje je torej, kaj je pi?And what you want to do is to decrease rl. How do you decrease rl? You actually decrease the probability of your model generating that losing answer given your input. Yes? So the question is, what is pi?
- u220 Tu je pi — naslednji teden bomo videli, da bomo temu modelu LLM rekli politika. Ko govorite o politiki, njeno napovedano verjetnost običajno označujete s pi. Torej ja, ta zapis je specifičen za spodbujevalno učenje. In ja — glede vaše pripombe, da.So here pi is-- we will see next week that this model LLM, we will call it a policy. And when you talk about policy, you typically talk about its predicted probability in terms of pi. So yeah, so this notation is rl-specific. And yeah-- to your point, yes.
- u221 V redu, odlično. Želim le povedati, da je ta formula lahko strašljiva. Toda če imate v mislih Bradley-Terryjevo formulacijo ter levi in desni člen razlagate kot funkcijo razmerja med modelom, ki ga poskušate prilagoditi, in referenčnim modelom,OK, great. I just want to say that this formula can be scary. But if you take the Bradley-Terry formulation in mind and interpret the left and right term as a function of the ratio between the model that you're trying to tweak over the reference model,
- u222 če o tem razmišljate tako, je to, upam, nekoliko bolj smiselno. Ja? Vprašanje je torej, ali je referenčni model nadzorovano dodatno učeni model? Da, to je model, iz katerega izhajate, ko izvajate to učenje, ja.if you think about that this way, then, hopefully, it makes a bit more sense. Yeah? So yeah, the question is, is the reference model the supervised fine-tuned model? Yes, it is the model that you start from when you perform that training, yeah.
1:10:13 · RLHF versus DPO: ease of implementation and performance · A Stanford lecture slide compares RLHF and DPO for aligning language models. RLHF needs multi-stage training and several extra models, while DPO is supervised learning that needs only the base model. On performance, the slide says there is no consensus: results vary by task and are sensitive to implementation. - u223 V redu, super. Gremo naprej. Srečevali in slišali boste izraza RLHF in DPO. Želim vam povedati nekaj o razlikah. RLHF, kot smo omenili, sestavljata dve fazi. Prva je modeliranje nagrajevanja.OK, cool. Moving on, so you will see and hear RLHF and DPO out there. I just want to tell you a little bit about the differences. So RLHF, as we mentioned, is composed of two stages. The first stage is reward modeling.
- u224 Druga faza je spodbujevalno učenje. Torej je treba naučiti modele, kar je lahko računsko zahtevno, medtem ko je DPO način za to z nadzorovanim učenjem. Toda pri DPO je ena stvar: neThe second stage is reinforcement learning. So there is models to train, and it can be compute-heavy, whereas DPO is a supervised learning way to do that. But one thing with DPO is it is not
- u225 kaznuje izgube na podlagi izhodov, ki jih ustvarja model. Dejansko temelji na fiksnih izhodih. Glede vaše pripombe je torej ta težava tu še vedno prisotna. Čez nekaj prosojnic bomo videli, da je RLHF metoda na podlagi trenutne politike, ker dejansko izkorišča dejanske izhodepenalizing the loss based on outputs that the model is producing. It is actually on fixed outputs. So to your point, this problem is still present here. And we will see that in a few slides, that RLHF is an on-policy method, because it is actually leveraging the actual outputs
- u226 LLM-ja, v nasprotju z metodami zunaj trenutne politike, ki model dejansko učijo na podlagi fiksnih izhodov, ki jih ni nujno ustvaril model. S tem se vrnimo k našemu primeru.from the LLM, which contrasts with off-policy methods, which are actually training the model based on fixed outputs that are not necessarily generated by the model. So with that, going back to our example,
- u227 Predpostavimo, da imamo iste vhode. Zdaj je model prednaučen. Dodatno je naučen s sledenjem navodilom. In prilagojen je tudi preferencam. Zdaj bomo dobili odgovor, ki je morda prijaznejšega tona. Torej tu: »Ali lahko svojega medvedka dam v pralni stroj?« Namesto »Ne« bomo dobili nekaj, kar je mordanow let's assume we have the same inputs. Now it's pretrained. It's instruction fine-tuned. And it's also preference-tuned. Now we will have a response that is maybe more friendly in tone. So here, "Can I put my teddy bear in the washer?" Instead of saying, "No," we will have something that is maybe
- u228 prijaznejše. Ne: »Bolje, da ne. Tvoj medvedek bi se lahko poškodoval! Nežno ročno pranje je varnejše.« To metodo lahko torej uporabite, recimo, za spremembo tona.more friendly. No, "It's better not to. Your teddy could get hurt! A gentle hand wash is safer." So you can use this method to, let's say, change the tone as an example.
- u229 SklepanjeReasoning
- u230 Zdaj vam želim govoriti o temi, ki je v zadnjih dveh letih pridobila pomen. To je sklepanje, ki ga bom tu zelo preprosto opredelil kot sposobnost reševanja problema.So now I want to talk to you about a topic that has increased in importance in the past two years. And this is the topic of reasoning, which I will define here in a very simple way as the ability to solve a problem.
- u231 Za primerjavo pozivov, ki ne zahtevajo sklepanja, s tistimi, ki ga zahtevajo: če tu zastavite vprašanje, ki temelji na znanju, »Kakšna je oznaka Stanfordovega predmeta Transformers & LLMs?«, je to nekaj, kar veste ali ne veste. To se razlikuje od, recimo, matematičnega vprašanja.So just to contrast prompts that are nonreasoning versus reasoning-- so here, if you ask a knowledge-based question, what is the course code for Stanford's Transformers & LLMs class?" Well, it's something that you know or you don't know. It is different from, let's say, a math question.
- u232 Predpostavimo, da vprašate: v redu, vaš medvedek se je rodil leta 2020. Koliko je star zdaj? Da dobite odgovor, morate malo razmisliti, katero leto je in kakšna je razlika v letih. Ta desni primer je torej vrsta pozivov, pri katerih poskušamo izboljšatiLet's assume you ask, OK, so your bear was born in 2020. How old is the bear now? You need to think a little bit about what year we're in and what is the difference in year in order to get the answer. So this right example is the kind of prompts that we're trying to improve the model
- u233 uspešnost modela. Če se spomnite, smo ob koncu predavanja prejšnji teden videli tehniko pozivanja, imenovano veriga misli, ki je poskušala iz modela izvabiti to vedenje tako, da ga je spodbujala, naj razkrije svojo verigo sklepanjaperformance on. And if you remember, at the end of last week's lecture, we saw a prompt technique called Chain of Thought that tried to elicit this behavior from the model by incentivizing it to reveal its reasoning chain
- u234 z nekaj primeri. Videli smo torej, da če LLM-ju povemo, recimo pri tem primeru, koliko je star medvedek: da prideš do odgovora, želim, da izpišeš to verigo. Potem se LLM lahko nauči pred odgovorom izpisati verigo sklepanja.through a few-shot examples. So here we saw that if we told the LLM, well, let's say, on this example, how old is the bear, so in order to get to the answer, I want you to output this chain. Then the LLM can learn to output a reasoning chain before the answer.
- u235 Težava te metode je, da LLM-ju tega ne želimo vedno naročati. Želimo, da to počne sam. In prav to si bomo ogledali tu. Leta 2024, septembra 2024, je bilo podjetje OpenAI, mislim, prvo, ki je poročalo o izboljšani uspešnostiThe problem with that method is we don't want to always tell the LLM to do that. We want the LLM to do that by itself. And this is exactly what we will see here. So in 2024, in September of 2024, OpenAI, I believe, was the first company to tell about improved performance
- u236 pri matematičnih in programerskih nalogah z uporabo te tehnike. Kmalu zatem so skoraj vsi drugi vodilni laboratoriji prav tako imeli modele, ki so uporabljali isto strategijo. Videli bomo, kaj natanko ta strategija je.on math and coding tasks using this technique. And shortly after that, almost all other frontier labs also had models that used the same strategy. And we will see exactly what that strategy is.
- u237 Zlasti DeepSeek-R1 je bil januarja 2025 prvi model z odprtimi utežmi, ki je dejansko pojasnil, kako to deluje. Ta članek je torej verjetno prvi, ki resnično pojasnjuje, kako se učijo modeli sklepanja.In particular, DeepSeek-R1 was the first open-weight model in January of 2025 to actually go through the how. So that paper is probably the first paper that really explains how reasoning models are trained.
- u238 Tu bomo videli, kako natanko to naredimo. Če bi bili, recimo, leta 2025, bi model sklepanja prepoznali po tem, da je to pisalo povsod v uporabniškem vmesniku. Tu je primer OpenAI — obstajal je model z imenom ChatGPT-5 Thinking.And we will see exactly how we do that here. So if we were in, let's say, 2025, the way you would recognize a reasoning model is because it was written everywhere on the UI. So here, an example of OpenAI-- there was a model called ChatGPT-5 Thinking.
1:15:09 · How to spot a reasoning model in 2025 · A Stanford ICME lecture slide with a screenshot of ChatGPT 5 Thinking answering "My bear was born in 2020. How old is he now?" The model thought for 5 seconds and replied that as of November 3, 2025 the bear is either 5 or 4 years old depending on his birthday. A side "Activity" panel shows its visible reasoning, which marks it as a reasoning model. A small inset shows the lecturer standing at the top right. - u239 Tu je torej namig. Potem pa veriga sklepanja: ker je razmišljal nekaj sekund, je včasih izpisal dejansko verigo, morda v povzeti obliki, imeli pa ste tudi možnost, da razmišlja dlje. Toda preskočimo na danes — ti modeliSo here it's a hint. And then the reasoning chain, because it thought for some seconds, it used to output the actual chain, maybe in a summarized way, and you would have also an option to think more. But fast-forward to today-- these models
- u240 so dejansko povsod. Dandanes so skoraj vsi modeli modeli sklepanja. Zato je edino mesto, kjer bi, recimo, pri uporabi OpenAI, ChatGPT in tako naprej, videli namig, da je model model sklepanja, raven napora pri razmišljanju. Povedati želim, da je veriga sklepanjaare actually everywhere. Almost all models are reasoning models these days. And so the only place where, let's say, if you interact with OpenAI, the ChatGPT and so on, the only place you would see a hint of the model being a reasoning model is the thinking effort. So one thing that I want to say is that the reasoning chain
1:16:02 · Lecture on spotting reasoning models, Stanford ICME · A lecture-hall still shows a man in a pink t-shirt standing beside chalkboards and looking at a projected slide titled "How to spot a reasoning model today". The slide is a ChatGPT screenshot. The user asks "My bear was born in 2020. How old is he now?" and the answer is "5 or 6 years old", depending on whether the birthday has passed in 2026. A "Thinking effort" menu is set to "Extra High". The chalkboards carry handwritten log-probability and preference-optimization equations. - u241 dejansko pomembna, ker zajema prejšnji vnos, ki ga je uporabnik posredoval modelu. Ne vem, ali ste slišali v novicah, toda pred nekaj meseci jeis something that is actually important because it encapsulates the previous input that the user has mentioned to the model. And I'm not sure if you've heard in the news, but a couple of months ago, there
- u242 izšel članek, ki je pokazal, da je bilo pri nekaterih zunanjih ponudnikih z eksperimentiranjem z API-jem dejansko mogoče pridobiti celotno verigo sklepanja. Ta članek je povzročil toliko razburjenja zato,was a paper that showed that, for some third-party providers, you could actually recover the full reasoning chain by playing with the API. And the reason why that paper did a lot of noise
- u243 ker lahko te verige sklepanja dejansko vsebujejo veliko informacij o uporabniku, o klepetu, o tem, kar je bilo omenjeno prej, česar iz varnostnih razlogov verjetno ne želite razkriti. Drugi razlog pa je tudi, da veriga sklepanja ne bi bilais because these reasoning chains, they can actually contain a lot of information about the user, about the chat, what was mentioned before, which is probably not something that you want to expose, for safety reasons. But also, another reason is to not have the reasoning chain
- u244 razkrita drugim, da bi na njej učili modele, saj bomo videli, da lahko kakovostna veriga sklepanja dejansko izboljša uspešnost vašega modela. Torej le toliko: na splošno je veriga sklepanja nekaj, kar ljudje poskušajo zaščititi, česar ne želijo prikazati,revealed for other people to train on it, because we will see that having a high-quality reasoning chain can actually improve the performance of your model-- so just to say that in general, the reasoning chain is something that people are trying to protect, to not show,
- u245 iz teh dveh razlogov. Zato se je uporabniški vmesnik med letom 2025 5 in danes precej spremenil, ker zdaj verige sklepanja dejansko ne dobite več kar privzeto, kot ste jo nekoč. Zamisel je torej spodbuditi model,for these two reasons. And this is the reason why you would see the UI that has changed quite a bit between 2025 5 and now, because right now, actually don't really get the reasoning chain out of the box like you used to. So the idea is to incentivize the model
1:17:47 · Enhancing model reasoning abilities: the standard question-to-answer LLM flow · A Stanford ICME lecture slide titled "Enhancing model reasoning abilities". Under the heading "Until now", it shows a simple pipeline in which a Question goes into an LLM, which produces an Answer. A small video inset in the top right shows a person standing in front of a chalkboard. - u246 da pred odgovorom dejansko izpiše verigo sklepanja. Samo da razjasnimo, kaj je kaj: veriga sklepanja dejansko šteje kot izhod modela. Če torej razmišljate o izhodnih žetonih, morate sklepanje šteti kot njihov del.to actually output a reasoning chain before getting its answer. So just on the what is what, the reasoning chain is actually considered as a model output. So if you think about output token, you actually need to consider the reasoning as part of it.
- u247 Če bi torej razmišljali o uporabi teh modelov sklepanja in imate omejen proračun, imejte v mislih, da vam zaračunajo tako tisto, kar vidite, kot tudi običajno skrito verigo sklepanja, ki jo model ustvari. Tu sem na prosojnicah le označilSo if you were to consider using this reasoning models, and if you have a finite budget, just keep in mind that you're being charged for both what you see, but also, the typically hidden reasoning chain that the model produces. And so here I just highlighted in the slides
- u248 dele pri glavnih ponudnikih, kjer je to omenjeno. Ja? Ja. Vprašanje je, ali se lahko model odloči, o čem bo sklepal in o čem ne? Da, običajno ima način, kako se odločiti. To je del procesa učenja. Kot uporabnik lahko to tudi nastavite, običajno s kakšnim stikalom za raven napora pri razmišljanju.the parts in the main providers where this is mentioned. Yeah? Yep. So the question is, can the model decide on what to reason versus not? Yes, typically, it has a way to decide. It's part of the training process. You as a user can also set that, typically by some toggle thinking effort.
- u249 Toda tudi znotraj tega so modeli običajno naučeni razvrščati pozive, ki morda zahtevajo manj napora, in tiste, ki ga zahtevajo več. Kratek odgovor je torej da. Gremo naprej: glavno vprašanje je zdaj, kako lahko naučimo tak model, kakoBut even within that, typically, models are trained to categorize prompts that are maybe worth less effort versus more. So short answer is yes. So moving on, the main question now is how we can train such a model, how
- u250 lahko model spodbudimo, da pred odgovorom izpiše verigo sklepanja. Zamisel je, da model učimo na podlagi nagrad, vendar tokrat to niso nagrade, ki smo jih videli pred nekaj prosojnicami.we can incentivize a model to output a reasoning chain before its answer. So the idea is to train our model on rewards, but this time, they're not the rewards that we saw a few slides ago.
- u251 Dejansko so preverljive, saj lahko pri matematičnih in programerskih problemih, ko dobite odgovor, ugotovite, ali je pravilen ali napačen. Dal vam bom primer. Predpostavimo, da opravljate programersko nalogo.They are actually verifiable, because when it comes to math and coding problems, when you get an answer, you can tell if the answer is right or wrong. So I'll give you an example. Let's assume you do a coding task.
1:19:45 · Reasoning-based benchmarks: coding problem and solution · A Stanford ICME lecture slide titled "Reasoning-based benchmarks" describes the coding category as solving a coding problem or fixing a bug. It pairs a plain-language problem about teddy bears with a Python function meant to solve it. A small inset at top right shows the lecturer standing near a blackboard. - u252 Imate rešitev. Kako veste, ali deluje? No, izvedete nekaj testnih primerov. Predpostavimo, da želite rešiti matematični problem. Kako veste, ali je rešitev pravilna? No, svoj odgovor preprosto primerjate z referenčno pravilnim odgovorom? Lepo pri tej postavitvi je to,You have a solution. How do you know if your solution works? Well, you run through some test cases. Let's assume you want to resolve a math problem. How do you know if it's correct? Well, you just compare your answer with the ground truth? So the nice thing with this setup
- u253 da lahko za vsak odgovor modela ugotovite, ali je model odgovoril pravilno ali napačno. Zato lahko zasnujete nagrado, ki temelji na končnem odgovoru in tudi na tem, da mora odgovoris that for every model answer, you can tell if your model had it right or wrong. So you can design a reward that relies on the final answer, and also on the fact that the answer needs
- u254 vsebovati verigo sklepanja. Tu lahko torej dejansko imate nagrado, sestavljeno iz pravilnosti odgovora in tega, da odgovor vsebuje verigo sklepanja — torej običajno žetone sklepanja.to contain a reasoning chain. And so here you can actually have a reward that is composed of the answer being correct and the answer containing a reasoning chain-- so typically having reasoning tokens.
1:20:56 · GRPO used for reasoning training (Stanford lecture slide) · A Stanford lecture slide with a maroon header reading "GRPO used for reasoning training". The body only defines the acronym GRPO as Group Relative Policy Optimization and is otherwise blank, with a citation to the DeepSeekMath paper at the bottom. A small inset in the top right shows a person standing near a blackboard. - u255 Skupinsko relativna optimizacija politike (GRPO)Group Relative Policy Optimization (GRPO)
- u256 Model bi učili z algoritmi spodbujevalnega učenja. Naslednji teden bomo poglobljeno obravnavali en tak algoritem, ki je postal vse bolj priljubljen in se imenuje GRPO. To pomeni skupinsko relativna optimizacija politike. Ne skrbite glede matematike.And the way you would train your model would be using rl algorithms. So we will see next week in-depth one such algorithm that has grown in popularity that is called GRPO. That stands for Group Relative Policy optimization. Don't worry the math.
- u257 Ogledali si jo bomo naslednji teden. Na zelo splošni ravni pa ob dani poizvedbi, danem pozivu, svojemu LLM-ju, ki je tu politika, naročimo, naj izpiše več odgovorov. Ugotovimo, ali so ti odgovori pravilni ali ne. Nato izračunamo prednosti,We'll see it next week. But at a very high level, what we're doing is given a query, given a prompt, we're telling our LLM, which is here, the policy, to output several responses. And we figure out if these responses are correct or not. And what we do is we compute advantages,
- u258 kar pomeni, koliko boljši je dani odgovor glede na skupino. Če je veliko boljši, naj model tega počne več. Če ne, naj tega počne manj, ob tem pa še vedno kaznujemo odstopanje glede na referenčni model.which is how much better a given answer is relative to the group. If it's much better, let's have the model do more of that. If not, let's have the model do less of that, and still by penalizing with respect to a reference model.
- u259 Cilj je torej spet maksimirati prednosti, ne da bi preveč odstopali od osnovnega modela. Tu gre za isto miselnost. Glavna razlika je, da se dejansko opirate na preverljive nagrade. Modela nagrajevanja ne potrebujete.So again, the objective is maximize the advantages while not deviating too much from the base model. So here it's the same mindset. The main difference here is you're actually relying on verifiable rewards. You don't need a reward model.
- u260 Tu zgolj uporabljate svoje znanje o referenčno pravilni rešitvi problema in primerjate, ali se odgovor, ki ga izpiše model, ujema s to rešitvijo. Je to smiselno?So here you're just using the knowledge that you have on the ground truth of a problem and comparing whether the answer that is output by the model is matching the ground truth. Does that make sense?
- u261 Še enkrat želim poudariti, da si bomo podrobnosti ogledali naslednji teden. Če to naredite, boste videli, da vaš model pri teh problemih sklepanja postaja vse boljši. Na levi imamo uspešnost modela v odvisnosti od koraka spodbujevalnega učenja.So again, I want to emphasize next week we'll see the details. If you do that, then you will see that your model actually gets better and better at these reasoning problems. So on the left side, we have the performance of the model as a function of the rl step.
- u262 To je merilo, kako daleč ste v procesu učenja. Tu torej postaja vse boljši. Na desni pa imate empirično dolžino verige sklepanja, ki je vse večja. Mislim, da sem vam že povedal, toda 4. predavanjeSo it's a measure of how far you are in the training process. So here it's getting better and better. And on the right side, you have the empirical length of the reasoning chain, which gets increasingly high. I think I already told you, but lecture 4
- u263 je tisto, kjer bomo govorili o podrobnostih. Če imamo tu neki problem sklepanja, modelu rečemo, no, zdaj lahko model odgovori na način, ki je usklajen s tem, kar želimo.is where we'll talk about the details. So here, if we have some reasoning problem, we tell the model, well, now, the model can answer in a way that aligns with what we want.
- u264 Destilacija na podlagi trenutne politike (OPD)On-Policy Distillation (OPD)
- u265 Preden predam besedo Shervinu, vam želim o nečem povedati. Ta pristop ima omejitev, temeljno omejitev: dejansko dobivate zelo grobo nagrado. Nagrado dobite za celoten izhod. Bodisi je celoten izhod pravilenThere is something, before giving it to Shervine, that I want to talk to you about. There is a limitation, core limitation of this approach, which is that you're actually getting a very coarse reward. You're getting a reward for your whole output. It's either the whole output is correct
- u266 bodisi je celoten izhod napačen. To je ena težava. Druga težava je, da so imele metode, ki smo jih videli in so imele signal na ravni žetonov, omejitev, da so temeljile na zaporedjih, ki jih dejansko nior the whole output is incorrect. So that is one problem. The second problem is that the methods that we saw that had a token-level signal, they had the limitation of being based on sequences that were actually not
- u267 ustvaril model. Takim zaporedjem pravimo zaporedja zunaj trenutne politike. Gre torej za metodo zunaj trenutne politike. Signal je gost, vendar ga ni ustvaril model, zato lahko odstopa od tega, kar model dejansko ustvarja. Torej imamo plus.produced by the model. So we call such sequences off-policy. So it's an off-policy method. So it's a dense signal, but it's not produced by the model, which can deviate from actually what the model is generating. So we have plus.
- u268 Signal je gost, vendar ni iz modela. Po drugi strani pa pri tem, kar smo pravkar videli pri prilagajanju preferencam in učenju modela sklepanja, med učenjem dejansko izkoriščamo izhode modela, vendar se opiramo na redek signal, torej nagrado, kiIt's a dense signal, but it's not from the model. And on the other side, what we just saw with preference tuning and with how to train a reasoning model is that we're actually leveraging outputs from the model at training time, but we are relying on a sparse signal, which is a reward that
- u269 je na ravni zaporedja. Nimamo načina, da bi na ravni žetonov ugotovili, kaj je dobro in kaj ni, vsaj pri GRPO ne. Zato se pojavlja nov sklop strategij učenja.is at the sequence level. We don't have any token-level way of just figuring out what is good, what is not good, at least for GRPO. And so there is a new set of training strategies that are emerging.
1:25:04 · On-policy distillation: teacher per-token probabilities on student trajectory · A Stanford lecture slide (ICME) explains on-policy distillation: fix a student model's behavior using a stronger teacher model's outputs. For the prompt "What is 5 + (2 × 3)?", the student's generated tokens are shaded by the teacher's conditional probability. Low-probability tokens such as "2" (5%) and "is" (15%) are shaded darkest red, marking where the student went wrong, while "7" and "21" are 99%. - u270 Ena takšna tehnika, ki postaja vse bolj priljubljena, se imenuje destilacija na podlagi trenutne politike. Zamisel te metode je združiti najboljše iz obeh svetov. Ob danem pozivu vaš model ustvari odgovor. Toda namesto da bi se opiraliAnd there's one such technique that has been becoming more and more popular, which is called on-policy distillation. So the idea behind this method is to combine the best of both worlds. So given a prompt, your model is generating a response. But what you're doing is instead of relying
- u271 na redek signal čez celotno zaporedje, model učitelja dejansko prosite, naj oceni vsak posamezen ustvarjeni žeton. Kaznujete odstopanja med svojim modelom, modelom učencem, in modelom učiteljem.on a sparse signal that is across the whole sequence, you're actually asking a teacher model to evaluate every single token that was generated. And you penalize deviations between your model, the student model, and the teacher model.
- u272 Na zelo splošni ravni je tu tako, kot bi vstavili celotno zaporedje, ki ga učenec ustvarja. Predstavljajte si, da zaporedje ustvarjate po en del naenkrat. Učitelja vprašate, kakšna bi bila njegova napoved. Nato primerjate napoved učenca in učitelja.So at a very high level, here, it's as if you were putting the whole sequence that the student is generating. So think of it as just one at a time, you generate the sequence. And you ask the teacher what its prediction would be. And you compare the prediction of the student and the teacher.
1:26:00 · Combining both worlds with on-policy distillation (lecture slide) · A Stanford ICME lecture slide shows an LLM block taking five input tokens ([BOS], A, teddy, bear, is) with arrows up into it. Arrows then lead from the LLM to five empty light-purple output boxes, one per token position. The outputs are left blank, probably to be filled in during the lecture. A small inset shows the presenter standing near a chalkboard. - u273 In kaznujete odstopanja. Dobro pri tem je, da temelji na trenutni politiki, ker dejansko uporabljate ustvarjanje učenca. Signal pa je tudi gost, ker ga dobivate na ravni žetonov. Obstaja nekaj različic te strategije.And you penalize deviations. So the good thing here is it is on-policy because you're actually using the generation of the student. And it is also dense because you're getting a token-level signal. So you have a few variations of that strategy.
- u274 Kako torej dobite učitelja? Če učitelja ni, obstaja različica, imenovana samodestilacija na podlagi trenutne politike: za nalogo uporabite isti model, vendar temu modelu učitelju, ki je isti model, poveste odgovor.So how do you come up with the teacher? If a teacher is not there, there is a variation called on-policy self-distillation, which is you use the same model for a task, but you tell that teacher model, which is the same model, you tell it the answer.
- u275 Poveste mu torej odgovor, da ve, kako usmerjati svoj odziv. Ta tehnika se vključuje v, rekel bi, večino vodilnih odprtih belih modelov. Kot primer boste tu videli,So you tell it the answer so it knows how to steer its response. And this technique is being incorporated in, I would say, most of the frontier open white models. And as an example here, you will see
- u276 da obstajajo postavitve s specializiranimi učitelji — na primer enim, ki je zelo dober pri matematiki, in drugim, ki je zelo, zelo dober pri, recimo, inženirstvu. Nato izvajate gost nadzor nad modelom, ki ga poskušate naučiti, glede na te modelethat you have setups where you actually have specialized teachers-- for instance, one that is very good at math, one that is very, very good at, let's say, engineering. And then what you do is you perform a dense supervision of the model you're trying to train versus these teacher
- u277 učitelje. S tem predajam besedo Shervinu.models. And with that, I'll give it to Shervine.
- u278 Primer od začetka do koncaEnd-to-end example
- u279 Hvala, Afshine. V tem zadnjem delu se bomo osredotočili na praktičen primer uporabe. Vse, kar je Afshine omenil, si bomo ogledali v praksi. Obstaja spletna stran Artificial Analysis Intelligence Index, ki jo priporočam.Thank you, Afshine. So in this last part, we're going to focus on a practical use case. We're going to see everything that Afshine mentioned in real life. So there is this website called Artificial Analysis Intelligence Index that I recommend.
- u280 Če je ne poznate: združuje primerjalne preizkuse in jih pretvori v eno številko, približno to, kar danes velja za inteligenco. To je torej dober način za medsebojno razvrščanje modelov. Ima filter z imenom Open Source Models. Običajno ti odprtokodni modeliIn case you don't know about it, it's an aggregator of benchmarks, and it translates into a single number, roughly what counts as intelligence these days. So it's a good way to rank models between each other. And there is this filter called Open Source Models. So usually, these open-source models,
- u281 nekoliko zaostajajo za dejansko najnaprednejšimi zaprtokodnimi modeli. Odlično pri njih pa je, da pogosto razkrijejo celoten skrivni recept za pripravo teh LLM-jev in imajo odprte uteži. Tu torej vidimo to lestvico.they are slightly behind the true frontier from closed-source models. But the great thing about them is that oftentimes they tell all the secret recipe behind the preparation of these LLMs and their open weights. And so we see this ranking.
- u282 Imamo nekaj zmogljivih modelov. Eden ima še posebej odlično tehnično poročilo, GLM — torej GLM-5, ki je izšel v začetku tega leta. Nanj se bomo oprli, da bomo vse, kar je Afshine omenil, videli v praksi.We have a few strong models. And there is one in particular that has a great technical report, GLM-- so GLM-5, which came out earlier this year. And this will be one that we will anchor on to see everything that Afshine mentioned into practical terms.
- u283 Skupaj bomo šli skozi vsako fazo učenja velikega jezikovnega modela in pogledali, kaj so vključili v posamezno fazo. Prva faza, ki jo je Afshine omenil, je predhodno učenje, kjer je glavni cilj spoznavanje jezika. Vključili so nekaj spletnih podatkov.So we're going to go through each stage of training the large language model together, and then we're going to see what they have put into each stage. So the first stage that Afshine mentioned was pretraining, where the main goal is to learn about language. So they put some web data.
- u284 Običajno uporabite Common Crawl, ki vsebuje skoraj vse na internetu. Danes je veliko tega onesnaženega z vsebino, ustvarjeno z umetno inteligenco, in drugimi stvarmi, zato imate hevristike na podlagi teh podatkov, kiSo what you use is usually Common Crawl that has about everything on the internet. And a lot of it these days is polluted by AI-generated contents and other things, which is why you have heuristics based on this data that
- u285 vse skupaj oklestijo. Obstajajo članki, ki pojasnjujejo razloge in način, kako to naredite. Običajno vam na koncu ostane približno 1 % vhoda. To je torej odličen filter. Nato je pravi čas, da model naučite osnovnih področij znanja.trims everything down. So you have some papers that go into the reasoning of how you do that. Usually, you have about 1% of your input in the end. So it's a great filter. And then it's a good time to teach the model about main lines of knowledge.
- u286 Običajno imate avtoritativna spletna mesta, kot je Wikipedia, ki ponujajo veliko odličnih stvari s področja splošnega znanja. Obstajajo pa tudi druga dejstva, ki morda niso na teh glavnih spletnih mestih, zato morate bolj skrbno izbirati, kaj gre v vašo mešanico podatkov. Afshine je omenil vidik sklepanjaSo usually, you have authoritative websites, such as Wikipedia, that give a lot of great things on general knowledge. But you have other facts that might not be on these main websites, where you need more care into curating what goes into your data mix. So Afshine mentioned the reasoning aspect
1:30:27 · Pretraining data mix: coding sources slide · A Stanford lecture slide titled "Pretraining data mix" with the Web section greyed out and the Coding section highlighted. It says coding data comes mainly from GitHub and other platforms, with special care for lower-resource programming languages. A small inset in the top right shows a presenter standing near a blackboard. - u287 kot nekaj, kar je danes zelo pomembno. Skupaj s programiranjem je to temelj vsega, kar poganja današnje sisteme. Ko govorimo o agentih oziroma bomo o njih govorili v drugem delu predmeta, gre večinoma za programerske probleme v različnih preoblekah, torejas being one that is very important these days. So alongside coding, that is at the foundation of everything that powers today's systems. So when we talk about agents or we talk about them in the second part of the class, these are mostly coding problems that are put at different flavors, so
- u288 zato želimo že pri predhodnem učenju učiti napovedovanje naslednjega žetona na programerskih podatkih — običajno z GitHuba in podobnih virov. Včasih pa vas zanimajo jeziki, ki v vaši mešanici morda niso tako zastopani. Primer so zlasti podatki, specifični za mobilne naprave.which is why, as early as pretraining, we want to train next-token prediction on coding data-- so typically GitHub and the likes. And then sometimes you have some languages that you care about that might not be as present in your mix. So in particular, mobile-specific data is an example of one.
- u289 Tu je torej potrebno nekaj skrbnega izbiranja. Nazadnje pa za obogatitev učenja uporabite gradivo s podatki, podobnimi sklepanju.So this is where some curation is needed. And then, finally, you use material that has this reasoning-like type of data to augment your training.
- u290 Imate tudi stvari, kot so članki ter matematično in naravoslovno usmerjeno gradivo. Kar zadeva številke, kot je omenil Afshine, faza predhodnega učenja običajno poteka s kratkim kontekstom. GLM-5 je imel približno 4 tisoč žetonov.So you also have things like papers and math and science-focused. So in terms of numbers, as Afshine mentioned, the pretraining stage usually operates on a low-context-length regime. So GLM-5 was at 4K, about, tokens.
- u291 Še nekaj velikostnih redov: predhodno učenje je razdeljeno na dve fazi. Prva je zelo groba, kjer želimo samo spoznati jezikovno strukturo in se osredotočamo na spletne podatke. Ko je to končano, pride na vrsto mešanica programiranja in sklepanjaAnd some orders of magnitude-- so it's divided pretraining into two stages, so first one that is very coarse, where we just want to learn about language structure, where we focus on web data. And then, once this is done, then there is a mix of coding and reasoning
- u292 skupaj s spletnimi podatki, vendar v manjšem obsegu. Zdaj bom povedal, kaj natanko se dogaja med učenjem. Tu je bilo vprašanje, česa se dejansko učimo. Učimo se izključno napovedovanja naslednjega žetona. Naš cilj ni ustvarjati uporabnih povedi.that comes in, alongside still web, but at a lesser extent. And now I'm going to talk about exactly what happens at training time. So there was a question here on what do you actually learn. So here we learn purely next-token prediction. And our goal is not to generate useful sentences.
- u293 Želimo se le naučiti splošnih konceptov jezika. Nimamo torej lepo oblikovane govorne sekvence, konca zaporedja, učnega svežnja, ki bi ga preprosto vstavili takega, kot je. Imamo ogromno podatkov, ki jih razrežemo na kose, nato pa združujemo dokumente,We just want to learn large concepts about language. So we do not have a nicely-formatted speaking sequence end of sequence batch that we just put it as is. We have a ton of data that we chunk, and then we concatenate documents
- u294 ki gredo skupaj naenkrat. Videli boste torej stvari, kot so razrezani in nato združeni dokumenti. Učnega svežnja na primer ne začnete nujno z žetonom za začetek zaporedja. To delate zato, da zapolnite dolžino konteksta.that go together at once. So you will see things like documents that are cut and then concatenated. And you don't necessarily start your batch with the beginning-of-sequence token, for example. So you do that in order to fill your context length.
1:33:15 · Pretraining visualization: "Concatenate and chunk" strategy for LLMs · A Stanford lecture slide shows how pretraining data is prepared by concatenating documents and chunking them into fixed-length sequences. A box labeled LLM takes a row of tokens as input and outputs the same tokens shifted by one position, for next-token prediction. The span is marked 4K, and documents are separated by [EOS] and [BOS] tokens. A small video inset shows the lecturer at the top right. - u295 Spet smo omenili, da je tipičen velikostni red nekaj tisoč. Zdaj se želim nekoliko bolj osredotočiti na to, kar sem omenil o pomenu skrbnega izbiranja podatkov. Pri prvih LLM-jih, ki so izšli leta 2022, je bilo odlično. Internet je vseboval večinoma podatke, ki so jih ustvarili ljudje.And again, we mentioned a typical order of magnitude is like a few K. And now I want to focus a bit more on what I mentioned on the importance of curating your data. So in the first LLMs that came out in 2022, it was great. The internet was mostly human-generated data.
- u296 Zato vam ni bilo treba skrbeti glede kakovosti tega, kdo je prispeval podatke. Želim govoriti o pojavu, imenovanem kolaps modela. Kdo je že slišal zanj? Ja, nekaj vas je. Torej, predstavljajte si, da imate popoln model,So you didn't need to worry about the quality of who put data in. And I want to talk about a phenomenon called model collapse. So who has heard about model collapse? Yeah, a few folks. So the thing is, imagine you have a perfect model,
- u297 in recimo, da imate na voljo podatke, ki so jih ustvarili ljudje. Recimo, da želite naučiti svoj model. Iz tega večjega korpusa boste vzorčili končno število vzorcev. Toda porazdelitev, ki je tam zunaj, je zelo raznolika.and let's say you have human-generated data out there. Let's say you want to train your model. You will sample a finite number of samples from this larger corpus. But the thing is the distribution that you have out there is very diverse.
- u298 Za stvari povsem na dolgem repu imate torej lahko neko neničelno verjetnost. Ker pa je vaše vzorčenje končno, pri učenju modela ne boste zajeli vseh teh podrobnosti, kar pomeni, da je izhod vašega modela že po naravi obsojen na neuspeh.So you might have some nonzero probability for things that are super long-tail. And the thing is, since your sampling is finite, you will not capture all these details into training your model, which means that the output of your model is by nature doomed.
- u299 Na izhodu torej ne boste imeli iste porazdelitve. In to ob predpostavki, da je model popoln. Poleg tega pa si predstavljajte, da je model približevalnik. Ne bo izpisal popolne porazdelitve. Uči se je. Da je mera polna — in to ste morda opaziliSo you will not have the same distribution as output. And this is with the assumption that the model is perfect. But on top of that, just imagine the model is an approximator. It will not output the perfect distribution. It is taught to learn. And to add insult to injury-- and you might have seen that
- u300 pri lastni uporabi LLM-jev — v poznejših fazah obstajajo določene preference, ki jih ponudniki in jezikovni strokovnjaki vstavijo v vedenje LLM-ja. Če vam omenim stvari, kot sta »nosilen« in »bajtno identičen«, vas bo to morda spomnilo na vaše izkušnje z LLM-ji.into your own use of LLMs-- you have, at later stages, some preferences that vendors and experts in language insert into the behavior of the LLM. So if I talk to you about things that are load-bearing, byte-identical, that might ring a bell about your experience with LLMs.
- u301 Njihova pogostost je močno povečana glede na pravo porazdelitev. To je še ena težava, ki se pridruži temu začetnemu opažanju, zato postanejo vse tehnike skrbnega izbiranja, ki jih ti članki poskušajo doseči na začetku, res pomembne.These are heavily upweighted in frequency with respect to the true distribution. So this is another problem that adds to this initial observation, which is why all the curation techniques that these papers try to achieve at first become really important.
- u302 Vem tudi, da je bilo pred enim ali dvema predavanjema vprašanje o številu epoh, skozi katere gredo tovrstni podatki. Običajno je to [? Of1. ?] Toda v tem članku lahko podatki, ki so po klasifikatorjih kakovostnejši, gredo skozi nekoliko več. Drugi del pa je vmesno učenje —And then I know there was a question a lecture or two ago about the number of epochs that this kind of data runs on. So usually it's [? Of1. ?] But in this paper, the data that is of higher quality per classifiers might run for a bit more. So the second part, which is midtraining--
- u303 Afshine je omenil, da tu pridejo v igro kakovostnejši podatki. Pri GLM-5 je bil cilj izključno povečati dolžino konteksta in to narediti tako, da deluje, zato je mešanica podatkov večinoma sestavljena iz daljših podatkov, kiso Afshine mentioned it's where you have higher-quality data come into the picture. And in the case of GLM-5, the goal was purely to increase context length, and do it in a way that works, which is why the data mixture is mostly composed longer-form data that
1:36:10 · Lecture hall with "Midtraining" slide at Stanford · A presenter in a pink t-shirt stands in a lecture hall, looking toward a projected slide titled "Midtraining" that states the objective is scaling to longer context. Chalkboards behind hold handwritten math on language-model log-likelihood loss and a preference-optimization objective. The slide footer cites the GLM-5 Team, 2026, and carries Stanford University and ICME marks. - u304 ustrezajo področjem, ki nas zanimajo. Pri kodi na primer gledamo zahtevke za združitev s prijavljenimi težavami in nato razlike v kodi. Ti običajno zavzamejo veliko več konteksta. Zdaj si lahko privoščite vključiti tudi cele knjige in tako naprej. Zadnjič sem omenil težavomatches the domains that we're interested in. So for example, in the case of code, we are looking at PRs with issues and then code diffs. So these typically occupy much more context length. And then you can afford to put in entire books now and so on. And I had mentioned last time the problem
- u305 propadanja konteksta, ko si pri daljšem kontekstu LLM morda težko zapomni dejstvo, omenjeno prej. Tudi to je dobro mesto, da to upoštevate: v sintetične podatke lahko nekje na sredini vstavite dejstvoof context rot, where, at larger context length, the LLM might have trouble to remember a fact that was mentioned earlier on. So this is also a nice place to take that into account, where, in synthetic data, you might want to inject some fact in the middle of it
- u306 in se nato pozneje poskusite sklicevati nanj. To je torej še eno dobro mesto za to. Še nekaj velikostnih redov: podobno kot [? potem ?] pri predhodnem učenju imate več faz — prvo, ki se osredotoča na programiranje, in drugo na druge daljše podatke.and then try to refer of it later on. So it's another nice place for doing so. And some orders of magnitude-- so you have a similarly, [? then ?] pretraining several stages-- so a first one that focuses on coding, and then a second one on other longer-form data.
- u307 Strategija njihovega učenja pa je nekoliko drugačna. Ta članek natančno navede razliko. Namesto da vse razrežemo na kose in vse preprosto uporabimo za napovedovanje naslednjega žetona, smo tu nekoliko pametnejši. Dokumente poskušamo zapakirati tako, da se prilegajo in niso odrezani.And then the strategy to train these is slightly different. So this paper mentions exactly what's the difference. So here, instead of chunking everything, just putting all to predict the next token-- we are slightly smarter about it. We try to pack documents in a way that they fit and that they're not cut.
- u308 Temu pravimo pakiranje po najboljšem prileganju. Če ostane preveč prostora, lahko kontekst dopolnimo s polnilom. In ja, tako kot pri predhodnem učenju gre še vedno za napovedovanje naslednjega žetona. Zdaj želimo iz modela narediti uporabnega pomočnika.So it's called the best-fit packing. And if there is too much left, we may pad the context. And yeah, just like pretraining, it's next token prediction, still. So now we want to make the model a useful assistant.
1:38:09 · Midtraining best-fit packing of sequences for an LLM · A Stanford ICME lecture slide titled "Midtraining visualization" shows the "best-fit packing" strategy. Several documents are packed into one long context window, separated by [BOS] and [EOS] tokens, with [PAD] tokens filling leftover space. The sequence is fed into an LLM box, which predicts the input shifted by one token. The context length is labeled "32K up to 200K". - u309 To je faza SFT, kjer pridejo v igro podatki veliko višje kakovosti. Velikostni red števila žetonov za učenje pa se precej zmanjša. Poudarek je na splošni koristnosti. In kot je omenil Afshine, so pri današnjih modelih ugotovili, da je osredotočenost na sklepanje zelo koristna.So this is the SFT stage, where data that is of much higher quality comes in. And then the orders of magnitude of the tokens that go into training just go down much more. So there is an emphasis on general helpfulness. And then, just like Afshine mentioned, today's models, they have seen that focusing on reasoning is high-value.
- u310 Zato se tja vnese veliko podatkov o sklepanju in kodiranju. Članek omenja tudi strategijo vstavljanja sklepanja, ki vodi do določenih klicev orodij, kar je odlično tudi za učenje sposobnosti sklepanja, kadar želi model izvesti klic orodja.So there is a lot of reasoning and encoding data injected there. And the paper mentions that there is the strategy of inserting the reasoning that leads to a given tool calls, and that is also great for training the reasoning abilities when the model wants to perform a tool call.
- u311 Videli boste torej prepleteno sklepanje in prisotnost žetonov think. Mislim, da bomo naslednjič to podrobneje omenili. Vse to sklepanje, ki šteje na vašem [? računu ?] in ga ne vidite — razlog, da ga ne vidite, je, da je med žetoni, imenovanimi žetoni think.So you will see interleaved reasoning and the presence of think tokens. So I think we'll mention it next time more in detail. So all this reasoning that counts in your [? bill ?] and that you don't see, the reason why you don't see it is that it's between tokens called think tokens.
- u312 To je način, da ima model beležnico o tem, kam mora priti, vendar vam je ne prikaže. Gremo naprej: tokrat ne izvajamo čistega napovedovanja naslednjega žetona. Vse, kar zadeva vhod — recimo, da imate splošen primer uporabe z vprašanji in odgovori.So it's a way for the model to have a scratchpad of where it needs to go, but it doesn't display it to you. And moving on, this time, we do not do pure next-token prediction. So everything that's about the input-- so let's say you are on a general Q&A use case.
- u313 Imate vhodni poziv. Tam ne poskušate uganiti naslednjega žetona, ker je to uporabnikov vnos. Napovedovanje naslednjega žetona želite prilagoditi odgovoru, ki ga želite od svojega LLM-ja, zato je izguba bolj lokalizirana. Nato zadnja faza, RL — dandanesYou have an input prompt. You do not try to guess the next token there because it's a user input. What you want to fit a next-token prediction on is the answer that you want your LLM to have, which is why the loss is more localized. And then the last stage, RL-- so these days,
- u314 se spodbujevalno učenje veliko uporablja za razvoj sposobnosti sklepanja. Članek o GLM-5 to razdeli na tri dele. Prvega imenuje spodbujevalno učenje sklepanja. Imate na primer matematična tekmovanja in druge podobne podatke, pri katerih imate prostor,RL is heavily used to develop reasoning capabilities. And the GLM-5 paper divides this into three parts. So the first one is on reasoning RL, it calls. So for example, you have these math competitions and other similar kinds of data where you have a place
- u315 da razmislite, kakšen je odgovor, in odgovor, ki je preverljiv. To je torej vrsta podatkov za spodbujevalno učenje sklepanja. Agentsko spodbujevalno učenje — svoj LLM postavite v podporno okolje, kjer lahko na primer poganja teste, da preveri pravilnost svojega početja — na primerto think about what the answer is and an answer that is verifiable. So this is the kind of data that reasoning RL is. Agentic RL-- you put your LLM into a harness, where it can use things like running tests to verify that what it does is correct-- for example,
- u316 pri odpravljanju napak. Morda želite doseči, da neuspešen test postane uspešen, in tako naprej. Splošno spodbujevalno učenje pa je nekoliko bolj odprto. Vključuje razsežnosti, kot so temeljna pravilnost, čustvena inteligenca in kakovost za posamezno nalogo,bug fixes. You might want to fix a failing test to a passing test, and so on. And then general RL is a bit more open-ended. So it comes up with dimensions like foundational correctness, emotional intelligence, and task-specific quality,
1:40:47 · Post-training RL stages: reasoning, agentic, general · A Stanford lecture slide titled "Post-training: RL" lists three reinforcement learning stages used to turn a helpful assistant into one that solves tasks reliably. The stages are Reasoning RL, Agentic RL and General RL. A small inset in the top right shows the lecturer standing in front of a blackboard. - u317 ki označujejo kakovost sledenja navodilom. Čustvena inteligenca je mnenje strokovnjaka, ki izbira podatke, o tem, kaj je koristen odgovor, in tako naprej, zato lahko tja vnesejo to mnenje. Tokrat pa — več o tem bomo videli naslednjič.which respectively denote the quality of instruction following. Emotional intelligence is the expert data curator's opinion about what a helpful answer is, and so on, so they can inject that opinion there. And in this time-- so we'll see more about it next time.
- u318 Ustvarimo torej odgovor. Nato lahko glede na to, ali odgovor ustreza temu, kar iščemo, povečamo utež verjetnosti pojavitve nekaterih žetonov v primerjavi z drugimi. Želim se navezati na zadnjo temo, ki jo je omenil Afshine.So we generate the answer. And then, based on whether the answer corresponds to what we're looking for, we might want to upweight the probability of some tokens happening versus not. And I want to connect to the last topic that Afshine mentioned.
- u319 Videli smo veliko faz, ki poskušajo doseči veliko stvari. Morda se sprašujete, ali smo prepričani, da se vse, kar smo se naučili, ohrani. To je upravičena skrb. Včasih se ne, zato je v zadnji fazi spodbujevalnega učenjaSo we have seen many stages that try to do many things. And one thing you might wonder about is, are we sure that everything that we have learned is preserved? And it's a valid concern. It sometimes isn't, which is why, at the last stage of RL,
- u320 faza medfazne destilacije na podlagi trenutne politike, kjer se postopek, ki ga je omenil Afshine, izvaja glede na učitelje iz prejšnjih kontrolnih točk — natančneje tistega po SFT in tistega po prvi fazi spodbujevalnega učenja. S tem zagotovimo, da nismo izgubili nobenih sposobnosti.there is this stage of on-policy cross-stage distillation, where the process that Afshine mentioned is done against teachers that are at previous checkpoints-- so more specifically, the one after SFT, and the one after the first RL stage. So it's to make sure that we haven't lost any capabilities.
1:42:34 - u321 Ti modeli z odprtimi utežmi so torej odlični. Ponujajo tehnične članke z veliko podrobnostmi. Nekaj skrivnega recepta za podatke pa ni vedno izrecno razkritega. Želim le povedati: ohranite kritičen pogled na vse, kar vidite,And so these open-weight models, they're great. They give technical papers with many details. And some of the secret sauce behind the data isn't always spelled out. And I just want to say that-- keep a critical eye on everything you see,
- u322 ker se v novicah pogosto pojavljajo ponudniki, ki se pritožujejo, da drugi destilirajo njihove podatke. Tudi to je morda del mešanice podatkov, seveda pa ni zapisano v tehničnem poročilu. Obstajajo torej nekatere obtožbe o tem. Omeniti želim tudi primer Pi, programerskega agenta,because you see oftentimes, popping up in the news, some providers that complain about others distilling their data. So this might be also part of the data mixture, but of course not written in the technical report. So there are some allegations of it. And also, I want to mention the case of Pi, the coding agent
- u323 ki ga morda že poznate. To je minimalističen agent, ki se ponaša z odlično uspešnostjo ob minimalnem podpornem okolju. Avtor, ki je bil po mojem mnenju med prvimi, ki so res dobro razumeli, kako so lahko ti modeli zelo uspešni, je razumel, da se vse te faze spodbujevalnega učenjathat you might know already. So this is a minimal agent that boasts great performance with minimal harness. And the author, who I believe was a precursor into understanding really well how these models can perform great, he understood that all these RL
- u324 osredotočajo na razvoj sposobnosti sklepanja, zaradi katerih vam v podporno okolje ni treba vnašati preveč konteksta. To je odlična posledica. Zaradi tega boste morda opažali vse manjšo potrebo po inženirstvu podpornega okolja.stages, they focus on developing reasoning capabilities, which enable you to avoid putting in too much context into your harness. So this is one great consequence. And you might see the decrease of the need of harness engineering more and more thanks to that.
- u325 Še nekaj iz nedavnih novic: vsi ti podatki o sklepanju in učenje omogočajo napredek, na primer na področju matematike. Zelo nedavno je OpenAI objavil nekaj rešitev odprtih problemov, kar je odlično.And sharing things recently in the news-- so all this reasoning data and training enables advances, such as in the field of math. So very recently, OpenAI released some solutions to open problems, which is great.
- u326 S tem vam želim lep konec tedna. [APLAZ]And with that, I hope you have a great weekend. [APPLAUSE]
V okolici
zai-org/GLM-5 · Hugging Face
GLM-5 je velik odprt model organizacije zai-org, predstavljen kot naslednik modela GLM-4.5, namenjen sistemskemu inženirstvu in dolgoročnim agentskim nalogam. Stran na Hugging Face vsebuje kodo za uporabo s Transformers, vLLM, SGLang in Docker, skupaj s tabelami primerjalnih preizkusov, nastavitvami vrednotenja in ukazi za lokalno namestitev. Njeno sporočilo je, da je GLM-5 najzmogljivejši odprtokodni model pri sklepanju, programiranju in agentskih nalogah ter da zmanjšuje zaostanek za najnaprednejšimi modeli.
Prispevek
GLM-5
Velik jezikovni model z odprtimi utežmi iz družine GLM, ki ga je razvil Z.ai (zai-org).
Tema2 viraŠe brez izvirne raziskave
To besedilo je napisano z umetno inteligenco.
Objavljeno v: Zdaj