【0008】
次に、本発明の実施形態について図面を参照して詳細に説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態の構成を示すブロック図である。
図1を参照すると、本実施形態に係る匿名化装置100は、解析部110、及びフィードバック情報生成部120を含む。
まず、本実施形態に係る匿名化装置100の概要を説明する。
第1に、本実施形態に係る匿名化装置100の解析部110は、プライバシ情報の解析を指示する解析指示に基づいて、プライバシ情報を解析し、解析結果を出力する。尚、解析指示は、少なくとも1以上の個人毎の個人情報を含むプライバシ情報について、解析の対象とする個人情報を示す解析対象情報とその解析の方法を示す解析方法情報とを含む。
尚、解析部110は、プライバシ情報を解析する動作において、まず、プライバシ情報のうちの解析の対象とする個人情報を、解析指示に含まれる解析対象情報に基づいて選択する。以後、解析対象情報に基づいて選択された、プライバシ情報のうちの解析の対象とする個人情報をサンプル情報と呼ぶ。次に、解析部110は、サンプル情報を解析方法情報に基づいて解析する。解析部110は、その解析の解析結果をフィードバック情報生成部120に出力する。
尚、解析結果は、例えば、属性値の一覧である。属性値の詳細は、後述する。また、解析結果は、フィッティングした関数のパラメータ(詳細は後述)であってもよい。尚、解析結果がフィッティングした関数のパラメータである場合については、後述の第3の実施形態において詳細に説明する。また、解析結果は、上記以外の任意のデータ解析手法による解析結果であってよい。
第2に、匿名化装置100のフィードバック情報生成部120は、開示要求を受け取る。例えば、フィードバック情報生成部120は、後述する
図8に示す通信部1075を経由して、例えば外部装置(不図示)から、開示要求を受け取る。
尚、開示要求は、プライバシ情報について、開示の対象を示す開示対象情報と開示の形式を示す開示形式情報とを含む。
次に、フィードバック情報生成部120は、受け取った開示要求に基づいて、解析指示を発生し、その解析指示を解析部110に出力する。例えば、フィードバック情報生成部120は、開示対象情報に基づいて解析対象情報を生成し、開示対象情報及び開示形式情報に基づいて開示方法情報を生成して、解析指示を発生する。
また、フィードバック情報生成部120は、解析部110から受け取った解析結果の匿名性を判定し、更に、その匿名性の判定結果に基づいて、フィードバック情報を含む開示応答を生成し、出力する。例えば、匿名性が所定の水準(閾値)より低い場合、フィードバック情報生成部120は、フィードバック情報を含む開示応答を、利用者が見えるようにディスプレイに出力してもよい。この場合、開示応答は、解析結果を含まない。また、フィードバック情報生成部120は、匿名性が所定の水準(閾値)より高い場合、開示応答としての解析結果を、ディスプレイに出力してもよい。
ここで、解析結果の匿名性は、例えば、k−匿名性(k−anonymity)である。また、解析結果の匿名性は、l−多様性(l−diversity)であってもよい。また、解析結果の匿名性は、フィッティングした関数の情報量であってもよい。また、解析結果の匿名性は、上記以外の任意の匿名性指標であってよい。
また、フィードバック情報は、開示対象情報及び開示形式情報の少なくとも一方についての変更を示唆する情報である。
フィードバック情報生成部120は、フィードバック情報に基づいて、開示対象情報及び開示形式情報を変更し、解析部110に出力する機能を有していてもよい。この場合、フィードバック情報生成部120は、開示要求の変更後の解析結果640の匿名性が開示要求の変更前の解析結果640の匿名性に比べて高くなるよう、開示対象情報及び開示形式情報の少なくとも一方を変更することが好ましい。
図2は、解析部110が受信するプライバシ情報600の一例を示す図である。
図2に示すように、プライバシ情報600は、年齢情報601及び趣味情報602を属性情報として含むレコードから構成される。尚、属性情報は、属性名(例えば、「年齢情報」)と属性値(例えば、「30」のような年齢情報601の値)を含む。尚、属性名は、属性情報の種別とも言う。尚、
図2、
図3、
図6及び
図9において、属性情報の属性名を図示しない。
図3は、解析部110において、解析指示に含まれる解析対象情報に基づいて選択された、サンプル情報610の一例を示す図である。
図3に示すように、サンプル情報610は、年齢情報601及び趣味情報602を属性情報として含むレコードから構成される。
図4は、フィードバック情報生成部120が受信する開示要求620の一例を示す図である。
図4に示すように、開示要求620は、開示対象情報621及び開示形式情報622を含む。
開示対象情報621は、例えば、「年齢範囲が30代の人の趣味情報」のような、解析の対象とするプライバシ情報600の範囲(年齢範囲が30代の人)、及び解析の対象とする属性情報の種別(趣味情報)を示す情報である。ここで、プライバシ情報600の範囲は、例えば、組織名、年齢範囲、性別、地域、時間帯、その他任意の属性の内、任意のものの範囲を組み合わせた範囲であってよい。また、開示対象情報621が示す属性情報の種別は、任意の数の属性情報の種別であってよい。
開示形式情報622は、プライバシ情報600(サンプル情報610)の開示形式を示す情報である。開示形式情報622は、例えば、属性の一覧を作成して表示、ヒストグラムを作成して表示など、プライバシ情報600の解析結果を、開示する形式を示す情報である。
図5は、フィードバック情報生成部120が解析部110に出力する解析指示630の一例を示す図である。
図5に示すように、解析指示630は、解析対象情報631(例えば、「30代」)及び解析方法情報632(「例えば、「趣味情報の一覧を作成」)を含む。
ここで、解析対象情報631は、解析部110で生成されるサンプル情報610(プライバシ情報600の内の解析の対象とする情報)の範囲を示す情報である。解析対象情報631は、例えば、組織名、年齢範囲、性別、地域、時間帯、その他任意の属性の内、任意ものの範囲が組み合わされた情報である。
例えば、解析対象情報631が組織名(例えば、「A社」)である場合、サンプル情報610は、プライバシ情報600の内、属性名が「組織名情報」であって属性値が「A社」である属性情報を含むレコードで構成される。
また、解析方法情報632は、サンプル情報610を解析する方法と、生成する解析結果の形式とを示す情報である。
例えば、解析方法情報632は、サンプル情報610の内の特定の属性名(例えば、「趣味情報」)の属性値について、一覧表を生成することを示す情報である。この場合、解析方法情報632は、例えば、「趣味情報の一覧を生成」である。
図6は、解析部110が出力する解析結果640の一例を示す図である。
図6に示すように解析結果640は、例えば、趣味情報の一覧表である。
図7は、フィードバック情報生成部120で生成される開示応答650の一例を示す図である。
図7に示すように開示応答650は、フィードバック情報651を含む。
前述したように、フィードバック情報651は、少なくとも開示対象情報621又は開示形式情報622の一方について、その内容の変更を示唆する情報である。従って、フィードバック情報651は、開示対象情報621及び開示形式情報622の両方について、それらの内容の変更を示唆する情報であってもよい。フィードバック情報651は、例えば、開示対象情報621である年齢範囲を広げる(例えば、「30代」を「30代及び40代」に変更)ことを示唆する情報である。フィードバック情報651は、例えば、フィッティングのイテレーション回数(反復回数)の変更を示唆する情報であってもよい。
以上が、匿名化装置100の概要の説明である。
次に、匿名化装置100のハードウェア単位の構成要素について説明する。
図8は、本実施形態における匿名化装置100とその周辺装置のハードウェア構成を示す図である。
図8に示されるように、匿名化装置100は、CPU(Central Processing Unit)1070、記憶部1071、記憶装置1072、入力部1073、出力部1074及び通信部1075を含む。
CPU1070は、オペレーティングシステム(不図示)を動作させて、本実施形態に係る匿名化装置100の、全体の動作を制御する。また、CPU1070は、例えば記憶装置1072に装着された不揮発性の記録媒体(不図示)から、記憶部1071にプログラムやデータを読み込む。そして、CPU1070は、読み込んだプログラムに従って、また読み込んだデータに基づいて、
図1に示す解析部110及びフィードバック情報生成部120として各種の処理を実行する。
尚、CPU1070は、通信網(不図示)に接続されている外部コンピュータ(不図示)から、記憶部1071にプログラム及びデータの内の任意のものをダウンロードするようにしてもよい。
記憶部1071は、プログラム及びデータの内の任意のものを記憶する。記憶部1071は、
図3に示すようなサンプル情報610を記憶してもよい。
記憶装置1072は、例えば、光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク及び半導体メモリであって、不揮発性の記憶媒体を含む。記憶装置1072は、プログラムをコンピュータ読み取り可能に記録する。また、記憶装置1072は、データをコンピュータ読み取り可能に記録してもよい。記憶装置1072は、サンプル情報610を記憶してもよい。
入力部1073は、例えばマウスやキーボード、内蔵のキーボタンなどで実現され、入力操作に用いられる。入力部1073は、マウスやキーボード、内蔵のキーボタンに限らず、例えばタッチパネル、加速度計、ジャイロセンサ、カメラなどでもよい。入力部1073は、例えば、開示要求620を入力するために用いられる。入力部1073は、プライバシ情報600を入力しても良い。
出力部1074は、例えばディスプレイで実現され、例えば開示応答650を確認するために用いられる。
通信部1075は、外部装置(不図示)と通信を行う。匿名化装置100は、例えば外部装置が保持する、サンプル情報610を、通信部1075を経由して、取得するようにしてもよい。また、匿名化装置100は、通信部1075を経由して、外部装置から開示要求620を受けてもよい。また、匿名化装置100は、通信部1075を経由して、開示応答650を外部装置に出力してもよい。通信部1075は、解析部110及びフィードバック情報生成部120に含まれてよい。
以上が、匿名化装置100のハードウェア単位の各構成要素についての説明である。
以上説明したように、
図1に示す機能単位のブロックは、
図3に示すハードウェア構成によって実現される。但し、匿名化装置100が備える各部の実現手段は、上記に限定されない。すなわち、匿名化装置100は、物理的に結合した一つの装置により実現されてもよいし、物理的に分離した2つ以上の装置を有線又は無線で接続し、これら複数の装置により実現されてもよい。
図13は、プログラムを記録(記憶)する、記録媒体(記憶媒体)1077の例を示す図である。記録媒体1077は、情報を非一時的に記憶する不揮発性記録媒体である。尚、記録媒体1077は、情報を一時的に記憶する記録媒体であってもよい。記録媒体1077は、
図10に示す動作を匿名化装置100(CPU1070)に実行させるプログラム(ソフトウェア)のコードを記録する。尚、記録媒体1077は、更に、任意のプログラムやデータを記録してよい。
また、前述のプログラム(ソフトウェア)のコードを記録した記録媒体1077が匿名化装置100に供給され、匿名化装置100(CPU1070)は、記録媒体に格納されたプログラムのコードを読み込み、実行してもよい。或いは、CPU1070は、記録媒体1077に格納されたプログラムのコードを、記憶部1071に格納するようにしてもよい。すなわち、本実施形態は、匿名化装置100(CPU1070)が実行するプログラムを、一時的に又は非一時的に、記憶する記録媒体の実施形態を含む。
次に、解析部110について、更に詳細に説明する。上述したように、解析部110は、解析対象情報631と解析方法情報632とを含む解析指示630に基づいて、サンプル情報610(プライバシ情報600から選択された情報)を解析し、解析結果640を生成し、出力する。
解析部110は、解析対象情報631に基づいて、例えば、
図8に示す記憶装置1072に記憶されているプライバシ情報600から、解析対象情報621に基づいてサンプル情報610を選択する。尚、解析部110は、入力部1073を介して操作者が指定したプライバシ情報600を取得し、そのプライバシ情報600からサンプル情報610を選択するようにしてもよい。また、解析部110は、プライバシ情報600の内、入力部1073を介して操作者が指定したサンプル情報610を取得するようにしてもよい。また、解析部110は、通信部1075を介して図示しない外部装置からプライバシ情報600を取得し、そのプライバシ情報600の内のサンプル情報610を解析対象情報621に基づいて選択するようにしてもよい。また、解析部110は、通信部1075を介して図示しない外部装置に対し、解析対象情報621に基づいてサンプル情報610の出力を要求し、その外部装置から出力されるサンプル情報610を取得するようにしてもよい。
例えば、解析対象情報631が組織名(例えば、「A社」)である場合、解析部110は、プライバシ情報600の内、属性名が「組織名情報」であって属性値が「A社」である属性情報を含むレコードを、サンプル情報610として選択或いは取得する。
また、解析部110は、選択或いは取得したサンプル情報610を、解析方法情報632に基づいて解析し、解析結果640を生成し、出力する。
解析方法情報632は、例えば、サンプル情報610の内の特定の属性名(例えば、「趣味情報」)の属性値を選択し、その属性値の一覧を生成することを示す情報である。解析方法情報632は、例えば、「趣味情報の一覧を生成」である。また、解析方法情報632は、サンプル情報610の内の特定の属性情報に特定の関数をフィッティングし、その関数のパラメータを算出することを示す情報であってもよい。
解析方法情報632は、例えば、サンプル情報610に特定の関数(以後、モデル関数と呼ぶ)をフィットさせる(当てはめる)、フィッティング(関数フィッティングとも呼ばれる)であることを示す情報であってもよい。例えば、解析方法情報632は、モデル関数をフィットさせることを示す「y=ax+bをフィッティング」である。
この場合、解析結果640は、フィッティングの手法を用いて、フィットされたモデル関数(前述のフィット関数)である。尚、解析結果640は、フィット関数のパラメータの値であってもよい。
具体的には、フィティングは、例えば式1に示すようなモデル関数をサンプル情報610の分布に最もよく合うように、式1のパラメータa、bを決定することである。即ち、フィット関数は、フィッティングの結果のパラメータを適用されたモデル関数である。尚、関数のフィティングは、当業者にとってよく知られた技術であるため、詳細な説明は省略する。
【数1】
解析部110は、例えば、サンプル情報610に、モデル関数をフィッティングさせる解析処理を実行し、解析結果640としてフィット関数を生成し、出力する。
例えば、平均を求めるようなモデルの場合、モデル関数yは、y=aである。また、モデルが回帰直線ならば、モデル関数f(x)は、f(x)=ax+bである。また、モデルが正規分布ならば、モデル関数は、その正規分布の確率密度関数である。尚、モデル関数は、上述の関数以外の任意の関数であってよい。
具体的には、解析結果640は、モデル関数が回帰直線を示すf(x)=ax+b(xは属性情報の順番の値)である場合、以下の通りである。即ち、解析結果640は、例えば、モデル関数のパラメータであるa及びbそれぞれを「1.28」及び「159.13」とする、f(x)=1.28x+159.13である。
以上が、解析部110の詳細な説明である。
次に、フィードバック情報生成部120について、詳細に説明する。上述したように、フィードバック情報生成部120は、開示要求620を受け取る。その次に、フィードバック情報生成部120は、その開示要求620に基づいて生成した解析指示630を解析部110に出力する。また、フィードバック情報生成部120は、解析部110から受け取った解析結果640に基づいて匿名性を判定し、判定結果に基づいて解析結果またはフィードバック情報651を含む開示応答650を生成し、出力する。
具体的に説明すると、フィードバック情報生成部120は、受け取った開示要求620の開示対象情報621(例えば、「30代の人の趣味情報」)から解析対象に関連する情報を抽出し、解析対象情報631(例えば、「30代」)を生成する。
同様に、フィードバック情報生成部120は、開示対象情報621(例えば、「30代の人の趣味情報」)及び開示形式情報622(例えば、「属性値の一覧」)を組み合わせることによって、解析方法情報632(例えば、「趣味情報の一覧を生成」)を生成する。
次に、フィードバック情報生成部120は、生成した解析対象情報631及び解析方法情報632を含む解析指示630を解析部110に出力する。
また、フィードバック情報生成部120は、解析部110から受け取った解析結果640の匿名性(例えば、l−多様性)を算出する。ここでl−多様性を匿名性とした場合、例えば、
図6に示すように解析結果640の匿名性は、属性値が「スポーツ」と「散歩」であるため、「2」である。
次に、フィードバック情報生成部120は、算出した匿名性が閾値(例えば、「3」)未満である場合、フィードバック情報651を生成し、出力する。
フィードバック情報651は、上述したように、開示対象情報621及び開示形式情報622の少なくとも一方について、その内容の変更を示唆する情報である。この情報は、その変更後の解析結果640の匿名性がその変更前の解析結果640の匿名性に比べて高くなるような、開示対象情報621及び開示形式情報622の内容の変更を示唆する情報である。従って、利用者は、出力されたフィードバック情報を確認することによって、有用なプライバシ情報を得るためにどうすればよいかを示すことが可能になる。
尚、変更後の解析結果640は、フィードバック情報651が示す情報で示唆されるように、内容を変更した開示対象情報621及び開示形式情報622に基づいて、匿名化装置100が生成する解析結果640である。例えば、匿名化装置100は、フィードバック情報651に基づいて開示対象情報621(「30代の人の趣味情報」)を「30代及び40代の人の趣味情報」に変更した、開示対象情報621を含む開示要求620を受け取る。この場合、フィードバック情報生成部120は、この開示要求620に基づいて解析指示630を生成する。その次に、フィードバック情報生成部120は、その生成した解析指示630を出力する。
次に、解析部110は、この解析指示630に基づいて、
図9に示すような解析結果640を生成し、フィードバック情報生成部120に出力する。この場合、
図9に示すように、解析結果640の属性値は、「スポーツ」、「散歩」及び「読書」である。従って、フィードバック情報生成部120は、
図9に示す解析結果640の匿名性(ここでは、l−多様性)として「3」を算出する。
従って、フィードバック情報651は、解析部110が生成する解析結果640の匿名性が閾値を満足(例えば、匿名性が閾値以上)するように、開示対象情報621及び開示形式情報622の変更を示唆する情報である。
匿名化装置100は、解析結果640の匿名性が閾値を満足していない場合、その解析結果640を開示しない。具体的には、フィードバック情報生成部120は、その解析結果640に替えて、開示不可を示す情報を含む開示応答650を出力部1074に出力する。
また、フィードバック情報生成部120は、解析部110から受け取った解析結果640の内容を改変し、その匿名性が閾値を満足する不正確な解析結果を生成してもよい。更に、フィードバック情報生成部120は、生成した不正確な解析結果を含む開示応答650を出力部1074に出力してもよい。
例えば、フィードバック情報生成部120は、解析結果640の属性値(例えば「スポーツ」)の1つを、ダミーデータ(例えば「つり」)に変更する。ダミーデータは、例えば、プライバシ情報600に含まれていないランダムに生成された情報、或いはサンプル情報610以外のプライバシ情報600に基づいた情報である。
また、フィードバック情報生成部120は、解析結果640がフィット関数である場合、フィット関数のパラメータの値を変更した解析結果640を含む開示応答650を出力するようにしてもよい。
また、フィードバック情報生成部120は、サンプルデータの粒度を変更して解析するように解析部110に指示し、その応答として受け取った解析結果640を出力するようにしてもよい。尚、この場合、解析部110は、フィードバック情報生成部120の指示に基づいて、サンプル情報610の解析を実行する。
また、匿名化装置100は、解析結果640の匿名性が閾値を満足している場合、その解析結果640を含む開示応答650を出力する。
上述のように、解析結果640の匿名性が閾値を満足していない場合、利用者は、解析結果を得ることができない。或いは、解析結果640の匿名性が閾値を満足していない場合、利用者が受け取る解析情報は、本来の解析結果より正確性が劣る解析結果である。一方、解析結果640の匿名性が閾値を満足している場合、利用者は、有用な解析情報を得ることができる。
以上説明したように、フィードバック情報651は、自身にとって有用なプライバシ情報(プライバシ情報600の解析結果640)を得るために、利用者はどうすればよいかを示す情報である。
次に本実施形態の動作について、
図1〜
図10を参照して詳細に説明する。
図10は、本実施形態の動作を示すフローチャートである。
匿名化装置100は、開示要求620を受け取ったことを契機に動作を開始する。
まず、フィードバック情報生成部120は、開示対象情報621に基づいて、解析対象情報631を生成する(S801)。
次に、フィードバック情報生成部120は、開示対象情報621及び開示形式情報622に基づいて、解析方法情報632を生成する(S802)。
次に、フィードバック情報生成部120は、生成した解析対象情報631及び解析方法情報632を含む解析指示630を解析部110に出力する(S803)。
次に、解析部110は、受け取った解析指示630に含まれる解析対象情報631に基づいて、サンプル情報610を選択する(S804)。
次に、解析部110は、選択したサンプル情報610を、受け取った解析指示630に含まれる解析方法情報632に基づいて解析し、解析結果640を生成する(S805)。
次に、解析部110は、生成した解析結果640を出力する(S806)。
次に、フィードバック情報生成部120は、解析部110から受け取った解析結果640の匿名性を算出する(S807)。
次に、フィードバック情報生成部120は、算出した匿名性が閾値未満か否かを判定する(S808)。
閾値以上(例えば、匿名性が「2」、閾値が「2」)の場合(S808でYES)、フィードバック情報生成部120は、解析結果640を含む開示応答650を出力する(S809)。そして、処理は終了する。
閾値未満(例えば、匿名性が「2」、閾値が「3」)の場合(S808でNO)、フィードバック情報生成部120は、フィードバック情報651を生成する(S810)。
例えば、フィードバック情報生成部120は、開示対象情報621に基づいて、サンプル情報610のレコード数が増加するように開示対象情報621を変更することを示唆する情報を含むフィードバック情報651を生成する。これは、サンプル情報610のレコード数が増加すると、属性値の種類も増加する方向であり、l−匿名性が大きくなることが期待できるからである。
尚、匿名化装置100は、以下のようにしてフィードバック情報651を生成してもよい。まず、フィードバック情報生成部120は、図示しない手段に保持されている規則に基づいて内容を変更した、解析対象情報631及び解析方法情報632を生成する。
図示しない手段に保持されている規則は、例えば、「解析対象として、10の位(例えば、「3」)を、1増加した範囲の年齢(例えば、「40代」)を追加する」である。
次に、匿名化装置100は、上述のS803〜S807と同様の動作を実行し、内容を変更した解析対象情報631及び解析方法情報632に基づく解析結果640の匿名性を算出する。フィードバック情報生成部120は、このようにして算出した複数の匿名性に基づいて、フィードバック情報651を生成する。
このとき、匿名化装置100は、算出した匿名性が閾値よりも大きくなるまで、上記の手順を繰り返してもよい。匿名化装置100は、例えば、「40代」を解析対象に加えただけでは、算出した匿名性が閾値よりも低い場合、「50代」を更に加えて、算出した匿名性が閾値以上であるかを確認する。そして、匿名化装置100は、算出した匿名性が閾値以上であれば、フィードバック情報651を生成し、出力する。「50代」を加えて算出した匿名性が閾値よりも低い場合、匿名化装置100は、「60代」を追加、「70代」を追加…のように、匿名性を満たすまで続ける。全部の年齢を追加しても匿名性を満たさない場合、匿名化装置100は、エラーを出力するようにしてもよい。
次に、フィードバック情報生成部120は、生成したフィードバック情報651を含む開示応答650を出力する(S811)。そして、処理は終了する。
尚、前述の説明において、フィードバック情報生成部120がフィードバック情報651を1つ生成する場合の、例を説明した。しかし、フィードバック情報生成部120は、複数のフィードバック情報651を生成してもよい。例えば、フィードバック情報生成部120は、「40代」という解析対象を、「「20代と30代」に変更」というフィードバック情報651と、「「30代と40代」に変更」というフィードバック情報651とを生成してもよい。
また、開示対象情報621が、解析の対象とするプライバシ情報600の範囲を複数の条件によって示している場合、フィードバック情報生成部120は、それぞれの条件に対応するフィードバック情報651を生成してもよい。例えば、開示対象情報621が、解析の対象とするプライバシ情報600の範囲として、「年齢が30代、及び住所が東京」を示しているとする。この場合、フィードバック情報生成部120は、「年齢の条件を30代と40代に変更する」及び「住所の条件を東京と神奈川」に変更する」というような、それぞれの条件に対応するフィードバック情報651を生成してもよい。
また、フィードバック情報生成部120は、複数の示唆を含むフィードバック情報651を出力してもよい。例えば、フィードバック情報生成部120は、「40代」という解析対象を、「「20代及び30代」もしくは「30代及び40代」に変更」というフィードバック情報651を出力してもよい。また、フィードバック情報生成部120は、「年齢の条件を30歳〜45歳に変更する、かつ住所の条件を東京と神奈川に変更する」というフィードバック情報651を出力してもよい。
上述した本実施形態における第1の効果は、有用なプライバシ情報を得るために利用者がどうすればよいかを、示すことが可能になる点である。
その理由は、以下のような構成を含むからである。第1に、解析部110は、プライバシ情報600の解析を指示する解析指示630に基づいて、プライバシ情報600を解析し、解析結果640を出力する。第2に、フィードバック情報生成部120は、解析指示630を解析部110に出力し、応答として受け取った解析結果640の匿名性に基づいて、フィードバック情報651を含む開示応答650を生成し、出力する。
上述した本実施形態における第2の効果は、利用者がより適切な解析対象を決定するための情報を、示すことが可能になる点である。
その理由は、フィードバック情報生成部120が複数のフィードバック情報651を生成し、及びフィードバック情報生成部120が複数の示唆を含むフィードバック情報651を生成し、出力するようにしたからである。
[第2の実施の形態]
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
本実施形態の構成は、
図1及び
図8に示す第1の実施形態の匿名化装置100の構成と同しである。
本実施形態は、
図6に示す解析結果640の匿名性が閾値を満足しないため、フィードバック情報生成部120が、不正確な解析結果を含む開示応答650を出力する場合の、動作が異なる。尚、フィードバック情報生成部120は、解析部110から受け取った解析結果640の内容を改変し、その匿名性が閾値を満足する不正確な解析結果を生成する。
本実施形態において、フィードバック情報生成部120は、正確性情報を含む開示応答650を出力する。正確性情報は、開示要求620の応答として出力する不正確な解析結果が、どの程度正確(或いは、不正確)であるかを示す情報である。具体的には、正確性情報は、解析結果640に対応する不正確な解析結果の、正確性を示す。
図11は、開示応答650の一例を示す図である。
図11に示すように、開示応答650は、フィードバック情報651と正確性情報652とを含む。
正確性情報652は、ある開示要求620に対応する解析結果640に対応する、匿名化装置100が出力可能な不正確な解析結果の正確性を示す情報である。例えば、正確性情報652は、不正確な解析結果に正しい属性値が含まれている割り合いである(例えば、「80%」)。
また、正確性情報652は、例えば「属性値を少なくとも1つ入れ替え」のように文章で表現された情報であってもよい。また、正確性情報652は、サンプル情報610の粒度の変更率であってもよい。また、正確性情報652は、フィット関数のパラメータの値の変更の有無であってもよい。
また、フィードバック情報生成部120は、例えば、「「80%」が「100%」に変化」のような正確性情報652を出力してもよい。この正確性情報652は、不正確な解析結果の正確性(80%)と、フィードバック情報651に基づいて解析対象情報631及び解析方法情報632を変更した場合の解析結果640の正確性(100%)とを含む。即ち、フィードバック情報651に基づいて解析対象情報631及び解析方法情報632を変更した場合の、正確性の変化に関連する情報を示している。例えば、フィードバック情報651とこの正確性情報652とは、開示対象の範囲が「30代」の場合に正確性は「80%」であり、開示対象の範囲が「30代及び40代」の場合に正確性は「100%」であることを示す。
上述した本実施形態における第1の効果は、第1の実施形態の効果に加えて、開示要求620の応答として取得できる不正確な解析結果が、どの程度正確であるかを、利用者に示すことが可能になる点である。
その理由は、フィードバック情報生成部120が、正確性情報652を含む開示応答650を出力するようにしたからである。
上述した本実施形態における第2の効果は、第1の実施形態の効果に加えて、フィードバック情報651に基づいて解析対象情報631及び解析方法情報632を変更した場合の、正確性の変化を、利用者に示すことが可能になる点である。
その理由は、フィードバック情報生成部120が、不正確な解析結果と、フィードバック情報651に基づいて解析対象情報631及び解析方法情報632を変更した後の解析結果640の正確性と、を含む開示応答650を出力するようにしたからである。
[第3の実施の形態]
次に、本発明の第3の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
本実施形態の構成は、
図1及び
図8に示す第1の実施形態の匿名化装置100の構成と同じである。
本実施形態は、利用者に対し、利用者にとって有用なプライバシ情報を得るために、開示形式を変更することを示唆する場合の実施形態である。
本実施形態における開示要求620は、例えば、開示対象情報621が「30代の身長」、開示形式情報622が「属性値の分布」である。
フィードバック情報生成部120は、上述のような開示要求620を受け取る。
本実施形態における解析指示630は、例えば、解析対象情報631が「30代」、解析方法情報632が「身長の分布に「a*exp(−b*x^4)」をフィッティング」である。ここで、「a*exp(−b*x^4)」は、モデル関数であり、式2に示す数式を示す。以下の同様である。
【数2】
次に、フィードバック情報生成部120は、上述のような解析指示630を出力する。
次に、解析部110は、その解析指示630を受け取る。
次に、解析部110は、プライバシ情報600を参照して、解析対象情報631に基づいてサンプル情報610を選択する。
次に、解析部110は、選択したサンプル情報610に解析方法情報632で示されるモデル関数をフィッティングし、解析結果640を生成する。
本実施形態における解析結果640は、例えば、フィット関数のパラメータ(例えば、a=2.5、b=3.2)である。
次に、解析部110は、解析結果640を出力する。
次に、フィードバック情報生成部120は、その解析結果640を受け取る。
次に、フィードバック情報生成部120は、その解析結果640に基づいて、フィードバック情報651及び正確性情報652を含む開示応答650を生成する。
本実施形態における開示応答650のフィードバック情報651は、例えば、「「a*exp(−b*x^4)」を「a*exp(−b*x^2)」に変更」である。また、正確性情報652は、例えば、「「パラメータの変更大」が「パラメータの変更小」に変化」である。
上述のように、本実施形態の匿名化装置100は、開示対象情報621を変更する代わりに、開示形式情報622に関連する開示形式の変更を示唆する。尚、本実施形態においては、開示形式情報622は、解析方法情報632を直接示す情報ではない。
従って、フィードバック情報生成部120は、例えば、記憶部1071に保持されている、モデル関数のリストを参照し、解析方法情報632及びフィードバック情報651を生成する。ここで、モデル関数のリストは、例えば、{a*exp(−b*x^4),a*exp(−b*x^4),・・・}である。
例えば、「f(x)=a*exp(−b*x^2)」と「f(x)=a*exp(−b*x^4)」とを比較すると、「x」の増加に伴って、後者の「f(x)」の値は、前者の「f(x)」の値に比べて急激に小さくなる。従って、後者の「f(x)=a*exp(−b*x^4)」で表される分布は、幅が狭く、匿名性は低くなる。
そこで、フィードバック情報生成部120は、例えば、まず後者の式で解析部110に解析を指示し、解析結果640を受け取る。次に、フィードバック情報生成部120は、その解析結果640の匿名性が閾値より低い場合には、更に前者の式で解析部110に解析を指示し、解析結果640を受け取る。
次に、フィードバック情報生成部120は、これらの解析結果640に基づいて、上述のようなフィードバック情報651及び正確性情報652を生成する。
上述の開示応答650を受け取った利用者は、例えば、正確性情報652の「パラメータの変更小」に対応する、フィードバック情報651の[f(x)=a*exp(−b*x^2)」を、次の開示要求620の開示形式情報622とすることができる。
尚、フィードバック情報生成部120は、正確性情報652を含まない開示応答650を出力するようにしてもよい。
上述した本実施形態における効果は、第1の実施形態の効果に加えて、開示形式の変更による正確性の変化を、利用者に示すことが可能になる点である。
その理由は、解析部110がサンプル情報610にモデル関数をフィッティングして解析結果640を生成し、フィードバック情報生成部120が開示形式を含むフィードバック情報651を生成するようにしたからである。
[第4の実施の形態]
次に、本発明の第4の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
図12は、第4の実施形態の構成を示すブロック図である。
図12を参照すると、本実施形態に係る匿名化装置200は、解析部110、フィードバック情報生成部120及びサンプルレコード計数部130を含む。を含む。尚、
図12に示す構成要素は、ハードウェア単位の構成要素ではなく、機能単位の構成要素を示している。
本実施形態に係る匿名化装置200のハードウェア単位の構成要素は
図8に示す匿名化装置100と同等である。
本実施形態は、第1の実施形態に比べて、解析結果640の匿名性が閾値を満足しない場合の動作が異なる。
サンプルレコード計数部130は、解析対象情報631に基づいて、サンプルレコードを計数し、その結果を出力する。例えば、
図2に示すプライバシ情報600において、解析対象情報631が「30代及び40代」の場合、サンプルレコードの計数結果は、「10」である。
フィードバック情報生成部120は、解析結果640の匿名性が閾値を満足しない場合、図示しない手段に保持されている規則に基づいて解析対象情報631を変更する。例えば、
図2に示すプライバシ情報600において、解析対象情報631が「30代」の場合、l−匿名性は「2」である。ここで、閾値が「3」である場合、l−匿名性が閾値未満であるため、解析結果640の匿名性は閾値を満足しない。そこで、例えば、フィードバック情報生成部120は、解析対象情報631を「30代」から「30代及び40代」に変更する。
次に、フィードバック情報生成部120は、変更した解析対象情報631をサンプルレコード計数部130に出力する。
次に、フィードバック情報生成部120は、サンプルレコード計数部130からサンプルレコードの計数結果(例えば、「10」)を受け取る。
次に、フィードバック情報生成部120は、解析部110から受け取った解析結果640とサンプルレコード計数部130から受け取ったサンプルレコードの計数結果とに基づいて、フィードバック情報651を生成する。即ち、フィードバック情報生成部120は、サンプルレコードの数が増加(例えば、「5」から「10」)することに基づいて、開示対象情報621を「30代」から「30代及び40代」に変更することを示唆するフィードバック情報651を生成する。
次に、フィードバック情報生成部120は、生成したフィードバック情報651を含む開示応答650を出力する。
上述した本実施形態における効果は、第1の実施形態の効果に加えて、フィードバック情報651を生成する負荷を軽減することが可能になる点である。
その理由は、サンプルレコード計数部130サンプルレコードを計数し、フィードバック情報生成部120がこの計数結果に基づいて、フィードバック情報651を生成するようにしたからである。
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、各構成要素は、複数の構成要素が1個のモジュールとして実現されたり、1つの構成要素が複数のモジュールで実現されたりしてもよい。また、各構成要素は、ある構成要素が他の構成要素の一部であったり、ある構成要素の一部と他の構成要素の一部とが重複していたり、といったような構成であってもよい。
以上説明した各実施形態における各構成要素及び各構成要素を実現するモジュールは、必要に応じ可能であれば、ハードウェア的に実現されても、コンピュータ及びプログラムで実現されても、ハードウェア的なモジュールとコンピュータ及びプログラムとの混在により実現されても良い。プログラムは、磁気ディスクや半導体メモリなど、不揮発性のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障しない範囲で変更することができる。
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、ある動作の実行中に他の動作が発生したり、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複していたりしていてもよい。
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作の全ての関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障をきたさない範囲内で変更されて良い。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2011年8月25日に出願された日本出願特願2011−183610を基礎とする優先権を主張し、その開示の全てをここに取り込む。