Popularne tematy
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.

Andrej Karpathy
Lubię trenować duże, głębokie sieci neuronowe. Wcześniej dyrektor AI @ Tesla, zespół założycielski @ OpenAI, PhD @ Stanford.
Trzy dni temu zostawiłem autoresearch tuning nanochat na ~2 dni na modelu depth=12. Znalazł ~20 zmian, które poprawiły stratę walidacyjną. Testowałem te zmiany wczoraj i wszystkie były dodatnie oraz przeniosły się na większe modele (depth=24). Zbierając wszystkie te zmiany, dzisiaj zmierzyłem, że czas na liście wyników "Czas do GPT-2" spada z 2.02 godzin do 1.80 godzin (~11% poprawy), to będzie nowy wpis na liście wyników. Więc tak, to są prawdziwe poprawy i mają rzeczywisty wpływ. Jestem nieco zaskoczony, że moja pierwsza naiwna próba już tak dobrze zadziałała na tym, co myślałem, że już jest dość ręcznie dobrze dostrojonym projektem.
To jest dla mnie nowość, ponieważ jestem bardzo przyzwyczajony do ręcznego przeprowadzania iteracyjnej optymalizacji treningu sieci neuronowych. Wymyślasz pomysły, wdrażasz je, sprawdzasz, czy działają (lepsza strata walidacyjna), wymyślasz nowe pomysły na tej podstawie, czytasz kilka prac dla inspiracji, itd. To jest chleb powszedni tego, co robię codziennie od 20 lat. Widzenie agenta, który wykonuje ten cały proces od początku do końca i samodzielnie, przetwarzając około 700 zmian autonomicznie, jest niesamowite. Naprawdę przyjrzał się sekwencji wyników eksperymentów i wykorzystał to do zaplanowania następnych. To nie jest nowatorskie, przełomowe "badania" (jeszcze), ale wszystkie dostosowania są "prawdziwe", wcześniej ich nie znalazłem ręcznie, a one się kumulują i rzeczywiście poprawiły nanochat. Wśród większych rzeczy np.:
- Zauważył niedopatrzenie, że mój bezparametrowy QKnorm nie miał dołączonego mnożnika skali, więc moja uwaga była zbyt rozproszona. Agent znalazł mnożniki, aby ją wyostrzyć, wskazując na przyszłą pracę.
- Znalazł, że Wektory Wartości naprawdę lubią regularizację, a ja jej nie stosowałem (ups).
- Znalazł, że moja pasmowa uwaga była zbyt konserwatywna (zapomniałem ją dostroić).
- Znalazł, że bety AdamW były całkowicie pomieszane.
- Dostosował harmonogram wygaszania wag.
- Dostosował inicjalizację sieci.
To jest na dodatek do całego dostrajania, które już zrobiłem przez dłuższy czas. Dokładny commit jest tutaj, z tej "rundy 1" autoresearch. Zamierzam rozpocząć "rundę 2", a równolegle zastanawiam się, jak wiele agentów może współpracować, aby odblokować równoległość.
Wszystkie laboratoria LLM frontier będą to robić. To jest ostateczna walka z bossem. Oczywiście jest to znacznie bardziej skomplikowane w skali - nie masz tylko jednego pliku train.py do dostrojenia. Ale zrobienie tego to "tylko inżynieria" i to zadziała. Uruchamiasz rój agentów, sprawiasz, że współpracują, aby dostroić mniejsze modele, promujesz najbardziej obiecujące pomysły do coraz większych skal, a ludzie (opcjonalnie) przyczyniają się na marginesie.
A bardziej ogólnie, *jakikolwiek* wskaźnik, który cię interesuje, a który jest rozsądnie efektywny do oceny (lub który ma bardziej efektywne wskaźniki zastępcze, takie jak trenowanie mniejszej sieci) może być autoresearchowany przez rój agentów. Warto pomyśleć, czy twój problem również się w to wpisuje.

428
Spakowałem projekt "autoresearch" do nowego, samodzielnego minimalnego repozytorium, jeśli ktoś chciałby się pobawić w weekend. To w zasadzie rdzeń treningowy nanochat LLM, uproszczony do wersji na jeden GPU, w jednym pliku o długości ~630 linii kodu, a następnie:
- człowiek iteruje nad promptem (.md)
- agent AI iteruje nad kodem treningowym (.py)
Celem jest zaprojektowanie swoich agentów, aby osiągały najszybszy postęp w badaniach w nieskończoność, bez jakiegokolwiek twojego zaangażowania. Na obrazku każda kropka to pełne uruchomienie treningu LLM, które trwa dokładnie 5 minut. Agent działa w autonomicznej pętli na gałęzi funkcji git i gromadzi commity git do skryptu treningowego, gdy znajduje lepsze ustawienia (o niższej stracie walidacyjnej na końcu) architektury sieci neuronowej, optymalizatora, wszystkich hiperparametrów itd. Możesz sobie wyobrazić porównywanie postępu badań różnych promptów, różnych agentów itd.
Część kodu, część sci-fi i szczypta psychozy :)

1,41K
Najlepsze
Ranking
Ulubione
