国立研究開発法人情報通信研究機構
2016年1月14日
ポイント
- ビッグデータ解析で多用されているロジスティック回帰分析をデータ暗号化のまま計算可能に
- 暗号化された1億件のデータを30分以内で複数グループに分類できることをシミュレーションで確認
- ビッグデータ解析におけるプライバシー保護への応用に期待
NICT セキュリティ基盤研究室は、大量のデータを暗号化したまま複数のグループに分類できるビッグデータ向け解析技術を開発しました。
本技術は、NICTが開発していた準同型暗号技術SPHERE(スフィア)とロジスティック回帰分析技術を組み合わせることで実現したものです。暗号化した状態でデータを分類できるので、個人情報などの機微な情報を安全に効率よく分類することが可能になります。応用例の一つとして、本技術を用いて健康診断等のデータから病気の判定を行う際に、データ処理を行う第三者にデータの内容を開示せずに済み、プライバシーを保護できるようになると期待されます。
背景
現在、データマイニング技術の進展により、ビッグデータの中から価値のある情報を計算により引き出し、それを利活用する高機能なサービスが提供されています。例えば、商品販売サービスにおいてロジスティック回帰分析を用いることで、ユーザーの年齢・性別・購入履歴などから、新たなキャンペーンの案内を送るか否かを決定し、無駄な案内の送付を省く技術が実用化されています。
一方で、データに含まれるプライバシー情報がクラウドサーバ管理者に漏えいするという懸念から、このようなサービスの実施を否定する動きもあります(図1上参照)。プライバシー情報を保護するため、データをあらかじめ完全準同型暗号技術を用いて暗号化しておき、暗号化したままデータマイニングの計算を行い、最後に結果を復元する手法が理論的には可能ですが、それには膨大な時間を要するため、現実的な時間で大量のデータを処理することは困難でした(図1下参照)。
この問題を解決するため、NICTはこれまで、暗号化した状態でデータのセキュリティレベルの更新と演算の両方が可能な準同型暗号技術SPHEREを開発し、ビッグデータ解析におけるプライバシー保護技術の発展に貢献してきました。
今回の成果
今回NICTは、データを暗号化した状態でロジスティック回帰分析を高速に行う手法を世界で初めて開発しました。この技術により、大量のデータを暗号化したまま複数のグループに分類することが可能になります。
高速化の要となる技術は、関数の近似とデータ処理の分割の2点です(図2参照)。
我々はまず、ロジスティック回帰分析中に含まれる複雑な関数を単純な多項式で近似し、準同型暗号と組み合わせることで、現実的な時間で動作する方式を考案しました。
次に、ロジスティック回帰分析に含まれる計算をデータ加工処理と集計処理の2つの部分に分割し、データ加工をあらかじめデータ提供者側で行うことで高速化を推し進めました。
これら2点の改良と、NICT開発の準同型暗号SPHEREを組み合わせることで、大量のデータを暗号化したままでロジスティック回帰分析を行うことが可能になりました。シミュレーションによって、サーバ上で1億件のデータを30分以内で分析可能であることが確認できました(図3参照)。
また、UCI機械学習リポジトリにて公開されている実験用データを用い、今回開発した技術により、データを暗号化したままロジスティック回帰分析を行った結果と、SPHEREを用いずに分析した結果がほぼ一致することを確認しました(補足資料参照)。
本技術を用いることで、クラウドサーバ等を用いてデータの分類を行う際、データに含まれるプライバシー情報がサーバ管理者に漏えいすることを防ぐことができます。
今後の展望
今回開発した技術により、例えば、医療分野において、世界中の被験者から収集したデータを、プライバシーを保護したまま解析することが可能になります。これにより、新たな診断方法や治療法の早期かつ効率的な発見に繋がることが期待されます。
本成果は、平成28年1月19日(火)~ 22日(金)に熊本県熊本市で開催される「2016年暗号と情報セキュリティシンポジウム(SCIS2016)」で発表します。
補足資料
今回開発した技術の概要
大量のデータを暗号化したままロジスティック回帰分析を行うために、既存の手法(ロジスティック回帰分析アルゴリズムと完全準同型暗号の単純な組み合わせ)に対して、以下に説明する2つの高速化技術を適用しました。
これらの高速化技術により、これまでは困難であった1億件規模の暗号化データに対するロジスティック回帰分析を、現実的な時間で処理することが可能になりました。本技術を用いることで、安全なビッグデータ分析が可能になります。
1.ロジスティック関数の2次関数による近似
ロジスティック回帰分析の分類で用いられる関数は、指数関数と対数関数を組み合わせた複雑な形をしており、このままでは準同型暗号上での計算が非常に煩雑になります。この関数を2次関数で近似することにより、準同型暗号と組み合わせた状態でも高速なデータ処理が可能になりました(図4参照)。
2.データ提供者側での事前計算による暗号データ計算の軽減
図5上に示すように、既存の方式では、データ提供者が自身のデータXをそのまま暗号化してサーバに送信し、ロジスティック回帰分析に必要なデータ加工処理及び集計処理は、すべてサーバ上で行われていたため、大きな負荷がかかっていました。
これに対して、今回新たに開発した技術では、データ加工処理(図5下の2次関数計算の一部分)をあらかじめデータ提供者側で行い、計算結果をひとまとめにパッキングして暗号化しサーバに送ります。データ提供者側で加工処理を行うことで、サーバ側では加算によるデータ集計のみで計算が終了するため、既存の方法と比較して大幅に効率化することができました。
サーバは、暗号文の和を中間結果としてデータ分析者に送り、分析者の側で暗号文を復号します。分析者の側でロジスティック回帰分析に必要な2次関数を計算し、最終的な結果を得ます。
これら2つの改良を取り入れたシステムをNICT開発の準同型暗号SPHEREを用いて実現し、暗号化されたデータを用いてシミュレーションを行ったところ、1億件のデータを汎用の計算サーバ1台で30分以内に処理可能であることが確認できました(本文図3参照)。
近似関数を用いたロジスティック回帰分析の性能評価
今回開発したロジスティック回帰分析システムは、準同型暗号と組み合わせるため、スコア関数の計算を2次関数を用いて近似しています(図4参照)。そのため、オリジナルのロジスティック回帰分析アルゴリズムと比較して、学習した結果がわずかに異なりますが、この差は、実用上影響がないものであることを実験により確認しました。
評価実験には、UCI機械学習リポジトリにて公開されているいくつかのデータセットを用いました。一例として、768人分の糖尿病に関するデータを用いた実験結果を図6に示します。最初の576件のデータから、オリジナルの関数を用いてデータを暗号化せずに学習した結果が赤い直線で、近似関数を用いて暗号化データに対して学習した結果が青い直線です。それぞれの直線を用いて、残りの192件のデータに対して分類を行い、糖尿病であるかそうでないかの診断が正しく行えた正解率を比較しました。診断データとして血糖値とBMIのみを用いた実験での正解率は、オリジナルの場合で約77%、暗号化データの場合で約76%となり、ほぼ一致しました。
また、血糖値とBMIのほかに、年齢、血圧などの8種類のデータを用いて同様の実験を行ったところ、オリジナルの場合と暗号化データの場合共に、正解率は80%前後で、ほぼ同じ結果が得られました。
用語解説
2015年にNICTが開発した準同型暗号方式。暗号化したままセキュリティレベルの更新が行えるため、100年以上の長期間にわたって安全にデータを扱うことが可能。SPHEREは、Security-updatable Public-key Homomorphic Encryption with Rich Encodingsの略。
NICTプレスリリース(2015年1月19日)
機械学習技術の一つで、データの分類を目的とする。例えば、表Aで与えられた糖尿病に関するデータX1~X7(血糖値、BMI、糖尿病であるか否か)を平面上にプロットし、図Aのように直線で分割することで、糖尿病と判定される領域(赤)と糖尿病でないと判定される領域(緑)に分類できる。この直線を見つける計算をデータの学習と呼ぶ。既知のデータからの機械学習で得られた直線を用いることで、以降は、新たな血糖値とBMIのデータから糖尿病であるか否かの判定が可能になる。
与えられたデータX1~X7を適切に切り分ける直線を引くためには、各点に対して直線との位置関係に応じたスコアを割り振り、その合計値が最大となるよう直線を調整する。一つの点Xのスコアは、図Bのように点と直線の位置関係によって決まる。与えられたデータXの判定が糖尿病であった場合、直線の上側(赤い領域)ではスコアが高くなり、逆に、直線の下側(緑の領域)にあった場合にはスコアが低くなる。一方、糖尿病でないと判定されたデータでは、緑の領域でスコアが高く加算される。
データの位置関係とスコアの関係を示す計算式は、対数関数と指数関数を組み合わせた複雑なものであるため、完全準同型暗号を適用して計算するのは困難であった。
Web上のショッピングサイトでの閲覧・購入履歴、交通システムにおける乗降データ、遺伝子情報など、膨大なデータから、コンピュータを用いた分析により有用な情報を引き出すこと。引き出すための技術は、統計学・人工知能・機械学習などコンピュータサイエンス分野の多岐にわたる。一方で、分析対象のデータが個人のプライバシー情報を含んでいた場合に、それらをどう管理するかという課題があり、準同型暗号技術はその解決策の一つとして期待されている。今回用いたロジスティック回帰分析は、データ分析のための基本的技術である。
暗号化されたデータに対して加算と乗算を、暗号化したままに行うことができる技術。加算・乗算を組み合わせることで様々な計算が可能であるため、データ保護と外部サーバへの計算委託を同時に実現できる。特に近年、プライバシーを保護したままのデータマイニングへの応用が期待されている。しかしながら、データマイニングアルゴリズムと完全準同型暗号の単純な組み合わせは非常に時間がかかり、現実的な運用は困難であった。
カリフォルニア大学アーバイン校(UCI)のWebサイトで公開されているデータベース。機械学習アルゴリズムの開発及び性能比較のため、様々な分野のサンプルデータを提供している。補足資料における性能評価実験は、ここで公開されている“Pima Indians Diabetes Database”等のデータセットを用いた。
本件に関する問い合わせ先
ネットワークセキュリティ研究所
セキュリティ基盤研究室
セキュリティ基盤研究室
レ チュウ フォン、青野 良範
Tel: 042-327-6594
E-mail:
広報
広報部 報道担当
廣田 幸子
Tel: 042-327-6923
Fax: 042-327-7587
E-mail: