|
@@ -1,2 +1,25 @@
|
|
|
# accelerate
|
|
|
+基于pytorch,更轻松地进行**分布式训练**和混合精度训练,提高模型训练效率
|
|
|
+
|
|
|
+## Usage
|
|
|
+
|
|
|
+```
|
|
|
+from accelerate import Accelerator
|
|
|
+
|
|
|
+# 初始化 Accelerator
|
|
|
+accelerator = Accelerator()
|
|
|
+
|
|
|
+# 移除代码中所有的 to(device),会自动分配gpu,原有的model交给 prepare 处理
|
|
|
+model, optimizer, train_dataloader = accelerator.prepare(model, optimizer, train_dataloader)
|
|
|
+
|
|
|
+# 训练循环
|
|
|
+for epoch in range(10):
|
|
|
+ for source, targets in train_dataloader:
|
|
|
+ optimizer.zero_grad()
|
|
|
+ output = model(source)
|
|
|
+ loss = F.cross_entropy(output, targets)
|
|
|
+ accelerator.backward(loss)
|
|
|
+ optimizer.step()
|
|
|
+
|
|
|
+```
|
|
|
|