JP5579327B2 - 隠れマルコフモデルに基づくプライバシー保護確率的推論 - Google Patents

隠れマルコフモデルに基づくプライバシー保護確率的推論 Download PDF

Info

Publication number
JP5579327B2
JP5579327B2 JP2013527401A JP2013527401A JP5579327B2 JP 5579327 B2 JP5579327 B2 JP 5579327B2 JP 2013527401 A JP2013527401 A JP 2013527401A JP 2013527401 A JP2013527401 A JP 2013527401A JP 5579327 B2 JP5579327 B2 JP 5579327B2
Authority
JP
Japan
Prior art keywords
encrypted
probability
hmm
server
observation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013527401A
Other languages
English (en)
Other versions
JP2014503833A (ja
Inventor
サン、ウェイ
ラーネ、シャンタヌ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Research Laboratories Inc
Original Assignee
Mitsubishi Electric Research Laboratories Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/076,418 external-priority patent/US8433893B2/en
Priority claimed from US13/076,424 external-priority patent/US8402263B2/en
Application filed by Mitsubishi Electric Research Laboratories Inc filed Critical Mitsubishi Electric Research Laboratories Inc
Publication of JP2014503833A publication Critical patent/JP2014503833A/ja
Application granted granted Critical
Publication of JP5579327B2 publication Critical patent/JP5579327B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • G10L15/142Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/24Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)

Description

