Trening AI opiera się na ogromnych zbiorach danych i wydajnych GPU.
Wracam do tego wielokrotnie, ponieważ jest to zwykła prawda leżąca u podstaw większości nowoczesnych modeli. Trening to etap, w którym model uczy się wzorców z przykładów. Jeśli przykładów jest za mało, model przyswaja wąskie nawyki. Jeśli moc obliczeniowa jest zbyt słaba, praca trwa zbyt długo lub nie mieści się w pamięci.
Zbiór danych to po prostu zestaw przykładów, które widzi model. W przypadku modeli obrazowych może to oznaczać miliony zdjęć. W przypadku modeli językowych mogą to być ogromne kolekcje tekstu, które po oczyszczeniu i tokenizacji zajmują wiele terabajtów lub więcej. Rozmiar ma znaczenie, ponieważ model nie zapamiętuje pojedynczego przykładu. Próbuje on nauczyć się wzorców, które obowiązują w wielu przykładach.
Właśnie tu zaczyna dawać o sobie znać skala. Trening nie polega na jednokrotnym przejrzaniu małego folderu z plikami. To powtarzane operacje matematyczne na dużych partiach danych. Model składa predykcję, porównuje ją z poprawną odpowiedzią, a następnie nieznacznie dostosowuje swoje wewnętrzne wagi. Proces ten powtarza się wielokrotnie. Im więcej danych, tym większe szanse modelu na nauczenie się stabilnych wzorców, ale tym więcej pracy musi wykonać system.
GPU są kluczowe, ponieważ ta praca opiera się w dużej mierze na macierzowej arytmetyce. Sieci neuronowe spędzają dużo czasu na dużych, powtarzalnych operacjach numerycznych. GPU są zaprojektowane do wykonywania wielu drobnych obliczeń jednocześnie. CPU mógłby wykonać tę pracę, ale nie jest do niej przystosowany w tej skali równoległości. Dlatego w praktyce trening zwykle przenosi się na GPU lub podobne wyspecjalizowane układy, gdy model i zbiór danych stają się duże.
Myślę, że to właśnie ten aspekt ludzie przeoczają, mówiąc o „treningu AI” tak, jakby był to jeden schludny krok. Tak naprawdę jest to problem magazynowania, problem pamięci i problem mocy obliczeniowej jednocześnie. Dane muszą być dostępne wystarczająco szybko. GPU musi być zasilane wystarczająco szybko. A system musi utrzymywać cały ten proces bez marnowania czasu.
Istnieje tu również prosty limit. Więcej danych i więcej GPU nie rozwiązują wszystkiego same w sobie. Słabe dane nadal uczą złych nawyków. Niechlujny zbiór danych może sprawić, że model zachowywać się będzie zgodnie z błędami lub szumem. Większa moc obliczeniowa może tylko przyspieszyć naukę z tego, co już istnieje. Nie naprawia ona słabego układu treningowego i nie sprawia, że każdy model staje się mądrzejszy w ten sam sposób.
Kolejnym limitem jest koszt. Duże uruchomienia treningowe mogą być drogie, ponieważ wymagają specjalistycznego sprzętu, szybkiej pamięci masowej i dobrych potoków danych. Dlatego mniejsze zespoły rzadko trenują gigantyczne modele od zera. Ponownie wykorzystują one wcześniej wytrenowane modele, dostrajają je lub trenują mniejsze systemy pod kątem wąskiego zadania. Jest to zazwyczaj bardziej praktyczna ścieżka, gdy celem jest użyteczne oprogramowanie, a nie demonstracja laboratoryjna.
Chcę też zachować ostrożność w jednym punkcie. „Ogromne zbiory danych” to prawda w świecie dużych modeli, ale nie jest to zasada obowiązująca we wszystkich zadaniach AI. Niektóre modele działają dobrze przy znacznie mniejszej ilości danych, gdy zadanie jest wąskie, a etykiety są dobre. W computer vision, na przykład, skoncentrowany zbiór danych może wystarczyć do jasnego zadania, jeśli problem jest dobrze zdefiniowany. Odpowiedni rozmiar zależy od zadania, modelu i jakości przykładów.
Mimo to sedno sprawy się nie zmienia. Trening AI jest żmudny, ponieważ uczenie się z przykładów w skali wymaga dużo danych i dużo mocy obliczeniowej. Dlatego branża wciąż krąży wokół tych dwóch potrzeb: więcej przykładów do nauki i większa moc GPU, aby uczyć się wystarczająco szybko, by miało to znaczenie.
To rodzaj szczegółów, które staram się mieć na uwadze w The Model Log. Jeden praktyczny koncept AI, jeden działający przykład i jeden szczery spojrzenie na to, co faktycznie działa.



