什么时候在keras的源代码中调用了Layer.build()?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么时候在keras的源代码中调用了Layer.build()?相关的知识,希望对你有一定的参考价值。
keras中每个派生类的Layer类都有build()
定义。
build()
是我们为keras层分配权重的地方。
该函数何时在内部调用?我无法找到任何可能正在调用它的代码
在__call_()
的Layer类的topology.py:580中,我们称self.build()
,但只有在self.built = True
时才会调用它。这总是在self.build()
中设置,而not
只有在self.built为True时才会被调用。
答案
在条件(source code)中你错过了if not self.built:
...
if len(input_shapes) == 1:
self.build(input_shapes[0])
else:
self.build(input_shapes)
:
build()
......这基本上意味着“如果还没有建造”。
顺便说一句,count_params()
也被称为source code方法,再次与一名后卫(qazxswpoi)。
以上是关于什么时候在keras的源代码中调用了Layer.build()?的主要内容,如果未能解决你的问题,请参考以下文章