Modele i platformy AI

GLM-130B: Otwarty, dwujęzyczny model językowy przedtreningowy

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Ramka GLM-130B to dwujęzyczny, przedtreningowy model językowy o ponad 130 miliardach parametrów, który może generować dane wyjściowe w języku angielskim i chińskim. Ramka GLM-130B to próba otwarcia modelu językowego w skali ponad 100 miliardów parametrów i omówienia, jak ramki o tak dużej skali mogą być przedtreningowane, ponieważ obecnie trening modelu o tak dużej skali jest często zakłócany przez problemy, takie jak rozbieżność i szczyty strat.

W tym artykule będziemy rozmawiać o ramce GLM-130B, która próbuje opracować metodę efektywnego przedtreningu dużych modeli językowych z setkami miliardów parametrów. Będziemy się głębiej zajmować architekturą i procesem treningu ramki GLM-130B, a także wyborami projektowymi, które nie tylko zwiększają wydajność, ale także stabilność. Początkowe eksperymenty przeprowadzone w celu przetestowania działania ramki GLM-130B na szerokim zakresie benchmarków angielskich dały wynik, w którym model GLM-130B przewyższa obecny stan sztuki ramkę GPT-3 o znaczną różnicę. Zatem zacznijmy i zobaczmy, jak ramka GLM-130B dostarcza tak spójne, dokładne i stabilne wyniki.

Wprowadzenie do ramki GLM-130B

Duże modele językowe, które mogą działać w trybie few-shot i zero-shot, zwłaszcza te z ponad 100 miliardami parametrów, prezentują atrakcyjne prawa skali, z których ramka GPT-3 jest jednym z najlepszych wykonujących ramkami, które dostarczają znaczne ulepszenia wydajności w porównaniu z poprzednikiem, ramką BERT. Jednak pomimo popularności ramki GPT-3 i jej szerokiego zastosowania, proces treningu i w pewnym sensie sama ramka GPT-3 były nieprzezroczyste dla publiczności. Ponadto, empiryczne wyliczanie wszystkich możliwych projektów treningu LLM o ponad 100 miliardach parametrów jest obliczeniowo nieopłacalne, co sprawia, że jest jeszcze bardziej krytyczne, aby opracować metodę przedtreningu dla dużych ramkek LLM.

Powyższy punkt sprawia, że udostępnienie działania i procesu treningu wysokiej jakości dużych ramkek LLM, takich jak GPT-3, jest sprawą o krytycznej wartości, a z uwzględnieniem uwag etycznych, ramka GLM-130B jest próbą przedtreningu dokładnego i otwartego LLM o ponad 100 miliardach parametrów. Podczas próby zespołu deweloperskiego GLM-130B zaobserwowano, że przedtrening dużych ramkek LLM jest często towarzyszy szerokiemu zakresowi wyzwań inżynieryjnych i technicznych w zakresie stabilności przedtreningu, wydajności i zbieżności.

Aby być bardziej konkretnym, GLM-130B to gęsta, dwukierunkowa ramka o ponad 130 miliardach parametrów, przedtreningowa na 400 miliardach tokenów na klastrze 96 węzłów GPU NVIDIA DGX-A100 przez okres prawie dwóch miesięcy. Ponadto, zamiast wyboru architektury w stylu GPT, ramka GLM-130B wykorzystuje algorytm GLM lub Ogólny Model Językowy, aby wykorzystać autoregresyjne wypełnianie pustych miejsc jako cel treningu, oraz dwukierunkową uwagę. Poniższa tabela porównuje ramkę GLM-130B z innymi modelami o ponad 100 miliardach parametrów, w tym GPT, BLOOM-176B i OPT-175B.

Koncepty inżynieryjne i deweloperskie zaangażowane w ramkę GLM-130B przewyższają prawie każdą dużą ramkę LLM, w tym GPT-3 i PaLM 540B o ponad 500 miliardach parametrów w wielu przypadkach i na szerokim zakresie benchmarków. Poniższy rysunek porównuje wyniki ramki GLM-130B z modelami o ponad 100 miliardach parametrów, i jak widać, ramka GLM-130B ma znacznie mniej toksyczności generacji i uprzedzeń w porównaniu z innymi.

