联邦的tensorflow需要很长时间才能开始训练

时间:2019-06-16 12:30:32

标签: tensorflow-federated

我遇到了一些烦人的问题。 tensorflow联合训练(初始化和下一个)需要很长时间才能开始(我不是在说完成时间,只是开始时间需要一段时间)。

我怀疑这是由于以下原因之一:1)与eager_mode():, 或2)使用改组,如下所示:

with eager_mode():
    def preprocess(new_dataset):
        def map_fn(elem):
            return collections.OrderedDict([('x', tf.reshape(elem['In'], [-1])),('y', tf.reshape(elem['Out'],[1]))])

        DS2= new_dataset.map(map_fn)
        if Use_shuffle:
            return DS2.repeat(SNN_epoch).shuffle(shuffle_buffer).batch(SNN_batch_size)
        else:
            return DS2.repeat(SNN_epoch).batch(SNN_batch_size)
...
...
...

这就是我的工作

trainer_Itr_Process = tff.learning.build_federated_averaging_process(model_fn_Federated,server_optimizer_fn=(lambda : tf.keras.optimizers.SGD(learning_rate=learn_rate)),client_weight_fn=None)
    FLstate = trainer_Itr_Process.initialize()
    # Track loss of different ...... of federated iteration
    for round_num in range(Fed_iter_min,Fed_iter_max): 
        FLstate, FLoutputs = trainer_Itr_Process.next(FLstate, federated_train_data)
......
......
......

这是我得到的警告:


W0616 11:30:00.217065 139843447875392 deprecation_wrapper.py:118] From /usr/local/lib/python3.6/dist-packages/tensorflow_estimator/python/estimator/api/_v1/estimator/__init__.py:10: The name tf.estimator.inputs is deprecated. Please use tf.compat.v1.estimator.inputs instead.

W0616 11:30:02.400945 139843447875392 deprecation_wrapper.py:118] From /usr/local/lib/python3.6/dist-packages/tensorflow_federated/python/core/impl/tensorflow_serialization.py:296: The name tf.initializers.variables is deprecated. Please use tf.compat.v1.initializers.variables instead.

0 个答案:

没有答案