---
title: NPUEstimator构造函数
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/TensorFlowCommercial/latest/migration/tfmigr1/tfmigr1_tfadapi_0047.html
sourcePath: /source/zh/TensorFlowCommercial/900/migration/tfmigr1/tfmigr1_tfadapi_0047.html
indexId: d06ba02fdf4c8765a7d061f8dbe80f52123171158024e5899ad0bc7fcd64a76679
---
# NPUEstimator构造函数

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | √ |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | ☓ |
| Atlas 推理系列产品 | ☓ |
| Atlas 训练系列产品 | √ |


#### 功能说明

NPUEstimator类的构造函数，NPUEstimator类继承了TensorFlow的Estimator类，可以调用基类的原生接口，用来训练、评估、推理TensorFlow模型。


#### 函数原型

```
class NPUEstimator(estimator_lib.Estimator):
    def __init__(self,
                 model_fn=None,
                 model_dir=None,
                 config=None,
                 params=None,
                 job_start_file='',
                 warm_start_from=None
                 )
```


#### 参数说明

| 参数名 | 输入/输出 | 描述 |
| --- | --- | --- |
| model\_fn | 输入 | 模型function定义，该function返回NPUEstimatorSpec类对象。 关于NPUEstimatorSpec类的构造函数，请参见NPUEstimatorSpec构造函数。 |
| model\_dir | 输入 | 保存模型路径，用于保存或恢复模型文件。默认为None。 如果NPURunConfig和NPUEstimator配置的model\_dir不同，系统报错。 如果NPURunConfig和NPUEstimator仅一个接口配置model\_dir，以配置的路径为准。 如果NPURunConfig和NPUEstimator均未配置model\_dir，则系统在当前脚本执行路径创建一个model\_dir\_xxxxxxxxxx目录保存模型文件。 |
| config | 输入 | NPURunConfig类对象。 关于NPURunConfig类的构造函数，请参见NPURunConfig构造函数。 |
| params | 输入 | 传入model\_fn的参数，为字典类型，键为传入参数的名字，值为基本的Python类型值 |
| job\_start\_file | 输入 | CSA job启动文件路径。 |
| warm\_start\_from | 输入 | 指定checkpoint路径，会导入该checkpoint开始训练。 |


#### 返回值

返回NPUEstimator类对象。


#### 调用示例

```
from npu_bridge.npu_init import *
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))
```
