deepspeed的参数

本文主要介绍了DeepSpeed的参数配置,这些参数可在ds_config里以字典格式配置。文中详细阐述了优化器、调度器、FP16训练、BF16、自动混合精度训练等内容,还提及了ZeRO内存优化、优化器卸载、参数卸载等优化方法,以及训练过程记录等要点。

deepspeed的参数很多,都可以在ds_config里面配置,字典格式,但是英文文档让人看着总感觉不习惯,所以,看完英文文档的同时,将其部分翻译成中文文档,以供后续训练的时候观看。

deepspeed的参数

train_batch_size = train_micro_batch_size_per_gpu * gradient_accumulation *GPU
train_batch_size:int 如果同时提供了train_micro_batch_size_per_gpu和gradient_accumulation_steps,则可以省略
train_micro_batch_size_per_gpu:int
gradient_accumulation_steps:int  会累计梯度,降低通信频率,但是会造成更大的内存

优化器:

"optimizer": {
    "type": "Adam",
    "params": {
      "lr": 0.001,
      "betas": [
        0.8,
        0.999
      ],
      "eps": 1e-8,
      "weight_decay": 3e-7
    }
  }
  
 #one bit Adam
 "optimizer": {
    "type": "OneBitAdam",
    "params": {
      "lr": 0.001,
      "betas": [
        0.8,
        0.999
      ],
      "eps": 1e-8,
      "weight_decay": 3e-7,
      "freeze_step": 400,  冻结步骤
      "cuda_aware": false, 指示底层 MPI 库支持 CUDA-Aware 通信 
      "comm_backend_name": "nccl" 通讯后端名称
    }
  } 
 # 0/1Adam 
  "optimizer": {
    "type": "ZeroOneAdam",
    "params": {
      "lr": 1e-3,
      "weight_decay": 0.01,
      "bias_correction": false,
      "var_freeze_step": 1000, 更新方差的最新步骤
      "var_update_scaler": 16,更新方差的间隔
      "local_step_scaler": 1000,根据学习率策略缩放局部步长的区间
      "local_step_clipper": 16,具有学习率策略的局部步长的最大间隔
      "cuda_aware": false,指示底层 MPI 库支持 CUDA-Aware 通信
      "comm_backend_name": "nccl"指示要使用哪个后端实现
    }
  }
  1 Bit Adam 的另一个例子
  "optimizer": {
    "type": "OneBitLamb",
    "params": {
      "lr": 11e-3,
      "weight_decay": 0.01,
      "bias_correction": false,
      "max_coeff": 0.3, 原始 LAMB 算法的缩放系数上限和 1 位 LAMB 的预热阶段
      "min_coeff": 0.01,原始 LAMB 算法和 1 位 LAMB 预热阶段的缩放系数下限
      "freeze_step": 1000, 原始 LAMB 算法和 1 位 LAMB 预热阶段的缩放系数下限
      "cuda_aware": false,
      "comm_backend_name": "nccl",
      "coeff_beta": 0.9,
      "factor_max": 4.0,
      "factor_min": 0.5,
      "factor_threshold": 0.1
    }
  }

调度器

调度器的链接Learning Rate Schedulers — DeepSpeed 0.10.4 documentation

 "scheduler": {
      "type": "WarmupLR",
      "params": {
          "warmup_min_lr": 0,
          "wa
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值