训练模型时的加速技巧

  • 先在更小的数据集跑通流程,各种做实验,预测效果,再扩展到更大数据集去,尤其是对于新项目。

    否则可能会花了很长时间训练才发现效果不行。

  • 混合精度

    • 不光减少内存开销,甚至直接加速收敛
  • 减少epoch

  • 使用更小模型、计算量更低架构

  • 减少数据量

  • 在一张GPU上训练多个任务会严重拖慢速度(8s/50batch→54s/50batch),还不如先完成一个,再启动另一个。

    • 单GPU利用率有剩,可在单任务中提高它,而不是再挂个任务;
    • 可用pueue管理任务顺序;
  • 优先把计算放到GPU

    • 例如in_data = data[1].to(rank).view(-1, C, H, W)就挤满了CPU,in_data = data[1].to(rank).view(-1, C, H, W)就让CPU大半空闲了

你可能感兴趣的:(人工智能,机器学习,训练模型)