IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 日本電信電話株式会社の特許一覧 ▶ 国立大学法人 琉球大学の特許一覧

特開2024-81040推定装置、推定方法、及び、推定プログラム
<>
  • 特開-推定装置、推定方法、及び、推定プログラム 図1
  • 特開-推定装置、推定方法、及び、推定プログラム 図2
  • 特開-推定装置、推定方法、及び、推定プログラム 図3
  • 特開-推定装置、推定方法、及び、推定プログラム 図4
  • 特開-推定装置、推定方法、及び、推定プログラム 図5
  • 特開-推定装置、推定方法、及び、推定プログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024081040
(43)【公開日】2024-06-17
(54)【発明の名称】推定装置、推定方法、及び、推定プログラム
(51)【国際特許分類】
   G09C 1/00 20060101AFI20240610BHJP
【FI】
G09C1/00 610Z
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2022194466
(22)【出願日】2022-12-05
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】504145308
【氏名又は名称】国立大学法人 琉球大学
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100129230
【弁理士】
【氏名又は名称】工藤 理恵
(72)【発明者】
【氏名】石原 裕之
(72)【発明者】
【氏名】仲地 孝之
(57)【要約】
【課題】秘匿スパースモデリングの技術において、Lasso解を推定可能な技術を提供する。
【解決手段】推定装置20は、ランダムユニタリ行列で暗号化された暗号化データを受信する通信部201と、前記暗号化データに関する線形回帰モデルについて、前記線形回帰モデルの回帰係数のLasso回帰による推定値を、ISTA又はFISTAにより算出する推定部202と、を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
ランダムユニタリ行列で暗号化された暗号化データを受信する通信部と、
前記暗号化データに関する線形回帰モデルについて、前記線形回帰モデルの回帰係数のLasso回帰による推定値を、ISTA(Iterative Shrinkage Soft-thresholding Algorithm)又はFISTA(Fast Iterative Shrinkage Soft-thresholding Algorithm)により算出する推定部と、
を備える推定装置。
【請求項2】
前記暗号化データは、
所定データの暗号化データと、前記所定データを表現するための特徴ベクトルの集合である辞書データの暗号化データと、である請求項1に記載の推定装置。
【請求項3】
推定装置で行う推定方法において、
ランダムユニタリ行列で暗号化された暗号化データを受信し、
前記暗号化データに関する線形回帰モデルについて、前記線形回帰モデルの回帰係数のLasso回帰による推定値を、ISTA(Iterative Shrinkage Soft-thresholding Algorithm)又はFISTA(Fast Iterative Shrinkage Soft-thresholding Algorithm)により算出する、
推定方法。
【請求項4】
請求項1に記載の推定装置としてコンピュータを機能させる推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、推定装置、推定方法、及び、推定プログラムに関する。
【背景技術】
【0002】
クラウド/エッジコンピューティングは、ビッグデータ解析の計算リソースとして急速に普及している。しかし、個人の特定に繋がる可能性のあるデータは、プライバシー保護の観点から、クラウド/エッジコンピューティングの利用が制限される。
【0003】
そこで、クラウド/エッジコンピューティングにおいて、秘匿化されたデータを解析するデータ解析手法の重要性が高まっている。例えば、非特許文献1には、秘匿スパースモデリングの技術において、秘匿化されたデータに関する線形回帰モデルについて、その線形回帰モデルの回帰係数のLasso回帰による推定値(Lasso解)を推定する技術が提案されている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】坂東、外2名、“ランダムユニタリ変換により分散秘匿化された信号に対するLASSO解推定”、社団法人電子情報通信学会、信学技報、マルチメディア情報ハイディング・エンリッチメント研究会(EMM)、2020年、p.1-p.5
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、非特許文献1は、Lasso解をCDA(Coordinate Descent Algorithm)により推定する方法を開示するにすぎず、CDA以外のLasso解の求解方法は示されていなかった。
【0006】
本開示は、上記事情を鑑みてなされたものであり、秘匿スパースモデリングの技術において、Lasso解を推定可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示の一態様の推定装置は、ランダムユニタリ行列で暗号化された暗号化データを受信する通信部と、前記暗号化データに関する線形回帰モデルについて、前記線形回帰モデルの回帰係数のLasso回帰による推定値を、ISTA(Iterative Shrinkage Soft-thresholding Algorithm)又はFISTA(Fast Iterative Shrinkage Soft-thresholding Algorithm)により算出する推定部と、を備える。
【0008】
本開示の一態様の推定方法は、推定装置で行う推定方法において、ランダムユニタリ行列で暗号化された暗号化データを受信し、前記暗号化データに関する線形回帰モデルについて、前記線形回帰モデルの回帰係数のLasso回帰による推定値を、ISTA(Iterative Shrinkage Soft-thresholding Algorithm)又はFISTA(Fast Iterative Shrinkage Soft-thresholding Algorithm)により算出する。
【0009】
本開示の一態様の推定プログラムは、上記推定装置としてコンピュータを機能させる。
【発明の効果】
【0010】
本開示によれば、秘匿スパースモデリングの技術において、Lasso解を推定可能な技術を提供できる。
【図面の簡単な説明】
【0011】
図1図1は、推定システムの構成を示す図である。
図2図2は、推定システムの処理フローを示す図である。
図3図3は、ISTAによるLasso解の推定処理フローを示す図である。
図4図4は、FISTAによるLasso解の推定処理フローを示す図である。
図5図5は、シミュレーションによるLasso解の推定値を示す図である。
図6図6は、推定装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本開示の実施形態を説明する。
【0013】
[推定システムの構成]
図1は、本実施形態に係る推定システムの構成を示す図である。推定システム1は、ローカル機器10と、推定装置20と、を備える。ローカル機器10と推定装置20は、有線又は無線の通信ネットワーク30で相互通信可能に接続されている。
【0014】
ローカル機器10は、例えば、観測等を行うセンサ、センサに接続されたコンピュータである。ローカル機器10は、図1に示したように、処理部101と、通信部102と、記憶部103と、を備える。以降、観測センサを例に説明する。
【0015】
処理部101は、ローカル機器10が観測した観測データの生データ(観測信号、観測信号を表現するための特徴ベクトルの集合である辞書データ)を取得し、取得した生データをランダムユニタリ行列で暗号化する機能を備える。
【0016】
通信部102は、通信ネットワーク30を介して、ランダムユニタリ行列で暗号化された生データの暗号化データを推定装置20へ送信する機能を備える。また、通信部102は、通信ネットワーク30を介して、推定装置20からLasso解の推定結果を受信する機能を備える。
【0017】
記憶部103は、観測データの生データ、生データの暗号化データ、Lasso解の推定結果等、ローカル機器10で扱う各種データを記憶する機能を備える。
【0018】
次に、推定装置20の機能を説明する。
【0019】
推定装置20は、例えば、ビッグデータ解析の計算リソースを備えたクラウド/エッジコンピューティング装置である。推定装置20は、図1に示したように、通信部201と、推定部202と、記憶部203と、を備える。
【0020】
通信部201は、通信ネットワーク30を介して、ローカル機器10から観測データの生データの暗号化データを受信する機能を備える。また、通信部201は、通信ネットワーク30を介して、Lasso解の推定結果をローカル機器10へ送信する機能を備える。
【0021】
推定部202は、暗号化データに関する線形回帰モデルについて、その線形回帰モデルの回帰係数のLasso回帰による推定値(Lasso解)を、ISTA(Iterative Shrinkage Soft-thresholding Algorithm;近接勾配法)により推定算出する機能を備える。本実施形態では、この推定方法を、Secure ISTA(秘匿ISTA;秘匿近接勾配法)と呼ぶ。
【0022】
また、推定部202は、上記Lasso解を、ISTAの高速化アルゴリズムであるFISTA(Fast Iterative Shrinkage Soft-thresholding Algorithm)により推定算出する機能を備える。本実施形態では、この推定方法を、Secure FISTA(秘匿FISTA;秘匿高速化近接勾配法)と呼ぶ。
【0023】
記憶部203は、暗号化データ、Lasso解の推定結果等、推定装置20で扱う各種データを記憶する機能を備える。
【0024】
[推定システムの動作]
図2は、推定システムの処理フローを示す図である。
【0025】
まず、ローカル機器10の処理部101は、ローカル機器10が観測した観測データの生データ(観測信号y、辞書データA)を取得する(ステップS1)。
【0026】
ここで、線形回帰モデルについて補足説明する。線形回帰モデルでは、観測信号yがn個の特徴ベクトルと回帰係数xとの線形結合で記述される。このときの特徴ベクトルの集合を辞書データAと表現する。辞書データAは、観測信号yを表現するための特徴量の集合であり、行列の形で表現される。
【0027】
観測信号yが長さpの行ベクトルとすると、特徴ベクトルも長さpの行ベクトルとなる。特徴ベクトルの集合である辞書データAは、p行n列の行列として表現される。回帰係数は、長さnの行ベクトルとなる。
【0028】
次に、ローカル機器10の処理部101は、取得した生データにランダムユニタリ行列Qpをかけることで、取得した生データ(y、A)の暗号化データ(y^、A^)を生成する(ステップS2)。このとき、ランダムユニタリ行列Qpは、p行p列のユニタリ行列である。
【0029】
【数1】
【0030】
【数2】
【0031】
式(1)は、暗号化後の観測信号y^^はyの上)である。式(2)は、暗号化後の辞書データA^^はAの上)である。
【0032】
次に、ローカル機器10の通信部102は、通信ネットワーク30を介して、ランダムユニタリ行列Qpで暗号化された暗号化データ(y^、A^)を推定装置20へ送信する(ステップS3)。
【0033】
このとき、推定装置20へ送信され保持されるデータは暗号化されているため、クラウド/エッジ側でデータ内容が知られることはない。故に、ローカル側のユーザは、データに関するプライバシーを保護しながら、推定装置20が備えるビッグデータ解析の計算リソースを利用できる。
【0034】
次に、推定装置20の推定部202は、ランダムユニタリ行列Qpで暗号化された暗号化データ(y^、A^)に関する線形回帰モデル(y^=A^x)について、その線形回帰モデルを形成する回帰係数xのLasso回帰による推定値(Lasso解)x*を、ISTA又はFISTAにより推定する(ステップS4)。
【0035】
具体的には、まず、推定部202は、推定装置20から送信された暗号化データ(y^、A^)について、式(3)に示す線形回帰モデルを立てる(ステップS4-1)。
【0036】
【数3】
【0037】
y^は、ランダムユニタリ行列Qpで暗号化された観測信号である。A^は、ランダムユニタリ行列Qpで暗号化された辞書データである。xは、推定対象である回帰係数であり、疎な解としてスパース係数とも呼ばれる。
【0038】
その後、推定部202は、Lasso回帰により回帰係数xの推定値(Lasso解)x*をISTA又はFISTAを用いて計算する(ステップS4-2)。Lasso回帰とは、式(4)に示す数式の最適化問題を回帰係数xについて解くことを指す。
【0039】
【数4】
【0040】
λは、‘0’より大きい任意の実数である。
【0041】
最後に、推定装置20の通信部201は、通信ネットワーク30を介して、ISTA又はFISTAを用いて推定したLasso解x*をローカル機器10へ送信する(ステップS5)。
【0042】
ISTA又はFISTAを用いて推定したLasso解x*は、暗号化データより推定した場合と非暗号化データ(生データ)より推定した場合とで同じ解となる。また、これは回帰係数が暗号化されていないことを意味するが、回帰係数のみから観測信号及び辞書データに含まれるデータの個人情報を推定することは困難である。
【0043】
即ち、ローカル側のユーザは、観測データの生データより回帰係数を計算する手間から解放される。時間のかかる回帰係数の計算を自身で行うことなく、生データより計算した場合と同じ解の回帰係数を、処理能力の高い推定装置20に計算させることができる。
【0044】
また、回帰係数の計算のために推定装置20へ送信するデータは暗号化されており、更には推定装置20から回帰係数のみが返信されるため、クラウド/エッジ側や通信ネットワーク上の第三者からデータのプライバシーを保護できる。
【0045】
[Lasso解の推定]
次に、ISTA又はFISTAを用いて推定したLasso解が、暗号化データより推定した場合と非暗号化データ(生データ)より推定した場合とで同じ解になることを説明する。
【0046】
[ISTAによる非暗号化データからのLasso解の推定]
最初に、ISTAを用いて非暗号化データ(y、A)からLasso解を推定する「ISTA」を説明する。図3は、ISTAによるLasso解の推定処理フローを示す図である。ここでは、式(5)に示す数式の最適化問題を回帰係数xについて解くことを考える。
【0047】
【数5】
【0048】
まず、ローカル機器10は、カウンタ変数tを‘0’として推定対象である回帰係数x[t]を初期化する(ステップS101)。
【0049】
【数6】
【0050】
ATは、Aの転置行列である。
【0051】
次に、ローカル機器10は、式(5)の右辺第1項をg(x)とし、平方完成によりg(x)の2次関数近似の頂点v[t]を求める(ステップS102)。
【0052】
【数7】
【0053】
【数8】
【0054】
λは、‘0’より大きい任意の実数である。Lは、リプシッツ係数である。
【0055】
ISTAでは式(9)を逐次的に解くことになるが、式(9)は式(8)によって求めたv[t]を用いて式(10)のように表現することができる。
【0056】
【数9】
【0057】
【数10】
【0058】
ローカル機器10は、v[t]の計算結果に軟判定しきい値関数S1/Lを適用し、その適用結果を回帰係数x[t+1]とする(ステップS103)。
【0059】
最後に、ローカル機器10は、回帰係数x[t+1]が一定の終了基準を満たすか否かを判定する(ステップS104)。
【0060】
ローカル機器10は、回帰係数x[t+1]が終了基準を満たす場合には、回帰係数x[t+1]をLasso解x*として処理を終了する。回帰係数x[t+1]が終了基準を満たさない場合には、終了基準を満たすまでステップS102~ステップS104を繰り返す。
【0061】
[ISTAによる暗号化データからのLasso解の推定]
次に、図3を再度参照しながら、ISTAを用いて暗号化データ(y^、A^)からLasso解を推定する「Secure ISTA」を説明する。ここでは、式(4)に示していた数式の最適化問題を回帰係数xについて解くことを考える。
【0062】
まず、推定装置20の通信部201は、カウンタ変数tを‘0’として推定対象である回帰係数x[t]を初期化する(ステップS201)。
【0063】
【数11】
【0064】
A^Tは、A^の転置行列である。この回帰係数x[t]の初期値x[0]は、式(12)に示すように、ランダムユニタリ行列Qpの性質であるQp TQp=I(Iは単位行列)より、式(6)に示した暗号化前の回帰係数x[t]の初期値x[0]と変わらない。
【0065】
【数12】
【0066】
次に、推定装置20の通信部201は、式(4)の右辺第1項をg(x)とし、平方完成によりg(x)の2次関数近似の頂点v^[t](^はvの上)を求める(ステップS202)。
【0067】
【数13】
【0068】
【数14】
【0069】
λは、‘0’より大きい任意の実数である。L^^はLの上)は、リプシッツ係数である。暗号化データに対するリプシッツ係数L^は、式(15)に示すように、ランダムユニタリ行列Qpの性質より、データの暗号化前後で変化しない。
【0070】
【数15】
【0071】
式(14)に示したv^[t]についても、式(16)に示すように、ランダムユニタリ行列Qpの性質より、データの暗号化前後で変化しない。
【0072】
【数16】
【0073】
次に、推定装置20の通信部201は、v^[t]の計算結果に軟判定しきい値関数S1/L^を適用し、その適用結果を回帰係数x[t+1]とする(ステップS203)。
【0074】
【数17】
【0075】
評価関数v^[t]がデータの暗号化前後で変化しないため、軟判定しきい値関数S1/L^を適用後の回帰係数x[t+1]もデータの暗号化前後で変化しないことは明らかである。
【0076】
最後に、推定装置20の通信部201は、回帰係数x[t+1]が一定の終了基準を満たすか否かを判定する(ステップS204)。
【0077】
推定装置20の通信部201は、回帰係数x[t+1]が終了基準を満たす場合には、回帰係数x[t+1]をLasso解x*として処理を終了する。回帰係数x[t+1]が終了基準を満たさない場合には、終了基準を満たすまでステップS202~ステップS204を繰り返す。
【0078】
このように、ランダムユニタリ行列Qpの性質であるQp TQp=Iを用いているため、ISTAを用いて推定したLasso解は、暗号化データより推定した場合と非暗号化データより推定した場合とで同じ解になる。
【0079】
[FISTAによる暗号化データからのLasso解の推定]
次に、FISTAを用いて暗号化データ(y^、A^)からLasso解を推定する「Secure FISTA」を説明する。図4は、FISTAによるLasso解の推定処理フローを示す図である。FISTAは、ISTAの収束までの反復回数を減らすことで、高速にLasso解を求めることができるアルゴリズムである。ここでも、式(4)に示していた数式の最適化問題を回帰係数xについて解くことを考える。
【0080】
まず、推定装置20の通信部201は、カウンタ変数tを‘0’として推定対象である回帰係数x[t]を初期化し、カウンタ変数tを‘1’として第1の高速化用変数β[t]及び第2の高速化用変数w[t]を初期化する(ステップS301)。
【0081】
【数18】
【0082】
A^Tは、A^の転置行列である。この回帰係数x[t]の初期値x[0]は、式(12)に示したように、ランダムユニタリ行列Qpの性質であるQp TQp=Iより、式(6)に示した暗号化前の回帰係数x[t]の初期値x[0]と変わらない。
【0083】
次に、推定装置20の通信部201は、式(4)の右辺第1項をg(x)とし、平方完成によりg(x)の2次関数近似v^[t]の頂点を求める(ステップS302)。
【0084】
【数19】
【0085】
λは、‘0’より大きい任意の実数である。L^は、リプシッツ係数である。暗号化データに対するリプシッツ係数L^は、式(15)に示したように、ランダムユニタリ行列Qpの性質より、データの暗号化前後で変化しない。また、式(19)に示したv^[t]についても、式(16)と同様に、ランダムユニタリ行列Qpの性質より、データの暗号化前後で変化しない。
【0086】
次に、推定装置20の通信部201は、v^[t]の計算結果に軟判定しきい値関数S1/L^を適用し、その適用結果を回帰係数x[t+1]とする(ステップS303)。
【0087】
【数20】
【0088】
評価関数v^[t]がデータの暗号化前後で変化しないため、軟判定しきい値関数S1/L^を適用後の回帰係数x[t+1]もデータの暗号化前後で変化しないことは明らかである。
【0089】
つまり、ステップS302でもステップS303でも、ISTAと同様の議論により、データの暗号化の有無に関わらず同じ値を出力する。
【0090】
次に、推定装置20の通信部201は、第1の高速化用変数β[t]を更新する(ステップS304)。
【0091】
【数21】
【0092】
第1の高速化用変数β[t]は、データの暗号化に無関係である。
【0093】
次に、推定装置20の通信部201は、第2の高速化用変数w[t]を更新する(ステップS305)。
【0094】
【数22】
【0095】
第1の高速化用変数β[t]はデータの暗号化に無関係であり、回帰係数x[t+1]もデータの暗号化前後で変化しないため、第2の高速化用変数w[t]もデータの暗号化に無関係である。
【0096】
最後に、推定装置20の通信部201は、回帰係数x[t+1]が一定の終了基準を満たすか否かを判定する(ステップS306)。
【0097】
推定装置20の通信部201は、回帰係数x[t+1]が終了基準を満たす場合には、回帰係数x[t+1]をLasso解x*として処理を終了する。回帰係数x[t+1]が終了基準を満たさない場合には、終了基準を満たすまでステップS302~ステップS306を繰り返す。
【0098】
このように、ISTAと同様に、FISTAを用いて推定したLasso解は、暗号化データより推定した場合と非暗号化データより推定した場合とで同じ解になる。なお、FISTAについては、「A.Beck、外1名、“Fast iterative shrinkage-thresholding algorithm for linear inverse problems”、SIAM J. Imaging Sciences、2009年、Vol.2、No.1、p.183-p.202」に記載されている。
【0099】
[Lasso解のシミュレーション結果]
非暗号化データを用いた「ISTA」と暗号化データを用いた「Secure ISTA」とが同じLasso解を生成するか、シミュレーションを行った。図5は、シミュレーションによるLasso解の推定値を示す図である。「CDA」によるシミュレーション結果も算出した。横軸はLasso解の要素番号、縦軸はLasso解の推定値である。図5より、「ISTA」と「Secure ISTA」と「CDA」のいずれの場合も同じ値を算出していることが確認された。
【0100】
[効果]
本実施形態によれば、推定装置20が、ランダムユニタリ行列で暗号化された暗号化データを受信する通信部201と、前記暗号化データに関する線形回帰モデルについて、前記線形回帰モデルの回帰係数のLasso回帰による推定値を、ISTA又はFISTAにより算出する推定部202と、を備えるので、秘匿スパースモデリングの技術において、Lasso解を推定可能な技術を提供できる。即ち、ISTA並びにその高速化アルゴリズムFISTAを秘匿領域で実行可能であり、秘匿スパースモデリングの技術において多様な求解手法を適用可能にすることができる。
【0101】
[その他]
本開示は、上記実施形態に限定されない。本開示は、本開示の要旨の範囲内で数々の変形が可能である。例えば、観測データ以外の所定データや当該所定データの暗号化データについても適用可能である。
【0102】
上記説明した 本実施形態の推定装置20は、例えば、図6に示すように、CPU901と、メモリ902と、ストレージ903と、通信装置904と、入力装置905と、出力装置906と、を備えた汎用的なコンピュータシステムを用いて実現できる。
【0103】
メモリ902及びストレージ903は、記憶装置である。当該コンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、推定装置20の各機能が実現される。
【0104】
推定装置20は、1つのコンピュータで実装されてもよい。推定装置20は、複数のコンピュータで実装されてもよい。推定装置20は、コンピュータに実装される仮想マシンであってもよい。
【0105】
推定装置20用のプログラムは、HDD、SSD、USBメモリ、CD、DVD等のコンピュータ読取り可能な記録媒体に記憶できる。コンピュータ読取り可能な記録媒体は、例えば、非一時的な(non-transitory)記録媒体である。推定装置20用のプログラムは、通信ネットワークを介して配信することもできる。
【0106】
ローカル機器10も推定装置20と同様のハードウェア構成を備える。
【符号の説明】
【0107】
1:推定システム
10:ローカル機器
20:推定装置
30:通信ネットワーク
101:処理部
102:通信部
103:記憶部
201:通信部
202:推定部
203:記憶部
901:CPU
902:メモリ
903:ストレージ
904:通信装置
905:入力装置
906:出力装置
図1
図2
図3
図4
図5
図6