Ostatecznie ramka GLM-130B została zaprojektowana w taki sposób, aby umożliwić jak największej liczbie deweloperów prowadzenie badań nad ramkami o ponad 100 miliardach parametrów, i istnieją dwa sposoby, w jakie ramka GLM-130B to osiąga. Po pierwsze, zamiast wykorzystania ponad 175 miliardów parametrów, tak jak BLOOM i OPT, ramka GLM-130B wykorzystuje 130 miliardów parametrów, ponieważ rozmiar modelu wspiera interferencję nawet na samym serwerze A100. Po drugie, wymagania dotyczące GPU do uruchomienia ramki GLM-130B są mniejsze w porównaniu z innymi ramkami LLM, a ramka GLM-130B osiąga to, kwantyzując oryginalną ramkę do precyzji INT4. Kwiatyzacja INT4 wykorzystywana przez ramkę GLM-130B zwiększa wydajność, utrzymując przy tym znikome obniżenie wydajności.

GLM-130B: Architektura

Indukcyjne uprzedzenie modelu maszynowego jest opisane przez jego architekturę, i nie jest zaskoczeniem, gdy deweloperzy nie mogą zbadać różnych projektów architektonicznych dla dużych modeli językowych, biorąc pod uwagę obliczeniową opłacalność i wykonalność. Mówiąc to, zobaczmy architekturę GLM-130B.

Duże ramki LLM, takie jak PaLM, GPT i więcej, mają ponad 100 miliardów parametrów i są zbudowane na konwencjonalnej architekturze dekodera tylko w stylu GPT dla autoregresyjnego modelowania językowego. Z drugiej strony, ramka GLM-130B bada możliwość wykorzystania dwukierunkowego Ogólnego Modelu Językowego lub GLM, modelu językowego opartego na transformatore, który ma na celu wykorzystać autoregresyjne wypełnianie pustych miejsc jako cel treningu, jako podstawy. Krótko mówiąc, dla danego ciągu tekstu ramka GLM próbuje wybrać fragmenty tekstu, które są następnie zastępowane przez jeden token maski.

Dwukierunkowa uwaga Ogólnego Modelu Językowego nad nieuszkodzonymi lub niezamaskowanymi kontekstami jest tym, co odróżnia ramkę GLM-130B od podejścia w stylu GPT, które wykorzystuje podejście jednorodne. Ponadto, aby wspierać zarówno generację, jak i zrozumienie danych, ramka GLM łączy dwie strategie korupcji, z których każda jest wskazywana przez specjalny i unikalny token maski.

  • [MASK]: [MASK] to strategia korupcji, która wykorzystuje krótkie puste miejsca w zdaniach, których długości sumują się do pewnego procentu wejścia.
  • [gMASK]: [gMASK] to strategia korupcji, która wykorzystuje losowe długości pustych miejsc na końcu zdania z kontekstami prefiksów.

Podejście ramki GLM jest tym, co pozwala ramce zarejestrować wynik z dokładnością powyżej 80% w teście LAMBADA zero-shot i przewyższa ramki PaLM 540B i GPT-3.

Normalizacja warstwy

Jednym z głównych wyzwań, z którymi spotykają się deweloperzy podczas treningu ramki LLM, jest niestabilność treningu, i wykorzystanie odpowiedniej normalizacji warstwy (LN) może pomóc w treningu LLM. Ramka GLM-130B wykorzystuje podejście Post-LN dzięki jego wynikom w zadaniach downstream.

FFN i kodowanie pozycyjne

Sieci neuronowe feedforward (FFN) i kodowanie pozycyjne to dwa podejścia przyjęte przez ramkę GLM-130B, aby wprowadzić wysokiej jakości wyniki downstream i stabilność treningu.

Ustawienia przedtreningu

Cele przedtreningu ramki GLM-130B nie tylko obejmują wielozadaniowe uczenie dla niewielkiej liczby tokenów, ale także obejmują samouczne GLM dla autoregresyjnego wypełniania pustych miejsc, z oczekiwaniem, że podejście to pomoże ramce GLM-130B w zadaniach downstream. Mówiąc to, ustawienia przedtreningu ramki GLM-130B wyglądają następująco.

Samouczne wypełnianie pustych miejsc

