(57)【特許請求の範囲】
【請求項１】
複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置であって、
前記第１集計データの入力を受け付ける入力手段と、
前記入力手段によって受け付けられた前記第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換手段と、
前記第１変換手段によって生成された前記第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データを生成する乱数付与手段と、
前記第２集計データの各要素が負の値とならないように、前記乱数付与手段によって生成された前記第２系列データに含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データを生成する精緻化手段と、
前記精緻化手段によって生成された前記第３系列データに、前記第１線形変換の逆変換である第２線形変換を適用することによって前記第２集計データを生成する第２変換手段と、
前記第２変換手段によって生成された前記第２集計データを出力する出力手段と、
を備える、プライバシー保護装置。
【請求項２】
複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置であって、
前記第１集計データの入力を受け付ける入力手段と、
前記入力手段によって受け付けられた前記第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換手段と、
前記第１変換手段によって生成された前記第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、前記第２集計データの各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、前記第２集計データを生成する高速変換手段と、
前記高速変換手段によって生成された前記第２集計データを出力する出力手段と、
を備える、プライバシー保護装置。
【請求項３】
前記第１線形変換は、Ｈａａｒ関数を母ウェーブレットとするＨａａｒウェーブレット変換である、請求項１または請求項２に記載のプライバシー保護装置。
【請求項４】
前記乱数は、ラプラス分布に従う乱数であるラプラス乱数または幾何分布に従う乱数である幾何乱数である、請求項１〜請求項３のいずれか一項に記載のプライバシー保護装置。
【請求項５】
前記精緻化処理は、前記第２系列データをウェーブレット係数の系列として見た場合に、前記ウェーブレット係数における近似係数ベクトルの各要素が負の値とならないように、前記ウェーブレット係数における詳細係数ベクトルの各要素の値を補正する処理を含む、請求項１に記載のプライバシー保護装置。
【請求項６】
前記第１変換手段は、前記第１集計データを疎データ形式で表現し、前記第１集計データに含まれるデータのうち、ゼロ以外の値を有するデータに前記第１線形変換を適用することによって前記第１系列データを生成する、請求項１〜請求項５のいずれか一項に記載のプライバシー保護装置。
【請求項７】
複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置が行うプライバシー保護方法であって、
前記プライバシー保護装置の入力手段が、前記第１集計データの入力を受け付ける入力ステップと、
前記プライバシー保護装置の第１変換手段が、前記入力ステップにおいて受け付けられた前記第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、
前記プライバシー保護装置の乱数付与手段が、前記第１変換ステップにおいて生成された前記第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データを生成する乱数付与ステップと、
前記プライバシー保護装置の精緻化手段が、前記第２集計データの各要素が負の値とならないように、前記乱数付与ステップにおいて生成された前記第２系列データに含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データを生成する精緻化ステップと、
前記プライバシー保護装置の第２変換手段が、前記精緻化ステップにおいて生成された前記第３系列データに、前記第１線形変換の逆変換である第２線形変換を適用することによって前記第２集計データを生成する第２変換ステップと、
前記プライバシー保護装置の出力手段が、前記第２変換ステップにおいて生成された前記第２集計データを出力する出力ステップと、
を備える、プライバシー保護方法。
【請求項８】
複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置が行うプライバシー保護方法であって、
前記プライバシー保護装置の入力手段が、前記第１集計データの入力を受け付ける入力ステップと、
前記プライバシー保護装置の第１変換手段が、前記入力ステップにおいて受け付けられた前記第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、
前記プライバシー保護装置の高速変換手段が、前記第１変換ステップにおいて生成された前記第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、前記第２集計データの各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、前記第２集計データを生成する高速変換ステップと、
前記プライバシー保護装置の出力手段が、前記高速変換ステップにおいて生成された前記第２集計データを出力する出力ステップと、
を備える、プライバシー保護方法。
【請求項９】
プライバシーが保護された集計データを備えるデータベース作成方法であって、
プライバシー保護装置の入力手段が、複数のデータを含む第１集計データの入力を受け付ける入力ステップと、
前記プライバシー保護装置の第１変換手段が、前記入力ステップにおいて受け付けられた前記第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、
前記プライバシー保護装置の乱数付与手段が、前記第１変換ステップにおいて生成された前記第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データを生成する乱数付与ステップと、
前記プライバシー保護装置の精緻化手段が、第２集計データの各要素が負の値とならないように、前記乱数付与ステップにおいて生成された前記第２系列データに含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データを生成する精緻化ステップと、
前記プライバシー保護装置の第２変換手段が、前記精緻化ステップにおいて生成された前記第３系列データに、前記第１線形変換の逆変換である第２線形変換を適用することによって前記第２集計データを生成する第２変換ステップと、
前記プライバシー保護装置の出力手段が、前記第２変換ステップにおいて生成された前記第２集計データを前記データベースに出力する出力ステップと、
を備える、データベース作成方法。
【請求項１０】
プライバシーが保護された集計データを備えるデータベース作成方法であって、
プライバシー保護装置の入力手段が、複数のデータを含む第１集計データの入力を受け付ける入力ステップと、
前記プライバシー保護装置の第１変換手段が、前記入力ステップにおいて受け付けられた前記第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、
前記プライバシー保護装置の高速変換手段が、前記第１変換ステップにおいて生成された前記第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、第２集計データの各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、前記第２集計データを生成する高速変換ステップと、
前記プライバシー保護装置の出力手段が、前記高速変換ステップにおいて生成された前記第２集計データを出力する出力ステップと、
を備える、データベース作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プライバシー保護装置、プライバシー保護方法及びデータベース作成方法に関する。
【背景技術】
【０００２】
１または複数の属性を有するレコードの集合から構成されるデータベースにおいて、ある属性または属性の組み合わせに該当するレコードの個数を数え上げた値の集合を集計データと呼ぶ。この集計データは、様々な統計分析における基礎データとして広く用いられている。集計データは、例えば、国勢調査の結果に基づく各種の地域別人口、パーソントリップ調査結果に基づき出発地及び到着地の組ごとに移動人数を集計したＯＤ（origin-destination）表等の各種の公的統計、並びに、携帯電話の運用データから日本全国の属性別人口を時間帯別に推計したモバイル空間統計等に用いられている。
【０００３】
近年、情報セキュリティ分野及びデータベース処理分野等において、プライバシーを保護しつつ有用なデータを公開するための様々な新しい基準及び手法が提案されている。これらの技術は、プライバシー保護データ公開（ＰＰＤＰ；privacy-preserving data publishing）技術等と呼ばれている。しかし、これらのＰＰＤＰ技術は、それぞれ攻撃者が持つ目的、能力及び背景知識に関する前提が異なり、その安全性について一概に議論することが困難であることから、実際のデータ活用に適用することは容易ではない。すなわち、これらの技術を実際に適用する上では、扱うデータの性質及び応用ごとに、「どのプライバシー保護基準に基づいて、どの手法によりプライバシーを保護するべきか」を適切に判断することが求められるが、この判断をすべてのデータ活用において行うことは現実的にはできない。
【０００４】
そこで、Ｄｗｏｒｋらによって２００６年に提案された差分プライバシー基準（differential privacy）が着目されている（特許文献１、非特許文献１，２参照）。この差分プライバシー基準は、「加工データを作成する上での元データとなるデータベースに、ある人が含まれるか否かの、加工データからの判別困難性」を安全性の根拠とするプライバシー保護基準である。差分プライバシー基準は、他の多くのプライバシー保護基準とは異なり、任意の背景知識を持つ攻撃者及び未知の攻撃に対して数学的な安全性が与えられているという優れた性質を有する。差分プライバシー基準を満たす手段は「メカニズム（mechanism）」と呼ばれる。代表的な差分プライバシー基準のメカニズムとしてラプラス（Laplace）メカニズムが挙げられる。ラプラスメカニズムは「問い合わせ結果に対してラプラスノイズを加える」という簡単な手段によって実現することができる。
【０００５】
理論的には、ラプラスメカニズムを用いることにより、差分プライバシー基準を満たす集計データを簡単に作成することができる。ただし、ラプラスメカニズムを直接適用した方法では、複数のセルの値の部分和を取った際の誤差が大きくなり、集計データの有用性が劣化する。そこで、Ｘｉａｏらは、部分和精度を改善するために離散ウェーブレット（Wavelet）変換とその概念的な拡張であるＮｏｍｉｎａｌウェーブレット変換とを用いる方式を提案している（非特許文献３，４参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−１３３３２０号公報
【非特許文献】
【０００７】
【非特許文献１】Cynthia Dwork. Differential Privacy. In Michele Bugliesi, BartPreneel, Vladimiro Sassone, and Ingo Wegener, editors, Proc. 33rd intl. conf.Automata, Languages and Programming - Volume Part II, Vol.4052 of Lecture Notesin Computer Science, pp.1-12. Springer, 2006.
【非特許文献２】Cynthia Dwork. Differential privacy: a survey of results. In Proc.5th intl. conf. Theory and applications of models of computation, pp.1-19.Springer-Verlag, April 2008.
【非特許文献３】Xiaokui Xiao, Guozhang Wang, and Johannes Gehrke. Differentialprivacy via wavelet transforms. In Proc. 26th intl. conf. Data Engineering(ICDE 2010), pp.225-236. IEEE, 2010.
【非特許文献４】Xiaokui Xiao, Guozhang Wang, Johannes Gehrke, and Thomas Jefferson.Differential Privacy via Wavelet Transforms. IEEE Trans. Knowledge and DataEngineering, Vol.23, No.8, pp.1200-1214, August 2011.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ラプラスメカニズム及びＸｉａｏらの手法が適用された集計データは、実際の集計データではあり得ない多くの負の値を含み得る。すなわち、集計データが本来備えるべき非負制約を逸脱することがある。この負の値は、データの利用者にとって不自然に感じられるだけでなく、分析プログラムの予期せぬ異常動作を引き起こす可能性があり、集計データの利用に著しい困難が生じるおそれがある。
【０００９】
これに対し、ラプラスメカニズムの適用後に負の値をゼロの値に校正することにより、見かけ上は非負制約を満たす集計データを生成できる。しかし、この方法ではセルの値の平均及び部分和に過大なバイアスが発生する。つまり、セルの値の平均及び部分和の期待値が元の集計データのセルの値及び部分和に対して大きく上振れする。このため、生成された集計データは実用に耐え難い。
【００１０】
本発明は、上記問題点に鑑みてなされたものであり、差分プライバシー基準を満たすとともに、部分和精度の改善及び非負制約の充足を併せて実現する集計データを提供可能なプライバシー保護装置、プライバシー保護方法及びデータベース作成方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一態様に係るプライバシー保護装置は、複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置である。このプライバシー保護装置は、第１集計データの入力を受け付ける入力手段と、入力手段によって受け付けられた第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換手段と、第１変換手段によって生成された第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データを生成する乱数付与手段と、第２集計データの各要素が負の値とならないように、乱数付与手段によって生成された第２系列データに含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データを生成する精緻化手段と、精緻化手段によって生成された第３系列データに、第１線形変換の逆変換である第２線形変換を適用することによって第２集計データを生成する第２変換手段と、第２変換手段によって生成された第２集計データを出力する出力手段と、を備える。
【００１２】
このプライバシー保護装置では、第１集計データに乱数が直接付与されるのではなく、第１集計データに適切な第１線形変換を施すことによって生成された第１系列データに対して乱数が付与されて、第２系列データが生成される。このため、適切な強度の乱数の付与によって、第２集計データが差分プライバシー基準を満たすようにすることができる。そして、第２系列データを木構造で表現した場合の木の低い階層の要素に付与された乱数は、部分和計算の際にキャンセルされる。これにより、第２集計データの部分和精度の劣化を抑制できる。また、第２集計データの各要素が負の値とならないように、第２系列データに含まれる要素の各々が予め定められた条件で補正されることによって、第２集計データが非負制約を満たすようにすることができる。その結果、差分プライバシー基準を満たすとともに、部分和精度の改善及び非負制約の充足を併せて実現する第２集計データを提供することが可能となる。
【００１３】
本発明の別の態様に係るプライバシー保護装置は、複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置である。このプライバシー保護装置は、第１集計データの入力を受け付ける入力手段と、入力手段によって受け付けられた第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換手段と、第１変換手段によって生成された第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、第２集計データの各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、第２集計データを生成する高速変換手段と、高速変換手段によって生成された第２集計データを出力する出力手段と、を備える。
【００１４】
このプライバシー保護装置によれば、第１集計データに乱数が直接付与されるのではなく、第１集計データに適切な第１線形変換を施すことによって生成された第１系列データに含まれる要素の各々に対して乱数が付与されるとともに、第２集計データの各要素が負の値とならないように、乱数が付与された各要素が予め定められた条件で補正される。このため、適切な強度の乱数の付与によって、第２集計データが差分プライバシー基準を満たすようにすることができる。そして、第１系列データに乱数を付与したデータを木構造で表現した場合の木の低い階層の要素に付与された乱数は、部分和計算の際にキャンセルされる。これにより、第２集計データの部分和精度の劣化を抑制できる。また、第２集計データの各要素が負の値とならないように、乱数が付与された各要素が予め定められた条件で補正されることによって、第２集計データが非負制約を満たすようにすることができる。その結果、差分プライバシー基準を満たすとともに、部分和精度の改善及び非負制約の充足を併せて実現する第２集計データを提供することが可能となる。また、第１系列データに対し、乱数の付与と精緻化処理とが並行して実施される。このため、計算量を大幅に削減することができ、第２集計データの提供を高速化することが可能となる。
【００１５】
第１線形変換は、Ｈａａｒ関数を母ウェーブレットとするＨａａｒウェーブレット変換であってもよい。この場合、第１線形変換を適用することによって生成された第１系列データの各要素が木構造で表現でき、かつ、第１系列データの各要素の値が、木における子孫の部分和にのみ影響を与える。このため、木構造で表現した要素について、木の上位階層から順に木を辿って各要素に対して非負制約を満たすように精緻化を施していくだけで、木の最下位の階層まで辿り終わったときに全ての要素が非負制約を満たすことが保証される。これにより、精緻化処理における計算の単純化が可能となる。
【００１６】
乱数は、ラプラス分布に従う乱数であるラプラス乱数または幾何分布に従う乱数である幾何乱数であってもよい。この場合、第２集計データが差分プライバシー基準を満たすことが保証される。
【００１７】
精緻化処理は、第２系列データをウェーブレット係数の系列として見た場合に、ウェーブレット係数における近似係数ベクトルの各要素が負の値とならないように、ウェーブレット係数における詳細係数ベクトルの各要素の値を補正する処理を含んでもよい。この場合、全ての詳細係数ベクトルの各要素の値を補正することにより、非負制約を満たす第３系列データの生成を簡単化でき、非負制約を満たす第２集計データの提供を簡単化することが可能となる。
【００１８】
第１変換手段は、第１集計データを疎データ形式で表現し、第１集計データに含まれるデータのうち、ゼロ以外の値を有するデータに第１線形変換を適用することによって第１系列データを生成してもよい。この場合、ゼロの値を有するデータへの第１線形変換の適用が省略されるので、第１線形変換における計算量の削減が可能となる。
【００１９】
ところで、本発明は、上記のようにプライバシー保護装置の発明として記述できる他に、以下のようにプライバシー保護方法及びデータベース作成方法の発明としても記述することができる。これはカテゴリが異なるだけで、実質的に同一の発明であり、同様の作用及び効果を奏する。
【００２０】
すなわち、本発明のさらに別の態様に係るプライバシー保護方法は、複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置が行うプライバシー保護方法である。このプライバシー保護方法は、第１集計データの入力を受け付ける入力ステップと、入力ステップにおいて受け付けられた第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、第１変換ステップにおいて生成された第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データを生成する乱数付与ステップと、第２集計データの各要素が負の値とならないように、乱数付与ステップにおいて生成された第２系列データに含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データを生成する精緻化ステップと、精緻化ステップにおいて生成された第３系列データに、第１線形変換の逆変換である第２線形変換を適用することによって第２集計データを生成する第２変換ステップと、第２変換ステップにおいて生成された第２集計データを出力する出力ステップと、を備える。
【００２１】
本発明のさらに別の態様に係るプライバシー保護方法は、複数のデータを含む第１集計データを入力し、第２集計データを出力するプライバシー保護装置が行うプライバシー保護方法である。このプライバシー保護方法は、第１集計データの入力を受け付ける入力ステップと、入力ステップにおいて受け付けられた第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、第１変換ステップにおいて生成された第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、第２集計データの各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、第２集計データを生成する高速変換ステップと、高速変換ステップにおいて生成された第２集計データを出力する出力ステップと、を備える。
【００２２】
本発明のさらに別の態様に係るデータベース作成方法は、プライバシーが保護された集計データを備えるデータベース作成方法である。このデータベース作成方法は、複数のデータを含む第１集計データの入力を受け付ける入力ステップと、入力ステップにおいて受け付けられた第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、第１変換ステップにおいて生成された第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データを生成する乱数付与ステップと、第２集計データの各要素が負の値とならないように、乱数付与ステップにおいて生成された第２系列データに含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データを生成する精緻化ステップと、精緻化ステップにおいて生成された第３系列データに、第１線形変換の逆変換である第２線形変換を適用することによって第２集計データを生成する第２変換ステップと、第２変換ステップにおいて生成された第２集計データをデータベースに出力する出力ステップと、を備える。
【００２３】
本発明のさらに別の態様に係るデータベース作成方法は、プライバシーが保護された集計データを備えるデータベース作成方法である。複数のデータを含む第１集計データの入力を受け付ける入力ステップと、入力ステップにおいて受け付けられた第１集計データに第１線形変換を適用することによって第１系列データを生成する第１変換ステップと、第１変換ステップにおいて生成された第１系列データに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、第２集計データの各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、第２集計データを生成する高速変換ステップと、高速変換ステップにおいて生成された第２集計データを出力する出力ステップと、を備える。
【発明の効果】
【００２４】
本発明によれば、差分プライバシー基準を満たすとともに、部分和精度の改善及び非負制約の充足を併せて実現する集計データを提供することができる。
【図面の簡単な説明】
【００２５】
【図１】第１実施形態に係るプライバシー保護装置の構成を概略的に示す図である。
【図２】図１のプライバシー保護装置のハードウェア構成図である。
【図３】図１の第１変換部による第１系列データの生成処理を説明するための図である。
【図４】図１の乱数付与部による第２系列データの生成処理を説明するための図である。
【図５】図１の精緻化部による精緻化処理を説明するための図である。
【図６】図１のプライバシー保護装置によって実行されるプライバシー保護方法の一連の処理を示すフローチャートである。
【図７】第２実施形態に係るプライバシー保護装置の構成を概略的に示す図である。
【図８】図７のプライバシー保護装置によって実行されるプライバシー保護方法の一連の処理を示すフローチャートである。
【発明を実施するための形態】
【００２６】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。図面の説明において、同一又は同等の要素には同一符号を用い、重複する説明を省略する。
【００２７】
［第１実施形態］
図１は、第１実施形態に係るプライバシー保護装置の構成を概略的に示す図である。図１に示されるように、プライバシー保護装置１０は、複数のデータ（以下、「要素」という。）を含む第１集計データＶを入力し、第２集計データＶ＋を出力する装置であり、例えば、サーバ装置等の情報処理装置によって構成されている。プライバシー保護装置１０は、集計データを公開するにあたって、データベースに含まれる人々のプライバシーに関する情報（個人情報）の漏洩を防止するためのプライバシー保護処理を第１集計データＶに施す。例えば、プライバシー保護装置１０は、携帯電話ネットワークの情報を用いた人口動態の推計等の統計データの提供及び開示におけるプライバシーを保護する。
【００２８】
第１集計データＶは、プライバシー保護装置１０によるプライバシー保護処理の処理対象であり、１または複数の属性を有するレコードの集合から構成されるデータベースにおいて、ある属性または属性の組み合わせに該当するレコードの個数を数え上げた値の集合である。第１集計データＶは、例えば、人々に関係するデータベースから作成される。第２集計データＶ＋は、プライバシー保護装置１０によって第１集計データＶにプライバシー保護処理が施された集計データであり、差分プライバシー基準を満たし、かつ、非負制約を満たすプライバシー保護済み集計データである。ここで、第１集計データＶをＶ＝（ｖ１，ｖ２，・・・，ｖｎ）とし、第２集計データＶ＋をＶ＋＝（ｖ１＋，ｖ２＋，・・・，ｖｎ＋）とする。また、ｎは、第１集計データＶの論理的な空間のサイズであって、ｎ＝２ｋ（ｋは自然数）であるとする。なお、説明の便宜上、一次元のデータ系列を対象にしているが、多次元のデータ系列であってもよい。例えば、ウェーブレット変換の標準分解（standard decomposition）の適用等によって、容易に多次元のデータ系列に拡張できる。
【００２９】
プライバシー保護装置１０は、機能的には、入力部１１（入力手段）と、第１変換部１２（第１変換手段）と、乱数付与部１３（乱数付与手段）と、精緻化部１４（精緻化手段）と、第２変換部１５（第２変換手段）と、出力部１６（出力手段）と、を備える。プライバシー保護装置１０は、図２に示されるハードウェアによって構成される。
【００３０】
図２は、プライバシー保護装置１０のハードウェア構成図である。図２に示されるように、プライバシー保護装置１０は、物理的には、１又は複数のＣＰＵ（Central Processing Unit）１０１、主記憶装置であるＲＡＭ（RandomAccess Memory）１０２及びＲＯＭ（Read Only Memory)１０３、データ送受信デバイスである通信モジュール１０４、ハードディスク装置等の補助記憶装置１０５、キーボード等のユーザの入力を受け付ける入力装置１０６、並びに、ディスプレイ等の出力装置１０７等のハードウェアを備えるコンピュータとして構成される。図１におけるプライバシー保護装置１０の各機能は、ＣＰＵ１０１、ＲＡＭ１０２等のハードウェア上に１又は複数の所定のコンピュータソフトウェアを読み込ませることにより、ＣＰＵ１０１の制御のもとで通信モジュール１０４、入力装置１０６及び出力装置１０７を動作させるとともに、ＲＡＭ１０２及び補助記憶装置１０５におけるデータの読み出し及び書き込みを行うことで実現される。
【００３１】
図１に戻って、プライバシー保護装置１０の機能構成について詳細に説明する。入力部１１は、第１集計データＶの入力を受け付ける入力手段として機能する。入力部１１は、プライバシー保護装置１０の外部から第１集計データＶを受信し、受信した第１集計データＶを第１変換部１２に出力する。
【００３２】
第１変換部１２は、入力部１１によって受け付けられた第１集計データＶに第１線形変換を適用することによって第１系列データＷを生成する第１変換手段として機能する。ここで、第１線形変換は、第１線形変換を適用することによって生成された第１系列データＷの各要素が木構造で表現でき、かつ、第１系列データＷの各要素の値が、木における子孫の部分和にのみ影響を与えるという条件を満たす。このような第１線形変換として、例えば、Ｈａａｒウェーブレット変換、Ｎｏｍｉｎａｌウェーブレット変換、フーリエ（Fourier）変換、和差分解等が用いられる。
【００３３】
第１線形変換としてＨａａｒウェーブレット変換を用いて説明を行う。Ｈａａｒウェーブレット変換Ηは、階段関数の一種であるＨａａｒ関数を母ウェーブレットとした離散ウェーブレット変換の一種である。このＨａａｒウェーブレット変換Ηは、逆変換関数であるＨａａｒウェーブレット逆変換Η−１を有し、任意の第１集計データＶについて、Ｖ＝Η−１（Η（Ｖ））が成立する。第１変換部１２は、第１線形変換を用いて、長さｎのベクトル列である第１集計データＶを、同じ長さｎのベクトル列である第１系列データＷ＝（ｗ１，ｗ２，・・・，ｗｎ）に変換する。Ｈａａｒウェーブレット変換Ηは、Ｈａａｒ分解Η１を再帰的にｋ回適用することによって成される。このＨａａｒ分解Η１は、以下の式（１）〜（３）に示されるように、長さ２ｐ（＝ｑ）のベクトル列Ｙ＝（ｙ１，ｙ２，・・・，ｙｑ）を、長さ２ｐ−１のベクトル列ｃＡ，ｃＤに分解する。
【数１】
0006310345.tif 000002
【数２】
0006310345.tif 000003
【数３】
0006310345.tif 000004
【００３４】
ベクトル列ｃＡは、ベクトル列Ｙにおいて隣り合う２つの値の平均のベクトルであり、ベクトル列ｃＤは、ベクトル列Ｙにおいて隣り合う２つの値の差分のベクトルである。ベクトル列ｃＡを近似係数ベクトル、ベクトル列ｃＤを詳細係数ベクトルと呼ぶ。生成された近似係数ベクトルｃＡに再びＨａａｒ分解Η１を施すと、長さ２ｐ−２の近似係数ベクトルと長さ２ｐ−２の詳細係数ベクトルとの組が得られる。このように、第１変換部１２は、式（４）及び（５）に示されるように、第１集計データＶを初期入力として、このＨａａｒ分解Η１を再帰的にｋ回繰り返すことによって、最終的には１個の近似係数ベクトルとｋ個の詳細係数ベクトルとを得る。
【数４】
0006310345.tif 000005
【数５】
0006310345.tif 000006
【００３５】
ここで、ｉは２〜ｋの整数値を取る。近似係数ベクトルｃＡｉ及び詳細係数ベクトルｃＤｉは、ｉ回目のＨａａｒ分解Η１によって得られた出力であり、これをレベルｉの係数ベクトルと呼ぶ。そして、第１変換部１２は、以下の式（６）に示されるように連接を行うことによって、ウェーブレット係数系列である第１系列データＷを構成する。
【数６】
0006310345.tif 000007
【００３６】
なお、レベルｋの近似係数ベクトルｃＡｋの長さは１であり、レベルｉの詳細係数ベクトルｃＤｉの長さは２ｋ−ｉであることから、以下の式（７）に示されるように、第１系列データＷの長さは、第１集計データＶの長さと等しくなる。
【数７】
0006310345.tif 000008
【００３７】
図３は、第１変換部１２による第１系列データＷの生成処理を説明するための図である。図３に示される例では、第１集計データＶ＝（ｖ１，ｖ２，ｖ３，ｖ４，ｖ５，ｖ６，ｖ７，ｖ８）である。第１変換部１２は、この第１集計データＶを初期入力としてＨａａｒ分解Η１を適用することによって、式（８）に示されるレベル１の近似係数ベクトルｃＡ１及び詳細係数ベクトルｃＤ１を得る。
【数８】
0006310345.tif 000009
【００３８】
そして、第１変換部１２は、レベル１の近似係数ベクトルｃＡ１を入力としてＨａａｒ分解Η１を適用することによって、式（９）に示されるレベル２の近似係数ベクトルｃＡ２及び詳細係数ベクトルｃＤ２を得て、さらにレベル２の近似係数ベクトルｃＡ２を入力としてＨａａｒ分解Η１を適用することによって、式（１０）に示されるレベル３の近似係数ベクトルｃＡ３及び詳細係数ベクトルｃＤ３を得る。
【数９】
0006310345.tif 000010
【数１０】
0006310345.tif 000011
【００３９】
そして、第１変換部１２は、式（６）に示されるように、近似係数ベクトルｃＡ３及び詳細係数ベクトルｃＤ３，ｃＤ２，ｃＤ１を連接することによって、第１系列データＷを生成する。なお、レベルｉの近似係数ベクトルｃＡｉの第ｘ番目の係数をｃＡｉ，ｘと表現し、レベルｉの詳細係数ベクトルｃＤｉの第ｘ番目の係数（以下、要素という。）をｃＤｉ，ｘと表現する。
【００４０】
乱数付与部１３は、第１変換部１２によって生成された第１系列データＷに含まれる要素の各々に対して、予め定められた強度の乱数を付与することによって第２系列データＷ＊を生成する乱数付与手段として機能する。ここで、第２系列データＷ＊は差分プライバシー基準を満たす。また、乱数は、加算により差分プライバシー基準を満たすことができる乱数である。このような乱数として、例えば、ラプラス分布に従う乱数であるラプラスノイズ（ラプラス乱数）、幾何分布に従う乱数である幾何ノイズ（幾何乱数）等が用いられる。ラプラスノイズを付与することにより差分プライバシー基準を満たす手段はラプラスメカニズムと呼ばれ、幾何ノイズを付与することにより差分プライバシー基準を満たす手段は幾何メカニズムと呼ばれる。
【００４１】
乱数としてラプラスノイズを用いて説明を行う。ここで、ラプラスノイズとは、０を平均としたラプラス分布から独立に抽出された乱数である。以下の説明では、平均０、スケールλのラプラス分布に従って発生させたラプラスノイズをＬａｐ（λ）とする。ラプラスメカニズムで用いられるラプラスノイズのスケールλは、差分プライバシー基準におけるプライバシー強度εと、問い合わせの種類ごとに定まる大域的感度（ＧＳ；global sensitivity）と、によって与えられる。具体的には、ε−差分プライバシー基準を満たすための問い合わせｆに対応するラプラスメカニズムΚｆは、問い合わせｆの感度ＧＳｆを用いて、式（１１）で定義される。
【数１１】
0006310345.tif 000012
【００４２】
乱数付与部１３は、第１変換部１２によって生成された第１系列データＷの各要素に対して、ラプラスメカニズムを適用し、差分プライバシー基準を満たす第２系列データＷ＊を生成する。ここで、ラプラスメカニズムによって付与されるラプラスノイズのスケールλは、Ｈａａｒウェーブレット変換におけるレベルによって異なる。具体的には、乱数付与部１３は、スケールλ＝２（１＋ｋ）／εとして、第１系列データＷに含まれるレベルｉの要素にそれぞれＬａｐ（λ／２ｉ）を加えることによって、ノイズ付きウェーブレット係数系列である第２系列データＷ＊を生成する。
【００４３】
なお、Ｈａａｒウェーブレット変換の定義により、第１集計データＶの要素ｖｊが１変化すると、レベルｉの要素は、１／２ｉ変化する。つまり、第１系列データＷに含まれる各要素の感度ＧＳは１／２ｉであるので、各要素単体については、ラプラスノイズＬａｐ（λ／２ｉ）が付加されることによって、λ−差分プライバシー基準が満たされる。ただし、データベース中の１つのデータの変化は、第１集計データＶにおける２つの要素ｖｊ１，ｖｊ２にそれぞれ変化をもたらし得る。例えば、２つの要素ｖｊ１，ｖｊ２の一方の値が１増加し、他方の値が１減少し得る。この２つの要素ｖｊ１，ｖｊ２の変化はそれぞれ、第１系列データＷにおいてｋ個の詳細係数ベクトルｃＤの値と１個の近似係数ベクトルｃＡの値に影響を及ぼす。つまり、２つの要素ｖｊ１，ｖｊ２の変化は最大で２（１＋ｋ）個の係数ベクトルに影響を及ぼし得る。従って、差分プライバシーの直列合成則によって、第２系列データＷ＊全体では、１／λ×２（１＋ｋ）＝２（１＋ｋ）／λ＝εとなり、ε−差分プライバシー基準が満たされる。
【００４４】
図４は、乱数付与部１３による第２系列データＷ＊の生成処理を説明するための図である。図４に示される例では、乱数付与部１３は、第１系列データＷに含まれるレベル１の要素ｃＤ１，１、要素ｃＤ１，２、要素ｃＤ１，３及び要素ｃＤ１，４にそれぞれＬａｐ（λ／２）を加える。また、乱数付与部１３は、第１系列データＷに含まれるレベル２の要素ｃＤ２，１及び要素ｃＤ２，２にそれぞれＬａｐ（λ／４）を加える。さらに、乱数付与部１３は、第１系列データＷに含まれるレベル３の要素ｃＡ３，１及び要素ｃＤ３，１にそれぞれＬａｐ（λ／８）を加える。このようにして、乱数付与部１３は、第２系列データＷ＊を生成する。
【００４５】
精緻化部１４は、第２集計データＶ＋の各要素が負の値とならないように、つまり、第２集計データＶ＋の各要素がゼロ以上の値となるように、乱数付与部１３によって生成された第２系列データＷ＊に含まれる要素の各々を予め定められた条件で補正する精緻化処理を実施することによって第３系列データＷ＋を生成する精緻化手段として機能する。ここで、第３系列データＷ＋は、非負制約を満たす。精緻化処理は、第２系列データＷ＊における非負制約の逸脱を解消するための処理である。精緻化部１４は、例えば、第２系列データＷ＊＝（ｃＡｋ＊｜ｃＤｋ＊｜ｃＤｋ−１＊｜・・・｜ｃＤ１＊）に含まれるウェーブレット係数をそれぞれ検証し、非負制約を逸脱させるような要素が存在した場合に、その要素を補正する。そして、精緻化部１４は、レベルｋからレベル１までの全ての要素について検証及び補正を行うことにより、非負制約を満たすことが保証された精緻化済みウェーブレット係数系列である第３系列データＷ＋＝（ｃＡｋ＋｜ｃＤｋ＋｜ｃＤｋ−１＋｜・・・｜ｃＤ１＋）を得る。
【００４６】
具体的に説明すると、精緻化部１４は、レベルｉの精緻化済み近似係数ベクトルｃＡｉ＋の全要素が負値を取ることがないように、レベルｉ＋１のノイズ付き詳細係数ベクトルｃＤｉ＋１＊の各要素の値を精緻化する。なお、精緻化部１４の説明において、ｉは０からｋまでの整数値を取ることとする。このとき、第２集計データＶ＋＝ｃＡ０＋となる。まず、精緻化部１４は、ｉ＝ｋにおいて、レベルｋの精緻化済み近似係数ベクトルｃＡｋ＋が非負制約を満たすように、以下の式（１２）を実行する。
【数１２】
0006310345.tif 000013
【００４７】
ｉ＜ｋにおいては、レベルｉの精緻化済み近似係数ベクトルｃＡｉ＋の各要素ｃＡｉ，ｘ＋は、１レベル上のレベルｉ＋１の精緻化済み近似係数ベクトルｃＡｉ＋１＋の要素ｃＡｉ＋１，ｃｅｉｌ（ｘ／２）＋と精緻化済み詳細係数ベクトルｃＤｉ＋１＋の要素ｃＤｉ＋１，ｃｅｉｌ（ｘ／２）＋とを用いて、式（１３）に示されるように再帰的に定義される。
【数１３】
0006310345.tif 000014
【００４８】
ここで、ｃｅｉｌ（ｘ）は、天井関数であり、ｘを下回らない最小の整数（つまり、小数点以下の切り上げ）を表す。ｇ（ｘ）は符号関数であり、以下の式（１４）に示される値を取る。
【数１４】
0006310345.tif 000015
【００４９】
すなわち、式（１３）によれば、以下の式（１５）を満たすことができるならば、式（１６）が成立する。
【数１５】
0006310345.tif 000016
【数１６】
0006310345.tif 000017
【００５０】
そして、第２集計データＶ＋＝ｃＡ０＋であるので、レベルｋの精緻化済み近似係数ベクトルｃＡｋ＋が０以上であり、かつ、第３系列データＷ＋の全要素について式（１５）が成立する場合、第２集計データＶ＋は非負制約を逸脱しない。
【００５１】
図５は、精緻化部１４による精緻化処理を説明するための図である。図５に示される例では、レベル２の精緻化済み近似係数ベクトルｃＡ２＋の各要素は、第１要素ｃＡ２，１＋＝ｃＡ３，１＋＋ｃＤ３，１＋、第２要素ｃＡ２，２＋＝ｃＡ３，１＋−ｃＤ３，１＋で算出される。このとき、レベル３のノイズ付き詳細係数ベクトルｃＤ３＊の第１要素ｃＤ３，１＊の大きさが、レベル３の精緻化済み近似係数ベクトルｃＡ３＋の第１要素ｃＡ３，１＋よりも大きい、つまり、｜ｃＤ３，１＊｜＞ｃＡ３，１＋であり、要素ｃＤ３，１＊を補正せずに要素ｃＤ３，１＋とした場合、第１要素ｃＡ２，１＋及び第２要素ｃＡ２，２＋のいずれかが負の値となる。
【００５２】
第１要素ｃＡ２，１＋及び第２要素ｃＡ２，２＋は式（９）と同様にして得られるので、第２集計データＶ＋のｖ１＋〜ｖ４＋の平均及びｖ５＋〜ｖ８＋の平均のいずれかが負の値となる。つまり、第２集計データＶ＋は非負制約を逸脱していることになる。そこで、精緻化部１４は、｜ｃＤ３，１＊｜＞ｃＡ３，１＋の場合、｜ｃＤ３，１＊｜＝ｃＡ３，１＋となるように、要素ｃＤ３，１＊を補正して要素ｃＤ３，１＋とする。精緻化部１４は、同様の処理を、レベル２のノイズ付き詳細係数ベクトルｃＤ２＊の各要素、及び、レベル１のノイズ付き詳細係数ベクトルｃＤ１＊の各要素に対して順に行う。つまり、精緻化部１４は、第２系列データＷ＊をウェーブレット係数の系列として見た場合に、ウェーブレット係数におけるレベルｉの精緻化済み近似係数ベクトルｃＡｉ＋の各要素ｃＡｉ，ｘ＋が負の値とならないように、１つ上のレベルｉ＋１のノイズ付き詳細係数ベクトルｃＤｉ＋１＊の各要素ｃＤｉ＋１，ｘ＊の値を補正して、レベルｉ＋１の精緻化済み詳細係数ベクトルｃＤｉ＋１＋の各要素ｃＤｉ＋１，ｘ＋とする。
【００５３】
このため、精緻化部１４は、レベルｉ（ｉ＝１〜ｋ）の精緻化済み詳細係数ベクトルｃＤｉ＋の各要素ｃＤｉ，ｘ＋を式（１７）を用いて算出する。
【数１７】
0006310345.tif 000018
【００５４】
このように、精緻化部１４は、ｉについてｋから１まで降順に、要素番号ｘ＝１〜２ｋ−ｉの要素ｃＡｉ，ｘ＋及び要素ｃＤｉ，ｘ＋を式（１２）、式（１３）及び式（１７）を用いて順に算出する。そして、精緻化部１４は、第２集計データＶ＋が非負制約を逸脱しないような第３系列データＷ＋＝（ｃＡｋ＋｜ｃＤｋ＋｜ｃＤｋ−１＋｜・・・｜ｃＤ１＋）を得る。
【００５５】
第２変換部１５は、精緻化部１４によって生成された第３系列データＷ＋に、第１線形変換の逆変換である第２線形変換を適用することによって第２集計データＶ＋を生成する第２変換手段として機能する。第１線形変換としてＨａａｒウェーブレット変換Ηを用いた場合、第２変換部１５は、第２線形変換としてＨａａｒウェーブレット逆変換Η−１を用いる。そして、第２変換部１５は、精緻化済みのウェーブレット係数系列である第３系列データＷ＋に第２線形変換を適用することによって、第２集計データＶ＋を生成する。つまり、第２変換部１５は、Ｖ＋＝Η−１（Ｗ＋）の計算を実施する。
【００５６】
上記計算は一般的に知られているが、一例として、第２変換部１５は、第３系列データＷ＋を入力として、ｉについてｋから０まで再帰的に式（１３）を用いて精緻化済み近似係数ベクトルｃＡｉ＋を算出する。第２集計データＶ＋＝ｃＡ０＋あるので、第２変換部１５は、レベル０の精緻化済み近似係数ベクトルｃＡ０＋を得ることによって、第２集計データＶ＋を得る。
【００５７】
出力部１６は、第２変換部１５によって生成された第２集計データＶ＋を出力する出力手段として機能する。出力部１６は、第２変換部１５から第２集計データＶ＋を受信し、受信した第２集計データＶ＋をプライバシー保護装置１０の外部に出力する。出力部１６は、例えば、第２集計データＶ＋を公開用のデータベースに出力し、プライバシーが保護された集計データを備えるデータベースを作成する。
【００５８】
次に、図６を参照して、プライバシー保護装置１０によって実行されるプライバシー保護方法を説明する。図６は、プライバシー保護装置１０によって実行されるプライバシー保護方法の一連の処理を示すフローチャートである。図６に示される処理は、例えば、プライバシー保護装置１０の外部から第１集計データＶが入力されることにより開始される。
【００５９】
まず、入力部１１によって、プライバシー保護装置１０の外部から第１集計データＶが受信され、受信された第１集計データＶが第１変換部１２に出力される（ステップＳ１１，入力ステップ）。そして、ステップＳ１１において受け付けられた第１集計データＶに、第１変換部１２によって第１線形変換が適用されることによって第１系列データＷが生成される（ステップＳ１２，第１変換ステップ）。ここで、第１線形変換としては、例えば、Ｈａａｒウェーブレット変換、Ｎｏｍｉｎａｌウェーブレット変換、フーリエ変換、和差分解等が用いられる。
【００６０】
続いて、ステップＳ１２において生成された第１系列データＷに含まれる要素の各々に対して、予め定められた強度の乱数が乱数付与部１３によって付与されることによって第２系列データＷ＊が生成される（ステップＳ１３，乱数付与ステップ）。ここで、乱数としては、例えば、ラプラスノイズ、幾何ノイズ等が用いられる。そして、第２集計データＶ＋の各要素が負の値とならないように、ステップＳ１３において生成された第２系列データＷ＊に含まれる要素の各々を、予め定められた条件で補正する精緻化処理が精緻化部１４によって実施される。これによって、第３系列データＷ＋が生成される（ステップＳ１４，精緻化ステップ）。
【００６１】
続いて、ステップＳ１４において生成された第３系列データＷ＋に、第２変換部１５によって第１線形変換の逆変換である第２線形変換が適用されることによって第２集計データＶ＋が生成される（ステップＳ１５，第２変換ステップ）。そして、ステップＳ１５において生成された第２集計データＶ＋が、出力部１６によってプライバシー保護装置１０の外部に出力される（ステップＳ１６，出力ステップ）。これにより、プライバシー保護方法の一連の処理が終了される。なお、ステップＳ１６において、第２集計データＶ＋は公開用のデータベースに出力されることにより、プライバシーが保護された集計データを備えるデータベースが作成されてもよい。この場合、上述のプライバシー保護方法は、データベース作成方法ともいえる。
【００６２】
次に、プライバシー保護装置１０及びプライバシー保護装置１０が行うプライバシー保護方法の作用効果について説明する。
【００６３】
（差分プライバシー基準の充足）
乱数付与部１３によって、第１系列データＷにラプラスメカニズムが適用されることにより、ε−差分プライバシー基準を満たす第２系列データＷ＊が生成される。第２系列データＷ＊が生成された後の工程（精緻化処理及び第２変換処理）においては、第２系列データＷ＊そのものを除いて第１集計データＶに関する知識が用いられていない。このため、事後処理則の適用条件を満たすので、第２集計データＶ＋もε−差分プライバシー基準を満たす。したがって、第２集計データＶ＋は、ε＝１／λ×２（１＋ｌｏｇ２ｎ）＝２（１＋ｌｏｇ２ｎ）／λのε−差分プライバシー基準を満たす。なお、スケールλは、ラプラスメカニズムにおけるスケールである。
【００６４】
（非負制約の充足）
精緻化部１４によって、レベルｋの精緻化済み近似係数ベクトルｃＡｋ＋が式（１２）を満たし、かつ、第３系列データＷ＋の全要素が式（１５）を満たすように、第２系列データＷ＊に含まれる要素の各々が補正される。そして、第２集計データＶ＋＝ｃＡ０＋であることから、第２集計データＶ＋は非負制約を逸脱しないことが保証される。
【００６５】
（部分和の平均の保存）
ラプラスメカニズムの適用において、レベルｋの近似係数ベクトルｃＡｋ及び詳細係数ベクトルｃＤｋにそれぞれラプラスノイズが付与されるが、ラプラスノイズの平均は０であるので、以下の式（１８）が成立する。
【数１８】
0006310345.tif 000019
【００６６】
ここで、Ｅ（ｗ＊）は要素ｗ＊の期待値を示す。また、ｉ≦ｋ−１において、以下の式（１９）が成立する。
【数１９】
0006310345.tif 000020
【００６７】
そして、式（１３）及び式（１９）により、以下の式（２０）が成立する。
【数２０】
0006310345.tif 000021
【００６８】
したがって、ラプラスメカニズムの適用においても、各要素の期待値は保存される。
【００６９】
精緻化処理においては、式（１２）により、レベルｋの精緻化済み近似係数ベクトルｃＡｋ＋の要素ｃＡｋ，１＋に正のバイアスが発生する可能性があり、その確率は以下の式（２１）に示される。
【数２１】
0006310345.tif 000022
【００７０】
この確率は、人為的に作成されたものでない一般的な集計データにおいては、ほぼ無視され得る。また、レベルｉの精緻化済み詳細係数ベクトルｃＤｉ＋の精緻化は、レベルｉ−１の精緻化済み近似係数ベクトルｃＡｉ−１＋の期待値に影響を与えないので、要素ｃＡｋ，１＋に正のバイアスが発生する可能性を無視できれば、第２集計データＶ＋（＝ｃＡ０＋）の任意の要素について、その期待値は第１集計データＶの対応する要素に等しい。
【００７１】
なお、ウェーブレット変換の性質によれば、ウェーブレット変換及び逆変換の工程では、各要素またはその部分和の平均の期待値が保存されることは明らかである。
【００７２】
このため、第１集計データＶの各要素の総和がスケールλに対して極端に小さくない、つまり式（２１）に示される確率が無視され得るなら、第２集計データＶ＋の任意の要素またはその部分和の平均の期待値は、第１集計データＶの対応する要素またはその部分和の平均と等しい。すなわち、過大及び過小のいずれのバイアスも発生することはない。
【００７３】
（部分和精度の劣化抑制）
Ｈａａｒウェーブレット変換の性質により、第２集計データＶ＋を２ｐ個の要素ごとのブロックに分割したとき、ｘ番目のブロックの部分和は、２ｐ×ｃＡｐ，ｘ＋で与えられる。ラプラスメカニズムによって与えられるラプラスノイズは互いに独立であるので、要素ｃＡｐ，ｘ＋が精緻化の影響を受けなかったとき、要素ｃＡｐ，ｘ＋のラプラスノイズの分散は、精緻化済み近似係数ベクトルｃＡｋ＋及び精緻化済み詳細係数ベクトルｃＤｋ＋，ｃＤｋ−１＋，・・・，ｃＤｐ＋１＋にそれぞれ与えられたラプラスノイズの分散の総和になる。一方、要素ｃＡｐ，ｘ＋が精緻化の影響を受けるときには、第１集計データＶの分布に依存するので、その定量的な分散を解析的に示すことは難しい。しかし、人口分布等の「自然な」集計データ、すなわちロングテイル性を有し、ゼロ値及び小さい値を有する要素が連続するような第１集計データＶにおいて、精緻化はそれらの値が大きく上振れまたは下振れすることを防ぐ効果を奏する。このため、条件によってはラプラスノイズがより小さくなるという定性的な傾向がある。このように、第２集計データＶ＋を２ｐ個の要素ごとのブロックに分割したとき、その部分和に含まれるラプラスノイズの分散は、以下の式（２２）に示される値と同程度かそれよりも小さくなる。すなわち、ブロックの部分和のラプラスノイズは、ブロック長が長いほど小さくなる。
【数２２】
0006310345.tif 000023
【００７４】
（計算量）
なお、プライバシー保護装置１０のプライバシー保護方法の各処理（第１変換処理、乱数付与処理、精緻化処理及び第２変換処理）の計算量はいずれもＯ（ｎ）であるので、全体の計算量もＯ（ｎ）となる。この計算量は、単純なラプラスメカニズム及びＸｉａｏらの方法と同じである。ここで、ｎは、ゼロの値を有する要素も含む第１集計データＶの論理的な要素の空間のサイズである。
【００７５】
以上詳述したように、プライバシー保護装置１０では、第１集計データＶに乱数が直接付与されるのではなく、第１集計データＶに適切な第１線形変換を施すことによって生成された第１系列データＷに対して乱数が付与されて、第２系列データＷ＊が生成される。このため、適切な強度の乱数の付与によって、第２集計データＶ＋が差分プライバシー基準を満たすようにすることができる。そして、第２系列データＷ＊を木構造で表現した場合の木の低い階層の要素に付与された乱数は、部分和計算の際にキャンセルされる。これにより、第２集計データＶ＋の部分和精度の劣化を抑制できる。また、第２集計データＶ＋の各要素が負の値とならないように、第２系列データＷ＊に含まれる要素の各々が予め定められた条件で補正されることによって、第２集計データＶ＋が非負制約を満たすようにすることができる。その結果、比較的簡単な構成で、差分プライバシー基準を満たすとともに、部分和精度の改善及び非負制約の充足を併せて実現する第２集計データＶ＋を提供することが可能となる。
【００７６】
第１変換部１２は、第１線形変換としてＨａａｒ関数を母ウェーブレットとするＨａａｒウェーブレット変換を用いる。このＨａａｒウェーブレット変換は、Ｈａａｒウェーブレット変換を適用することによって生成された第１系列データＷの各要素が木構造で表現でき、かつ、第１系列データＷの各要素の値が、木における子孫の部分和にのみ影響を与える。このため、木構造で表現した要素について、木の上位階層から順に木を辿って各要素に対して非負制約を満たすように精緻化を施していくだけで、木の最下位の階層まで辿り終わったときに全ての要素が非負制約を満たすことが保証される。これにより、精緻化処理における計算の単純化が可能となる。
【００７７】
乱数付与部１３は、ラプラスノイズまたは幾何ノイズを第１系列データＷに付与する。このため、第２集計データＶ＋が差分プライバシー基準を満たすことが保証される。
【００７８】
精緻化部１４は、第２系列データＷ＊をウェーブレット係数の系列として見た場合に、ウェーブレット係数におけるレベルｉのノイズ付き近似係数ベクトルｃＡｉ＊の各要素ｃＡｉ，ｘ＊が負の値とならないように、１レベル上のレベルｉ＋１のノイズ付き詳細係数ベクトルｃＤｉ＋１＊の各要素ｃＤｉ＋１，ｘ＊の値を補正する。このため、全てのノイズ付き詳細係数ベクトルｃＤ＊の各要素の値を補正することにより、非負制約を満たす第３系列データＷ＋の生成を簡単化でき、非負制約を満たす第２集計データＶ＋の提供を簡単化することが可能となる。
【００７９】
［第２実施形態］
図７は、第２実施形態に係るプライバシー保護装置の構成を概略的に示す図である。図７に示されるように、プライバシー保護装置１０Ａは、複数の要素を含む第１集計データＶを入力し、第２集計データＶ＋を出力する装置であり、第１変換部１２に代えて第１変換部１２Ａ（第１変換手段）を備える点、乱数付与部１３、精緻化部１４及び第２変換部１５に代えて高速変換部１７（高速変換手段）を備える点でプライバシー保護装置１０と相違する。ここで、第１集計データＶをＶ＝（ｖ１，ｖ２，・・・，ｖｎ）とし、第２集計データＶ＋を、Ｖ＋＝（ｖ１＋，ｖ２＋，・・・，ｖｎ＋）とする。また、ｎ＝２ｋ（ｋは自然数）であるとする。なお、説明の便宜上、一次元のデータ系列を対象にしているが、多次元のデータ系列であってもよい。
【００８０】
第１変換部１２Ａは、第１線形変換の実装形態において第１変換部１２と相違する。つまり、第１変換部１２Ａは、第１集計データＶを疎データ形式（sparse data format）で表現し、第１集計データＶに含まれる要素のうち、非ゼロの値（つまり、ゼロ以外の値）を有する要素に第１線形変換を適用することによって第１系列データＷを生成する。ここで、第１線形変換は、第１実施形態と同様、第１線形変換を適用することによって生成された第１系列データＷの各要素が木構造で表現でき、かつ、第１系列データＷの各要素の値が、木における子孫の部分和にのみ影響を与えるという条件を満たす線形変換であればよい。第１変換部１２Ａは、例えば、ＣＯＯ（Coordinate）形式、ゼロ値を取る要素を陽に表現しない形式等、疎行列を効率良く表現できる疎データ形式で、第１集計データＶ及び第１系列データＷを表現する。
【００８１】
第１線形変換としてＨａａｒウェーブレット変換を用い、第１集計データＶ及び第１系列データＷをＣＯＯ形式で表現する場合について説明を行う。第１変換部１２Ａは、第１集計データＶをＣＯＯ形式（ｊ，ｖｘ）（ｘ＝｛１，・・・，ｎ｝）の集合の形式で表現し、非ゼロの値を有する要素に対してのみ、以下の式（２３）及び式（２４）を計算する。
【数２３】
0006310345.tif 000024
【数２４】
0006310345.tif 000025
【００８２】
ここで、ｃｅｉｌ（ｘ）は、天井関数であり、ｘを下回らない最小の整数（つまり、小数点以下の切り上げ）を表す。ｇ（ｘ）は符号関数であり、上述の式（１４）に示される値を取る。なお、近似係数ベクトルｃＡ及び詳細係数ベクトルｃＤは、それぞれＣＯＯ形式で保持され、その初期値はいずれもｃＡ＝ｃＤ＝｛０｝ｎ／２とする。そして、第１変換部１２Ａは、レベル１の近似係数ベクトルｃＡ１及び詳細係数ベクトルｃＤ１からレベルｋの近似係数ベクトルｃＡｋ及び詳細係数ベクトルｃＤｋまで再帰的に算出し、式（６）に示される連接を行うことによって、第１系列データＷを生成する。
【００８３】
高速変換部１７は、第１変換部１２Ａによって生成された第１系列データＷに含まれる要素の各々に対して、予め定められた強度の乱数を付与するとともに、第２集計データＶ＋の各要素が負の値とならないように、予め定められた条件で補正する精緻化処理を実施することによって、第２集計データＶ＋を生成する高速変換手段として機能する。高速変換部１７は、例えば、第１系列データＷに含まれる要素の各々に対して、ラプラスノイズの付与と精緻化処理とを並行して行う処理を再帰降下で実行する。
【００８４】
具体的に説明すると、高速変換部１７は、まず、第１系列データＷにラプラスメカニズムを適用することにより、レベルｋのノイズ付き近似係数ベクトルｃＡｋ＊の要素ｃＡｋ，１＊及びノイズ付き詳細係数ベクトルｃＤｋ＊の要素ｃＤｋ，１＊をそれぞれ計算する。続いて、高速変換部１７は、以下の式（２５）及び式（２６）を用いて、レベルｋの精緻化済み近似係数ベクトルｃＡｋ＋の要素ｃＡｋ，１＋及び精緻化済み詳細係数ベクトルｃＤｋ＋の要素ｃＤｋ，１＋を順に計算する。
【数２５】
0006310345.tif 000026
【数２６】
0006310345.tif 000027
【００８５】
続いて、高速変換部１７は、ｉについてｋから２まで降順に下記の手順（ａ）〜（ｃ）を実行する。このとき、高速変換部１７は、各レベルｉの精緻化済み近似係数ベクトルｃＡｉ＋の要素のうち非ゼロの要素ついて下記の処理を実行する。まず、手順（ａ）では、高速変換部１７は、レベルｉの精緻化済み近似係数ベクトルｃＡｉ＋及び精緻化済み詳細係数ベクトルｃＤｉ＋を用いて、式（２７）及び式（２８）を実行することにより、レベルｉ−１の精緻化済み近似係数ベクトルｃＡｉ−１＋を算出する。
【数２７】
0006310345.tif 000028
【数２８】
0006310345.tif 000029
【００８６】
手順（ｂ）では、高速変換部１７は、ラプラスメカニズムを適用することにより、レベルｉ−１のノイズ付き詳細係数ベクトルｃＤｉ−１＊の各要素ｃＤｉ−１，２ｘ−１＊及びｃＤｉ−１，２ｘ＊をそれぞれ計算する。
【００８７】
手順（ｃ）では、高速変換部１７は、以下の式（２９）及び式（３０）を用いて、レベルｉ−１の精緻化済み詳細係数ベクトルｃＤｉ−１＋の各要素ｃＤｉ−１，２ｘ−１＋及びｃＤｉ−１，２ｘ＋をそれぞれ計算する。
【数２９】
0006310345.tif 000030
【数３０】
0006310345.tif 000031
【００８８】
そして、高速変換部１７は、式（６）に示されるように、精緻化済み近似係数ベクトルｃＡｋ＋及び精緻化済み詳細係数ベクトルｃＤｋ＋，ｃＤｋ−１＋，・・・，ｃＤ１＋を連接することによって、第２集計データＶ＋が非負制約を逸脱しないような第３系列データＷ＋を得る。なお、高速変換部１７は、ｉ＝１まで上記手順（ａ）を実行することにより、つまり、式（２９）及び式（３０）においてｉ＝１とすることにより、以下の式（３１）及び式（３２）を得る。
【数３１】
0006310345.tif 000032
【数３２】
0006310345.tif 000033
【００８９】
具体的には、高速変換部１７は、ｉ＝２の計算途中で算出されるレベル１の精緻化済み近似係数ベクトルｃＡ１＋及び精緻化済み詳細係数ベクトルｃＤ１＋を用いて、レベル１の精緻化済み近似係数ベクトルｃＡ１＋の要素ｃＡ１，ｘ＋≠０を満たすｘの集合ついて式（３１）及び式（３２）を実行することにより、第２集計データＶ＋を生成する。すなわち、第２集計データＶ＋＝ｃＡ０＋であるので、高速変換部１７は、レベル０の精緻化済み近似係数ベクトルｃＡ０＋を得ることによって、第２集計データＶ＋を得る。
【００９０】
次に、図８を参照して、プライバシー保護装置１０Ａによって実行されるプライバシー保護方法を説明する。図８は、プライバシー保護装置１０Ａによって実行されるプライバシー保護方法の一連の処理を示すフローチャートである。図８に示される処理は、例えば、プライバシー保護装置１０Ａの外部から第１集計データＶが入力されることにより開始される。
【００９１】
まず、入力部１１によって、プライバシー保護装置１０Ａの外部から第１集計データＶが受信され、受信された第１集計データＶが第１変換部１２Ａに出力される（ステップＳ２１，入力ステップ）。そして、ステップＳ２１において受け付けられた第１集計データＶに、第１変換部１２Ａによって第１線形変換が適用されることによって第１系列データＷが生成される（ステップＳ２２，第１変換ステップ）。このとき、第１集計データＶはＣＯＯ形式等の疎データ形式で表現され、第１集計データＶに含まれる要素のうち、非ゼロの値を有する要素に第１線形変換が適用されることによって第１系列データＷが生成される。第１線形変換としては、例えば、Ｈａａｒウェーブレット変換、Ｎｏｍｉｎａｌウェーブレット変換、フーリエ変換、和差分解等が用いられる。
【００９２】
続いて、ステップＳ２２において生成された第１系列データＷに含まれる要素の各々に対して、予め定められた強度の乱数が高速変換部１７によって付与されるとともに、第２集計データＶ＋の各要素が負の値とならないように、予め定められた条件で補正する精緻化処理が高速変換部１７によって実施される（ステップＳ２３，高速変換ステップ）。ここで、乱数として、例えば、ラプラスノイズ、幾何ノイズ等が用いられる。このとき、第３系列データＷ＋が生成されるが、さらに、レベル０まで精緻化処理を行うことにより第２集計データＶ＋が生成される。
【００９３】
そして、ステップＳ２３において生成された第２集計データＶ＋が、出力部１６によってプライバシー保護装置１０Ａの外部に出力される（ステップＳ２４，出力ステップ）。これにより、プライバシー保護方法の一連の処理が終了される。なお、ステップＳ２４において、第２集計データＶ＋は公開用のデータベースに出力されることにより、プライバシーが保護された集計データを備えるデータベースが作成されてもよい。この場合、上述のプライバシー保護方法は、データベース作成方法ともいえる。
【００９４】
このプライバシー保護装置１０Ａにおいても、上記第１実施形態のプライバシー保護装置１０と同様の効果が奏される。また、ウェーブレット変換については、単純に実装すると計算量がＯ（ｎ）となるが、プライバシー保護装置１０Ａでは、第１集計データＶ及び第１系列データＷの表現形式を変更することにより、第１線形変換における計算量の削減が可能となる。つまり、非ゼロの値を有する要素あたり高々ｌｏｇ２ｎ回の計算によって第１系列データＷが得られるので、第１線形変換における計算量をＯ（ｍｌｏｇｎ）に削減することができる。ここで、ｍは第１集計データＶにおける非ゼロの値を有する要素の数である。
【００９５】
つまり、プライバシー保護装置１０Ａでは、第１集計データＶを疎データ形式で表現し、第１集計データＶに含まれる要素のうち、ゼロでない値を有する要素にのみ第１線形変換を適用することによって第１系列データを生成している。このため、ゼロの値を有する要素への第１線形変換の適用が省略されるので、第１線形変換における計算量の削減が可能となる。
【００９６】
また、乱数付与においては、第１系列データＷのゼロの値を有する要素に対しても乱数を付与する必要があるので、第１変換部１２Ａと同様のアプローチでは計算量を削減することはできない。そこで、ほとんどの乱数は精緻化処理において「捨てられて」しまうことに着目する。すなわち、精緻化処理でレベルｉのノイズ付き詳細係数ベクトルｃＤｉ＊の要素ｃＤｉ，ｘ＊に精緻化が適用される場合、つまり、ｃＤｉ，ｘ＋≠ｃＤｉ，ｘ＊となる場合、レベルｉ−１の精緻化済み近似係数ベクトルｃＡｉ−１＋の要素ｃＡｉ−１，２ｘ−１＋及び要素ｃＡｉ−１，２ｘ＋のいずれかは必ずゼロの値をとる。このため、ゼロの値をとる方の要素の部分木に含まれる２ｉ−１個のラプラスノイズが出力値に影響する可能性はなくなる。
【００９７】
したがって、プライバシー保護装置１０Ａでは、高速変換部１７によって、ラプラスメカニズムの適用及び精緻化が、非ゼロの値を有する要素ｃＡｉ，ｘ＋の部分木についてのみ再帰降下で順に実施される。これにより、無駄なラプラスノイズを発生させることなく、差分プライバシー基準を満たすことができる。そして、高速変換部１７において、レベル１の精緻化済み近似係数ベクトルｃＡ１＋及び精緻化済み詳細係数ベクトルｃＤ１＋を用いて、レベル０の精緻化済み近似係数ベクトルｃＡ０＋を導出するのに要する計算量は、Ｏ（ｍ＋）である。ここで、ｍ＋は第２集計データＶ＋における非ゼロの値を有する要素の数である。また、２≦ｉ≦ｋにおいて、レベルｉの精緻化済み近似係数ベクトルｃＡｉ＋及び精緻化済み詳細係数ベクトルｃＤｉ＋を用いて、レベルｉ−１の精緻化済み近似係数ベクトルｃＡｉ−１＋を導出するのに要する計算量は、Ｏ（ｍ＋）を上回ることはない。したがって、高速変換部１７における計算量は、高々Ｏ（ｍ＋ｌｏｇｎ）となる。
【００９８】
このように、プライバシー保護装置１０における計算量がＯ（ｎ）であるのに対して、プライバシー保護装置１０Ａにおける計算量はＯ（ｍｌｏｇｎ）または（ｍ＋ｌｏｇｎ）である。一般的に大規模な集計データでは、ｍ≒ｍ＋≪ｎとなることが多いので、プライバシー保護装置１０Ａでは、プライバシー保護装置１０、単純なラプラスメカニズム、及び、Ｘｉａｏらの方法等と比較して、計算量を大幅に削減することができる。したがって、プライバシー保護装置１０Ａによれば、プライバシー保護装置１０と等価な第２集計データＶ＋が得られるとともに、その計算量を削減することが可能となる。その結果、第２集計データＶ＋の提供を高速化することが可能となる。
【００９９】
なお、本発明は、上述した実施形態に限定されるものではない。例えば、プライバシー保護装置１０は、第１変換部１２に代えて第１変換部１２Ａを備えてもよく、プライバシー保護装置１０Ａは、第１変換部１２Ａに代えて第１変換部１２を備えてもよい。
【０１００】
また、プライバシー保護装置１０Ａの高速変換部１７は、第２集計データＶ＋に代えて、第３系列データＷ＋を出力してもよい。この場合、プライバシー保護装置１０Ａは第２変換部１５をさらに備えてもよく、第２変換部１５は第３系列データＷ＋に改めて第２線形変換を適用して、第２集計データＶ＋を生成してもよい。
【０１０１】
また、上記第１実施形態及び第２実施形態では、第１線形変換としてＨａａｒウェーブレット変換が用いられる場合について説明したが、第１系列データＷの各要素が木構造で表現でき、かつ、第１系列データＷの各要素の値が、木における子孫の部分和にのみ影響を与えるという条件を満たす他の線形変換が用いられてもよい。このような第１線形変換を適用することによって生成された第１系列データＷでは、木の上位階層から順に木を辿って各要素に対して非負制約を満たすように精緻化を施していくだけで、木の最下位の階層まで辿り終わったときに全ての要素が非負制約を満たすことが保証される。このため、精緻化処理における計算が単純化される。このような第１線形変換としては、Ｈａａｒウェーブレット変換の他、Ｎｏｍｉｎａｌウェーブレット変換、和差分解等がある。
【０１０２】
その一例として、第１線形変換として和差分解が用いられる場合について説明する。この場合、Ｈａａｒウェーブレット変換が用いられる場合と比較して、第１変換部１２及び第２変換部１５における計算方法と、乱数付与部１３により付与される乱数の強度と、が異なる。
【０１０３】
和差分解は、式（１）〜式（３）に代えて以下の式（３３）〜（３５）に示されるように、長さ２ｐ（＝ｑ）のベクトル列Ｙ＝（ｙ１，ｙ２，・・・，ｙｑ）を、長さ２ｐ−１の近似係数ベクトルｃＡ，詳細係数ベクトルｃＤに分解する。
【数３３】
0006310345.tif 000034
【数３４】
0006310345.tif 000035
【数３５】
0006310345.tif 000036
【０１０４】
また、第１線形変換として和差分解が用いられる場合、第２線形変換において、式（１３）に代えて以下の式（３６）が用いられる。
【数３６】
0006310345.tif 000037
【０１０５】
このとき、乱数付与部１３は、第１系列データＷに含まれる要素のレベルによらず、全ての要素に対してＬａｐ（ＧＳ／ε）のラプラスノイズを付与することにより、差分プライバシー基準を満たす第２系列データＷ＊を生成する。なお、第１線形変換として和差分解が用いられる場合の計算量は、Ｏ（ｍｌｏｇｎ）またはＯ（ｍ＋ｌｏｇｎ）となる。
【符号の説明】
【０１０６】
１０，１０Ａ…プライバシー保護装置、１１…入力部（入力手段）、１２，１２Ａ…第１変換部（第１変換手段）、１３…乱数付与部（乱数付与手段）、１４…精緻化部（精緻化手段）、１５…第２変換部（第２変換手段）、１６…出力部（出力手段）、１７…高速変換部（高速変換手段）、Ｖ…第１集計データ、Ｖ＋…第２集計データ、Ｗ…第１系列データ、Ｗ＊…第２系列データ、Ｗ＋…第３系列データ。
【図１】
0006310345.tif 000038
【図２】
0006310345.tif 000039
【図３】
0006310345.tif 000040
【図４】
0006310345.tif 000041
【図５】
0006310345.tif 000042
【図６】
0006310345.tif 000043
【図７】
0006310345.tif 000044
【図８】
0006310345.tif 000045