この発明は包括的には隠れマルコフモデルに基づく確率的推論に関し、より詳細には、隠れマルコフモデルに基づく確率的推論のための、サーバーコンピューターとクライアントコンピューターとの間のプライバシー保護計算に関する。
隠れマルコフモデル(HMM)に基づく確率的推論は、機械学習、音声処理及び遺伝子配列解析において一般的である。プライバシー制約を伴う確率的推論は、比較的未開拓の研究領域であり、データ及びHMMが異なる関係者に属し、データ及びHMMを共有することができないマルチパーティのシナリオに当てはまる。例えば、クライアントコンピューター(アリス)が、通話からの音声データを解析する必要がある。アリスは、トレーニングされたデータベースから得られたHMMを所有するサーバーコンピューター(ボブ)に音声認識タスクを外注する。アリスは、プライバシーへの懸念から、ボブと音声データを共有することができず、一方、ボブは、トレーニングデータベースについての情報を暴露する可能性があるHMMパラメーターを開示することができない。
HMMを介しての安全な推論のための1つの方法は、プライバシー保護2パーティ最大化法に基づいており、その方法では、いずれの関係者も厳密に同じプロトコルオーバーヘッドを被る。しかしながら、その方法は、計算量が多いタスクの大部分を実行するために、シンクライアントがデータを暗号化し、暗号化されたデータをサーバーに送信するような応用形態には適していない。
HMM及びHMMの3つの基本的な問題
HMMはマルコフ連鎖の一般化であり、HMMの状態が直接は不明であるが、解析可能な出力を生成する。それらの出力は「観測値」とも呼ばれる。観測値はHMMの隠れ状態によって決まるので、観測値は隠れ状態についての情報を明らかにすることができる。
HMMλは三つ組のパラメーターλ=(A,B,Π)である。行列A、A=(aij)は状態遷移行列であり、aijは状態SからSへの遷移確率であり、ただし、1≦i,j≦Nであり、NはHMMの状態の数であり、aij=Pr{qt+1=S|q=S}、1≦i,j≦Nであり、{S,S,…,S}は1組の状態であり、qは時刻tにおける状態であり、Prは結合確率である。
行列B、B=(b,b,…,b)は観測値の確率の行列であり、bは観測値系列の既知のアルファベットにわたる確率の行列の列ベクトルである。ただし、j=1,2,…,Nである。したがって、b(v)=Pr{x=v|q=S}、1≦j≦N,1≦k≦Mであり、ただし、{v,v,…,v}は観測シンボルのアルファベットであり、xは時刻tにおける観測値である。ベクトルΠ、Π={π,π,…,π}はHMMの初期状態確率ベクトルであり、ただし、π=Pr{q=S}である。
観測値系列x,x,…,x及びHMMλ=(A,B,Π)の場合、1つの問題はHMMに対する観測値系列の確率、すなわち、Pr{x,x,…,x|λ}を求めることである。非安全ドメインにおけるこの問題のための解決策は前向きアルゴリズム及び後向きアルゴリズムを含む。
統計的構文解析、例えば、遺伝子配列解析及び自然言語処理では、主な問題は、HMMに対する、観測値系列に対応する状態の最も起こり得る系列を求めることである。その問題は、HMMλ=(A,B,Π)の場合に、結合確率Pr{q,q,…,q,x,x,…,x|λ}を効率的に計算することである。その問題は通常、非安全ドメインにおいてビタビアルゴリズムによって解かれる。
別の問題は、観測値系列に基づいてHMMのパラメーターを求めることである。非安全ドメインにおけるこの問題に対する1つの解決策は、バウム−ウェルチアルゴリズムを含む。
前向きアルゴリズム
時刻tにおいて状態Sにある観測値系列の結合確率は以下の通りである。
Figure 0005579327
非安全ドメインにおける前向きアルゴリズムは以下のステップを含む。
1.α(j)=π(x)、1≦j≦Nを初期化する
2.状態S、1≦j≦Nごとに、かつ全ての観測値t、1≦t≦T−1の場合に、以下の式に従って、観測値系列の尤度を計算する。
3.
Figure 0005579327
4.以下の式に従って、確率を求める。
5.
Figure 0005579327
後向きアルゴリズム
後向き確率は以下の式に従って定義される。
6.
Figure 0005579327
非安全ドメインにおける後向きアルゴリズムは、以下のことを含む。
7.β(j)=1、1≦j≦Nを初期化する
8.1≦i≦Nごとに、かつ全ての1≦t≦T−1の場合に、以下の式を求める。
9.
Figure 0005579327
10.以下の式に従って確率を求める。
11.
Figure 0005579327
ビタビアルゴリズム
時刻tにおいて状態Sで終了する、観測値系列のための最も確からしい状態系列の確率は以下の式に従って求められる。
Figure 0005579327
ただし、maxは最大値の関数である。
非安全ドメインにおけるビタビアルゴリズムは、以下のステップを含む。
12.全ての1≦j≦Nの場合に、δ(j)=π(x)に従って最も確からしい状態系列を初期化し、確からしい状態のインデックスの行列をφ(j)=0として初期化する。
13.全ての1≦j≦Nの場合に、かつ1≦t≦T−1ごとに、以下の式に従って、次の時刻t+1の場合に状態Sにおいて終了する最も確からしい状態系列の確率、及びインデックスの行列を求める。
Figure 0005579327
以下の式に従って、最も起こり得る最終的な状態のインデックスを求め、
Figure 0005579327
インデックス
Figure 0005579327
をバックトラックする。ただし、t=1,2,…,T−1である。
最も確からしい状態系列
Figure 0005579327
を求める。
バウム−ウェルチアルゴリズム
バウム−ウェルチアルゴリズムは、前向き−後向きアルゴリズムとしても知られており、所与の観測値系列x,x,…,xの場合に最適なHMMパラメーターを推定し、全ての隠れマルコフモデルにわたる観測値の確率を最大化する、すなわち、maxλPr{x,x,…,x|λ}を求める。
所与のHMMλ=(A,B,Π)の場合に、時刻tにおいて状態Sにあり、時刻t+1において状態Sにある確率は、以下の式に従って、条件付き確率ζ(i,j)として定義される。
Figure 0005579327
ただし、その式は以下の式に等しい。
Figure 0005579327
式(1)及び式(3)において定義されるα(i)及びβ(i)の表記を利用することによって、条件付き確率ζ(i,j)は以下のようになる。
Figure 0005579327
以下の式に従って、時刻tにおいて状態Sにある全条件付き確率γ(i)が求められる。
Figure 0005579327
バウム−ウェルチアルゴリズムは、非安全ドメインにおいて、以下のようにHMMλを更新する。
HMMλ=(A,B,Π)をランダムに初期化する
以下の式に従って状態の初期確率に基づいて初期状態確率ベクトルを求める。
Figure 0005579327
以下の式に従って、遷移確率を求める。
Figure 0005579327
アルファベットの観測値シンボルvに基づいて、以下の式に従って観測値の確率を求める。
Figure 0005579327
以下の式に従って、更新済みHMMに対する観測値系列の確率を求める。
Figure 0005579327
ただし、
Figure 0005579327
である。
Figure 0005579327
である場合には、中止し、そのHMMのパラメーターを最終的なパラメーターとして選択する。ただし、Dは所定のしきい値である。そうでない場合には、
Figure 0005579327
を用いてHMMλを更新し、ステップ2に戻る。
したがって、当該技術分野において、安全ドメインにおける前向きアルゴリズム、後向きアルゴリズム、ビタビアルゴリズム及バウム−ウェルチアルゴリズムを定めることが必要とされている。
この発明の実施の形態の目的は、プライバシー保護確率的推論のための方法を提供することである。
この発明の目的は、安全ドメインにおける前向きアルゴリズム、後向きアルゴリズム、ビタビアルゴリズム及バウム−ウェルチアルゴリズムを提供することである。
この発明の更なる目的は、クライアントコンピューターがデータを暗号化し、暗号化されたデータをサーバーコンピューターに送信し、サーバーが計算量の多いタスクの大部分を実行するような応用形態に適している方法を提供することである。
この発明の幾つかの実施の形態は、隠れマルコフモデルに基づく安全な確率的推論のためのサーバーとクライアントとの間のプライバシー保護計算を、加法準同型の性質を用いて非同期に実行できるという認識に基づいている。
したがって、一実施の形態は、クライアントにおいて記憶される観測値系列に基づいてサーバーにおいて記憶される隠れマルコフモデル(HMM)のパラメーターを求めるための方法であって、前記クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵を有し、前記サーバーは前記暗号鍵のみを有し、該方法は、前記HMMのパラメーターを初期化することと、H−SMCを用いて、前記HMMの前記パラメーターに対する前記観測値系列の確率を暗号化したものを求めることであって、該H−SMCは、加法準同型の少なくとも1つの性質を用いる、前記サーバーと前記クライアントとの間のセキュアマルチパーティ計算(SMC)を含むものと、前記HMMの状態ごとに、前記SMCを用いて、前記HMMの前記パラメーターに対する前記観測値系列の暗号化された前向き確率を求めることと、前記HMMの状態ごとに、前記H−SMCを用いて、前記観測値系列の暗号化された後向き確率を求めることと、前記HMMの前記パラメーターを与えられた場合に、前記観測値系列の要素ごとに、状態の各対の暗号化された条件付き結合確率を求め、1組の暗号化された条件付き結合確率を生成することであって、前記観測値系列の前記対数確率を暗号化したもの、前記暗号化された前向き確率、及び前記暗号化された後向き確率に基づき求められ、加法準同型の少なくとも1つの性質を用いて、暗号化されたドメインにおいて実行されることと、入力として前記1組の暗号化された条件付き結合確率を有する前記H−SMCを用いて、前記HMMの前記パラメーターを更新することと、を含む、方法を開示する。
前記観測値系列の前記確率を暗号化したものを求めることと、前記暗号化された前向き確率を求めることと、前記暗号化された後向き確率を求めることと、前記暗号化された条件付き結合確率を求めることと、前記パラメーターを更新することと、は前記現在の反復の前記観測値系列の前記確率と先行する反復の前記観測値系列の前記確率との間の差がしきい値を超えるまで反復的に繰り返すことができる。
別の実施の形態は、クライアントにおいて記憶される観測値系列に基づいてサーバーにおいて記憶される隠れマルコフモデル(HMM)のパラメーターを求めるための方法であって、前記クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵を有し、前記サーバーは前記暗号鍵のみを有し、該方法は、前記HMMのパラメーターを初期化することと、現在の反復の前記観測値系列の確率と先行する反復の前記観測値系列の確率との間の差がしきい値を超えるまで、前記パラメーターを反復的に更新することであって、反復する度に、前記パラメーターは、前記観測値系列及び前記HMMの前記パラメーターが与えられた場合に、状態の各対の暗号化された条件付き結合確率に基づいて更新され、該暗号化された条件付き確率は、前記サーバーと前記クライアントとの間のセキュアマルチパーティ計算(SMC)を用いて暗号化されたドメインにおいて求められるものと、を含み、該方法のステップは前記サーバーによって実行される、方法を開示する。
更に別の実施の形態は、クライアントにおいて記憶される観測値系列に基づいて隠れマルコフモデル(HMM)のパラメーターを求めるためのサーバーであって、前記クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵を有し、該サーバーは前記暗号鍵のみを有し、該サーバーは、前記HMMのパラメーターを初期化し、現在の反復の前記観測値系列の確率と先行する反復の前記観測値系列の確率との間の差がしきい値を超えるまで、前記パラメーターを反復的に更新するために構成されるプロセッサを備え、反復する度に、前記パラメーターは、前記観測値系列及び前記HMMの前記パラメーターが与えられた場合に、状態の各対の暗号化された条件付き結合確率に基づいて更新され、該暗号化された条件付き確率は、H−SMCを用いて暗号化されたドメインにおいて求められ、前記H−SMCは、加法準同型の少なくとも1つの性質を用いる該サーバーと前記クライアントとの間のセキュアマルチパーティ計算(SMC)を含む、サーバーを開示する。
この発明の幾つかの実施の形態によるシステムのブロック図である。 この発明の幾つかの実施の形態によるH−対数法のブロック図である。 この発明の幾つかの実施の形態によるH−指数法のブロック図である。 この発明の幾つかの実施の形態によるH−対数総和法のブロック図である。 この発明の幾つかの実施の形態によるH−比較法のブロック図である。 この発明の幾つかの実施の形態によるH−総和分割法のブロック図である。 H−前向き法の種々の実施の形態のブロック図を示す図である。 H−前向き法の種々の実施の形態のブロック図を示す図である。 H−前向き法の種々の実施の形態の擬似コードを示す図である。 H−前向き法の種々の実施の形態のブロック図を示す図である。 H−前向き法の種々の実施の形態のブロック図を示す図である。 H−後向き法の種々の実施の形態のブロック図を示す図である。 H−後向き法の種々の実施の形態の擬似コードを示す図である。 H−ビタビ法の種々の実施の形態のブロック図を示す図である。 H−ビタビ法の種々の実施の形態の擬似コードを示す図である。 H−バウム−ウェルチ法の種々の実施の形態のブロック図を示す図である。 H−バウム−ウェルチ法の種々の実施の形態のブロック図を示す図である。 H−バウム−ウェルチ法の種々の実施の形態のブロック図を示す図である。 H−バウム−ウェルチ法の種々の実施の形態のブロック図を示す図である。 H−バウム−ウェルチ法の種々の実施の形態のブロック図を示す図である。 H−バウム−ウェルチ法の種々の実施の形態の擬似コードを示す図である。
システム概説
図1は、この発明の幾つかの実施の形態を利用するシステム100を示す。クライアント110が観測値系列115を記憶する。サーバー120が隠れマルコフモデル(HMM)125を記憶する。また、クライアントは加法準同型性暗号システムのための解読鍵150及び暗号鍵140も記憶する。サーバーは暗号鍵140のみを有する。
クライアント及びサーバーは、HMMに対する観測値系列の安全な確率的推論を行うために、加法準同型の少なくとも1つの性質を用いるセキュアマルチパーティ計算(SMC)、すなわち、H−SMCを実行する。本明細書において参照されるときに、接頭語「H−」は、通信、計算又は方法が、加法準同型の少なくとも1つの性質を用いて安全ドメインにおいて実行されることを示す。例えば、H−SMC130は、後に更に詳細に説明されるように、少なくとも1つのH−方法160を使用することができる。クライアント及びサーバーは、プロセッサ101及び/又はプロセッサ102のようなプロセッサを用いて実現することができる。
加法準同型性暗号システム
任意の2つのメッセージm、m及び加法準同型性暗号化関数ξ(・)の場合、加法準同型性は、ξ(m+m)=ξ(m)ξ(m)を確実にする。この性質のため、幾つかの演算は暗号化されたメッセージ(暗号文)において直接実行することができ、それにより、根底を成す暗号化されていないメッセージ(平文)における幾つかの操作を可能にする。この発明の実施の形態は、任意の加法準同型性暗号システムを用いることができる。例えば、1つの実施の形態は、以下に説明されるパイエ(Paillier)暗号を使用する。
構成:N=pqとなるような2つの大きな素数p、qを選択する。Nを法とする逆数を有する1組の非負の整数を
Figure 0005579327
によって表す。gcd(L(gλmodN),N)=1であるような
Figure 0005579327
を選択する。ただし、λ=1cm(p−1,q−1)及びL(x)=(x−1)/Nである。(N,g)を暗号鍵とし、(p,q)を解読鍵とする。
暗号化:m∈Zを平文とする。その際、暗号文は以下の式によって与えられる。
Figure 0005579327
ただし、r∈Z はランダムに選択された数である。
解読:
Figure 0005579327
を暗号文とする。その際、対応する平文は以下の式によって与えられる。
Figure 0005579327
加法準同型性暗号システムでは、解読は、暗号化中に用いられるrの値に関係なく機能する。rは暗号化のたびにランダムに選択されるので、パイエ暗号システムは確率的であり、意味的に安全であり、すなわち、同じ平文を繰り返し暗号化しても、結果として異なる暗号文が生成される。
さらに、加法準同型は、以下の性質を含む。
Figure 0005579327
ただし、一般的に、r、r∈Z 及びr≠rである。明確にするために、本開示では以後、下付きの確率パラメーターを省略する。
紛失通信
この発明の幾つかの実施の形態は、1−of−n紛失通信(OT)を用いる。
例えば、サーバーはn個のメッセージm,m,…mを有することができ、クライアントはインデックス1≦i≦nを有することができる。OTは、以下のことを成し遂げる方法である。クライアントはメッセージmを特定したが、他のメッセージについては何も発見せず、サーバーはインデックスiを発見しない。OTは、多くの既知の方法において実施することができる。OTは十分に原始的であり、すなわち、関数を代数回路として表すことができるなら、任意の関数の安全な数値計算(evaluation)のために用いることができる。しかしながら、OTのみを用いて一般関数を数値計算するのは、計算及びデータ転送の観点から複雑である。
H−方法
この発明の種々の実施の形態は、以下に説明されるH−方法160の少なくとも1つ又は組み合わせを使用する。全てのH−方法において、クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵、例えば、パイエ暗号化関数ξ(・)のための鍵対を有する。サーバーは暗号鍵のみを有する。H−方法は、加法準同型の少なくとも1つの性質を用いるH−SMCに基づく。この説明を明確にするために、対数を含む全ての計算において、対数の底は
Figure 0005579327
であり、それはパイエ暗号のために用いられるパラメーターである。表記上の混乱を避けるために、対数の底は明示されない。
安全なH−対数法
図2は、H−対数法200の流れ図を示す。その方法への入力は、サーバーにおいて記憶される暗号化された変数ξ(θ)205である。出力において、サーバーは暗号化された変数θの対数を暗号化したものξ(logθ)235を求める。クライアントは変数θについての情報を入手しない。
サーバーは整数βをランダムに選択し、暗号化された変更済み変数215ξ(θ)β=ξ(βθ)をクライアントに送信する(210)。クライアントはβθを解読し、サーバーが変更済み変数の暗号化された対数ξ(logβθ)225を受信する(220)ように変更済み変数を処理する。
サーバーはH−性質、すなわち、以下の式による加法準同型の性質を用いて、変数の暗号化された対数235を求める(230)。
Figure 0005579327
幾つかの実施の形態では、対数logβ及びlogβθは整数ではなく、それらの実施の形態は整数近似を用いる。例えば、サーバーがクライアントから
Figure 0005579327
を受信する。ただし、Lは大きな整数であり、例えば、L=10である。整数Lとの全ての乗算は、全ての解読時に対応する除算によって補償される。幾つかの実施の形態では、整数近似は種々のH−方法によって用いられる。
この例では、H−方法は小数第6位まで正確である。同様に、サーバーは以下の式を求める。
Figure 0005579327
安全なH−指数法
図3は、H−指数法300の流れ図を示す。その方法への入力は、サーバーにおいて記憶される暗号化された対数ξ(logθ)305である。出力において、サーバーは変数を暗号化したものξ(θ)335を求め、クライアントは変数θについての情報を入手しない。
サーバーは整数βをランダムに選択し、以下の式に従って暗号化された変更済み対数315をクライアントに送信する(310)。
Figure 0005579327
クライアントは暗号化された対数を解読し、対数logβθを受信し、サーバーが暗号化された変更済み変数ξ(βθ)325を受信する(320)ように、その対数を処理する。サーバーは、以下の式に従って、暗号化された変数335を求める(330)。
Figure 0005579327
ただし、1/βは
Figure 0005579327
内の整数βの逆数である。
安全なH−対数総和法
図4は、H−対数総和法400の流れ図を示す。その方法への入力は、サーバーにおいて記憶される1組の暗号化された対数(ξ(logθ),ξ(logθ),…,ξ(logθ))405及び定数ベクトル(a,a,…,a)406である。出力において、サーバーは、対数総和を暗号化したものξ(logΣ i=1θ)435を求め、クライアントは変数θ及びaについての情報を特定しない。
サーバー及びクライアントは、サーバーが1組の暗号化された変数415
Figure 0005579327
を求めるように、入力として1組の暗号化された対数405を有するH−指数法300を実行する(410)。
サーバーはH−性質を用いて、以下の式に従って、定数ベクトルの要素の累乗において暗号化された変数の積425を求める(420)。
Figure 0005579327
サーバー及びクライアントは、H−対数法200を実行して(430)、対数総和を暗号化したものξ(logΣ i=1θ)435を求める。
安全なH−比較法
図5は、H−比較法500の流れ図を示す。その方法への入力は、サーバーにおいて記憶される少なくとも2つの暗号化された変数、例えば、第1の変数を暗号化したものξ(θ)505及び第2の変数を暗号化したものξ(θ)506である。出力において、サーバーはθ≦θ535であるか否かを判断し、クライアントは変数θ及びθについての情報を特定しない。
サーバーは正又は負の整数αをランダムに選択し、以下の式による、変更済みの差を暗号化したもの515をクライアントに送信する(510)。
Figure 0005579327
クライアントは解読し、変更済みの差α(θ−θ525)を受信し、変更済みの差をサーバーに返送する。サーバーは変更済みの差525を受信し(520)、整数αの正負符号に基づいて、θ≦θであるか否かを比較する(530)。
安全なH−総和分割法
図6は、H−総和分割法600の流れ図を示す。その方法への入力は、クライアントにおいて記憶される一連の要素x,x,…,xである。各要素xはアルファベットV={v,v,…,v}から選択される。また、その方法への入力は、サーバーにおいて記憶される一連の変数を暗号化したものξ(y),ξ(y),…,ξ(y)605である。サーバー及びクライアントは共通の要素v∈Vを有する。出力において、サーバーは、サーバーが一連の要素について何も特定せず、かつクライアントが一連の暗号化されたものについて何も特定しないように、総和を暗号化したもの
Figure 0005579327
635を求める。ただし、t=1,2,…,Tである。
サーバーは、暗号化ξ(y)ごとに、整数αをランダムに選択し、以下の式に従って、変更済みの暗号したものを和615としてクライアントに送信する(610)。
Figure 0005579327
クライアントはその和を解読し、和の積を暗号化したものξ(δ(v)(y+α))625及び指示子系列を暗号化したものξ(δ(v))626を求め、暗号化したもの625及び626をサーバーに送信する。ただし、共通の要素vの場合のx,x,…,xの指示子系列δ(v)は、x=vの場合にはδ(v)=1に従って、及びx≠vの場合にはδ(v)=0に従って求められる。
サーバーは積を暗号化したもの625及び指示子系列を暗号化したもの626を受信し(620)、変更を除去して、以下の式に従って、変数yと指示子系列との積を暗号化したもの627を求める。
Figure 0005579327
次に、サーバーは
Figure 0005579327
に従って、総和
Figure 0005579327
を暗号化したもの635を求める(630)。
安全なH−前向き法
図7Aは、この発明の幾つかの実施の形態によるH−前向き法700の流れ図を示す。方法700は、サーバー、例えば、サーバー120において記憶されるHMMに対する、クライアント、例えば、クライアント110において記憶される観測値系列の確率を数値計算するのに適している。それらの実施の形態によれば、クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵を有し、サーバーは暗号鍵のみを有する。
その方法は、サーバーによって実行されるステップに基づいて説明される。しかしながら、その方法のうちの少なくとも1つのステップは、サーバーとクライアントとの間のH−SMCを含む。その方法の種々のステップは、HMMの状態ごとに、及び/又は観測値系列x,x,…,xの観測値ごとに反復的に実行される。その方法の出力において、サーバーはξ(logPr{x,x,…,x|λ)}に従って、観測値系列の対数確率を暗号化したものを求める。
HMMλは、例えば、λ={A,B,Π}に従って定義される。ただし、A=(aij)は状態遷移行列であり、aijはSからSへの遷移確率であり、ただし、1≦i、j≦Nであり、NはHMMの状態の数であり、B=(b,b,…,b)は観測値の確率の行列であり、bは観測値系列のアルファベットにわたる確率の行列の列ベクトルであり、j=1,2,…,Nであり、Π=(π,π,…,π)はHMMの初期状態確率ベクトルである。
サーバーは、HMMの状態ごとに、観測値系列の現在の要素の対数確率を暗号化したもの715を求める(710)。例えば、対数確率を暗号化したものは以下の式に従って求めることができる。
Figure 0005579327
ただし、xt+1は観測値系列の現在の要素であり、ξ(・)は加法準同型性暗号システムの暗号化関数である。
また、サーバーは、HMMの状態ごとに、観測値系列の先行する要素に基づく観測値系列の尤度とHMMの状態への遷移確率との積の対数総和を暗号化したもの725を求める(720)。対数総和はH−SMCを用いて求めることができ、H−SMCは加法準同型の少なくとも1つの性質を用いるセキュアマルチパーティ計算を含む。例えば、1つの実施の形態はH−対数総和法400を用いる。
例えば、幾つかの実施の形態は、以下の式に従って、対数総和を暗号化したものを求める。
Figure 0005579327
ただし、lは状態Sのインデックス、l=1,2,…,Nであり、α(l)は状態Sにおける先行する要素xの観測値系列の尤度であり、aljはHMMの状態Sから状態Sへの遷移確率である。
1つの実施の形態は、以下の式に従って、対数総和を暗号化したものを初期化する。ただし、j=1,2,…,Nである。
Figure 0005579327
サーバーは、対数総和を暗号化したものと、観測値系列の現在の要素の対応する対数確率を暗号化したものとの積として、状態ごとの観測値系列の対数尤度を暗号化したもの735を求める(730)。
例えば、1つの実施の形態は、以下の式に従って、加法準同型の性質に基づいて観測値系列の対数尤度を暗号化したものξ(logαt+1(j))を求める。
Figure 0005579327
観測値系列の対数確率を暗号化したもの745は、以下の式に従って、状態ごとの観測値系列の対数尤度に基づいて求められる(740)。
Figure 0005579327
例えば、1つの実施の形態は、入力として状態ごとの観測値系列の対数尤度を有するH−対数総和法を用いて、観測値系列の対数確率を暗号化したものを求める。観測値系列の対数確率を暗号化したものは、メモリ(図示せず)に記憶することができ、及び/又はクライアントに送信することができる(750)。
図7Bは、1−of−M紛失通信を用いて、観測値系列の現在の要素の対数確率を暗号化したものを求めるための1つの実施の形態による方法の流れ図を示す。
サーバーは変更ベクトルγtj761を求める(760)。例えば、1つの実施の形態では、変更ベクトルはランダムに生成される。変更ベクトルを用いて変更された観測値系列のアルファベットの対数確率の列ベクトルlogb+γtj763がクライアントに送信される(762)。1−of−M OTを用いてクライアントがlogb(x)+γtjを求めた後に、サーバーは、変更ベクトルを用いて変更された観測値系列の各要素の対数確率を暗号化したもの765を受信し(764)、変更ベクトルを除去して(766)、各要素の対数確率を暗号化したもの715を生成する。
例えば、サーバーはξ(logb(x)+γtj)を受信し、ξ(logb(x)+γtj)・ξ(−γtj)に従って、各要素xの対数確率を暗号化したものξ(logb(x))を求める。
例示のみを目的として、図7Cは、H−前向き法の1つの実施の形態の擬似コード768を示す。この擬似コードは付録Aにも記述される。
安全なキーワード認識
この発明の幾つかの実施の形態は、プライバシー保護キーワード認識のためにH−前向き法を用いる。これらの実施の形態では、観測値系列は、サンプリングされた音声信号を含む。通常、クライアントは音声信号をT個のフレームに変換し、各フレームはメル周波数ケプストラム係数(MFCC)のd次元ベクトルによって表され、例えば、d=39である。音声信号からのMFCCの導出は既知である。したがって、クライアントはx、t=1,2,…,Tを格納する。ただし、各x∈Rである。
サーバーは1組のサイズΔの異なるHMMを記憶する。各HMMは単一のキーワードに対してトレーニングされる。この実施の形態のH−前向き法は、音声信号内に含まれる可能性が最も高いキーワードを求める。
状態Sにおいて、MFCCのd次元ベクトルxは、平均ベクトルμ及び共分散行列Cを有する多変量ガウス分布、すなわち、b(x)=N(μ,C)を有する。ただし、j=1,2,…,Nは、HMMλの状態をインデックス付けする。観測値ベクトルz=[x ,l]である場合には、logb(x)=z 、z=[x ,l]である。ただし、Tは転置演算子であり、1≦j≦Nであり、NはHMMの状態の数であり、Wは以下の式による多変量ガウス分布の行列であり、
Figure 0005579327
=(1/2)μ −1μ−(1/2)log|C −1|−(d/2)log2πである。この実施の形態では、ベクトルxは単一の多変量ガウス確率変数であるが、多変量ガウスの混合への拡張もこの発明の範囲内にある。行列Wはサーバーにおいて記憶される。さらに、対数確率logb(x)は積z (t) (t)の線形関数である。ただし、z (t)、z (t)はベクトルzの要素であり、m,n∈{1,2,…,d+1}である。
図7Dにおいて示されるように、この実施の形態は、観測値ベクトルの要素の積z (t) (t)773を暗号化したものを受信する(772)のに応答して、加法準同型の少なくとも1つの性質を用いて、以下の式に従って、対数確率を暗号化したものξ(logb(x))715を求める(774)。
Figure 0005579327
ただし、z (t)、z (t)は観測値ベクトルzの要素であり、m,n∈{1,2,…,d+1}である。
図7Eはこの発明の幾つかの実施の形態による安全なキーワード認識のための方法の流れ図を示す。サーバーにおいて記憶されたHMMごとの観測値系列の対数確率を求めて(782)、1組の暗号化された対数確率を生成する。対数確率は、サーバーが以下の式を求めるように、H−前向き法の任意の実施態様を用いて求められる。
Figure 0005579327
サーバーは、順序保存行列を用いて1組の対数確率を難読化し(784)、難読化済みの1組の暗号化された対数確率を生成する。例えば、サーバーは順序保存行列R=(rij)Δ×Δを求める。加法準同型の性質を用いて、サーバーは、以下の式に従って、難読化した要素を暗号化したものを求める。
Figure 0005579327
サーバーは、難読化済みの1組の対数確率をクライアントに送信し(786)、難読化済みの1組の対数確率に基づいてクライアントによって選択された特定の対数確率に対応するHMMのキーワードをクライアントに送信する(788)。例えば、Rは順序保存写像であるので、クライアントは解読し、以下の式に従って、各HMMに対する観測値系列の最大確率を求めることができる。
Figure 0005579327
サーバーは紛失通信法を用いて最大確率に対応するキーワードを送信することができる。
安全なH−後向き法
図8Aは、この発明の幾つかの実施の形態による、観測値系列の確率を求めるためのH−後向き法800の流れ図を示す。サーバーは、観測値系列の現在の要素の後向き確率を暗号化したもの805に基づいて、H−指数法を用いて、以下の式に従って、観測値系列の暗号化された後向き確率815を求める(810)。
Figure 0005579327
H−対数法を用いて、サーバーは、対数後向き確率を暗号化したものξ(logβ(i))825を求める(820)。サーバーがξ(logβ(i))を求めるまで、サーバーは、HMMの状態ごとに対数後向き確率を暗号化したものを再帰的に求める。
加法準同型の性質及びH−指数法を用いて、サーバーは、観測値系列と初期状態Sとの結合確率を暗号化したものξ(πβ(j)b(x))835と、観測値系列の確率を暗号化したもの
Figure 0005579327
836と、を求める(830)。H−対数法を用いて、サーバーは観測値系列の対数確率を暗号化したもの845を求める(840)。図8Bは、H−後向き法の1つの実施の形態の擬似コード850を示す。その擬似コードは付録Bにも記述される。
安全なH−ビタビ法
図9Aは、この発明の幾つかの実施の形態によるH−ビタビ法900のブロック図を示す。方法900は、クライアントにおいて記憶される観測値系列に対応する最も起こり得る一連の状態を求めるのに適しており、その一連の状態はサーバーにおいて記憶されるHMMに対して求められる。クライアントは、加法準同型性暗号システムの解読鍵150及び暗号鍵140を有し、サーバーは暗号鍵140のみを有する。
上記のように、HMMλはλ=(A,B,Π)に従って定義され、ただし、A=(aij)は状態遷移行列であり、aijはSからSへの遷移確率であり、ただし、1≦i、j≦Nであり、NはHMMの状態の数であり、B=(b,b,…,b)は観測値の確率の行列であり、bは観測値系列のアルファベットにわたる確率の行列の列ベクトルであり、j=1,2,…,Nであり、Π=(π,π,…,π)はHMMの初期状態確率ベクトルである。
方法900の種々のステップは、加法準同型性暗号システムの暗号化関数ξ(・)及び加法準同型の少なくとも1つの性質を用いるH−SMCを使用する。その方法の幾つかのステップは、HMMの状態ごとに、及び/又は観測値系列x,x,…,xの観測値ごとに反復的に実行される。その方法の出力において、クライアントは、最も確からしい状態系列
Figure 0005579327
を求める。
サーバーは、HMMの状態ごとに、観測値系列の現在の要素の対数確率を暗号化したものξ(logb(x))915を求める(910)。対数確率を暗号化したもの915は、任意のSMCを用いて求めることができる。例えば、1つの実施の形態は、図7Bに示される実施の形態と同じようにして、H−SMCを用いて、対数確率を暗号化したものを求める。
具体的には、1つの実施の形態は、変更ベクトルを求め、変更ベクトルを用いて変更された観測値系列の要素の対数確率の列ベクトルをクライアントに送信する。例えば、変更ベクトル(γtj)t=1,2,…,Tは、列ベクトルを送信することがlogb+γtjを送信することを含むように、ランダムに生成することができる。
クライアントは列ベクトルを処理し、サーバーは変更ベクトルを用いて変更された観測値系列の各要素の対数確率を暗号化したものを受信し、変更ベクトルを除去して、各要素の対数確率を暗号化したものを生成する。
例えば、サーバーはξ(logb(x)+γtj)を受信することができ、ξ(logb(x)+γtj)・ζ(−γtj)に従って、加法準同型の性質を用いて、各要素xの対数確率を暗号化したものξ(logb(x))を求めることができる。
サーバーは、HMMの状態ごとに、現在の要素のための状態の対数確率を暗号化したものと、その状態への遷移確率を暗号化したものとの積925を求め(920)、1組の暗号化された積を生成する。例えば、暗号化したものの積925は、以下の式に従って、加法準同型を用いて求めることができる。
Figure 0005579327
ただし、ξ(logδ(i))は、現在の要素xの場合に状態Sにおいて終了する最も確からしい状態系列の確率の対数を暗号化したものであり、ξ(・)は加法準同型性暗号システムの暗号化関数であり、ξ(logaij)は状態Sから状態Sへの遷移確率の対数を暗号化したものである。
サーバーは、クライアントとともにH−SMC、例えば、H−比較法を用いて、1組の暗号化された積のうちの最大積に対応する暗号化された積935と、最大積に対応する状態の暗号化されたインデックスとを求める(930)。暗号化されたインデックスは、クライアントが状態のインデックスの行列を入手し、それらのインデックスを追跡して、最も確からしい状態系列を求めることができるように、クライアントに送信することができる(950)。
次に、サーバーは、HMMの状態ごとに、暗号化された積と、その状態に対応する観測値系列の現在の要素の対数確率を暗号化したものとの積として、次の要素のための状態の暗号化された対数確率945を求め(940)、観測値系列の全ての要素に対して、暗号化された積及び暗号化されたインデックスを求めること(930)、暗号化されたインデックスを送信すること(950)及び対数確率を求めること(940)を繰り返す。
例えば、1つの実施の形態は、ξ(logδt+1(j))=ξ(max[logδ(i)+logaij])・ξ(logb(x))に従って、暗号化された対数確率ξ(logδt+1(j))を求める。ただし、logδt+1(j)は次の要素xt+1の場合に状態Sにおいて終了する最も確からしい状態系列の確率の対数であり、ξ(・)は加法準同型性暗号システムの暗号化関数であり、maxは最大値演算であり、logδ(i)は、現在の要素xの場合に状態Sにおいて終了する最も確からしい状態系列の確率の対数であり、logaijは状態Sから状態Sへの遷移確率の対数である。
図9Bは、H−ビタビ法の1つの実施の形態による擬似コード960を示す。
安全なH−バウム−ウェルチ法
図10Aは、クライアントにおいて記憶される観測値系列に基づいてサーバーにおいて記憶される隠れマルコフモデル(HMM)のパラメーターを求めるためのH−バウム−ウェルチ法1000のブロック図を示す。クライアントは、加法準同型性暗号システムの解読鍵150及び暗号鍵140を有し、サーバーは暗号鍵140のみを有する。
H−バウム−ウェルチ法は、1≦i,j≦N、1≦t≦Tの全ての場合にHMMζ(i,j)のパラメーターが与えられた場合の、状態の各対の条件付き結合確率の安全な計算に基づく。式(10)の両辺において対数をとると、以下の式がもたらされる。
Figure 0005579327
したがって、関数ξ(・)は加法準同型性暗号化関数であるので、式(15)は以下のように書き換えることができる。
Figure 0005579327
サーバーはHMMのパラメーター1015を初期化する(1010)。例えば、パラメーターλ={A,B,Π}はランダムに生成することができる。パラメーター1015に基づいて、サーバーは、クライアントとともにH−SMCを用いて、観測値系列の現在の要素の対数確率を暗号化したもの1025、及びHMMのパラメーターに対する観測値系列の確率を暗号化したもの1026を求める(1020)。また、サーバーは、HMMの状態ごとに、HMMのパラメーターに対する観測値系列の暗号化された前向き確率1035、及び観測値系列の暗号化された後向き確率1036も求める(1030)。
次に、サーバーは、HMMのパラメーターが与えられた場合に、観測値系列の要素ごとに、状態の各対の暗号化された条件付き結合確率を求め(1040)、1組の条件付き結合確率1045を生成する。幾つかの実施の形態では、求めることは、観測値系列の対数確率を暗号化したもの、暗号化された前向き確率及び暗号化された後向き確率に基づいて、式(16)に従って実行される。1組の暗号化された条件付き結合確率は、加法準同型の少なくとも1つの性質を用いて、暗号化されたドメインにおいて求められる。
1組の暗号化された条件付き結合確率に基づいて、HMMのパラメーターが更新される(1045)。幾つかの実施の形態は、現在の反復のパラメーター1055の場合に求められた観測値系列の確率と、先行する反復のパラメーター1015の場合に求められた観測値系列の確率との間の差1056がしきい値D1057を超えるまで、観測値系列の確率を暗号化したものを求めること、暗号化された前向き確率を求めること、暗号化された後向き確率を求めること、暗号化された条件付き結合確率を求めること、及びパラメーターを更新することを反復的に繰り返す。
1つの実施の形態では、図10Bに示されるように、H−前向き法700を用いて、暗号化された対数前向き確率ξ(logα(i))、対数確率を暗号化したものξ(−logPr{x,…,x|λ})及び観測値系列の要素xt+1の対数確率を暗号化したものξ(logb(xt+1))が求められる(1062)。
上記の説明において、ξ(・)は加法準同型性暗号システムの暗号化関数であり、logα(i)は、現在の要素xまでの状態Sにおける観測値系列の前向き確率の対数であり、logPr{x,…,x|λ}はパラメーターλ={A,B,Π}に対する観測値系列x、t=1,2,…,Tの確率の対数であり、A=(aij)は状態遷移行列であり、aijは状態Sから状態Sへの遷移確率であり、1≦i,j≦Nであり、NはHMMの状態の数であり、B=(b,b,…,b)は観測値の確率の行列であり、bは観測値系列のアルファベットにわたる確率の行列の列ベクトルであり、j=1,2,…,Nであり、Π=(π,π,…,π)はHMMの初期状態確率ベクトルである。
暗号化された対数後向き確率ξ(logβt+1(j))は、H−後向き法800を用いて求められる(1064)。条件付き確率の暗号化された対数ξ(logζ(i,j))は、以下の式に従って、加法準同型を用いて求められ(1066)、
Figure 0005579327
暗号化された条件付き結合確率は、H−指数法300を用いて求められる(1068)。同様に、全条件付き確率γ(i)を暗号化したものξ(γ(i))は、以下の式に従って、加法準同型の少なくとも1つの性質を用いて求められる(1069)。
Figure 0005579327
図10Cは、1つの実施の形態による、初期状態確率ベクトル
Figure 0005579327
を更新するための方法の流れ図を示す。サーバーは変更ベクトルを求め(1072)、HMMの状態ごとに、暗号化されたドメインにおいて変更ベクトルを用いて変更された初期確率を暗号化したものをクライアントに送信する(1074)。サーバーが、HMMの状態ごとに、暗号化されていないドメインにおいて変更ベクトルを用いて変更された状態の初期確率を受信する(1076)ように、クライアントは暗号を解読する。サーバーは、変更ベクトルを除去し(1078)、暗号化されていないドメインにおいて初期確率を生成し、その初期確率に基づいて初期状態確率ベクトル
Figure 0005579327
を更新する(1079)。
図10DはHMMの遷移確率パラメーターを更新するための方法の流れ図を示す。条件付き確率ξ(Σt=1 T−1ζ(i,j))の総和を暗号化したものξ(Σt=1 T−1ζ(i,j))が、以下の式に従って、暗号化されたドメインにおいて求められる(1081)。
Figure 0005579327
全条件付き確率の総和を暗号化したものξ(Σt=1 T−1γ(i))が、以下の式に従って、暗号化されたドメインにおいて求められる(1082)。
Figure 0005579327
条件付き確率の総和の対数を暗号化したものが、以下の式に従って、H−対数法を用いて求められ(1083)、
Figure 0005579327
全条件付き確率の総和の対数を暗号化したものが、以下の式に従って、H−対数法を用いて求められる(1084)。
Figure 0005579327
遷移確率の対数を暗号化したもの
Figure 0005579327
が、以下の式に従って、加法準同型の性質を用いて求められ(1085)、
Figure 0005579327
HMMの状態の対ごとに、遷移確率の対数を暗号化したものに基づいて、SMCを用いて、更新済み遷移確率
Figure 0005579327
が求められる(1086)。
図10Eは、観測値の確率
Figure 0005579327
を更新するための方法の流れ図を示す。アルファベットvの観測値シンボルごとに、H−総和分割法600を用いて(1093)、暗号化された総和
Figure 0005579327
が求められ(1091)、SMCを用いて(1094)、観測値の更新済み確率
Figure 0005579327
が求められる(1092)。
HMMのパラメーターが更新された後に、HMMの更新済みパラメーター
Figure 0005579327
に基づいて、例えば、H−前向き法を用いて、現在の反復の観測値系列の確率
Figure 0005579327
が求められる。その確率は、例えば、H−比較法を用いて、前回の反復中に求められた確率と比較される。それらの確率間の差がしきい値以下である場合には、HMMのパラメーターが最終的なパラメーターとして選択される。
図10Fは、この発明の1つの実施の形態による、H−バウム−ウェルチ法の擬似コード1099を示す。
この発明の上述した実施の形態は、数多くの方法のいずれにおいても実施することができる。例えば、実施の形態は、ハードウェア、ソフトウェア又はそれらの組合せを用いて実施することができる。ソフトウェアで実施される場合、ソフトウェアコードは、単一のコンピューターに設けられるのか又は複数のコンピューター間に分散されるのかにかかわらず、任意の適したプロセッサ又はプロセッサの集合体において実行することができる。そのようなプロセッサは、1つ又は複数のプロセッサを集積回路部品に有する集積回路として実装することができる。ただし、プロセッサは、任意の適したフォーマットの回路類を用いて実装することができる。
さらに、コンピューターは、ラックマウント型コンピューター、デスクトップコンピューター、ラップトップコンピューター、ミニコンピューター又はタブレットコンピューター等の複数の形態のいずれにおいても具現化できることが理解されるべきである。また、コンピューターは、1つ又は複数の入力デバイス及び出力デバイスを有することもできる。そのようなコンピューターは、ローカルエリアネットワーク又はワイドエリアネットワークとしてエンタープライズネットワーク又はインターネット等を含む1つ又は複数のネットワークによって任意の適した形態で相互接続することができる。そのようなネットワークは、任意の適した技術に基づくことができ、任意の適したプロトコルに従って動作することができ、無線ネットワーク、有線ネットワーク又は光ファイバーネットワークを含むことができる。
また、本明細書において概説される様々な方法又はプロセスは、様々なオペレーティングシステム又はプラットフォームのうちの任意のものを用いる1つ又は複数のプロセッサ上で実行可能なソフトウェアとして符号化することができる。加えて、そのようなソフトウェアは、複数の適切なプログラミング言語及び/又はプログラミングツール若しくはスクリプティングツールのうちの任意のものを用いて書くことができ、フレームワーク又は仮想マシン上で実行される実行可能な機械語コード又は中間コードとしてコンパイルすることもできる。
これに関して、この発明は、単数又は複数のコンピューター可読記憶媒体、例えばコンピューターメモリ、コンパクトディスク(CD)、光ディスク、デジタルビデオディスク(DVD)、磁気テープ、及びフラッシュメモリとして実現することができる。代替的に又は付加的に、この発明は、伝播信号等の、コンピューター可読記憶媒体以外のコンピューター可読媒体として具現化することもできる。
「プログラム」又は「ソフトウェア」という用語は、本明細書において、包括的な意味で、上記で検討したこの発明の様々な態様を実施するようにコンピューター又は他のプロセッサをプログラムするのに用いることができる任意のタイプのコンピューターコード又は1組のコンピューター実行可能命令を指す。
コンピューター実行可能命令は、1つ若しくは複数のコンピューター又は他のデバイスによって実行された、プログラムモジュール等の多くの形式をとることができる。一般に、プログラムモジュールは、特定のタスクを実行するか又は特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造を含む。通常、プログラムモジュールの機能は、様々な実施の形態において所望に応じて組み合わせることも分散することもできる。
また、この発明の実施の形態は、例が提供された方法として実施することができる。本方法の一部として実行される動作は、任意の適切な方法で順序付けすることができる。したがって、動作が示したものと異なる順序で実行される実施の形態を構築することができ、これには、例示の実施の形態では一連の動作として示されたにもかかわらず、幾つかの動作を同時に実行することを含めることもできる。
付録A
H−前向き法を実施する1つの実施の形態の擬似コード
入力:クライアントが観測値系列x,x,…,xを記憶する。サーバーがHMMλ=(A,B,Π)を記憶する。
出力:ボブがξ(logPr{x,x,…,x|λ)}を求める。
1.t=1,2,…,T及びj=1,2,…,Nごとに、サーバーがγtjをランダムに選択し、列ベクトルlogb+γtjを生成する。
2.観測値xに基づいて、クライアントが1−of−M OTを用いて、logb(x)+γtjを求める。
3.クライアントがξ(logb(x)+γtj)をサーバーに送信する。
4.γtj及び準同型性を用いて、j=1,2,…,N及びt=1,2,…,Tの場合に、サーバーがξ(logb(x)+γtj)・ξ(−γtj)=ξ(logb(x))を求める。
5.サーバーが、j=1,2,…,Nの場合に、ξ(logα(j))=ξ(logπ)・ξ(logb(x))を求める。
6.帰納ステップ:j=1,2,…,Nの場合に、入力ξ(logα(j))、j=1,2,…,N及び遷移行列A=(aij)を用いて、サーバー及びクライアントがH−対数総和法を実行し、その終了時に、サーバーがξ(logΣl=1 α(l)alj)を求める。
7.全ての1≦t≦T−1の場合に、サーバーが以下の式を求める。
Figure 0005579327
8.サーバー及びクライアントがH−対数総和法を実行し、その終了時に、サーバーがξ(logΣj=1 α(j))=ξ(logP(x,x,…,x|λ))を求める。
付録B
H−後向き法を実施する1つの実施の形態の擬似コード
1.j=1,2,…,N及びt=1,2,…,Tの場合に、サーバーがξ(logb(x))を求める。
2.暗号化したものξ(logβt+1(j))が与えられた場合に、サーバーが以下の式を求める。
Figure 0005579327
3.H−指数法を用いて、サーバーがξ(βt+1(j)aij(xt+1))及び
Figure 0005579327
を求める。
4.H−対数法を用いて、サーバーがξ(logβ(i))、i=1,2,…,Nを有するまで、サーバーが暗号化したものξ(logβ(i))を求める。
5.準同型性及びH−指数法を用いて、サーバーがξ(πβ(j)b(x))及び
Figure 0005579327
を求める。
6.H−対数法を用いて、サーバーがξ(logP(x,x,…,x|λ))を求める。
付録C
H−ビタビ法を実施する1つの実施の形態の擬似コード
入力:クライアントが観測値系列x,x,…,xを記憶する。サーバーがHMMλ=(A,B,Π)を記憶する。
出力:クライアントが最も確からしい状態系列
Figure 0005579327
を求める。
1.t=1,2,…,T及びj=1,2,…,Nごとに、サーバーがγtjを選択し、列ベクトルlogb+γtjを生成し、列ベクトルをクライアントに送信する。
2.1−of−M OTを用いて、クライアントがlogb(x)+γtjを求める。
3.クライアントがξ(logb(x)+γtj)をサーバーに送信する。
4.j=1,2,…,N、t=1,2,…,Tの場合に、γtj及び準同型性を用いて、サーバーがξ(logb(x)+γtj)・ξ(−γtj)=ξ(logb(x))を求める。
5.サーバーが、j=1,2,…,Nの場合に、ξ(logδ(j))=ξ(logπ)・ξ(logb(x))を求める。
6.反復:全てのi,j=1,2,…,N及びtの場合に、サーバーがξ(logδ(i)+logaij)=ξ(logδ(i))・ξ(logaij)求める。
対(t,j)ごとに、サーバー及びクライアントが入力{ξ(logδ(i)+logaij):i=1,2,…,N}
を用いて安全な最大値発見プロトコルを実行し、その後、サーバーが最大値を暗号化したものξ(max[logδ(i)+logaij])及びξ(logδt+1(j))=ξ(max[logδ(i)+logaij])・ξ(logb(x))を求める。
7.サーバーがインデックスφt+1(j)を送信する。
8.反復の最後に、クライアントが最後のインデックス行列[φ(j)]tjを受信するので、クライアントは後向きに追跡し、状態系列を求めることができる。
付録D
H−バウム−ウェルチ法を実施する1つの実施の形態の擬似コード
入力:クライアントが観測値系列x,…,x並びに暗号鍵及び解読鍵を記憶する。サーバーが暗号鍵のみを記憶する。
出力:サーバーがHMMパラメーターを求め、観測値系列については何も発見しない。クライアントはパラメーターについての情報を特定しない。
1.サーバーがHMMパラメーターλ=(A,B,Π)を初期化する。
2.入力x,…,x及びλによるH−前向き法及びH−後向き法を用いて、サーバーがξ(logα(i))、ξ(logβt+1(j))、ξ(logb(xt+1))及びξ(−logPr{x,…,x|λ})を求める。
3.式(16)からサーバーがξ(logζ(i,j))を求める。
4.H−指数法を用いて、暗号化関数ξの準同型性を用いて、サーバーがξ(ζ(i,j))及びξ(γ(i))=Πj=1 ξ(ζ(i,j))を求める。
5.サーバーがθをランダムに選択し、暗号化したものξ(θ+γ(i))をクライアントに送信する。クライアントは解読し、サーバーにθ+γ(i)を送信し、サーバーが
Figure 0005579327
を求める。
6.サーバーが暗号化したものξ(Σt=1 T−1ζ(i,j))=Πj=1 T−1ξ(ζ(i,j))及びξ(Σt=1 T−1γ(i))=Πj=1 T−1ξ(γ(i)))
を求める。H−対数法を用いて、サーバーがξ(logΣt=1 T−1ζ(i,j))、ξ(logΣt=1 T−1γ(i))及び暗号化したもの
Figure 0005579327
を求め、その後、サーバーが、クライアントとともにSMCを用いて
Figure 0005579327
を求める。
7.入力系列x,…,x、暗号化したものξ(γ(i))、t=1,2,…,T及び共通の要素vによるH−総和分割法を用いて、サーバーが、式(13)に従って、暗号化したもの
Figure 0005579327
及び
Figure 0005579327
を求める。したがって、サーバーがHMMのパラメータ
Figure 0005579327
を更新する。
8.入力として観測値系列及び
Figure 0005579327
を有するH−前向き法を用いて、サーバーが
Figure 0005579327
を求める。
9.H−比較法を用いて、差
Figure 0005579327
がしきい値と比較される。差がしきい値未満である場合には、サーバーはその方法を中止し、最終的なパラメーターとして、パラメーター
Figure 0005579327
を選択する。そうでない場合には、サーバーはステップ1において
Figure 0005579327
を用いてλを更新し、上記のステップを繰り返す。

