付録 機械学習データセット内の機密データに関する考察
この付録の内容は、著者とBrad Sveeによって書かれ、Google Cloud PlatformのドキュメントWebサイトでソリューションペーパーとして公開された。
MLプログラムを開発する際、社内のデータアクセスとそのセキュリティのバランスを取ることが重要だ。機密データへのアクセスが制限されていても、MLのトレーニングの指針として生データセットに含まれる洞察が欲しい。この2つの目標を達成するためには、生データのサブセット、あるいは集約や難読化のテクニックを部分的に適用した後のデータセット全体でMLシステムを訓練するのが有効だ。
例えば、データエンジニアにMLモデルを学習させ、製品に関する顧客のフィードバックを評価させたいが、誰がフィードバックを提出したかは知られたくない。しかし、配送先住所や購入履歴などの情報は、MLモデルをトレーニングする上で決定的に重要である。データがデータエンジニアに提供された後、彼らはデータ探索の目的でクエリする必要があるので、利用可能にする前に機密データフィールドを保護することが重要である。この種のジレンマは、レコメンデーション・エンジンを含むMLモデルでもよく見られる。ユーザ固有の結果を返すモデルを作成するには、一般的にユーザ固有のデータにアクセスする必要がある。
幸いなことに、効果的なMLモデルをトレーニングしながら、データセットから機密データを取り除くテクニックがある。この記事では、機密情報を特定し保護するための戦略と、MLデータに関するセキュリティ上の懸念に対処するためのプロセスを紹介する。
機密情報の取り扱い
機密情報とは、あなたやあなたの顧問弁護士が、アクセス制限や暗号化などの追加的なセキュリティ対策で保護したいと考えるデータのことである。例えば、名前、Eメールアドレス、請求情報、データエンジニアや悪意のある行為者が間接的に機密情報を推測できるような情報は、機密情報とみなされることが多い。
HIPAAやPCI-DSSのような規格は、機密データを保護するためのベストプラクティスを規定すると同時に、顧客に機密データの取り扱い方法を知らせるものである。これらの認証により、顧客は情報のセキュリティについて十分な情報を得た上で意思決定を行うことができる。
MLデータセットにおけるセンシティブデータの取り扱いは、以下の理由により困難である:
-
ほとんどのロールベースのセキュリティは、所有権の概念を対象としている。つまり、ユーザは自分のデータを閲覧・編集することはできるが、自分のものではないデータにはアクセスできない。所有権の概念は、多くのユーザのデータの集合体であるMLデータセットでは崩れる。基本的に、データエンジニアは、データセットを効果的に使用するために、データセット全体への閲覧権限を付与される必要がある。
-
機密性の高いフィールドを暗号化したり、解像度を下げたりすることは、予防策としてよく使われるが、MLデータセットには必ずしも十分ではない。集約されたデータセット自体が、しばしば頻度分析攻撃によって暗号化を破る手段を提供する。
-
データセットからセンシティブなフィールドをランダムにトークン化、抑制、または削除すると、必要なデータが不明瞭になるため、効果的なMLモデルのトレーニングが劣化し、予測のパフォーマンスが低下する可能性がある。
組織はしばしば、セキュリティと実用性の適切なバランスを取るために、ツールやベストプラクティスのセットを開発する。MLデータセットの機密データを保護するために、以下の3つの目標に留意すること: ...