机器学习框架的目标

  1. 神经网路编程

    神经网络需要一个共同的系统进行开发、训练和部署。

  2. 自动微分

    训练神经网络的过程本质上是模型参数的迭代,这些参数需要持续计算梯度(Gradients)迭代改经。梯度的计算往往需要结合训练数据、数据标注和损失函数(Loss Function)。手工计算梯度很麻烦,机器学习框架需要根据用户给的框架全自动计算梯度。

  3. 数据处理

    神经网络训练、测试、验证都需要数据,机器学习框架应该支持数据的读取、存储、和预处理(比如数据增强和数据清洗)。

  4. 模型训练和部署

    训练好后的模型需要部署到推理设备才能使用。

  5. 硬件加速

    机器学习框架需要高效利用多种硬件加速器。比如 cuda。

  6. 分布式训练

    随着模型规模的增大,单机器训练神经网络效率太低,机器学习框架应该支持分布式训练。

参考

posted @ 2023-08-04 13:44  machine_gun_lin  阅读(63)  评论(0编辑  收藏  举报