华为云AI开发平台ModelArtsRunner_云淘科技
本小节介绍了基于算法开发套件进行算法的训练、测试和推理等阶段的相关参数。
其中,训练、测试支持单节点或多节点分布式运行,单节点分布式启动时只需给定local_size,即会在一个机器上启动多次算法脚本,从而实现单节点多进程;多节点分布式启动则需要在各个node上指定int_method(当前仅支持TCPmethod)、rank(节点序号)、world_size(节点数)、local_size(单节点进程数)。
启动ModelArt远程分布式作业时,仅需传递world_size和local_size参数,其余参数ModelArts平台会自动传递。
通过算法外壳启动分布式会给算法脚本传递如下分布式参数,其中rank和world_size分别表示总进程序号和总进程数,local_rank表示单节点进程序号,需要脚本自行解析和配置,配置方式可以参考领域套件代码。
--launcher=utility # 分布式启动方法,基于算法外壳启动称为utility --init_method=${init_method} # TCP初始化方法,指定IP和Port --rank=${rank} # 总进程序号 --world_size=${world_size} # 总进程数 --local_rank=${local_rank} # 单节点进程序号 --local_size=${local_size} # 单节点进程数
公共参数
– alg_type:表示使用的算法类型,继承Global参数。
– run_dir:表示runner的工作目录,继承Global参数。
– pipeline:表示不同算法管控模式构成的流水线,允许command传入`–pipeline mode1,mode2,…`进行覆盖。如train, evaluate,infer。
– pipeline_maps:表示算法支持的管控模式及其对应的算法入口脚本。
算法参数
– common_args:表示算法的共性参数,所有mode的算法参数会基于其进行update,不存在时默认为空字典。
– ${mode}_args:表示pipeline_maps中各mode对应的特性参数,在特定mode进行运行时,会和common_args进行组装(common_args.update(mode_args))以构成mode最终的参数,并且允许command传入算法的任意参数进行覆盖(通过argparse解析时的无法识别参数进行传递,因此不能与common_algorithm_utility的参数重叠)。
value为None时不传递,value为”(空字符串)时作为`store_arg`传递,采用`position_args=[arg1, arg2, …]`的形式传递位置参数,采用`arg=[val1, val2, …]`的形式传递列表参数。
远程训练参数
adapter:对算法运行过程中的所有环境切换、依赖安装、数据下载、结果上传等功能进行管理与实现。对本地启动远程作业的方式进行管控。
父主题: 配置参数说明
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家