Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Gaussian Mechanism Global DP for SKLearn Pipeline

オープン
#396 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
45/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
python, scikit-learn

調査の方向性

Start with src/pydp/ml/mechanisms/sklearn_pipeline.py and the existing LaplaceMechanism implementation, then review examples/SKLearn_Pipeline/SKLearn_Pipeline_Laplace_Mechanism.ipynb. Compare the Local DP implementation with the requirements for Global DP and verify that GaussianMechanism can be inserted into an sklearn Pipeline as shown; done means the operator is available with the requested usage and a corresponding example works.

索引モデルが issue の本文から書いたものです。

説明

Type: New Feature :heavy_plus_sign:

Feature Description

Enabling the use of Gaussian Mechanism for Local DP in SKLean Pipeline. This should be in the form of an "operator" that should be inserted between the layers in SKLearn's Pipeline class.

This is the Global DP Version of the already existing Gaussian Mechanism extension for Local DP mentioned in issue #387.

Additional Context

Current development for the SKLean Pipeline is in branch feature/machine-learning-1.

Preferably, the name of the "operator" imported from PyDP should be called GaussianMechanism. The use should be as seamless and convenient as possible in SKLearn's Pipeline class. For example:

pipe = Pipeline([
    ('scaler', StandardScaler()),
    ('nb', GaussianNB()),
    ('gaussian', GaussianMechanism()),
])

For more examples, please have look at the notebook example of Laplace Mechanism's implementation.

As starting guidance, please refer to the source code for LaplaceMechanism in here.

Note: The examples mentioned above are for Local DP. Laplace Mechanism's LocalDP implementation should provide a good starting point to figure out the Global DP's version.

主要言語
Python
スター
550
フォーク
143
PR マージ指標
30日以内にマージされた PR はありません

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

OpenMined/PyDP のほかの issue

OpenMined/PyDP の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。