Меня очень смущает, как теги должны работать в хабе и как их использовать при экспорте. Как я могу тренироваться на железнодорожной части моего графика и экспортировать обслуживающую?
У меня такой код:
def user_module_fn(foo, bar):
x = tf.sparse_placeholder(tf.float32, shape[-1, 32], name='name')
y = something(x)
hub.add_signature(name='my_name', input={"x": x}, output={"default", y})
module_spec = hub.create_module_spec(module_spec_fn, tags_and_args=[
(set(), {"foo": foo, "bar": bar}),
({"train"}, {"foo": foo, "bar": baz})
])
m = hub.Module(module_spec, name="my_name", trainable=True, tags={"train"})
hub.register_for_export(m, "my_name")
У меня следующий вопрос: поскольку я создаю экземпляр модуля m
с помощью tags={'train'}
, я думаю, что использую правильный модуль для обучения. Означает ли это, что я только экспортирую тот, который помечен train
? Как использовать train
для обучения и set()
(по умолчанию) для обслуживания?