Как создать свой собственный набор федеративных данных и обучаться на нескольких устройствах с помощью TensorflowFederated?

Я пытаюсь использовать TFF для реализации федеративного обучения. Я развернул 3 экземпляра EC2 и настроил TFF в среде conda. Я пытаюсь понять, как создать объединенный набор данных с некоторыми CSV-файлами, а затем начать обучение на этих экземплярах EC2, имея один из них в качестве центрального, а два других - в качестве клиентов. В коде TFF я мог видеть, что tff.CLIENTS имеет атрибут URI, но не уверен, как сопоставить его с IP / Some-Endpoint для связи между клиентами и сервером.

Я искал способы сделать это с использованием текущих предоставленных функций TFF, но не смог найти никаких указателей на достижение этого случая. (Поскольку это литералы размещения tff.CLIENT и tff.SERVER в любом случае не отображаются через API в настоящее время и запланированы для будущих выпусков)

Внутри tensorflow_federated \ python \ core \ impl \ deployment_literals.py:

 PlacementLiteral(object):
  """A representation of one of the globally recognized placement literals."""

  def __init__(self, name, uri, default_all_equal, description):
    self._name = name
    self._uri = uri #URI for client/Server
    self._description = description
    self._default_all_equal = default_all_equal

NA

person sri3    schedule 01.08.2019    source источник


Ответы (1)


В настоящее время TFF полностью поддерживает моделирование только на одном станке. Ведется работа по созданию сред моделирования с несколькими машинами для ускорения моделирования (хотя семантически это будет тот же результат), но она продолжается.

Я бы порекомендовал сначала начать с запуска TFF в моделировании на одной машине.

person Zachary Garrett    schedule 02.08.2019