RunConfig参数支持说明
本节描述了TensorFlow RunConfig原生参数在NPURunConfig类中的支持情况。
NPURunConfig支持参数
参数名 |
描述 |
---|---|
model_dir |
保存模型路径。默认值:None。 如果NPURunConfig和NPUEstimator配置的model_dir不同,系统报错。 如果NPURunConfig和NPUEstimator仅一个接口配置model_dir,以配置的路径为准。 如果NPURunConfig和NPUEstimator均未配置model_dir,则系统在当前脚本执行路径创建一个model_dir_xxxxxxxxxx目录保存模型文件。 |
tf_random_seed |
初始化变量的种子。默认值:None。 |
save_summary_steps |
每隔多少step保存一次Summary。默认值:0。 该参数仅适用于iterations_per_loop=1的场景,iterations_per_loop>1时,可能无法按照配置的值保存,请参考“Log/Summary”专题实现信息保存。 |
save_checkpoints_steps |
每隔多少step保存一次checkpoint。默认值:None。
如果用户只希望在某个device上保存checkpoint,而不希望在其他device上保存checkpoint数据,可以按照如下方法修改训练脚本。 TensorFlow原始代码: self._classifier=tf.estimator.Estimator( model_fn=cnn_model_fn, model_dir=self._model_dir, config=tf.estimator.RunConfig( save_checkpoints_steps=50 if hvd.rank() == 0 else None, keep_checkpoint_max=1)) 迁移后的代码: self._classifier=NPUEstimator( model_fn=cnn_model_fn, model_dir=self._model_dir, config=tf.estimator.NPURunConfig( save_checkpoints_steps=50 if get_rank_id() == 0 else 0, keep_checkpoint_max=1)) |
save_checkpoints_secs |
每隔多少秒保存一次checkpoint。默认值:None。 与save_checkpoints_steps不能同时配置。 |
session_config |
设置session参数的ConfigProto格式对象。默认值:None。 |
keep_checkpoint_max |
最大保存多少个checkpoint文件。默认值:5 |
keep_checkpoint_every_n_hours |
保留N个小时的checkpoint文件。 默认值:10000,可有效禁用该功能。 如需使用该功能,keep_checkpoint_max需要配置足够大。 |
log_step_count_steps |
每隔多少step,记录global step和loss值一次。默认值:100。 该参数仅适用于iterations_per_loop=1的场景,iterations_per_loop>1时,可能无法按照配置的值保存,请参考“Log/Summary”专题实现信息保存。 |
NPURunConfig不支持参数
如下RunConfig中的参数在NPURunConfig中不支持。
参数名 |
描述 |
---|---|
train_distribute |
指明分布式训练策略,分布式相关配置由experimental_distribute指定。 仅TF Adapte迁移工具会使用该参数,不建议用户单独使用。 |
device_fn |
获取每个Operation的Device字段的function。 |
protocol |
可选参数,指定启动Server时使用的协议。无表示默认为GRPC。 |
eval_distribute |
是否分布式验证,分布式相关配置由experimental_distribute指定。 仅TF Adapte迁移工具会使用该参数,不建议用户单独使用。 |
experimental_distribute |
分布式配置。 |