ΕπόμενοΕπόμενος οδηγός
Συσσώρευση κλίσης
Τεχνικά
Τεχνικός ΟΔΗΓΟΣ
Το gradient checkpoint (ονομάζεται επίσης activation checkpoint) είναι ένα τέχνασμα εξοικονόμησης μνήμης που απορρίπτει τις περισσότερες ενδιάμεσες ενεργοποιήσεις κατά τη διάρκεια του περάσματος προς τα εμπρός και τις υπολογίζει εκ νέου εν κινήσει κατά τη διάρκεια της backpropagation.
Ακούστε αυτόν τον οδηγόαφήγηση με AI · ~2 min
It lets you train deeper, larger networks by trading extra compute for much lower memory use.
Training normally retains intermediate activations needed for backpropagation. Activation checkpointing saves selected boundary tensors and recomputes internal activations during backward. This trades additional computation for a lower activation-memory footprint; the actual savings and runtime overhead depend on checkpoint placement, operations, model graph, and hardware. In a simplified chain of N similarly sized layers, a textbook schedule with checkpoint boundaries spaced about sqrt(N) layers apart can reduce activation storage to order sqrt(N) checkpoints, with recomputation cost governed by that schedule. This asymptotic example is not a universal prediction for framework implementations. PyTorch exposes activation-checkpointing utilities, and its current guidance also describes selective rematerialization and compiler-assisted choices. It can combine with FSDP and mixed precision, but benchmark the full training workload.
Εκπαίδευση ενός βαθύ μετασχηματιστή με μεγαλύτερο μέγεθος παρτίδας σε μια ενιαία GPU με απόρριψη και επανυπολογισμό ενεργοποιήσεων επιπέδων.
Βελτιστοποιήστε τα μοντέλα όρασης σε εικόνες υψηλής ανάλυσης όπου οι χάρτες ενεργοποίησης θα ξεχείλιζαν διαφορετικά τη μνήμη GPU.
Hugging Face Transformers που ενεργοποιούν το gradient_checkpointing=Αλήθεια για να ταιριάζει σε μοντέλα δισεκατομμυρίων παραμέτρων κατά τη λεπτομέρεια.
Συνδυασμός σημείων ελέγχου με FSDP, ώστε τόσο οι παράμετροι όσο και οι ενεργοποιήσεις να διατηρούνται μικρές, επιτρέποντας την εκπαίδευση πολύ μεγάλων μοντέλων γλώσσας.
Το gradient checkpoint είναι πλέον στάνταρ στην εκπαίδευση μεγάλων μοντέλων και αυτοματοποιείται ολοένα και περισσότερο, με τις βιβλιοθήκες να επιλέγουν τις βέλτιστες τοποθεσίες σημείων ελέγχου για εσάς. Συνδυάζεται φυσικά με FSDP, μικτή ακρίβεια και εκφόρτωση για να αυξήσει τα μεγέθη των μοντέλων. Αναμένετε «επιλεκτικά» σημεία ελέγχου που υπολογίζει εκ νέου μόνο φθηνές λειτουργίες, διατηρώντας παράλληλα τις ακριβές (όπως πίνακες προσοχής) αποθηκευμένες στην κρυφή μνήμη, καθώς και προσεγγίσεις που βασίζονται σε μεταγλωττιστή σε εργαλεία όπως το torch.compile του PyTorch που αποφασίζουν αυτόματα τι θα εξοικονομήσουν έναντι του εκ νέου υπολογισμού για την καλύτερη ισορροπία ταχύτητας-μνήμης.
Δωρεάν ενημερωτικό δελτίο
Τρία επαληθευμένα νέα AI κάθε πρωί της εβδομάδας, γραμμένα σε απλή αγγλική. Δωρεάν για πάντα, χωρίς διαφημίσεις.
Ένα email κάθε εργάσιμη ημέρα. Κατάργηση συνδρομής με ένα κλικ. Δεν πουλάμε ή μοιραζόμαστε ποτέ τη διεύθυνσή σας.
Δοκιμάστε τον εαυτό σας
Άμεση ανάδραση σε κάθε απάντηση, και πιστοποιητικό με επαληθεύσιμο ID μόλις περάσετε το μάθημα.
Υποστηρίξτε τη δωρεάν εκπαίδευση AI. AI Understanding είναι μια μη κερδοσκοπική οργάνωση 501(c)(3) — χωρίς διαφημίσεις, χωρίς τοίχο πληρωμής, ποτέ. Κάντε μια δωρεά
Το gradient checkpoint (ονομάζεται επίσης activation checkpoint) είναι ένα τέχνασμα εξοικονόμησης μνήμης που απορρίπτει τις περισσότερες ενδιάμεσες ενεργοποιήσεις κατά τη διάρκεια του περάσματος προς τα εμπρός και τις υπολογίζει εκ νέου εν κινήσει κατά τη διάρκεια της backpropagation. Σας επιτρέπει να εκπαιδεύσετε βαθύτερα, μεγαλύτερα δίκτυα ανταλλάσσοντας επιπλέον υπολογιστές για πολύ χαμηλότερη χρήση μνήμης.
Το Gradient checkpointing υπολογίζει εκ νέου τις απορριφθείσες ενεργοποιήσεις κατά το πέρασμα προς τα πίσω, ξοδεύοντας επιπλέον υπολογισμούς σε αντάλλαγμα για σημαντικά μειωμένη μνήμη.
Το Backprop υπολογίζει τις διαβαθμίσεις χρησιμοποιώντας τις ενδιάμεσες ενεργοποιήσεις από το μπροστινό πέρασμα, επομένως πρέπει να είναι διαθέσιμες εκτός εάν υπολογιστούν εκ νέου.
The square-root schedule is a theoretical result for a simplified sequential computation graph, not a universal implementation guarantee.
Recomputation overhead varies with checkpoint policy and the cost of operations selected for recomputation.
Το torch.utils.checkpoint περιτυλίγει μια λειτουργική μονάδα, ώστε οι εσωτερικές της ενεργοποιήσεις να υπολογίζονται εκ νέου κατά τη διάρκεια της επιστροφής αντί να αποθηκεύονται.
Συνέχισε να μαθαίνεις
Επιλέχθηκαν περισσότεροι οδηγοί για αυτό το θέμα
ΕπόμενοΕπόμενος οδηγός
Συσσώρευση κλίσης
Τεχνικά