Jak już wspomniano, ramka GLM-130B wykorzystuje dwie strategie korupcji, a mianowicie [MASK] i [gMASK], i jedna z tych strategii jest niezależnie stosowana do każdego indywidualnego ciągu treningowego, jeden po drugim. Do wypełniania pustych miejsc strategia [MASK] maskuje ciągłe fragmenty w 30% ciągu treningowego, gdzie długości fragmentów sumują się do 15% wejścia, i podąża za rozkładem Poissona. Dla pozostałych 70% ciągu prefiks każdego ciągu jest trzymany jako kontekst, a strategia [gMASK] pomaga w maskowaniu reszty, a długość maski jest następnie próbkowana za pomocą rozkładu jednostajnego.

Wielozadaniowe instrukcje przedtreningu

Wskazano, że stosowanie podejścia wielozadaniowego do przedtreningu modeli może dać lepsze wyniki niż dostrajanie, aby poprawić transfer zadań w ustawieniu zero-shot. Następnie, ramka GLM-130B proponuje wykorzystanie tablicy danych z instrukcjami, w tym generację języka, zrozumienie i ekstrakcję informacji podczas przedtreningu.

W porównaniu z innymi podejściami do transferu zadań zero-shot, które wykorzystują wielozadaniowe dostrajanie, podejście GLM-130B zajmuje tylko 5% wszystkich tokenów i jest ustawione podczas fazy przedtreningu w celu zapobiegania psuciu innych umiejętności ramki LLM, czyli nieograniczonej generacji.

Strategia 3D

Istnieją dwie praktyki de facto dla treningu dużych modeli z miliardami parametrów, a mianowicie paralelizm modelu tensorowego i paralelizm danych. W celu minimalizacji wykorzystania GPU i obsługi ogromnych wymagań GPU, ramka GLM-130B wdraża strategię 3D, która łączy strategię paralelizmu rurociągu z paralelizmem modelu tensorowego i paralelizmem danych.

GLM-130B: Stabilność treningu

Stabilność treningu jest ważnym czynnikiem przy określaniu jakości LLM, a stabilność treningu jest silnie wpływana przez liczbę tokenów, które przechodzą. Ponadto, jest niezbędne, aby ustalić kompromis między stabilnością a wydajnością w odniesieniu do formatów zmiennoprzecinkowych, biorąc pod uwagę ograniczenia obliczeniowe. Na przykład, niskie precyzje formatów zmiennoprzecinkowych zwiększają wydajność obliczeniową, ale często powodują awarie treningu, ponieważ są one podatne na błędy przepełnienia i niedopełnienia.

Mieszana precyzja

W celu zwiększenia dokładności treningu i zmniejszenia zużycia pamięci, ramka GLM-130B stosuje powszechną praktykę wykorzystania mieszanych precyzji, czyli FP16 dla obu kierunków i FP32 dla stanów optymalizatora. Podobnie jak inne popularne ramki LLM, w tym BLOOM-176B i OPT-175B, faza treningu ramki GLM-130B z wykorzystaniem strategii mieszanej precyzji napotyka częste szczyty strat, a częstotliwość tych szczytów strat tendencję do zwiększania się wraz z kontynuacją treningu modelu.

Po pierwsze, skala wartości głównego gałęzi transformatora może być ogromna w głębszych warstwach przy użyciu Pre-LN, a w ramce GLM-130B jest to rozwiązane przez wykorzystanie DeepNorm opartego na Pre-LN, który zapewnia, że skala wartości pozostaje ograniczona w każdym momencie. Po drugie, w miarę skalowania modelu, wyniki uwagi rosną do punktu, w którym przekraczają zakres FP16.

Skalowanie warstwy wejściowej lub EGS

Deweloperzy pracujący nad ramką GLM-130B stwierdzili, że norma gradientu może działać jako informacyjny wskaźnik awarii treningu, a awaria treningu zwykle następuje po skoku normy gradientu. Przyczyną tych skoków są nieprawidłowe gradienty warstwy wejściowej, a deweloperzy zaobserwowali, że w porównaniu z normą gradientu innych warstw, norma gradientu warstw wejściowych jest większa o kilka rzędów wielkości i również tendencję do dramatycznych fluktuacji w początkowej fazie treningu ramki.

GLM-130B: Wyniki i wydajność

