Операции, выполняемые в связи между сервером и клиентами - PullRequest
2 голосов
/ 09 мая 2019

Часть исследований по федеративному обучению основана на операциях, выполняемых на коммуникациях между сервером и клиентами, таких как удаление части обновлений (отбрасывание некоторых градиентов, описывающих модель), которыми обмениваются клиенты и сервер, или отбрасывание обновления от определенного клиента вопределенный раунд общения.Я хочу знать, поддерживаются ли такие возможности средой Tensorflow-federated (TFF) и как они поддерживаются, потому что, на первый взгляд, мне кажется, что уровень абстракции TFF API не допускает таких операций.Спасибо.

1 Ответ

1 голос
/ 13 мая 2019

языковой дизайн TFF намеренно избегает понятия клиента идентичность ; есть желание избежать адресации «Клиента Х» и отмены его обновления или отправки ему других данных.

Однако может быть способ запустить моделирование типа упомянутых вычислений. TFF поддерживает следующие выражения:

  • Вычисления, которые определяют свойства тензоров, например, игнорируют обновление, имеющее значения nan. Один из способов добиться этого - написать tff.tf_computation, который условно обнуляет вес обновлений до tff.federated_mean. Этот метод используется в tff.learning.build_federated_averaing_process ()

  • Моделирование, которое запускает различные вычисления на разных наборах клиентов (где набор может быть одним клиентом). Поскольку исполнитель ссылок параметризует клиентов по имеющимся у них данным, средство записи TFF может записать два tff.federated_computation s, применить их к различным данным моделирования и объединить результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...