Het uniforme E4M3-formaat in DeepSeek-V3 draagt aanzienlijk bij aan de efficiëntie van het model door verschillende uitdagingen aan te gaan die verband houden met training met gemengde precisie, met name die gerelateerd aan dynamisch bereik en precisie. Hier is een gedetailleerde uitleg over hoe dit formaat de efficiëntie verbetert:
Fijnkorrelige kwantisatiestrategie
Deepseek-V3 maakt gebruik van een fijnkorrelige kwantisatiestrategie, waardoor het het E4M3-formaat in alle trainingsfasen effectief kan gebruiken. In tegenstelling tot eerdere kaders die hybride FP8-formaten gebruikten (bijv. E4M3 voor de voorwaartse pas en E5M2 voor de achterwaartse pass), zorgt de benadering van DeepSeek-V3 ervoor dat activeringen worden gegroepeerd en geschaald op een 1x128-tegelsbasis, terwijl gewichten worden geschaald op een 128x128-blokbasis [1] [2] [2]. Deze granulariteit helpt bij het beter omgaan met uitbijters door de schaalfactoren voor elke groep dynamisch aan te passen, waardoor de impact van beperkt dynamisch bereik inherent is aan FP8 -formaten [3].
Dynamische schaalverdeling en online kwantisatie
Het model maakt gebruik van online kwantisatie, waarbij schaalfactoren tijdens de training dynamisch worden berekend voor elke activeringstegel of gewichtsblok. Dit elimineert de noodzaak om historische maximale waarden te handhaven, het raamwerk te vereenvoudigen en de nauwkeurigheid te verbeteren [1] [2]. Door deze schaalfactoren dynamisch aan te passen, kan DeepSeek-V3 het gebruik van de beschikbare FP8-nummerweergave emmers optimaliseren, zodat de meeste waarden niet in een smal bereik zijn geclusterd, wat anders zou leiden tot een slechte precisie voor kleinere waarden [3].
Verlaagd geheugengebruik en rekenkosten
Het uniforme E4M3-formaat, gecombineerd met fijnkorrelige kwantisatie, vermindert het geheugengebruik aanzienlijk. Door activeringen en optimizer-toestanden op te slaan in formaten met een lagere precisie (bijv. FP8 voor activeringen), minimaliseert DeepSeek-V3 geheugenvereisten, wat cruciaal is voor grootschalige modellen [1] [5]. Bovendien vermindert het gebruik van FP8 voor belangrijke berekeningen de rekenkosten, omdat het vereist dat minder gegevens worden verwerkt in vergelijking met formaten met een hoger precisie zoals FP16 of FP32 [5].
Verbeterde numerieke stabiliteit
Deepseek-V3 behandelt ook de kwestie van numerieke precisieverlies geassocieerd met FP8-training door gedeeltelijke resultaten te promoten bij FP32-registers met specifieke intervallen tijdens accumulatie. Deze strategie vermindert fouten die worden veroorzaakt door de beperkte bitbreedte-accumulatie in tensorkernen, waardoor numerieke stabiliteit en betrouwbare training [1] [7] zorgt.
Samenvattend, het uniforme E4M3-formaat in DeepSeek-V3 verbetert de efficiëntie door fijnkorrelige kwantisatie, dynamische schaalverdeling, verminderd geheugengebruik en verbeterde numerieke stabiliteit mogelijk te maken. Deze innovaties stellen Deepseek-V3 in staat om ultramoderne prestaties te bereiken en tegelijkertijd computationele bronnen te optimaliseren.
Citaten:
[1] https://community.aws/content/2rjj1wkztsfywvfsiibhwxeqmf1/four-unique-takeaways-from-deepseek-v3?lang=en
[2] https://research.meekolab.com/deepseeks-low-level-hardware-magic
[3] https://fireworks.ai/blog/deepseek-model-architecture
[4] https://dirox.com/post/deepseek-v3-the-open-source-ai-revolution
[5] https://cciedump.spoto.net/newblog/overview-of-deepseek-v3:-latest-deepseek-technical-report.html
[6] https://adasci.org/deepseek-v3-expleur-optimizing-efficiency-and-scale/
[7] https://www.linkedin.com/posts/danielhanchen_deepseek-v3-is-the most-powerful-open-source-activity-727848573006200832-kta_
[8] https://www.reddit.com/r/localllama/comment