参考了官方文档,有些细节问题需要阅读tf源码。
- 如何定义模型model_fn()?需要满足什么格式?官方文档写的还算清楚,
def model_fn(features, labels, mode, params)
其中features和labels是input_fn()的输出结果,params等是新建Estimator对象时填入的各种参数,mode在调用train/evaluate/predict时自动确定。
- 如何定义输入input_fn()?bert源码中input_fn(params)是如何传递params的?通过阅读tf源码终于理解了。这是Estimator类中调用input_fn()的源码,
def _call_input_fn