现在我们已经实现了两个简单的 TF 模型,一个是用于预测预期寿命的线性回归模型,一个是用来识别手写数字的 logistic 回归模型。我们还非常清楚使用 TF 的两个步骤(组装 graph 然后执行)。那么,如果我们想像使用 python 一样使用 TF 可以吗?答案是肯定的。
更新历史
- 2019.08.06: 完成初稿
Eager Execution
Eager execution 是一个类似 Numpy 的库,支持 GPU 加速和自动微分,在 TF 1.5 引入。我们可以用可交互的方式进行 TF 编程,可以使用更多 python 特性,调试也会更加轻松。用法很简单,两行代码就可以:
1 | import tensorflow as tf |
使用 Eager Execution 的话,不再需要担心下面的事情:
- placeholders
- sessions
- control dependencies
- lazy loading
- {name, variable, op} scopes
直接就可以开始计算!
1 | x = [[2.]] |
其他更多代码可以参考 8_eager_execution.py
啥时候最适合用 Eager Execution 呢?
- 研究人员,想要灵活的框架,可以直接用 python 的 control flow
- 开发新的模型时,更加便于调试
- Tensorflow 新手,可以更好的尝试 API
下期预告
- 变量共享 Variable sharing
- 管理实验 Manage experiments
- 自动微分 Autodiff