flip.nvflare.components.custom_percentile_privacy ================================================= .. py:module:: flip.nvflare.components.custom_percentile_privacy Classes ------- .. autoapisummary:: flip.nvflare.components.custom_percentile_privacy.PercentilePrivacy Module Contents --------------- .. py:class:: PercentilePrivacy(percentile=10, gamma=0.01, data_kinds: List[str] | None = None, off: bool = False) Bases: :py:obj:`nvflare.apis.dxo_filter.DXOFilter` Implementation of "largest percentile to share" privacy preserving policy. Shokri and Shmatikov, Privacy-preserving deep learning, CCS '15 :param percentile: Only abs diff greater than this percentile is updated. Allowed range 0..100. Defaults to 10. :type percentile: int, optional :param gamma: The upper limit to truncate abs values of weight diff. Defaults to 0.01. :type gamma: float, optional :param Any weight diff with abs Union[None, nvflare.apis.dxo.DXO] Compute the percentile on the abs delta_W. Only share the params where absolute delta_W greater than the percentile value :param dxo: information from client :param shareable: that the dxo belongs to :param fl_ctx: context provided by workflow Returns: filtered dxo