Claims (12)

  1. クライアントにおいて記憶される観測値系列に基づいてサーバーにおいて記憶される隠れマルコフモデル(HMM)のパラメーターを求めるための方法であって、前記クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵を有し、前記サーバーは前記暗号鍵のみを有し、該方法は、
    前記HMMのパラメーターを初期化するステップと、
    H−SMCを用いて、前記HMMの前記パラメーターに対する前記観測値系列の確率を暗号化したものを求めるステップであって、該H−SMCは、加法準同型の少なくとも1つの性質を用いる、前記サーバーと前記クライアントとの間のセキュアマルチパーティ計算(SMC)を含むものと、
    前記HMMの状態ごとに、前記SMCを用いて、前記HMMの前記パラメーターに対する前記観測値系列の暗号化された前向き確率を求めるステップと、
    前記HMMの状態ごとに、前記H−SMCを用いて、前記観測値系列の暗号化された後向き確率を求めるステップと、
    前記HMMの前記パラメーターを与えられた場合に、前記観測値系列の要素ごとに、状態の各対の暗号化された条件付き結合確率を求め、1組の暗号化された条件付き結合確率を生成するステップであって、前記観測値系列の対数確率を暗号化したもの、前記暗号化された前向き確率、及び前記暗号化された後向き確率に基づき求められ、加法準同型の少なくとも1つの性質を用いて、暗号化されたドメインにおいて実行されるものと、
    入力として前記1組の暗号化された条件付き結合確率を有する前記H−SMCを用いて、前記HMMの前記パラメーターを更新するステップと、
    を含み、
    該方法の前記ステップは前記サーバーによって実行される、クライアントにおいて記憶される観測値系列に基づいてサーバーにおいて記憶される隠れマルコフモデルのパラメーターを求めるための方法。
  2. 前記観測値系列の前記確率を暗号化したものを求めることと、前記暗号化された前向き確率を求めることと、前記暗号化された後向き確率を求めることと、前記暗号化された条件付き結合確率を求めることと、前記パラメーターを前記更新することとを、現在の反復の前記観測値系列の前記確率と先行する反復の前記観測値系列の前記確率との間の差がしきい値を超えるまで反復的に繰り返すことを更に含む、請求項1に記載の方法。
  3. 前記初期化することは、前記HMMの前記パラメーターをランダムに生成することを含む、請求項1に記載の方法。
  4. H−前向き法を用いて、暗号化された対数前向き確率ξ(logα(i))、前記対数確率を暗号化したものξ(−logPr{x,…,x|λ})及び前記観測値系列の要素xt+1の対数確率ξ(logb(xt+1))を求めることであって、ここで、ξ(・)は前記加法準同型性暗号システムの暗号化関数であり、logα(i)は、現在の要素xまでの状態Sにおける前記観測値系列の前記前向き確率の対数であり、logPr{x,…,x|λ}はパラメーターλ={A,B,Π}に対する前記観測値系列x、t=1,2,…,Tの確率の対数であり、A=(aij)は状態遷移行列であり、aijは状態Sから状態Sへの遷移確率であり、1≦i、j≦Nであり、Nは前記HMMの状態の数であり、B=(b,b,…,b)は観測値の確率の行列であり、bは前記観測値系列のアルファベットにわたる確率の行列の列ベクトルであり、j=1,2,…,Nであり、Π={π,π,…,π}は前記HMMの初期状態確率ベクトルであるものと、
    H−後向き法を用いて、前記暗号化された後向き確率ξ(logβt+1(j))を求めることと、
    Figure 0005579327
    に従って、条件付き確率の暗号化された対数ξ(logζ(i,j))を求めることと、
    H−指数法を用いて、前記暗号化された条件付き結合確率を求めることと、
    を更に含む請求項1に記載の方法。
  5. Figure 0005579327
    に従って加法準同型の少なくとも1つの性質を用いて、全条件付き確率γ(i)を暗号化したものξ(γ(i))を求めることを更に含む、請求項4に記載の方法。
  6. 変更ベクトルを求めることと、
    前記HMMの状態ごとに、暗号化されたドメインにおいて前記変更ベクトルを用いて変更された状態の初期確率を暗号化したものを前記クライアントに送信することと、
    前記HMMの状態ごとに、暗号化されていないドメインにおいて前記変更ベクトルを用いて変更された前記状態の初期確率を受信することと、
    前記変更ベクトルを除去することであって、前記暗号化されていないドメインにおいて前記初期確率を生成するものと、
    を更に含む、請求項5に記載の方法。
  7. 前記初期確率に基づいて、初期状態確率ベクトル
    Figure 0005579327
    を更新することを更に含む、請求項6に記載の方法。
  8. Figure 0005579327
    に従って前記暗号化されたドメインにおいて前記条件付き確率の総和を暗号化したものξ(Σt=1 T−1ζ(i,j))を求めることと、
    Figure 0005579327
    に従って前記暗号化されたドメインにおいて前記全条件付き確率の総和を暗号化したものξ(Σt=1 T−1γ(i))を求めることと、
    H−対数法を用いて、前記条件付き確率の前記総和の対数を暗号化したものξ(log(Σt=1 T−1ζ(i,j)))を求めることと、
    前記H−対数法を用いて、前記全条件付き確率の前記総和の対数を暗号化したものξ(log(Σt=1 T−1γ(i)))を求めることと、
    Figure 0005579327
    に従って前記加法準同型の性質を用いて、前記遷移確率の対数を暗号化したもの
    Figure 0005579327
    を求めることと、
    前記HMMの状態の対ごとに、前記遷移確率の対数を暗号化したものに基づいて前記SMCを用いて、更新済み遷移確率
    Figure 0005579327
    を求めることと、
    を更に含む請求項5に記載の方法。
  9. アルファベットvの観測値シンボルごとに、H−総和分割法を用いて、暗号化された総和
    Figure 0005579327
    を求めることと、
    前記SMCを用いて、観測値の更新済み確率
    Figure 0005579327
    を求めることと、を更に含む、請求項5に記載の方法。
  10. 現在の反復中にH−前向き方法を用いて、前記HMMの更新済みパラメーター
    Figure 0005579327
    に基づいて前記現在の反復の前記観測値系列の前記確率
    Figure 0005579327
    を求めることであって、ここで、xは前記観測値系列、t=1,2,…,Tであるものと、
    H−比較法を用いて前記差を求めることと、
    を更に含む、請求項2に記載の方法。
  11. 前記差が前記しきい値以下であるときに、前記HMMの前記パラメーターを最終的なパラメーターとして選択することを更に含む、請求項2に記載の方法。
  12. クライアントにおいて記憶される観測値系列に基づいて隠れマルコフモデル(HMM)のパラメーターを求めるためのサーバーであって、前記クライアントは加法準同型性暗号システムの解読鍵及び暗号鍵を有し、該サーバーは前記暗号鍵のみを有し、該サーバーは、
    前記HMMのパラメーターを初期化し、
    現在の反復の前記観測値系列の確率と先行する反復の前記観測値系列の確率との間の差がしきい値を超えるまで、前記パラメーターを反復的に更新する、
    ために構成されるプロセッサを備え、
    反復する度に、前記パラメーターは、前記観測値系列及び前記HMMの前記パラメーターが与えられた場合に、状態の各対の暗号化された条件付き結合確率に基づいて更新され、該暗号化された条件付き確率は、H−SMCを用いて暗号化されたドメインにおいて求められ、前記H−SMCは、加法準同型の少なくとも1つの性質を用いる該サーバーと前記クライアントとの間のセキュアマルチパーティ計算(SMC)を含み、
    前記プロセッサは、
    H−SMCを用いて前記HMMの前記パラメーターに対する前記先行する反復の前記観測値系列の確率を暗号化したものを求め、前記該H−SMCは、加法準同型の少なくとも1つの性質を用いる前記サーバーと前記クライアントとの間のセキュアマルチパーティ計算(SMC)を含み、
    前記HMMの状態ごとに、前記SMCを用いて前記HMMの前記パラメーターに対する前記観測値系列の暗号化された前向き確率を求め、
    前記HMMの状態ごとに、前記H−SMCを用いて前記観測値系列の暗号化された後向き確率を求め、
    前記観測値系列の要素ごとに、前記HMMの前記パラメーターを与えられた場合に、状態の各対の暗号化された条件付き結合確率を求め、1組の暗号化された条件付き結合確率を生成し、前記観測値系列の対数確率を暗号化したもの、前記暗号化された前向き確率及び前記暗号化された後向き確率に基づき求められ、
    入力として前記1組の暗号化された条件付き結合確率を有する前記H−SMCを用いて、前記HMMの前記パラメーターを更新し、
    H−SMCを用いて前記HMMの更新済みパラメーターに対する現在の反復の前記観測値系列の確率を暗号化したものを求め、
    前記H−SMCを用いて、前記現在の反復の前記観測値系列の前記暗号化された確率と、前記先行する反復の前記観測値系列の前記暗号化された確率との間の差を求める、
    ために構成される、クライアントにおいて記憶される観測値系列に基づいて隠れマルコフモデル(HMM)のパラメーターを求めるためのサーバー。
