更新时间:2024-05-06 GMT+08:00

准备算法简介

机器学习从有限的观测数据中学习一般性的规律,并利用这些规律对未知的数据进行预测。为了获取更准确的预测结果,用户需要选择一个合适的算法来训练模型。针对不同的场景,ModelArts提供大量的算法样例。以下章节提供了关于业务场景、算法学习方式、算法实现方式的指导。

选择算法的实现方式

ModelArts提供如下方式实现模型训练。

  • 使用预置框架

    如果您需要使用自己开发的算法,可以选择使用ModelArts预置框架。ModelArts支持了大多数主流的AI引擎,详细请参见预置训练引擎。这些预置引擎预加载了一些额外的python包,例如numpy等;也支持您通过在代码目录中使用“requirements.txt”文件安装依赖包。使用预置框架创建训练作业请参考使用预置框架(自定义脚本)指导。

  • 使用自定义镜像

    订阅算法和预置框架涵盖了大部分的训练场景。针对特殊场景,ModelArts支持用户构建自定义镜像用于模型训练。自定义镜像需上传至容器镜像服务(SWR),才能用于ModelArts上训练,请参考使用自定义镜像训练模型。由于自定义镜像的制作要求用户对容器相关知识有比较深刻的了解,除非订阅算法和预置引擎无法满足需求,否则不推荐使用。

选择算法的学习方式

ModelArts支持用户根据实际需求进行不同方式的模型训练。

  • 离线学习

    离线学习是训练中最基本的方式。离线学习需要一次性提供训练所需的所有数据,在训练完成后,目标函数的优化就停止了。使用离线学习的优势是模型稳定性高,便于做模型的验证与评估。

  • 增量学习

    增量学习是一个连续不断的学习过程。相较于离线学习,增量学习不需要一次性存储所有的训练数据,缓解了存储资源有限的问题;另一方面,增量学习节约了重新训练中需要消耗大量算力、时间以及经济成本。