是否有任何文档描述 Keras 中的哪些字符串名称映射到哪些对象?例如,下面我创建了一个嵌入层tf.keras.layers
,我可以用它'uniform'
来映射到该类tf.keras.initializers.RandomUniform
。
tf.keras.layers.Embedding(1000, 64, embeddings_initializer='uniform')
Run Code Online (Sandbox Code Playgroud)
但我只是通过查看该用法的示例才知道这一点。我认为受支持的字符串形式已在某处记录,但我似乎找不到此类文档,并且挖掘代码变得过于抽象而难以轻松理解。
版本:TF 1.13.1
TF 中的 keras 实现中没有可用的字符串常量列表(我想,在原始 keras 中也没有)。
对于初始化程序情况,'uniform'
字符串将转换为配置,并在该配置上调用结构方法,并提示从初始化程序命名空间创建对象(可以在此处找到def deserialize_keras_object):
config = {'class_name': str(identifier), 'config': {}}
deserialize_keras_object(
config,
module_objects=globals(),
custom_objects=custom_objects,
printable_module_name='initializer')
Run Code Online (Sandbox Code Playgroud)
因此,我想不出比以下更好的方法,例如列出所有初始化程序:
import tensorflow as tf
for k, v in tf.keras.initializers.__dict__.items():
if not k[0].isupper() and not k[0] == "_":
print(k)
Run Code Online (Sandbox Code Playgroud)
输出虽然有额外的值,但类似于:
constant
glorot_normal
glorot_uniform
identity
ones
orthogonal
zeros
he_normal
he_uniform
lecun_normal
lecun_uniform
normal
random_normal
random_uniform
uniform
truncated_normal
deserialize
get
serialize
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1579 次 |
最近记录: |