JP2013527401A 2011-03-30 2012-03-21 隠れマルコフモデルに基づくプライバシー保護確率的推論 Expired - Fee Related JP5579327B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/076,418 US8433893B2 (en) 2011-03-30 2011-03-30 Privacy-preserving probabilistic inference based on hidden markov models
US13/076,418 2011-03-30
US13/076,424 US8402263B2 (en) 2011-03-31 2011-03-31 Privacy-preserving probabilistic inference based on hidden Markov models
US13/076,424 2011-03-31
PCT/JP2012/058278 WO2012133601A1 (en) 2011-03-30 2012-03-21 Privacy-preserving probabilistic inference based on hidden markov models

Publications (2)

Publication Number Publication Date
JP2014503833A JP2014503833A (ja) 2014-02-13
JP5579327B2 true JP5579327B2 (ja) 2014-08-27

Family

ID=45953192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013527401A Expired - Fee Related JP5579327B2 (ja) 2011-03-30 2012-03-21 隠れマルコフモデルに基づくプライバシー保護確率的推論

Country Status (2)

Country Link
JP (1) JP5579327B2 (ja)
WO (1) WO2012133601A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI743264B (zh) 2016-12-08 2021-10-21 德商贏創運營有限公司 富含烯烴之烴混合物的脫氫

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019102624A1 (ja) 2017-11-27 2019-05-31 三菱電機株式会社 準同型推論装置、準同型推論方法、準同型推論プログラム及び秘匿情報処理システム
CN113179159B (zh) * 2021-04-13 2022-03-11 广州锦行网络科技有限公司 一种数据加密传输方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937270B2 (en) * 2007-01-16 2011-05-03 Mitsubishi Electric Research Laboratories, Inc. System and method for recognizing speech securely using a secure multi-party computation protocol
US8903090B2 (en) * 2008-04-29 2014-12-02 International Business Machines Corporation Securely classifying data
US8433892B2 (en) * 2011-03-30 2013-04-30 Mitsubishi Electric Research Laboratories, Inc. Privacy-preserving probabilistic inference based on hidden Markov models

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI743264B (zh) 2016-12-08 2021-10-21 德商贏創運營有限公司 富含烯烴之烴混合物的脫氫

