def next(self, state, data): state, metrics = self._iterative_process.next(state, data) state = self._server_state_from_tff_result(state) metrics = metrics._asdict(recursive=True) metrics.update(state.delta_aggregate_state) outputs = None return adapters.IterationResult(state, metrics, outputs)
def next( self, state: ServerState, data: Collection[tf.data.Dataset], ) -> adapters.IterationResult: state, metrics = self._iterative_process.next(state, data) outputs = None return adapters.IterationResult(state, metrics, outputs)
def next(self, state, data): state, initial_metrics, metrics = self._iterative_process.next( state, data) total_metrics = { 'before_training': initial_metrics, 'during_training': metrics } outputs = None return adapters.IterationResult(state, total_metrics, outputs)
def next( self, state: ServerState, data: Collection[tf.data.Dataset], ) -> adapters.IterationResult: state, metrics = self._iterative_process.next(state, data) state = ServerState.from_tff_result(state) metrics = metrics._asdict(recursive=True) outputs = None return adapters.IterationResult(state, metrics, outputs)
def next(self, state, data): state, initial_metrics, metrics = self._iterative_process.next( state, data) state = ServerState.from_tff_result(state, self._from_anon_client_callback, self._from_anon_server_callback) initial_metrics = initial_metrics._asdict(recursive=True) metrics = metrics._asdict(recursive=True) total_metrics = { 'before_training': initial_metrics, 'during_training': metrics } outputs = None return adapters.IterationResult(state, total_metrics, outputs)
def next(self, state, data): state, metrics = self._iterative_process.next(state, data) if self._adaptive_clipping: if self._per_vector_clipping: metrics.update({('clip_' + str(i)): self._get_clip(vector_state) for i, vector_state in enumerate( state.delta_aggregate_state)}) else: metrics.update( {'clip': self._get_clip(state.delta_aggregate_state)}) outputs = None return adapters.IterationResult(state, metrics, outputs)
def next(self, state, data): state, metrics = self._iterative_process.next(state, data) python_state = self._server_state_from_tff_result(state) metrics = metrics._asdict(recursive=True) if self._adaptive_clipping: if self._per_vector_clipping: metrics.update({('clip_' + str(i)): self._get_clip(vector_state) for i, vector_state in enumerate( state.delta_aggregate_state)}) else: metrics.update( {'clip': self._get_clip(state.delta_aggregate_state)}) outputs = None return adapters.IterationResult(python_state, metrics, outputs)
def next(self, state, data): state, metrics = self._iterative_process.next(state, data) state = _from_tff_result(state) metrics = metrics._asdict(recursive=True) outputs = None return adapters.IterationResult(state, metrics, outputs)
def next(self, state, data): state, metrics = self._iterative_process.next(state, data) outputs = None return adapters.IterationResult(state, metrics, outputs)