СледваСледващо ръководство
Адам и адаптивни оптимизатори
технически
Техническо РЪКОВОДСТВО
Трик за спестяване на памет, който паркира тежкото счетоводство на обучението (състояния на оптимизатора, градиенти, понякога тегла) в CPU RAM или на NVMe SSD вместо в оскъдната GPU памет.
Чуйте това ръководствоAI-разказан · ~2 min
Позволява на хората да обучават много по-големи модели, отколкото иначе би позволила паметта на GPU.
Когато обучавате невронна мрежа с оптимизатор като Адам, всеки параметър носи допълнителен багаж: две текущи статистики (инерция и дисперсия), плюс пълно прецизно копие на теглото, плюс неговия градиент. При обучение със смесена прецизност това може да възлиза на приблизително 16 байта на параметър, намалявайки 2-та байта за самото тегло. Разтоварването премества този багаж извън GPU. Разтоварването на CPU предава състоянията на оптимизатора в обикновена системна RAM през PCIe шината, докато разтоварването на NVMe ги изтласква до бързи твърди дискове. Популяризирана от ZeRO-Infinity и ZeRO-Offload на DeepSpeed, техниката обменя сурова скорост за капацитет, позволявайки на един GPU или малък клъстер да прецизира моделите с милиарди параметри.
DeepSpeed’s ZeRO-Offload tutorial trains a ten-billion-parameter GPT-2 configuration on a 32 GB V100, with CPU optimizer offloading and activation checkpointing.
A research team evaluates ZeRO-Infinity with CPU and NVMe tiers for a model that exceeds GPU-only capacity.
A fine-tuning team configures CPU optimizer offloading and measures host memory use and update time.
A team compares larger GPUs with offloading, accounting for CPU, storage, and transfer costs.
Тъй като моделите продължават да израстват GPU паметта, разтоварването на нива става стандарт, а не екзотика. Очаквайте по-тясна интеграция с по-бързи връзки като NVLink-C2C и CXL пулове памет, които размиват границата CPU-GPU, плюс по-интелигентни програмисти за планиране, които предвиждат кои състояния да бъдат предварително избрани. Архитектурите с унифицирана памет като Grace Hopper намаляват неустойката на PCIe, а рамките се стремят да направят многослойното разтоварване почти прозрачно, така че любителите да могат да настройват фино големи модели на скромен хардуер.
Безплатен бюлетин
Три проверени AI истории всяка делнична сутрин, написани на достъпен език. Безплатно завинаги, без реклами.
Един имейл всеки делничен ден. Отписване с едно кликване. Никога не продаваме и не споделяме вашия имейл адрес.
Тествайте себе си
Незабавна обратна връзка за всеки отговор и сертификат за споделяне с подлежащ на проверка идентификационен номер, след като преминете курс.
Подкрепете безплатното AI образование. AI Understanding е 501(c)(3) с нестопанска цел — без реклами, без платен достъп, никога. Направете дарение
Трик за спестяване на памет, който паркира тежкото счетоводство на обучението (състояния на оптимизатора, градиенти, понякога тегла) в CPU RAM или на NVMe SSD вместо в оскъдната GPU памет. Позволява на хората да обучават много по-големи модели, отколкото иначе би позволила паметта на GPU.
Разтоварването премества тежките състояния на оптимизатора от GPU в CPU RAM или NVMe, освобождавайки GPU памет, така че по-големите модели да могат да бъдат обучени на същия хардуер.
Each FP32 value uses four bytes: two moments plus one master weight total twelve. A sixteen-byte mixed-precision estimate includes other tensors as well.
ZeRO-Offload и ZeRO-Infinity на DeepSpeed представиха и популяризираха разтоварващи състояния на оптимизатора към CPU и NVMe в мащаб.
Преместването на състояния извън GPU означава прехвърляне на данни през PCIe или към NVMe, което е по-бавно от паметта на GPU, така че пропускателната способност пада, освен ако не се припокрива с изчисление.
Планировчиците извличат предварително необходимите дялове през PCIe, докато графичният процесор все още изчислява, припокривайки комуникацията с изчислението, за да маскира латентността.
Продължавай да учиш
Още ръководства, избрани за тази тема
СледваСледващо ръководство
Адам и адаптивни оптимизатори
технически