English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

gość
1 / ?
powrót do lekcji

Kroki 0-20 tys.: Ograniczona Dieta

Dwie Fazy, Jeden Uruchomienie

Program nauki strumienia v2 działa w dwóch fazach wewnątrz pojedynczego uruchomienia treningowego 200 tys. kroków:


Faza A (kroki 0 do 20 tys.). Bandyt ciągnie tylko z 7 źródeł czatu i prozy:

[BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- hermes3-general [BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- hermes3-creative [BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- hermes3-roleplay [BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- chat [BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- smoltalk [BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- oasst [BLOCK_TYPE CONTENT/two_phase/what_warmup_does]

- gutenberg


Faza B (kroki 20K do 200K). Bandit ciągnie z pełnej mieszanki, wszystkie 16 źródeł, w tym referencyjne (dictionary), techniczne (repo-docs, repo-commits) oraz społeczne (irc, unweapon).


Curriculum warmup timeline


Co dzieli restrykcyjna dieta

Sześć z siedmiu źródeł rozgrzewkowych to rozmowy. Jedno (gutenberg) to proza paragrafowa. Razem dzielą wspólną strukturę: strukturę tury (prompt potem odpowiedź) lub narracyjny przepływ. Rozkład słownictwa w 7 źródłach wygląda mniej więcej jak normalna angielszczyzna; cele cross-entropy pozostają w stabilnym zakresie; amplitudy gradientów pozostają przewidywalne.


Pole konfiguracji


"curriculum_warmup_steps": 20000,
"curriculum_warmup_sources": ["hermes3-general", "hermes3-creative",
"hermes3-roleplay", "chat", "smoltalk", "oasst", "gutenberg"]

Zidentyfikuj fazę rozgrzewki

Trening przebiegł przez 18 400 kroków. Bez patrzenia na stan bandyta, czy model mógł pobrać próbki z `dictionary` lub `repo-docs`? Wyjaśnij dlaczego tak lub nie i przytocz wartość konfiguracji, która to określa.

Jak Wyglądała v1 Bez Rozgrzewki

v1: Wszystkie 16 Źródeł od Kroku 0

Pierwszy trening ANDREA-120M (marzec-kwiecień 2026) aktywował pełny strumień od kroku 0: 16 źródeł, w tym dictionary (88K definicji słów w kształcie > define X / < X is...), repo-docs (dokumentacja markdown), repo-docstrings (docstringi Pythona) i repo-commits (komunikaty git commit obok chat i prose).


Co poszło nie tak

Świeży model 120M zainicjalizowany losowymi wagami nie jest w stanie modelować jednocześnie 16 różnych rozkładów. Każda partia z strukturalnie innego źródła produkuje inny kierunek gradientu. Przejścia między źródłami co 7-42 kroki powodowały gwałtowne wahania wielkości gradientu; model przeskakiwał między attractorami szybciej, niż mógł utworzyć reprezentacje.


Do kroku 80K, v1 wygenerował: region region region region region region region. Destylacja nauczyciela Hermes3-general nagradzała (średnia 340-453) powtarzalne źródła o strukturze listowej najwyższymi wynikami na entropii krzyżowej, co bandyta zinterpretował jako 'te ramiona są łatwe.' Bandyta karmił model więcej tego, co powodowało jego degenerację.


Dlaczego ograniczenie do 7 źródeł pomaga

1. Podobieństwo rozkładów. Wszystkie 7 źródeł rozgrzewkowych produkuje tekst o podobnym kształcie (struktura tury lub narracja). Kierunki gradientów w partiach pozostają w przybliżeniu wyrównane.

2. Spójność na pierwszym miejscu. Model uczy się częstotliwości słownictwa, wzorców syntaktycznych i struktury tur, zanim napotka listy definicji, kod lub komunikaty git.

3. Stabilny program nauczania. Sygnały nagród bandyty z 7 źródeł czatu/prozy utrzymują się w porównywalnym zakresie; selekcja UCB1 nie zostaje porwana przez pojedyncze źródło o anomalnie wysokiej nagrodzie.


Kiedy Aktywuje się Faza B

W kroku 20K model wygenerował ~40-50 próbek (jedna na 100 kroków), pokazuje spójny angielski w próbkach i zbudował stabilne rozkłady bigramów i trigramów. Teraz może przyswoić wzorzec słownika > define X / < X is..., bloki kodu z repo-docs oraz nagłówki commitów git bez utraty struktury czatu pod spodem.

Zdiagnozuj Porażkę v1

Świeży, zainicjalizowany transformer 120M trenuje na 16 strukturalnie różnych źródłach od kroku 0. Do kroku 80K próbki brzmią `region region region region region`. Połącz wybór projektu bez rozgrzewki z tym konkretnym trybem porażki: nazwij mechanizm, przez który 16 źródeł w kroku 0 powoduje zapadnięcie modelu w powtarzanie pojedynczego tokenu. Jedno lub dwa zdania.

v3 Polish ustawia curriculum_warmup_steps = 0

Inny Punkt Startowy

Punkt zwrotny v3 polish w kroku 112,619 wznowił trening z step_112600.bin z curriculum_warmup_steps ustawionym na 0. Na pierwszy rzut oka wygląda to jak sprzeczność: jeśli rozgrzewka pomogła v2, dlaczego wyłączyć ją w fazie polish?


Ponieważ Model Już Nauczył Się Spójności

Faza A kupuje czas dla świeżo zainicjalizowanego modelu, aby nauczył się częstotliwości słownictwa, struktury tur oraz spójności akapitów. Do kroku 112K model już to wszystko zrobił. Próbki audytów w 112K pokazały spójne tury konwersacyjne, haiku, Q&A oraz dialogi. Pierwotny cel rozgrzewki (chronić delikatny nowy model przed chaosem gradientów) już nie ma zastosowania.


Polish Nie Restartuje, Tylko Przeważa

Polish to perturbacja programu nauczania, a nie nowy przebieg. Ten sam cel 200K, ta sama architektura, ten sam stan optymalizatora, ta sama historia strat. Co się zmienia: suwaki i dolne limity źródeł są przeważane, aby faworyzować konwersację zamiast ram wiedzy. Z modelem już spójnym, każde aktywne źródło jest dozwolone od kroku 112,619 wzwyż.


Tabela Podsumowująca


Fazacurriculum_warmup_stepsDlaczego
v1(nieobecny)Wszystkie 16 źródeł z kroku 0 -> kolaps
v2 (kroki 0-200K)20,000Ochrona świeżo zainicjalizowanych wag przed chaosem gradientów
v3 base (kroki 0-112K)20,000Taka sama ochrona jak w v2
v3 polish (kroki 112K-200K)0Model już spójny; nie ma kruchego reżimu inicjalizacji do ochrony

Dlaczego wyłączenie rozgrzewki w fazie polish jest bezpieczne

Argumentuj (w 2-3 zdaniach), dlaczego ustawienie curriculum_warmup_steps = 0 w punkcie pivot v3 polish NIE odtwarza kolapsu v1, mimo że obie sesje mają 'wszystkie źródła aktywne od bieżącego kroku'. Odnieś się do stanu modelu w kroku 112K.