0

我使用 TFF v:0.18 我想在里面加载一个预训练的网络create_keras_model()所以我写这个:

def create_keras_model():
    baseModel = tf.keras.models.load_model(model_path, compile=False)
    headModel = baseModel.output
    model_output = tf.keras.layers.Dense(3, activation="softmax", name="output")(headModel)
    model = tf.keras.Model(inputs=baseModel.input, outputs=model_output)
    return model
new_iterproc = tff.templates.IterativeProcess(intialize_fn=server_init_tff, next_fn=old_iterproc.next)
state = new_iterproc.initialize()

但我发现这个错误:

    new_iterproc = tff.templates.IterativeProcess(intialize_fn=server_init_tff, next_fn=old_iterproc.next)
TypeError: __init__() got an unexpected keyword argument 'intialize_fn'

我不相信语法是错误的,

4

1 回答 1

1

我相信这是一个拼写错误。

来自 API 文档tff.templates.IterativeProcess

tff.templates.IterativeProcess(
    initialize_fn: tff.Computation,
    next_fn: tff.Computation,
    next_is_multi_arg: Optional[bool] = None
)

第一个参数名为initialize_fn,但上面的代码片段使用(在之后intialize_fn缺少一个)。in

于 2022-01-05T13:39:37.563 回答