特開2019-207384(P2019-207384A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧
特開2019-207384スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム
<>
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000056
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000057
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000058
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000059
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000060
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000061
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000062
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000063
  • 特開2019207384-スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム 図000064
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2019-207384(P2019-207384A)
(43)【公開日】2019年12月5日
(54)【発明の名称】スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム
(51)【国際特許分類】
   G09C 1/00 20060101AFI20191108BHJP
【FI】
   G09C1/00 650Z
【審査請求】未請求
【請求項の数】3
【出願形態】OL
【全頁数】20
(21)【出願番号】特願2018-104032(P2018-104032)
(22)【出願日】2018年5月30日
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】305027401
【氏名又は名称】公立大学法人首都大学東京
(74)【代理人】
【識別番号】100119677
【弁理士】
【氏名又は名称】岡田 賢治
(74)【代理人】
【識別番号】100115794
【弁理士】
【氏名又は名称】今下 勝博
(72)【発明者】
【氏名】仲地 孝之
(72)【発明者】
【氏名】貴家 仁志
【テーマコード(参考)】
5J104
【Fターム(参考)】
5J104AA12
5J104AA18
5J104NA39
(57)【要約】      (修正有)
【課題】エッジ/クラウドでの利用を想定し、広く普及した多くのアプリケーションソフトウェアが直接利用可能で、かつユーザーのプライバシーの保護を考慮したスパースコーディングの秘匿演算方法、秘匿演算装置及びプログラムを提供する。
【解決手段】秘匿演算方法は、M次元の観測信号ベクトルyがK個の基底の辞書行列DとK次元ベクトルのスパース係数xを用いて、y=Dxと表せるとき、所定の辞書行列Dをランダムユニタリ行列を用いて秘匿化して秘匿辞書行列D^に変換し、観測信号ベクトルyをランダムユニタリ行列を用いて秘匿化して秘匿観測信号y^に変換し、秘匿観測信号y^と秘匿辞書行列D^を用いて最適化問題を直交マッチング追跡法で解き、スパース係数xを推定する。
【選択図】図1
【特許請求の範囲】
【請求項1】
M次元の観測信号ベクトルyがK個(K>M)の基底を要素とするM×K行列である辞書行列DとK次元のベクトルであるスパース係数xを用いて、
y=Dx
と表せるとき、
予め与えられた又は観測信号から学習した辞書行列Dを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化して秘匿辞書行列D^に変換して保存する辞書行列変換手順と、
観測信号ベクトルyを前記ランダムユニタリ行列Qを用いて秘匿化して秘匿観測信号y^に変換する観測信号変換手順と、
前記秘匿観測信号y^と保存されている前記秘匿辞書行列D^を用いて数C1で表される最適化問題を直交マッチング追跡法によって解き、前記スパース係数xに近似するスパース係数x^を計算する演算手順と、
を行うことを特徴とするスパースコーディングの秘匿演算方法。
【数C1】
ただし、εはxとx^との誤差の目標値である。
【請求項2】
M次元の観測信号ベクトルyがK個(K>M)の基底を要素とするM×K行列である辞書行列DとK次元のベクトルであるスパース係数xを用いて、
y=Dx
と表せるとき、
予め与えられた又は観測信号から学習した辞書行列D及び観測信号ベクトルyを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化した秘匿辞書行列D^及び秘匿観測信号y^にそれぞれ変換するローカル処理部と、
前記ローカル処理部からの前記秘匿辞書行列D^を保存し、前記ローカル処理部から転送された前記秘匿観測信号y^と保存されている前記秘匿辞書行列D^を用いて数C1で表される最適化問題を直交マッチング追跡法によって解き、前記スパース係数xに近似するスパース係数x^を計算する演算処理部と、
を備えることを特徴とするスパースコーディングの秘匿演算装置。
【請求項3】
請求項1に記載のスパースコーディングの秘匿演算方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、エッジ/クラウドでの利用可能なスパースコーディングの秘匿演算方法、秘匿演算装置及びプログラムに関する。
【背景技術】
【0002】
スパースコーディング(Sparse Coding:SC)(例えば、非特許文献1〜7を参照。)は、元々生物の一次視覚野の計算モデルとして提案されたものであり、観測信号を少数の基底ベクトルの重み付き線形和で表現する手法である。生物の一次視覚野における受容細胞は、空間周波数成分が網膜上の特定の領域に出現すると、選択的に反応する性質を持つ。Olshausenらはこの性質を、自然画像の統計的構造を積極的に利用することによって自然画像を効率的に符号化(コーディング)するための仕組みとして獲得した(例えば、非特許文献1を参照。)とする考えを提案し脚光を浴びた。
【0003】
現在、スパースコーディングは画像・音響信号などのメディア信号処理、脳波・脳血流・fMRIなど生体信号の解析、機械学習など多数の分野に応用されており、その有効性が認められている。例えば、画像処理の分野では雑音除去や画像修復、深層学習では要素技術の一つとして利用され画像識別の分野で最先端の性能を示している。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】B. A. Olshausen and D. J. Field, “Emergence of simple−cell receptive−field properties by learning a sparse code for natural images”, Nature, vol. 381, pp. 607−609 (1996).
【非特許文献2】日野英逸、村田 昇、“スパース表現の数理とその応用”、信学技報 vol. 112(198), pp. 133−142, 2012.
【非特許文献3】笠井 裕之、“スパースコーディングの研究動向”、研究報告オーディオビジュアル複合情報処理(AVM), vol. 2014−AVM−84(8), pp. 1−10, 2014.
【非特許文献4】K. Engan, S. O. Aase and J. Hakon Husoy, “Method of optimal directions for frame design”, ICASSP1999, pp. 2443−2446 (1999).
【非特許文献5】M. Aharon, M. Elad, and A. Bruckstein, “K−SVD: An algorithm for designing overcomplete dictionaries for sparse representation”, IEEE Trans. Sig. Proc., 54, 11, pp. 4311−4322 (2006).
【非特許文献6】Y. C. Pati, R. Rezaiifar, Y. C. P. R. Rezaiifar, and P. S. Krishnaprasad, “Orthogonal matching pursuit: Recursive function approximation with applications to wavelet decomposition”, Asilomar1993, pp. 40−44 (1993).
【非特許文献7】R. Chartrand and W. Yin, “Iteratively reweighted algorithms for compressive sensing”, IEEE ICASSP2008, pp. 3869−3872 (2008).
【非特許文献8】C. T. Huang, L. Huang, Z. Qin, H. Yuan, L. Zhou, V. Varad−harajan, and C−C. J. Kuo, “Survey on securing data storage in the cloud”, APSIPA Transactions on Signal and Information Processing, vol. 3, e7, 2014.
【非特許文献9】R. L. Lagendijk, Z. Erkin, and M. Barni, “Encrypted signal processing for privacy protection: Conveying the utility of homomorphic encryption and multiparty computation”, IEEE Signal Processing Magazine, vol. 30, no. 1, pp. 82−105, Jan. 2013.
【非特許文献10】電子情報通信学会誌、“小特集 完全準同形暗号の研究動向”、vol. 99, no.12, pp. 1150−1183, 2016.
【非特許文献11】I. Nakamura, Y. Tonomura, and H. Kiya, “Unitary Transform−Based Template Protection and Its Properties”, Proc. European Signal Processing Conference, vol. SIPA−P3.4, pp. 2466−2470, 2015.
【非特許文献12】I. Nakamura, Y. Tonomura, and H. Kiya, “Unitary Transform−Based Template Protection and Its Application to l2−norm Minimization Problems”, IEICE Trans. Inf. & Sys., vol. E99−D, no. 1, pp. 60−68, Jan. 2016.
【非特許文献13】Y. Saito, I. Nakamura, S. Shiota, and H. Kiya, “An Efficient Random Unitary Matrix for Biometric Template Protection”, 2016 Joint 8th International Conference on Soft Computing and Intelligent Systems (SCIS) and 17th International Symposium on Advanced Intelligent Systems (ISIS), Sapporo, 2016, pp. 366−370, 2016.
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方、近年様々な分野においてエッジ/クラウドコンピューティングが急速に普及してきている。そのアプリケーションの領域はスパースコーディングの有効性が確認されているメディア信号処理、生体信号の解析、機械学習などを含め多岐にわたる。しかしエッジ/クラウドコンピューティングの利用は、サービス提供者の信頼性を前提にしており、その信頼性の欠如や事故によって、データの不正利用や流失、プライバシーの侵害といった問題の発生が危惧されている(例えば、非特許文献8を参照。)。今後のクラウドコンピューティングの普及にとって、データの不正利用や流失、エンドユーザーのプライバシーの問題をいかに解決するかが重要な課題となっている。
【0006】
このため、データを公開することなく、暗号化したデータを第三者に渡し計算を依頼する方法、いわゆる秘密計算が盛んに研究されている(例えば、非特許文献9、10を参照。)。秘密計算は一般にマルチパーティプロトコルや準同型暗号に基づき実行される。
【0007】
しかし、除算の困難性、計算効率及び計算精度などに課題があり、ソーティング処理や幾つかの統計解析に限定されるなど、十分な普及には至っていないという課題がある。さらに秘密計算では、暗号化領域での計算実行のために特別な手順を必要とし、広く普及した多くのアプリケーションソフトウェアを直接利用することは一般に困難であるという課題もある。
【0008】
本発明は、上記課題に鑑みなされたもので、エッジ/クラウドでの利用を想定し、広く普及した多くのアプリケーションソフトウェアが直接利用可能で、かつユーザーのプライバシーの保護を考慮したスパースコーディングの秘匿演算方法、秘匿演算装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために、本発明に係るスパースコーディングの秘匿演算方法は、ランダムユニタリ行列を用いた変換によって観測信号および辞書行列を秘匿化し、該秘匿化された観測信号および辞書行列が与えられた時の数C1で表される最適化問題を直交マッチング追跡法によって解くことにより、スパース係数を求めることとした。
【0010】
具体的には、本発明に係るスパースコーディングの秘匿演算方法は、
M次元の観測信号ベクトルyがK個(K>M)の基底を要素とするM×K行列である辞書行列DとK次元のベクトルであるスパース係数xを用いて、
y=Dx
と表せるとき、
予め与えられた又は観測信号から学習した辞書行列Dを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化して秘匿辞書行列D^に変換して保存する辞書行列変換手順と、
観測信号ベクトルyを前記ランダムユニタリ行列Qを用いて秘匿化して秘匿観測信号y^に変換する観測信号変換手順と、
前記秘匿観測信号y^と保存されている前記秘匿辞書行列D^を用いて数C1で表される最適化問題を直交マッチング追跡法によって解き、前記スパース係数xに近似するスパース係数x^を計算する演算手順と、
を行うことを特徴とする。
【数C1】
【0011】
また、本発明に係るスパースコーディングの秘匿演算装置は、
M次元の観測信号ベクトルyがK個(K>M)の基底を要素とするM×K行列である辞書行列DとK次元のベクトルであるスパース係数xを用いて、
y=Dx
と表せるとき、
予め与えられた又は観測信号から学習した辞書行列D及び観測信号ベクトルyを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化した秘匿辞書行列D^及び秘匿観測信号y^にそれぞれ変換する変換処理部と、
前記ローカル処理部からの前記秘匿辞書行列D^を保存し、前記ローカル処理部から転送された前記秘匿観測信号y^と保存されている前記秘匿辞書行列D^を用いて数C1で表される最適化問題を直交マッチング追跡法によって解き、前記スパース係数xに近似するスパース係数x^を計算する演算処理部と、
を備えることを特徴とする。
【0012】
本発明は、ランダムユニタリ行列を用いた変換によって観測信号および辞書行列を秘匿化することでユーザーのプライバシーの保護を実現する。そして、エッジ/クラウドの計算資源を利用して秘匿化された観測信号および辞書行列に関する最適化問題を直交マッチング追跡法によって解くため広く普及した多くのアプリケーションソフトウェアが直接利用可能である。
【0013】
従って、本発明は、エッジ/クラウドでの利用を想定し、広く普及した多くのアプリケーションソフトウェアが直接利用可能で、かつユーザーのプライバシーの保護を考慮したスパースコーディングの秘匿演算方法、及び秘匿演算装置を提供することができる。
【0014】
本発明に係るプログラムは、前記スパースコーディングの秘匿演算方法をコンピュータに実行させるためのプログラムである。本発明に係るスパースコーディングの秘匿演算装置はコンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
【発明の効果】
【0015】
本発明は、エッジ/クラウドでの利用を想定し、広く普及した多くのアプリケーションソフトウェアが直接利用可能で、かつユーザーのプライバシーの保護を考慮したスパースコーディングの秘匿演算方法、秘匿演算装置及びプログラムを提供することができる。
【図面の簡単な説明】
【0016】
図1】スパースコーディングを説明する図である。スパースコーディングは、少数の基底ベクトルの重み付き線形和で表現する線形システムである。
図2】本発明に係るスパースコーディングの秘匿演算方法で行う事前準備を説明する図である。ローカル処理部で辞書学習とその秘匿を行う。
図3】本発明に係るスパースコーディングの秘匿演算方法を説明する図である。エッジ/クラウド部でスパースコーディングの秘匿演算を行う。
図4】本発明に係るスパースコーディングの秘匿演算方法の効果(平均L誤差)を説明する図である。
図5】本発明に係るスパースコーディングの秘匿演算方法の効果(平均サポート間距離)を説明する図である。
図6】本発明に係るスパースコーディングの秘匿演算方法の効果(スパース係数推定値)を説明する図である。
図7】本発明に係るスパースコーディングの秘匿演算装置を説明する図である。
図8】本発明に係るスパースコーディングの秘匿演算装置を説明する図である。
図9】本発明に係るスパースコーディングの秘匿演算方法を説明するフローチャートである。
【発明を実施するための形態】
【0017】
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【0018】
本発明は、プライバシー保護を目的として、スパースコーディングの秘匿演算の方法ならびに装置の発明に関する。
【0019】
本発明は、エッジ/クラウドでの利用を想定し広く普及した多くのアプリケーションソフトウェアが直接利用可能で、かつユーザーのプライバシーの保護を考慮したスパースコーディングの秘匿演算法である。以下の順で説明していく。
【0020】
(1)スパースコーディングの定式化
(2)スパースコーディングの秘匿演算をエッジ/クラウドで実行する際のシステム構成
(3)係数選択のアルゴリズムとして広く用いられている直交マッチング追跡法(Orthogonal Matching Pursuit:OMP)の秘匿演算法
【0021】
1.スパースコーディングの定式化
スパースコーディングでは、図1に示すように、M次元の観測信号ベクトル
【数0】
が、K個の基底の線形結合で表せると仮定する。
【数1】
ただし、
【数1-1】
は列ベクトルである基底d(1≦i≦K)を要素とするM×Kの辞書行列であり、
【数1-2】
はスパース係数である。なお、「K」は式(1)の線形結合に用いる基底の個数を表している。
【0022】
スパース係数は少数の係数のみが非ゼロの値を取り、残りの大部分の係数はゼロの値を取る。このように、非ゼロ要素が全体に対して少数である状態をスパース(Sparse:疎)と呼ぶ。辞書行列Dは事前に与えられるか、または観測データに基づき学習により適応的に推定される。
【0023】
一般的にK>M(基底の数が、観測信号の次元よりも大きい)であり、過完備な辞書行列を用いる。信号の次元より多い基底による表現y=Dxではxの一意性を保証することができないため、通常は観測信号yの表現に利用される基底をDのうちの一部に制限する。つまり、
【数1-3】
でxのlノルム、すなわちベクトルxの非ゼロ成分の数を表すとして、スパースコーディングは典型的には最適化問題
【数2】
として定式化される。
【0024】
しかしながら、この問題は全ての基底の組み合わせを試さないと最適解が得られない組合せ最適化問題であり、NP困難であることが知られている。そこで、lノルムへの緩和問題
【数3】
を考えることが多い。このlノルム正則化問題は線型計画問題として表現することが可能である。
【0025】
なお、スパースコーディングは「辞書設計の問題(Dの設計)」と「スパース係数の選択(x)」の2つに分けて考えることができる。
【0026】
辞書設計の問題では、辞書行列は離散コサイン変換やフーリエ変換、ウェーブレット変換あるいはカーブレット変換のように予め基底を用意しておく方法と、信号から基底を学習する方法がある。スパースコーディングのための辞書学習の代表的な手法がMOD(Method of Optimal Direction)(非特許文献4)とK−SVD(K−Singular Value Decomposition)(非特許文献5)である。MODはyとDxの間の二乗誤差の最小化に疑似逆行列を使用する。K−SVDはk−means法を一般化したものと位置づけられ、MODより高速な反復的アルゴリズムとして提案された。
【0027】
スパース係数の選択アルゴリズムとして直交マッチング追跡法(OMP)(非特許文献6)と反復再重み付け最小二乗法(Iterative. Reweighted Least Squares:IRLS)(非特許文献7)はよく知られている。
【0028】
2.スパースコーディングの秘匿演算のシステム構成
エッジ/クラウド処理部12でスパースコーディングの秘匿演算を行うアーキテクチャを図2ならびに図3に示す。
【0029】
図2の事前準備では、ローカル処理部11において辞書行列Dを予め用意またはK−SVD法(非特許文献5)などを用い学習して生成する。その後、辞書行列Dを秘匿辞書行列
【数3-1】
へ変換しエッジ/クラウド処理部12へ伝送する。なお、本明細書では秘匿辞書行列を「D^」と記載することがある。
つまり、事前準備では、ローカル処理部11が予め与えられた又は観測信号から学習した辞書行列Dを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化して秘匿辞書行列D^に変換して保存する辞書行列変換手順を行う。
【0030】
図3のスパースコーディングの秘匿演算の実行では、最初にローカル処理部11において観測信号yを秘匿観測信号
【数3-2】
へ変換しクラウドへ伝送する。なお、本明細書では秘匿観測信号「y^」と記載することがある。
つまり、スパースコーディングの秘匿演算の実行では、ローカル処理部11が観測信号ベクトルyを前記ランダムユニタリ行列Qを用いて秘匿化して秘匿観測信号y^に変換する観測信号変換手順を行う。
次に、エッジ/クラウド処理部12で、事前に転送された秘匿辞書行列D^と秘匿観測信号y^を用いてOMPのアルゴリズムを実行してスパース係数が推定される。つまり、スパースコーディングの秘匿演算の実行では、エッジ/クラウド処理部12が前記秘匿観測信号y^と保存されている前記秘匿辞書行列D^を用いて数C1で表される最適化問題を直交マッチング追跡法によって解き、前記スパース係数xに近似するスパース係数x^を計算する演算手順を行う。
【0031】
なお、エッジ/クラウド処理部12ではポスト処理を行ってもよい。ポスト処理は、推定したスパース係数を用いて、画像・音響信号などのメディア信号処理、脳波・脳血流・fMRIなどの生体信号の解析、機械学習などアプリケーションごとに必要な処理である。
【0032】
3.直交マッチング追跡法(OMP)の秘匿演算法
〔直交マッチング追跡法(OMP)〕
観測信号yと辞書Dが与えられた時、yをDxで近似するような係数xを求める問題を(狭義の)スパースコーディング問題と呼ぶ。ここでは式(2)の最適化問題を再構成誤差を一定の閾値以下に抑えた上でできるだけ少ない数の基底の線型結合で信号を近似する問題
【数4】
として考える。ここで、εは辞書行列Dとスパース係数xの積とサンプル信号yとの誤差の目標値である。
この問題に対する解法として、貪欲法に基づく方法やlノルム制約をlノルム制約で緩和した上で解く方法など、数多くのアルゴリズムが提案されている。
【0033】
本発明では、スパース係数の選択アルゴリズムとして、広く用いられている直交マッチング追跡法(OMP)(非特許文献6)の秘匿演算について提案する。直交マッチング追跡法は、観測信号の近似に利用する係数の添字集合の中から「サポート」、すなわち非ゼロ係数の添字集合Sを見つけ出すアルゴリズムである。初めはサポートは空集合であるとして、観測信号yを基底の線型結合で近似した時の残差を最小にするように新たな基底をサポート集合に一つ一つ追加していき、サポートに含まれる基底のみで信号を近似した時の残差がε以下になったら停止する。残差の低減に寄与する基底を順次選択していく貪欲法であり、解の最適性は保証されないが、多くの場合優れた近似を与えることが知られている。
【0034】
図9は、直交マッチング追跡法の演算アルゴリズムを説明する図である。本演算アルゴリズムは、初期化ステップS01とメインループ(ステップS02〜S07)からなる。
(ステップS01)
各パラメータを初期化する。
【数4-1】
ここで、kについて説明する。スパースコーディングでは、式(1)のように観測信号yを基底dの線形結合で近似する。OMPアルゴリズムでは、K個の基底d(i=1,2,..,K)の中から、最もよく近似できる基底から順次サポートSに追加していく。その時の基底の個数を表す変数が「k」である。
例えば、k=1は一つの基底を使って観測信号yを表すことを意味し、そのときのdはdの場合、あるいはそれ以外のdの場合などもある。また、k=2のときは2つの基底を使って観測信号yを表すことを意味し、そのときのdはdとdの場合、あるいはそれ以外のdとdの場合などもある。
ステップS01は初期化なので、k=0、スパース係数xをゼロベクトル、残差rを観測信号y、サポートSを空集合とする。
【0035】
(ステップS02)
kをk+1とする。
(ステップS03)
k個目の基底dをサポートSに追加した時の誤差を算出する。
【数5】
(ステップS04)
サポートSを更新する。
【数6】
(ステップS05)
サポートS内での最良解x−kを探索する。
【数7】
(ステップS06)
残差rを更新する。
【数8】
(ステップS07)
更新した残差rが目標値ε内であるかを確認する。
【数9】
更新した残差rが目標値内であれば、ステップS05で探索した結果を解とする。
【0036】
引き続く解析を容易にするために、ここで基底ベクトルd
【数10】
で定義する。但しδ
【数10-1】
のi番目の要素が1でそれ以外の要素はゼロの列ベクトルである。δを用いて、式(5)の近似誤差を以下のように表現する。
【数5A】
【0037】
本発明のランダムユニタリ行列に基づいた直交マッチング追跡法(OMP)の秘匿演算について説明する前に、ランダムユニタリ行列を説明する。
【0038】
〔ランダムユニタリ行列〕
ランダムユニタリ行列に基づいた秘匿演算の基本性質について述べる。先行研究において、キャンセラブルバイオメトリクスのための一方法として、ランダムユニタリ変換に基づくテンプレート保護法が研究されている(非特許文献11、13)。一般的にランダムユニタリ行列に基づく秘匿演算では、鍵pによって生成されるランダムユニタリ行列Qを用いた変換T(・)により、N次元の信号f(z=1、・・・、L)がN次元の秘匿信号
【数11】
へ変換される。なお、本明細書では秘匿信号「f^」と記載することがある。
但し、QはN×N行列
【数11-1】
であり、
【数12】
を満たす。ここで[・]はエルミート転置、Iは単位行列を表す。Nは任意の自然数であるが、本実施形態ではN=Mである。また、「L」は信号数(サンプル数)である。例えば、音声信号の場合にはzは時刻に相当し、信号f(要素数はN個)は時刻z=1〜LまでのL個のサンプル信号となる(N個の要素を持つ信号fが、L個存在する。)。また、画像の場合には、例えばzは画像ごとのインデックスと定義でき、fからfまでのL個の画像信号となる。また、1枚の画像を小ブロックに分けて、それぞれの小ブロックごとにインデックスを割り当ててもよい。
【0039】
ランダムユニタリ行列Qの生成は、グラムシュミットの直交化を用いる方法や、複数のユニタリ行列を組み合わせることでQを生成する方法が検証されている。2つの観測信号fとfをベクトルaとbと考えると、ランダムユニタリ行列Qで変換したベクトルa^とb^との間に次の関係が成り立つ。
特徴1:ユークリッド距離の保存
【数13】
特徴2:内積の保存
【数14】
特徴3:相関係数の保存
【数15】
特徴4:ノルム不変
【数15-1】
【0040】
〔直交マッチング追跡法(OMP)の秘匿演算〕
本実施形態のスパースコーディングの秘匿演算では、次式のように秘匿された観測信号y^ならびに辞書行列D^を生成する。
【数16】
【数17】
【0041】
y^とD^が与えられたとき、式(4)に代わり、次式の最適化問題を考える。
【数18】
上式を直交マッチング追跡法によって解き、スパース係数
【数18-1】
を得る。なお、本明細書では式(18−1)のスパース係数を「x^」と記載することがある。
【0042】
ここで、スパース係数x^が、観測信号yと辞書行列Dを秘匿しない場合に得られたスパース係数xと等しくなることを証明する。直交マッチング追跡法の秘匿演算アルゴリズムは、図9の通りである。
(ステップS01)
各パラメータを初期化する。
【数18-2】
ステップS01は初期化なので、k=0、スパース係数xをゼロベクトル、残差r^を秘匿された観測信号y^、サポートSを空集合とする。
【0043】
(ステップS02)
kをk+1とする。
(ステップS03)
k個目の基底dをサポートSに追加した時の誤差を算出する。ここで、式(5A)で辞書行列Dと残差rk−1を秘匿したD^とr^k−1で置き換え、式(16)と式(17)の関係式を用いると、近似誤差は次式で表される。
【数19】
前述したランダムユニタリ行列の性質より、ノルム不変であるから
【数19-1】
、内積保存であるから
【数19-2】
【数19-3】
が成立する。
このため、式(19)は次のように書き換えることができる。
【数20】
式(20)は、式(5A)と等しい。つまり、秘匿信号y^やD^を用いて計算される近似誤差ε^(i)は原信号(y及びD)を用いて計算される近似誤差ε(i)と等しくなる。
【0044】
(ステップS04)
サポートSを更新する。ε^(i)=ε(i)より、次式が成立する。
【数21】
【0045】
(ステップS05)
サポートS内での最良解x^を探索する。
【数22】
【数22-1】
式(22)内の式(22−1)に関する最小化
【数22-2】
を解くことにより、次式が得られる。
【数23】
式(14)の内積の保存の関係より
【数23-1】
が成立することから、式(23)は次式のように書き換えることができる。
【数24】
式(24)は式(7)と等しい。つまり、秘匿信号y^やD^を用いて得られるサポート内での最良解x^は原信号(y及びD)を用いた場合の最良解x−kと等しくなる。
【0046】
(ステップS06)
残差r^を更新する。式(8)を秘匿信号に置き換えると次式となる。
【数24-1】
式(16)及び式(17)の定義式及びサポート内での最良解x^=x−kより、次式が得られる。
【数25】
ここで、式(8)が成立することから、式(25)は原信号を用いた場合の誤差rを用いて次式のように表すことができる。
【数25-1】
【0047】
(ステップS07)
更新した残差r^が目標値ε内であるかを確認する。
【数25-2】
式(25−2)を満たすとき終了となるが、式(25−1)及びノルム不変の性質より、
【数26】
が成立する。つまり、秘匿信号y^やD^での停止条件は原信号(y及びD)での停止条件と等しくなる。
【0048】
以上より、秘匿信号を用いて計算されるスパース係数x^は、原信号を用いて計算されるスパース係数xと等しいことが証明された。
【0049】
4.スパースコーディングの秘匿演算のシステムの具体的構成
図7及び図8は、スパースコーディングの秘匿演算のシステムを説明する具体的構成図である。スパースコーディングの秘匿演算のシステムは、ローカル処理部11とエッジ/クラウド処理部12で構成される。
【0050】
図7は、前述した辞書行列変換手順時の図である。
ローカル処理部11は、辞書学習部21、ランダムユニタリ変換部22、キャッシュ部23、送信部24を備える。辞書学習部21は、学習用の観測信号yを受信し、K−SVD法(非特許文献5)などを用い学習して辞書行列Dを生成する。なお、辞書行列Dが予め与えられている場合は、辞書学習部21は不要である。ランダムユニタリ変換部22は、辞書行列Dを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化して秘匿辞書行列D^に変換する。キャッシュ部23は、ランダムユニタリ変換部22で生成された秘匿辞書行列D^を一時保管する。送信部24は、当該秘匿辞書行列D^をエッジ/クラウド処理部12へ送信する。
【0051】
エッジ/クラウド処理部12は、受信部25及びデータベース部26を備える。送信部25は、ローカル処理部11から送信されてきた秘匿辞書行列D^を受信する。データベース部26は、当該秘匿辞書行列D^を保存する。
【0052】
図8は、前述した観測信号変換手順及び演算手順時の図である。
これらの手順では、ローカル処理部11において辞書学習部21は不要である。ランダムユニタリ変換部22は、観測信号ベクトルyを前記ランダムユニタリ行列Qを用いて秘匿化して秘匿観測信号y^に変換する。キャッシュ部23は、ランダムユニタリ変換部22で生成された秘匿観測信号y^を一時保管する。送信部24は、当該秘匿観測信号y^をエッジ/クラウド処理部12へ送信する。
【0053】
エッジ/クラウド処理部12は、受信部25及びデータベース部26の他に、メインループ部13、初期化部31、及びスパース係数出力部37を備える。送信部25は、ローカル処理部11から送信されてきた秘匿観測信号y^を受信する。送信部25は、初めて秘匿観測信号y^を受信したときに、初期化部31へ転送し、図9の直交マッチング追跡法において秘匿演算アルゴリズムのステップS01をさせる。以降送信部25は、受信した秘匿観測信号y^をメインループ部13へ転送する。
【0054】
メインループ部13は、秘匿観測信号y^とデータベース部26が保存する秘匿辞書行列D^を用いて、スパース係数x^を演算する。メインループ部13は、近似誤差算出部32、サポート更新部33、最良解探索部34、残差更新部35及び演算停止部36を有する。
【0055】
近似誤差算出部32は、データベース部26が保存する秘匿辞書行列D^と、秘匿観測信号y^(初期化された残差)、初期解x、及び解の初期サポートS、もしくは秘匿観測信号y^、直前に演算された解xk−1、残差r^k−1、解のサポートSk−1を用いて、近似誤差ε^(i)を演算する(図9のステップS03)。サポート更新部33は、近似誤差算出部32が演算した近似誤差ε^(i)を用いてサポートSを更新する(図9のステップS04)。
【0056】
最良解探索部34は、サポート更新部33が更新したサポートSとデータベース部26が保存する秘匿辞書行列D^を用いてサポートS内での最良解x^を探索する(図9のステップS05)。残差更新部35は、最良解探索部34が探索した最良解x^とデータベース部26が保存する秘匿辞書行列D^を用いて残差r^を更新する(図9のステップS06)。演算停止部36は、残差更新部35が更新した残差r^が目標値εに収まっているか否かを判断し、収まっていれば、最良解探索部34が探索した最良解x^をスパース係数出力部37に出力させる。一方、収まっていなければ、演算停止部36は、残差r^及び最良解x^を近似誤差算出部32に引き渡し、再度演算を繰り返させる。
【0057】
5.実施例
図7及び図8で説明したスパースコーディングの秘匿演算のシステムの有効性を検証するために、当該システムにおいて秘匿前の観測信号(原信号)と秘匿観測信号(秘匿信号)に対してスパース係数の推定を行った。
【0058】
〔データの生成〕
過完備なランダム辞書行列Dにスパースベクトルxを入力して、y=Dxにより観測データyを生成した。以下に、具体的な設定条件を示す。
・辞書行列D:30×50のランダム行列(M=30,K=50)
・スパース係数x:非ゼロの係数が正規分布に従うランダム変数。50次元(K=50)のベクトルで、その内で非ゼロの係数の個数はk=(1、2,・・・、10)の10種類。
・サンプル数:それぞれのkについて1000(L=1000)
【0059】
〔評価〕
以下の3つの方法により、スパース係数の推定を行った。
・手法1:直交マッチング追跡法
・手法2:本発明に係る秘匿演算方法
・手法3:ランダム行列による変換
【0060】
手法1は、原信号に対する直交マッチング追跡法、手法3では、秘匿信号を生成する際にランダムユニタリ行列Qに代わってユニタリ性を有しないランダム行列により観測信号と辞書行列を生成し、直交マッチング追跡法を適用した。
【0061】
図4にスパース係数の真値と推定値のL誤差
【数26-1】
の平均を示す。横軸は真値の非ゼロ要素の個数kを表す。図4より、本発明に係る秘匿演算方法により推定されるスパース係数(OMP(Unitary):手法2)は原信号に対して推定したスパース係数(OMP(True):手法1)と一致していることが確認できる。また、ランダムユニタリ行列に代わりランダム行列を用いた場合(OMP(Random):手法3)にはkが大きくなるについて誤差が拡大していることがわかる。
【0062】
図5に真値Sと推定値
【数26-2】
のサポート間距離
【数27】
を示す。横軸は真値の非ゼロ要素の個数kを表す。図5より、本発明に係る秘匿演算方法により推定されるサポート間距離(OMP(Unitary):手法2)は原信号に対して推定したサポート間距離(OMP(True):手法1)と一致していることが確認できる。ランダム行列を用いた場合(OMP(Random):手法3)には、kが小さい場合でも推定誤差が発生している。
【0063】
図6には、k=6の場合の任意の1サンプルについて、スパース係数xの真値と3つの手法による推定値を示した。図6より、本発明に係る秘匿演算方法は原信号に対する直交マッチング追跡法と同じスパース係数を推定できていることが確認できる。一方、ランダム行列で変換した場合には推定誤差が発生しており、秘匿信号の生成にユニタリ性は重要な性質であることがわかる。
【0064】
6.発明の効果
本発明に係るスパースコーディングの秘匿演算方法は、プライバシーを保護しつつエッジ/クラウドの計算資源を利用したスパースコーディングの実行が可能である。本発明に係るスパースコーディングの秘匿演算方法は、プライバシー保護のため観測信号と辞書行列を秘匿した状態でスパース係数を推定でき、かつ普及したアプリケーションでの利用が可能である。
【符号の説明】
【0065】
11:ローカル処理部
12:エッジ/クラウド処理部
13:メインループ部
21:辞書学習部
22:ランダムユニタリ変換部
23:キャッシュ部
24:送信部
25:受信部
26:データベース部
31:初期化部
32:近似誤差算出部
33:サポート更新部
34:最良解探索部
35:残差更新部
36:演算停止部
37:スパース係数出力部
図1
図2
図3
図4
図5
図6
図7
図8
図9