ホモモルフィック暗号を使ったスプリットラーニングのプライバシー強化
機械学習のトレーニング中に敏感なデータを守る新しい方法ができたよ。
― 1 分で読む
目次
スプリット学習(SL)っていうのは、クライアントとサーバーの2者が協力して、クライアントが機密データを共有しなくても機械学習モデルをトレーニングする方法だよ。生データをサーバーに送る代わりに、クライアントはモデルの一部を使ってデータを処理して、アクティベーションマップを生成してサーバーに送るんだ。これによって、ユーザーデータをプライベートに保ちながら、共同でモデル開発ができるってわけ。
プライバシーの課題
SLはある程度のプライバシー保護を提供するけど、前の研究ではアクティベーションマップから機密情報が漏れることがわかったんだ。もし誰かがこれらのマップから生データを再構成できるなら、プライバシーの意味がなくなっちゃう。こういう問題に対する既存のソリューションは、モデルの精度を下げることが多くて、それが大きな欠点になることもある。
同種暗号化を使った新しいアプローチ
私たちの研究では、SLと同種暗号化(HE)を組み合わせた方法を提案してる。HEを使うことで、クライアントはアクティベーションマップをサーバーに送る前に暗号化するんだ。こうすれば、サーバーは暗号化されたマップで計算を行いつつ、元のデータにはアクセスできない。これでユーザーのプライバシーがより守られながら、機械学習のトレーニングができるようになるんだ。
スプリット学習の仕組み
SLでは、トレーニングプロセスが二つのパートに分かれる:
- クライアント側のトレーニング:クライアントはモデルの初期層を使ってデータを処理し、データを要約したアクティベーションマップを作る。
- サーバー側のトレーニング:サーバーはアクティベーションマップを受け取って、トレーニングプロセスを続ける。
通常のSLのセットアップでは、両者はモデルのパフォーマンスに関するデータを共有するけど、生データは共有しない。これでデータ漏洩のリスクは減るけど、完全に防げるわけじゃない。
同種暗号化を使う理由
同種暗号化は、暗号化されたデータに対して計算を行えるんだ。平文の代わりに暗号化されたアクティベーションマップを送ることで、サーバーは生データに関する有用な情報を得られない。もし攻撃者が暗号化されたマップをキャッチしても、元のデータを明らかにするために逆エンジニアリングすることはできない。
この方法は、サーバーがモデルをトレーニングする能力を損なうことなく、セキュリティの追加層を提供するから重要なんだ。
スプリット学習での1D CNNのトレーニング
私たちは、このSL手法を1D畳み込みニューラルネットワーク(CNN)という特定のタイプのニューラルネットワークに適用したよ。これは主にECGマシンから得られた心拍数のような時系列データを処理するために使われるんだ。私たちのアプローチは、データを分析して分類するために特定の機能を持ついくつかの層からなってる。
1D CNNは以下の要素から構成されている:
- 畳み込み層:これらの層はデータから特徴を抽出する。
- アクティベーション関数:モデルに非線形性を導入して、複雑なパターンを学習するのを助ける関数。
- プーリング層:これらの層はデータの次元を減らして、最も重要な情報を保持する。
- 最終分類層:この層はデータからのクラスに関する予測を出力する。
データプライバシーの懸念
研究によれば、アクティベーションマップを共有することはまだプライバシーの懸念を引き起こす可能性があるんだ。たとえば、アクティベーションマップのパターンが元のデータに非常に似ていることがあって、誰かがこれらのマップだけから生データを推測したり再構築したりすることができる可能性がある。
これらのプライバシー問題に対処するために、SLプロセスに同種暗号化を導入したんだ。平文でアクティベーションマップを送る代わりに、クライアントはまずそれを暗号化してから、暗号化されたマップをサーバーに送る。
同種暗号化を使う利点
HEを使うことで、いくつかの利点があることがわかったよ:
- プライバシーの向上:生データはクライアントから出ないし、サーバーはアクティベーションマップを通じてそれにアクセスできない。
- モデルの精度の維持:実験で、暗号化されたデータを使用する場合も、平文データを使用する場合とほぼ同等の精度が得られることを示したよ。
- リスクの低減:サーバーが生データを見ないから、データ漏洩のリスクが減る。
実験の設定
私たちのアプローチをテストするために、さまざまな心拍信号から成る大規模なオープンソースのECGデータセットを使ったんだ。それぞれの心拍信号はセグメントに分割され、正常なリズムや潜在的な心臓問題などの特定の条件に応じてラベル付けされた。
モデルを2つの方法でトレーニングしたよ:
- 平文のアクティベーションマップを使用:このシナリオでは、暗号化なしでアクティベーションマップを共有した。
- 暗号化されたアクティベーションマップを使用:ここでは、マップを共有する前にHEを適用した。
両方のシナリオでのパフォーマンスを比較することで、私たちの方法の効果を評価できた。
トレーニング結果
テストの結果、平文マップでモデルをトレーニングすると、ある程度の精度が得られた。暗号化マップに切り替えたときは、精度がわずかに下がったけど、私たちの方法がまだ効果的であることを示した。
暗号化データを使用した場合、通信コストとトレーニングにかかる時間はかなり高くなったけど、プライバシー保護の向上というトレードオフは価値があったよ。
結論と今後の方向性
要するに、私たちの研究はスプリット学習と同種暗号化を使ってプライバシーを守る機械学習モデルを開発する新しい方向性を示してる。生データを公開せずにトレーニングの協力を可能にすることで、以前のモデルに存在していた重大なプライバシーの懸念に対処したんだ。
初期の結果は期待できるけど、まだ探求の余地はある。今後の研究では、通信効率とトレーニング時間の最適化に焦点を当てて、パフォーマンスを犠牲にせずにプライバシーを維持できるようにする予定だよ。
今後は、これらの方法をさまざまなデータセットや機械学習タスクに応用して、異なる領域でのデータ使用の安全性を高めていくことを目指してる。
スプリット学習や同種暗号化といった進んだ方法を組み合わせることで、個々のプライバシーや安全を尊重した責任ある機械学習の実践に向けて前進することを楽しみにしているよ。
タイトル: Love or Hate? Share or Split? Privacy-Preserving Training Using Split Learning and Homomorphic Encryption
概要: Split learning (SL) is a new collaborative learning technique that allows participants, e.g. a client and a server, to train machine learning models without the client sharing raw data. In this setting, the client initially applies its part of the machine learning model on the raw data to generate activation maps and then sends them to the server to continue the training process. Previous works in the field demonstrated that reconstructing activation maps could result in privacy leakage of client data. In addition to that, existing mitigation techniques that overcome the privacy leakage of SL prove to be significantly worse in terms of accuracy. In this paper, we improve upon previous works by constructing a protocol based on U-shaped SL that can operate on homomorphically encrypted data. More precisely, in our approach, the client applies homomorphic encryption on the activation maps before sending them to the server, thus protecting user privacy. This is an important improvement that reduces privacy leakage in comparison to other SL-based works. Finally, our results show that, with the optimum set of parameters, training with HE data in the U-shaped SL setting only reduces accuracy by 2.65% compared to training on plaintext. In addition, raw training data privacy is preserved.
著者: Tanveer Khan, Khoa Nguyen, Antonis Michalas, Alexandros Bakas
最終更新: 2023-09-19 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2309.10517
ソースPDF: https://arxiv.org/pdf/2309.10517
ライセンス: https://creativecommons.org/licenses/by/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。
参照リンク
- https://ai.googleblog.com/2017/04/federated-learning-collaborative.html
- https://bit.ly/3KY8ByN
- https://pytorch.org/docs/stable/generated/torch.nn.Conv1d.html
- https://www.python.org/downloads/release/python-397/
- https://pytorch.org/get-started/previous-versions/
- https://github.com/OpenMined/TenSEAL
- https://github.com/khoaguin/HESplitNet