Aby ocenić wyniki ramki GLM-130B dla zadań angielskich, stosuje te same ustawienia, co inne ramki LLM, w tym PaLM i GPT-3, a ponieważ ramka GLM-130B jest ramką dwujęzyczną, jest również oceniana na kilku chińskich benchmarkach. Wyniki ramki GLM-130B będą mierzone na kilku benchmarkach, w tym modelowaniu języka, MMLU lub Duże Zadanie Zrozumienia Języka, BIG-Bench lub Poza Imitacją Gry Benchmark, i CLUE lub Chińskie Zrozumienie Języka.

Modelowanie języka

Test modelowania języka na ramce GLM-130B jest przeprowadzany na dwóch zestawach danych: LAMBADA i Pile.

Zestaw danych LAMBADA jest używany do testowania możliwości modelowania ostatniego słowa LLM, a ramka GLM-130B osiąga wynik z dokładnością 80,2 w ustawieniu dwujęzycznym, i ustanawia nowy rekord benchmarku na zestawie danych LAMBADA.

Z drugiej strony, Pile to zestaw testowy, który składa się z serii benchmarków dla modeli językowych. Średnio, w porównaniu z GPT-3 i Jurassic-1, ramka GLM-130B dostarcza najlepsze wyniki na 18 wspólnych zestawach testowych pod względem ważonych BPBs. Wyniki demonstrują silne możliwości językowe ramki GLM-130B, a wyniki są zawarte w poniższej tabeli.

MMLU lub Duże Zadanie Zrozumienia Języka

MMLU lub Duże Zadanie Zrozumienia Języka to zróżnicowany benchmark, który składa się z ponad 50 zadań odpowiedzi na pytania wielokrotnego wyboru dotyczących ludzkiej inteligencji i wiedzy, od poziomu szkoły średniej do poziomu eksperta, i jest wydany po przeszukaniu zestawu testowego Pile, i służy jako idealny test, aby ocenić możliwości few-shot ramki LLM.

Jak widać, w ustawieniu few-shot (5-shot), wyniki ramki GLM-130B są bliskie wynikom modelu GPT-3 po obejrzeniu około 300 miliardów tokenów. Wyniki kontynuują poprawę wraz z postępem treningu, a po zakończeniu treningu ramka osiąga wynik z dokładnością 44,8 po obejrzeniu 400 miliardów tokenów.

BIG-Bench lub Poza Imitacją Gry Benchmark

BIG-Bench lub Poza Imitacją Gry Benchmark to zestaw zadań, które testują możliwości modelu w zakresie wiedzy, rozumowania i zdrowego rozsądku. Jak widać na poniższym rysunku, w ustawieniu zero-shot ramka GLM-130B przewyższa ramki PaLM 540B i GPT-3 175B, co może być spowodowane MIP i dwukierunkową uwagą, aby poprawić wyniki ramki GLM-130B w nieznanych zadaniach w ustawieniu zero-shot.

CLUE lub Chińskie Zrozumienie Języka

Wyniki ramki GLM-130B w chińskim ustawieniu zero-shot są oceniane na ustanowionych zadaniach NLP, w tym CLUE i FewCLUE, i są porównywane z modelem 260B ERNIE Titan 3.0, który jest największym istniejącym modelem języka chińskiego. Jak widać, ramka GLM-130B stale przewyższa model 260B ERNIE Titan 3.0 na 12 różnych zadaniach, i wykonuje o prawie 260% lepiej niż model ERNIE na dwóch abstrakcyjnych zestawach danych MRC.

Podsumowanie

W tym artykule omówiliśmy ramkę GLM-130B, dwujęzyczny, przedtreningowy model językowy, który ma na celu promowanie inkluzywnych badań nad LLM. Architektura, inżynieria i przedsięwzięcia techniczne mają na celu dostarczenie społeczności AI lepszego wglądu w architekturę ramkek LLM, wydajność i stabilność treningu, cele przedtreningu i tanie interferencje.

"Inżynier z zawodu, pisarz z serca". Kunal jest technicznym pisarzem z głęboką miłością i zrozumieniem AI i ML, poświęconym uproszczeniu złożonych pojęć w tych dziedzinach poprzez swoje angażujące i informacyjne dokumentacje.