Also Published As

Publication number Publication date
WO2012133601A1 (en) 2012-10-04
JP2014503833A (ja) 2014-02-13

Similar Documents

Publication Publication Date Title
JP2014504741A (ja) サーバーにおいて記憶された隠れマルコフモデル(hmm)に対するクライアントにおいて記憶された観測値系列の確率を評価するための方法及びサーバー
US11586743B2 (en) Secure data processing
Bost et al. Machine learning classification over encrypted data
JP5300983B2 (ja) データ処理装置
US8625782B2 (en) Method for privacy-preserving computation of edit distance of symbol sequences
US8433893B2 (en) Privacy-preserving probabilistic inference based on hidden markov models
JP2016512611A (ja) プライバシー保護リッジ回帰
JPWO2015155896A1 (ja) サポートベクトルマシン学習システムおよびサポートベクトルマシン学習方法
JP2016080766A (ja) 暗号処理方法、暗号処理装置、及び暗号処理プログラム
JP5762232B2 (ja) プライバシを保護したまま暗号化された要素の順序を選択するための方法およびシステム
Togan et al. Comparison-based computations over fully homomorphic encrypted data
CN116756602A (zh) 用于隐私保护无监督学习的系统和方法
US20180302220A1 (en) User attribute matching method and terminal
CN112769542A (zh) 基于椭圆曲线的乘法三元组生成方法、装置、设备及介质
JP5579327B2 (ja) 隠れマルコフモデルに基づくプライバシー保護確率的推論
Zhang et al. A secure and privacy-preserving word vector training scheme based on functional encryption with inner-product predicates
US8402263B2 (en) Privacy-preserving probabilistic inference based on hidden Markov models
JP2023179681A (ja) 同型暗号文に対する非多項式演算を行う方法
Chakraborti et al. {Distance-Aware} Private Set Intersection
Yoo et al. t‐BMPNet: Trainable Bitwise Multilayer Perceptron Neural Network over Fully Homomorphic Encryption Scheme
Joye et al. PINFER: Privacy-Preserving Inference for Machine Learning
CN112307499B (zh) 一种云计算中加密数据频繁项集的挖掘方法
US20220094532A1 (en) Methods and systems for homomorphic data representation and concealment powered by clifford geometric algebra
Gallego Estévez Quantum and post-quantum key combination in a financial environment
Marmebro et al. Investigation of Post-Quantum Cryptography (FIPS 203 & 204) Compared to Legacy Cryptosystems, and Implementation in Large Corporations.

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140610

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140708

R150 Certificate of patent or registration of utility model

Ref document number: 5579327

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees