我无法理解python中的Hook的确切含义,tensorflow
_LearningRateSetterHook(tf.train.SessionRun**Hook**):
如果你向我解释,我将不胜感激。 谢谢
答案 0 :(得分:16)
这可能是关于什么是钩子的更普遍的问题。
Hooks的名称恰如其分,因为它们允许一种方式进入'程序执行的某些要点。因此,您可以在代码的某一部分执行后触发函数或记录。
举一个例子,我列出了你提到的SessionRunHook的描述及其文档的链接。它特别允许你勾选'进入上述要点。
SessionRunHooks可用于跟踪培训,报告进度,提前请求 停下来等等。 SessionRunHooks使用观察者模式并通知 以下几点:
session.run()
session.run()
SessionRunHook封装了一段可重用/可组合的计算
可以捎带拨打MonitoredSession.run()
。一个钩子可以添加任何
ops-or-tensor / feed运行调用,当运行调用成功完成时
获得它要求的输出。允许挂钩将操作添加到图中
hook.begin()
。调用begin()
方法后,图表将完成。
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/training/session_run_hook.py