(57)【要約】【課題】  準識別子に関するｋ−匿名性が保証されているにもかかわらず、属性間の関係により実質的なｋ−匿名性が保たれていないデータセットを検出する。【解決手段】  被検証匿名化データセットについて、第１乃至３の属性間の依存関係と、その第２の属性の属性値が加工された抽象化属性値およびその第３の属性の属性値とに基づいて、その第１の属性の推定属性値を導出する手段と、その被検証匿名化データセットに含まれる等価クラス毎の推定属性値の集合が、所定の匿名性を満たすか否かを検証する手段と、を含む。【選択図】      図１
2016045535.tif 000002
【特許請求の範囲】
【請求項１】
複数の属性を含む被検証匿名化データセットについて、第１の前記属性の、第２の前記属性及び第３の前記属性に対する、依存関係と、前記第２の属性の属性値が加工された抽象化属性値と、前記第３の属性の属性値と、に基づいて、前記第１の属性の推定属性値を導出する推定手段と、
前記被検証匿名化データセットに含まれる、ｋ−匿名性を満足する等価クラスのそれぞれにおいて、前記等価クラスに対応する前記推定属性値の集合が所定の匿名性を満たすか否かを検証し、前記検証した結果を示す検証結果情報を出力する検証手段と、を含む
情報処理システム。
【請求項２】
前記検証結果情報に基づいて、前記等価クラスに対応する前記推定属性値の集合が前記所定の匿名性を満たすように、前記推定属性値を加工し、前記加工した推定属性値と前記依存関係とに基づいて、前記第３の属性を加工し、前記第３の属性の加工の内容を示す変更情報を出力する変更手段を、更に含む
ことを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記変更情報に基づいて、前記被検証匿名化データセットに対応するパーソナルデータを匿名化する匿名化手段を更に含む、
ことを特徴とする請求項２記載の情報処理システム。
【請求項４】
前記匿名化手段は、前記推定属性値の集合が所定の匿名性を満たさない等価クラスを削除する
ことを特徴とする請求項３記載の情報処理システム。
【請求項５】
前記匿名化手段は、前記第３の属性を、粒度が最小となるように抽象化する
ことを特徴とする請求項３または４記載の情報処理システム。
【請求項６】
前記匿名化手段は前記第３の属性を、粒度が所定の値になるように抽象化する
ことを特徴とする請求項３乃至５のいずれか１項に記載の情報処理システム。
【請求項７】
前記所定の値を入力する入力手段を更に含む、
ことを特徴とする請求項６記載の情報処理システム。
【請求項８】
前記依存関係を入力する入力手段を更に含む、
ことを特徴とする請求項１乃至７のいずれか１項に記載の情報処理システム。
【請求項９】
コンピュータが、
複数の属性を含む被検証匿名化データセットについて、第１の前記属性の、第２の前記属性及び第３の前記属性に対する、依存関係と、前記第２の属性の属性値が加工された抽象化属性値と、前記第３の属性の属性値と、に基づいて、前記第１の属性の推定属性値を導出し、
前記被検証匿名化データセットに含まれる、ｋ−匿名性を満足する等価クラスのそれぞれにおいて、前記等価クラスに対応する前記推定属性値の集合が所定の匿名性を満たすか否かを検証し、
前記検証した結果を示す検証結果情報を出力する
匿名化方法。
【請求項１０】
複数の属性を含む被検証匿名化データセットについて、第１の前記属性の、第２の前記属性及び第３の前記属性に対する、依存関係と、前記第２の属性の属性値が加工された抽象化属性値と、前記第３の属性の属性値と、に基づいて、前記第１の属性の推定属性値を導出し、
前記被検証匿名化データセットに含まれる、ｋ−匿名性を満足する等価クラスのそれぞれにおいて、前記等価クラスに対応する前記推定属性値の集合が所定の匿名性を満たすか否かを検証し、
前記検証した結果を示す検証結果情報を出力する処理をコンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルデータを匿名化する匿名化装置、匿名化処理方法及びプログラムに関する。
【背景技術】
【０００２】
診療情報の電子化が進み、各医療機関や健康保険組合等においては診療情報が蓄積されつつある。これらの診療情報を広く活用することは、疫学研究の発展、医療技術及び新薬開発に繋がると考えられている。そこで、その蓄積された診療情報のプライバシーを確保した上で、その診療情報を研究機関等において利用できることが期待されている。
【０００３】
情報の利用においてプライバシーを確保するための手法の一つに匿名化がある。この匿名化とは、例えば上述の診療情報のように、他人には知られたくない情報を含むパーソナルデータに対して、個人が一意に識別されることを防ぐための、加工を施す技術である。以後、上述のような処理対象のデータの一塊をデータセットと呼ぶ。また、そのデータセットを構成する、個人ごとに対応するデータの塊をレコードと呼ぶ。また、そのレコードを構成する、個人の年齢、その個人が罹患した疾病名などの最小単位の情報を、属性と呼ぶ。このようなパーソナルデータの匿名化については、さまざまな関連技術が知られている。
【０００４】
非特許文献１は、匿名化の代表的な技術の一つであるｋ−匿名化を示す。このｋ−匿名化は、データセット（パーソナルデータ）に含まれる個人ごとのレコードのそれぞれを、個人の識別確率が１／ｋ以下（ｋ−匿名化のｋ）となるように加工し、ある一定の匿名性を保証する技術である。ｋ−匿名化における加工は、例えば、それらのレコード間で、特定の属性の値が同じになるように、その値を曖昧に（汎化や、一般化、抽象化などとも呼ばれる）するなどの加工である。
【０００５】
特許文献１は、プライバシー保護装置を開示する。そのプライバシー保護装置は、属性名（属性の種類）ごとに設定された、データ利用者にとっての重要度を示す優先順位に基づいて、属性値（準識別子）を一般化（抽象化）する。即ち、このプライバシー保護装置は、優先順位の低い属性の属性値から先に一般化することで、優先順位の高い属性ほど元の情報が保持されるように抽象化する。
【０００６】
特許文献２は、データ匿名化装置を開示する。そのデータ匿名化装置は、データセットを構成する全ての個人データレコードを辺で結んだ完全グラフを生成し、この完全グラフをクラスタに分割し、分割したクラスタ単位で属性を汎化する。こうして、そのデータ匿名化装置は、トップダウンアプローチによるｋ−匿名化を実現する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−１２８８６２号公報
【特許文献２】特開２０１２−０２２３１５号公報
【非特許文献】
【０００８】
【非特許文献１】L. Sweeney, “Achieving k-anonymity privacy protection using generalization and suppression”, International Journal on Uncertainty, Fuzziness and Knowledge based Systems, 10(5), pp.571-588, 2002.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
パーソナルデータの匿名化においては、個人が一意に識別されることを防止するために、所望の匿名性を満足しなければならないという課題がある。しかしながら、上述した先行技術文献に記載された技術においては、準識別子に関するｋ−匿名性が保証されているにもかかわらず、属性間の関係により実質的なｋ−匿名性が保たれていないデータセットを検出できない場合があるという問題点がある。
【００１０】
その理由は、上述した先行技術文献のいずれにおいても、パーソナルデータに含まれる複数の属性間に存在する、依存関係を考慮していないからである。その依存関係は、ある属性の属性値が、他の複数の属性の属性値から導出できるような関係である。
【００１１】
上述の問題点を、具体的に説明する。
【００１２】
まず、第１の前提として、属性の種類を、以下のように分類する。
【００１３】
ＩＤ（Ｉｄｅｎｔｉｆｉｅｒ、識別子）は、個人を識別する属性である。例えば、ＩＤは、氏名である。
【００１４】
ＱＩ（Ｑｕａｓｉ−Ｉｄｅｎｔｉｆｉｅｒ、準識別子）は、組み合わせることにより個人を識別する可能性がある属性である。例えば、ＱＩは、生年月日や住所などである。
【００１５】
ＳＡ（Ｓｅｎｓｉｔｉｖｅ  Ａｔｔｒｉｂｕｔｅ、センシティブ情報）は、他人には知られたくない情報である。例えば、ＳＡは、病名である。
【００１６】
一般情報は、ＩＤ、ＱＩ、ＳＡのいずれにも該当しない情報である。例えば、医療機関を受診した年である。
【００１７】
第２の前提として、パーソナルデータに含まれる属性間において、複数の属性の属性値を組み合わせて他の属性の属性値を求めることができる依存関係が存在する、ものとする。以下、属性Ｂの属性値と属性Ｃの属性値とを用いて、属性Ａの属性値を求めることができる場合、その依存関係をＡ＝ｆ（Ｂ、Ｃ）と記載する。例えば、「属性Ａの属性値＝ｆ（属性Ｂの属性値、属性Ｃの属性値）」の１つの例は、「属性Ａの属性値＝属性Ｂの属性値−属性Ｃの属性値」である。例えば、それは、「患者の受診年年齢＝受診年−患者生年」である。
【００１８】
上記の前提において、ＱＩである属性Ａ及びＢ、一般情報である属性Ｃ及びＳＡである属性Ｄを含むパーソナルデータが匿名化される。そして、その匿名化されたパーソナルデータは、属性Ｃに関して分析される。
【００１９】
この場合、一般的にその匿名化は、属性Ａ、属性Ｂについて、ｋ−匿名性を満足するように、属性Ａ及び属性Ｂを抽象化する匿名化である。こうした場合、属性Ｃと抽象化済みの属性Ｂ（以後Ｂ’と表記する）とから導出される属性Ａの推定属性値の集合が、そのｋ−匿名性を満たさない場合がある。これが、上述した先行技術文献に記載された技術における、準識別子に関するｋ−匿名性が保証されているにもかかわらず、属性間の関係により実質的なｋ−匿名性が保たれていないデータセットを検出できない場合があるという問題点である。
【００２０】
本発明の目的は、上述した問題点を解決できる情報処理システム、匿名化方法、及びそのためのプログラムを提供することにある。
【課題を解決するための手段】
【００２１】
本発明の一様態における情報処理システムは、複数の属性を含む被検証匿名化データセットについて、第１の前記属性の、第２の前記属性及び第３の前記属性に対する、依存関係と、前記第２の属性の属性値が加工された抽象化属性値と、前記第３の属性の属性値と、に基づいて、前記第１の属性の推定属性値を導出する推定手段と、前記被検証匿名化データセットに含まれる、ｋ−匿名性を満足する等価クラスのそれぞれにおいて、前記等価クラスに対応する前記推定属性値の集合が所定の匿名性を満たすか否かを検証し、前記検証した結果を示す検証結果情報を出力する検証手段と、を含む。
【００２２】
本発明の一様態における匿名化方法は、コンピュータが、複数の属性を含む被検証匿名化データセットについて、第１の前記属性の、第２の前記属性及び第３の前記属性に対する、依存関係と、前記第２の属性の属性値が加工された抽象化属性値と、前記第３の属性の属性値と、に基づいて、前記第１の属性の推定属性値を導出し、前記被検証匿名化データセットに含まれる、ｋ−匿名性を満足する等価クラスのそれぞれにおいて、前記等価クラスに対応する前記推定属性値の集合が所定の匿名性を満たすか否かを検証し、前記検証した結果を示す検証結果情報を出力する。
【００２３】
本発明の一様態におけるプログラムは、複数の属性を含む被検証匿名化データセットについて、第１の前記属性の、第２の前記属性及び第３の前記属性に対する、依存関係と、前記第２の属性の属性値が加工された抽象化属性値と、前記第３の属性の属性値と、に基づいて、前記第１の属性の推定属性値を導出し、前記被検証匿名化データセットに含まれる、ｋ−匿名性を満足する等価クラスのそれぞれにおいて、前記等価クラスに対応する前記推定属性値の集合が所定の匿名性を満たすか否かを検証し、前記検証した結果を示す検証結果情報を出力する処理をコンピュータに実行させる。
【発明の効果】
【００２４】
本発明は、準識別子に関するｋ−匿名性が保証されているデータセットであっても、属性間の関係により実質的なｋ−匿名性が保たれていないデータセットを検出することが可能になるという効果がある。
【図面の簡単な説明】
【００２５】
【図１】図１は、本発明の第１の実施形態に係る匿名性検証システムの構成を示すブロック図である。
【図２】図２は、第１の実施形態におけるパーソナルデータセットの一例を示す図である。
【図３】図３は、第１の実施形態における被検証匿名化データセットの一例を示す図である。
【図４】図４は、第１の実施形態における依存関係テーブルの一例を示す図である。
【図５】図５は、第１の実施形態における推定値付加データセットの一例を示す図である。
【図６】図６は、第１の実施形態における検証結果情報の一例を示す図である。
【図７】図７は、第１の実施形態に係る匿名性検証システムを実現するコンピュータのハードウエア構成を示すブロック図である。
【図８】図８は、第１の実施形態における匿名性検証システムの動作を示すフローチャートである。
【図９】図９は、第１の実施形態の変形例における匿名化システムの構成を示すブロック図である。
【図１０】図１０は、本発明の第２の実施形態に係る匿名性検証システムの構成を示すブロック図である。
【図１１】図１１は、第２の実施形態における変更推定値データセットの一例を示す図である。
【図１２】図１２は、第２の実施形態における分析対象属性変更情報の一例を示す図である。
【図１３】図１３は、第２の実施形態における分析対象属性変更データセットの一例を示す図である。
【図１４】図１４は、第２の実施形態における匿名性検証システムの動作を示すフローチャートである。
【図１５】図１５は、本発明の第３の実施形態に係る匿名性検証システムの構成を示すブロック図である。
【発明を実施するための形態】
【００２６】
本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面及び明細書記載の各実施形態において、同様の構成要素には同様の符号を付与し、適宜説明を省略する。
【００２７】
＜＜＜第１の実施形態＞＞＞
図１は、本発明の第１の実施形態に係る匿名性検証システム（情報処理システムとも呼ばれる）１００の構成を示すブロック図である。
【００２８】
図１に示すように、本実施形態に係る匿名性検証システム１００は、推定部１１０と、検証部１２０とを含む。尚、図１に示す各構成要素は、ハードウエア単位の回路でも、コンピュータ装置の機能単位に分割された構成要素でもよい。ここでは、図１に示す構成要素は、コンピュータ装置の機能単位に分割された構成要素として説明する。
【００２９】
＝＝＝推定部１１０＝＝＝
推定部１１０は、第１の属性の第２の属性及び第３の属性に対する依存関係と、その第２の属性の属性値が加工された抽象化属性値と、その第３の属性の属性値と、に基づいて、その第１の属性の推定属性値を導出する。その第１の属性、その第２の属性及びその第３の属性は、被検証匿名化データセット８２０含まれる属性である。
【００３０】
例えば、その第１の属性及びその第２の属性は、被検証匿名化データセット８２０において、準識別子である。その第３の属性は、被検証匿名化データセット８２０において、準識別子以外の属性である。
【００３１】
その依存関係は、その第１の属性の属性値が、その第２の属性の属性値とその第３の属性の属性値とに基づいて、導出され得る関係である。
【００３２】
＝＝＝検証部１２０＝＝＝
検証部１２０は、等価クラスのそれぞれにおいて、その等価クラスに対応するその第１の属性の推定属性値の集合が所定の匿名性を満たすか否かを検証し、その検証した結果を示す検証結果情報８４０を出力する。その等価クラスは、被検証匿名化データセット８２０に含まれる、ｋ−匿名性を満足する等価クラスである。
【００３３】
例えば、その所定の匿名性は、被検証匿名化データセット８２０における、ｋ−匿名性を満足する等価クラスのそれぞれに含まれる、その第１の属性の属性値のそれぞれが、その等価クラスに対応するｋ個以上のその推定属性値に含まれることである。
【００３４】
換言すると、その所定の匿名性は、その第１の属性の推定属性値を属性値とする属性を、準識別子の１つと考えた場合に、その等価クラスがｋ−匿名性を満足することである。
【００３５】
ここで、等価クラス（Ｅｑｕｉｖａｌｅｎｔ  Ｃｌａｓｓ）は、例えば被検証匿名化データセット８２０において、全ての準識別子に対して同一の値の組を持つそのレコードの集合を示す。ある等価クラスのレコード数（またはユニークなユーザ識別子の種類数）がｋ以上である場合、その等価クラスに含まれるレコード集合は、ｋ−匿名性を充足していると判断される。
【００３６】
＝＝＝パーソナルデータセット８１０＝＝＝
図２は、本実施形態におけるパーソナルデータセット８１０の一例を示す図である。パーソナルデータセット８１０は、匿名性検証システム１００の処理対象である被検証匿名化データセット８２０に対応する、元のオリジナルデータである。
【００３７】
図２に示すように、パーソナルデータセット８１０は、レコード８１１を含む。レコード８１１は、例えば、レコードＩＤの値、個人ＩＤの属性値、生年の属性値、受診年の属性値、受診年年齢の属性値及び病名の属性値を含む。以後、生年の属性値を「生年値」、受診年の属性値を「受診年値」及び受診年年齢の属性値を「受診年年齢値」とも呼ぶ。
【００３８】
そのレコードＩＤは、レコード８１１のそれぞれを識別する識別子を値とする。
【００３９】
その個人ＩＤは、ＩＤ属性であり、特定の個人を識別する識別子を属性値とする。
【００４０】
その生年は、ＱＩ属性であり、その個人の生年を属性値とする。本実施形態において、その生年は、第２の属性に相当する。
【００４１】
その受診年は、一般属性であり、その個人が医療機関で受診した、年を属性値とする。本実施形態において、その受診年は、第３の属性に相当する。
【００４２】
その受診年年齢は、ＱＩ属性であり、その受診年で示される年に対応する、その個人の年齢を属性値とする。その受診年で示される年に対応するその個人の年齢は、例えば、その受診年の所定の月日（例えば、４月１日）における、その個人の年齢である。本実施形態において、その受診年年齢は、第１の属性に相当する。
【００４３】
その病名は、ＳＡ属性であり、その個人の病気を示す識別子（病名や病名コードなど）を属性値とする。例えば、その病名は、その受診によってその個人が罹患していることが判明した病気を示す。例えば、その病名は、その個人がその受診年以前に罹患した病気を示してもよい。
【００４４】
パーソナルデータセット８１０は、図２に示す例に係わらず、任意の数のレコード８１１を含んでよい。パーソナルデータセット８１０は、任意の属性を含んでよい。例えば、パーソナルデータセット８１０は、生年、受診年及び受診年年齢のそれぞれに替えて、生年月、受診年月及び受診年月年齢を含んでもよい。
【００４５】
例えば、パーソナルデータセット８１０は、レコードＩＤを含まなくてもよい。この場合、レコード８１１は、パーソナルデータセット８１０中の並び順で管理されてよい。また、パーソナルデータセット８１０は、個人ＩＤや病名を含まなくてもよい。
【００４６】
＝＝＝被検証匿名化データセット８２０＝＝＝
図３は、本実施形態における被検証匿名化データセット８２０の一例を示す図である。図３は、図２に示すパーソナルデータセット８１０が、ｋ＝３のｋ−匿名性を満足するように匿名化された場合の、被検証匿名化データセット８２０を示す。具体的には、レコードＩＤが「ｒ１」、「ｒ２」及び「ｒ３」のレコード８２１の組が、抽象化生年及び抽象化受診年年齢について、ｋ＝３のｋ−匿名性を満足する等価クラス（以下、第１の等価クラスと呼ぶ）を成す。同じく、レコードＩＤが「ｒ４」、「ｒ５」及び「ｒ６」のレコード８２１の組が、同様の等価クラス（以下、第２の等価クラスと呼ぶ）を成す。
【００４７】
図３に示すように、被検証匿名化データセット８２０は、レコード８２１を含む。レコード８２１は、レコードＩＤの値、オリジナル受診年年齢の属性値、抽象化生年の属性値、受診年の属性値及び抽象化受診年年齢の属性値を含む。以後、オリジナル受診年年齢の属性値を「オリジナル受診年年齢値」、抽象化生年の属性値を「抽象化生年値」及び抽象化受診年年齢の属性値を「抽象化受診年年齢値」とも呼ぶ。
【００４８】
そのレコードＩＤは、レコード８２１のそれぞれを識別する識別子である。レコード８２１のレコードＩＤと、図２に示すレコード８１１のレコードＩＤとは、互いに同じ値を持つ場合に、それらが識別するレコード８２１とレコード８１１とが対応することを示す。
【００４９】
オリジナル受診年年齢は、パーソナルデータセット８１０の受診年年齢のコピーである。
【００５０】
抽象化生年は、レコード８２１に対応する、パーソナルデータセット８１０のレコード８１１に含まれる生年が加工（抽象化）された値を属性値（第２の属性の抽象化属性値）とする。
【００５１】
受診年は、パーソナルデータセット８１０の受診年のコピーである。
【００５２】
抽象化受診年年齢は、レコード８２１に対応する、パーソナルデータセット８１０のレコード８１１に含まれる生年が加工（抽象化）された値を属性値（第１の属性の抽象化属性値）とする。
【００５３】
被検証匿名化データセット８２０は、図３に示す例に係わらず、任意の数のレコード８２１を含んでよい。被検証匿名化データセット８２０は、任意の属性を含んでよい。例えば、被検証匿名化データセット８２０は、パーソナルデータセット８１０に含まれる、個人ＩＤ及び病名を含んでもよい。
【００５４】
また、被検証匿名化データセット８２０は、パーソナルデータセット８１０の場合と同様に、レコードＩＤを含まなくてもよい。
【００５５】
＝＝＝依存関係テーブル８００＝＝＝
図４は、本実施形態における依存関係テーブル８００の一例を示す図である。図４に示すように、依存関係テーブル８００は、前述の依存関係を示すレコード８０１を含む。
【００５６】
図４に示すレコード８０１は、受診年年齢値（第１の属性の属性値）が、受診年値（第３の属性の属性値）から生年値（第２の属性の属性値）を減算することで算出（導出）されることを示す。即ち、レコード８０１は、第１の属性の、第２の属性及び第３の属性に対する、その依存関係を示す。
【００５７】
依存関係テーブル８００は、図４の例に係わらず、任意の数のレコード８０１を含んでよい。レコード８０１が複数の場合、推定部１１０は、レコード８０１のそれぞれに対応する推定属性値を導出する。
【００５８】
＝＝＝推定値付加データセット８３０＝＝＝
図５は、本実施形態における推定値付加データセット８３０の一例を示す図である。図５は、図３に示す被検証匿名化データセット８２０に対応する、推定部１１０が生成する推定属性値を含む、推定値付加データセット８３０を示す。
【００５９】
図５に示すように、推定値付加データセット８３０は、レコード８３１を含む。レコード８３１は、レコードＩＤの値、オリジナル受診年年齢の属性値、抽象化生年の属性値、受診年の属性値、抽象化受診年年齢の属性値、及び推定受診年年齢の属性値を含む。その推定受診年年齢の属性値が、その推定属性値である。以後、推定受診年年齢の属性値を「推定受診年年齢値」とも呼ぶ。
【００６０】
そのレコードＩＤは、レコード８３１のそれぞれを識別する識別子である。レコード８３１のレコードＩＤと、図３に示すレコード８２１のレコードＩＤとは、互いに同じ値を持つ場合に、それらが識別するレコード８３１とレコード８２１とが対応することを示す。
【００６１】
推定値付加データセット８３０のオリジナル受診年年齢、抽象化生年、受診年及び抽象化受診年年齢は、被検証匿名化データセット８２０のオリジナル受診年年齢、抽象化生年、受診年及び抽象化受診年年齢のコピーである。
【００６２】
推定受診年年齢は、受診年年齢（第１の属性）の属性値のそれぞれに対応する推定属性値を属性値（推定受診年年齢値）とする。その推定受診年年齢値は、図４に示す依存関係と、図３に示す抽象化生年値（第２の属性の抽象化属性値）及び受診年値（第３の属性）とに基づいて、推定部１１０によって導出される。
【００６３】
例えば、推定部１１０は、レコードＩＤが「ｒ１」のレコード８３１について、推定受診年年齢値「６２〜６３歳」を、以下のように算出（導出）する。２０１３（受診年値）−１９５０（抽象化生年値の最小値）＝６３（推定受診年年齢値の最大値）、２０１３（受診年値）−１９５１（抽象化生年値の最大値）＝６２（推定受診年年齢値の最小値）。
【００６４】
＝＝＝検証結果情報８４０＝＝＝
図６は、本実施形態における検証結果情報８４０の一例を示す図である。図６に示す検証結果情報８４０は、受診年年齢に関し、レコードＩＤが「ｒ２」の推定受診年年齢値が、受診年年齢値（第１の属性の属性値）の「６３」を、及びレコードＩＤが「ｒ４」の推定受診年年齢値が、受診年年齢値の「５９」を含んでいないことを示す。
【００６５】
換言すると、第１に、検証結果情報８４０は、第１の等価クラス及び第２の等価クラスのそれぞれに対応するその推定属性値の集合が、ｋ＝３のｋ−匿名性（前述の所定の匿名性）を満たさないことを示す。第２に、検証結果情報８４０は、そのｋ−匿名性が満たされない理由が、第１の等価クラスにおいては、レコードＩＤが「ｒ２」の推定受診年年齢値が受診年年齢値の「６３」を含んでいないことであることを示す。同様に、検証結果情報８４０は、そのｋ−匿名性が満たされない理由が、第２の等価クラスにおいては、レコードＩＤが「ｒ４」の推定受診年年齢値が受診年年齢値の「５９」を含んでいないことであることを示す。
【００６６】
検証部１２０は、図６に示す検証結果情報８４０を、例えば、以下のようにして生成する。
【００６７】
第１に、検証部１２０は、検証対象の属性（第１の属性）の属性名（ここでは、受診年年齢）を含む、検証結果情報８４０を生成する。
【００６８】
第２に、検証部１２０は、推定値付加データセット８３０の１つのレコード８３１からオリジナル受診年年齢値を一つ読み込む。
【００６９】
第３に、検証部１２０は、そのレコード８３１を含む等価クラスについて、推定受診年年齢値の内、そのオリジナル受診年年齢値を含む推定受診年年齢値を計数する。
【００７０】
第４に、検証部１２０は、そのオリジナル受診年年齢値を含むその推定受診年年齢の数がｋ個未満である場合、そのオリジナル受診年年齢値を含まない推定受診年年齢を含むレコードＩＤと、そのオリジナル受診年年齢値とを検証結果情報８４０に追加する。
【００７１】
検証部１２０は、第２乃至４の処理を、全てのレコード８３１について実行する。
【００７２】
以上が、匿名性検証システム１００の機能単位の各構成要素についての説明である。
【００７３】
次に、匿名性検証システム１００のハードウエア単位の構成要素について説明する。
【００７４】
図７は、本実施形態における匿名性検証システム１００を実現するコンピュータ７００のハードウエア構成を示す図である。
【００７５】
図７に示すように、コンピュータ７００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１、記憶部７０２、記憶装置７０３、入力部７０４、出力部７０５及び通信部７０６を含む。更に、コンピュータ７００は、外部から供給される記録媒体（または記憶媒体）７０７を含む。例えば、記録媒体７０７は、情報を非一時的に記憶する不揮発性記録媒体（非一時的記録媒体）である。また、記録媒体７０７は、情報を信号として保持する、一時的記録媒体であってもよい。
【００７６】
ＣＰＵ７０１は、オペレーティングシステム（不図示）を動作させて、コンピュータ７００の全体の動作を制御する。例えば、ＣＰＵ７０１は、記憶装置７０３に装着された記録媒体７０７から、そのプログラムやデータを読み込み、読み込んだそのプログラムやそのデータを記憶部７０２に書き込む。ここで、そのプログラムは、例えば、後述の図８に示すフローチャートの動作をコンピュータ７００に実行させるためのプログラムである。
【００７７】
そして、ＣＰＵ７０１は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、図１に示す推定部１１０及び検証部１２０として各種の処理を実行する。
【００７８】
尚、ＣＰＵ７０１は、通信網（不図示）に接続される外部コンピュータ（不図示）から、記憶部７０２にそのプログラムやそのデータをダウンロードしてもよい。
【００７９】
記憶部７０２は、そのプログラムやそのデータを記憶する。記憶部７０２は、依存関係テーブル８００、被検証匿名化データセット８２０及び推定値付加データセット８３０を記憶してよい。記憶部７０２は、推定部１１０及び検証部１２０の一部として含まれてよい。
【００８０】
記憶装置７０３は、例えば、光ディスクや、フレキシブルディスク、磁気光ディスク、外付けハードディスク半導体メモリなどであって、記録媒体７０７を含む。記憶装置７０３（記録媒体７０７）は、そのプログラムをコンピュータ読み取り可能に記憶する。また、記憶装置７０３は、そのデータを記憶してもよい。記憶装置７０３は、依存関係テーブル８００、被検証匿名化データセット８２０及び推定値付加データセット８３０を記憶してよい。記憶装置７０３は、推定部１１０及び検証部１２０の一部として含まれてよい。
【００８１】
入力部７０４は、オペレータによる操作の入力や外部からの情報の入力を受け付ける。入力操作に用いられるデバイスは、例えば、マウスや、キーボード、内蔵のキーボタン及びタッチパネルなどである。入力部７０４は、推定部１１０及び検証部１２０の一部として含まれてよい。
【００８２】
出力部７０５は、例えばディスプレイで実現される。出力部７０５は、例えばＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）によるオペレータへの入力要求や、オペレータに対する出力提示などのために用いられる。出力部７０５は、推定部１１０及び検証部１２０の一部として含まれてよい。
【００８３】
通信部７０６は、図示しない外部装置及び外部システムとのインタフェースを実現する。通信部７０６は、推定部１１０及び検証部１２０の一部として含まれてよい。
【００８４】
以上説明したように、図１に示す匿名性検証システム１００の機能単位のブロックは、図７に示すハードウエア構成のコンピュータ７００によって実現される。但し、コンピュータ７００が備える各部の実現手段は、上記に限定されない。すなわち、コンピュータ７００は、物理的に結合した１つの装置により実現されてもよいし、物理的に分離した２つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
【００８５】
尚、上述のプログラムのコードを記録した記録媒体７０７が、コンピュータ７００に供給される場合、ＣＰＵ７０１は、記録媒体７０７に格納されたそのプログラムのコードを読み出して実行してもよい。或いは、ＣＰＵ７０１は、記録媒体７０７に格納されたそのプログラムのコードを、記憶部７０２、記憶装置７０３またはその両方に格納してもよい。すなわち、本実施形態は、コンピュータ７００（ＣＰＵ７０１）が実行するそのプログラム（ソフトウエア）を、一時的にまたは非一時的に、記憶する記録媒体７０７の実施形態を含む。尚、情報を非一時的に記憶する記憶媒体は、不揮発性記憶媒体とも呼ばれる。
【００８６】
以上が、本実施形態における匿名性検証システム１００を実現するコンピュータ７００の、ハードウエア単位の各構成要素についての説明である。
【００８７】
次に本実施形態の動作について、図面を参照して詳細に説明する。
【００８８】
図８は、本実施形態の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したＣＰＵ７０１によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、Ｓ６０１のように、記号で記載する。
【００８９】
例えば、匿名性検証システム１００は、図７に示す入力部７０４を介して操作者から処理開始の指示を受けたことを契機に、図８に示すフローチャートの動作を開始する。匿名性検証システム１００は、図７に示す通信部７０６を介して、外部から処理開始の要求を受信したことを契機に、図８に示すフローチャートの動作を開始してもよい。
【００９０】
推定部１１０は、被検証匿名化データセット８２０を取得する（ステップＳ６０１）。
【００９１】
例えば、被検証匿名化データセット８２０は、図７に示す記憶部７０２或いは記憶装置７０３に、予め記憶されていてよい。また、推定部１１０は、図７に示す入力部７０４を介して操作者が入力した、被検証匿名化データセット８２０を取得してもよい。尚、この操作者による被検証匿名化データセット８２０の入力が、操作者からの処理開始の指示であってもよい。また、推定部１１０は、図７に示す通信部７０６を介して図示しない機器から、被検証匿名化データセット８２０を受信してもよい。尚、この被検証匿名化データセット８２０の受信が、外部からの処理開始の要求の指示であってもよい。また、推定部１１０は、図７に示す記憶装置７０３を介して、記録媒体７０７に記録された被検証匿名化データセット８２０を取得してもよい。
【００９２】
次に、推定部１１０は、依存関係テーブル８００と被検証匿名化データセット８２０とに基づいて、推定属性値（本実施形態では、推定受診年年齢値）を導出し、その推定属性値を含む推定値付加データセット８３０を生成する（ステップＳ６０２）。
【００９３】
次に、検証部１２０は、推定値付加データセット８３０に基づいて、その推定属性値が前述の所定の匿名性を満たすか否かを検証する（ステップＳ６０３）。
【００９４】
次に、検証部１２０は、その検証した結果を示す検証結果情報８４０を出力する（ステップＳ６０４）。例えば、検証部１２０は、検証結果情報８４０を図７に示す出力部７０５を介して出力する。また、検証部１２０は、図７に示す通信部７０６を介して、図示しない機器に検証結果情報８４０を送信してもよい。また、検証部１２０は、図７に示す記憶装置７０３を介して、記録媒体７０７に検証結果情報８４０を記録してもよい。
【００９５】
以上が、本実施形態の匿名性検証システム１００の動作の説明である。
【００９６】
上述した本実施形態における第１の効果は、準識別子に関するｋ−匿名性が保証されているデータセットであっても、属性間の関係により実質的なｋ−匿名性が保たれていないデータセットを検出することを可能にする点である。
【００９７】
その理由は、以下のような構成を含むからである。即ち、第１に推定部１１０が前述の依存関係と、加工されたその第２の属性の抽象化属性値と、その第３の属性の属性値と、に基づいて、その第１の属性の推定属性値を導出する。第２に、検証部１２０が、その推定属性値の集合が前述のｋ−匿名性を満たすか否かを検証し、その検証した結果を示す検証結果情報８４０を出力する。
【００９８】
＜＜＜第１の実施形態の変形例＞＞＞
図９は、第１の実施形態の変形例である匿名化システム１０１を示す図である。図に示すように、匿名化システム１０１は、図１に示す匿名性検証システム１００と、匿名化装置１０２と、パーソナルデータセット記憶装置１０３と、匿名化済データセット記憶装置１０４と、を含む。匿名性検証システム１００と、匿名化装置１０２と、パーソナルデータセット記憶装置１０３と、匿名化済データセット記憶装置１０４とは、ネットワーク１０９を介して接続されている。尚、匿名性検証システム１００、匿名化装置１０２、パーソナルデータセット記憶装置１０３及び匿名化済データセット記憶装置１０４の任意の組み合わせは、１台の図７に示すようなコンピュータ７００であってよい。また、匿名性検証システム１００、匿名化装置１０２、パーソナルデータセット記憶装置１０３及び匿名化済データセット記憶装置１０４の任意のいずれかどうしは、ネットワークを介することなく直接接続されてもよい。即ち、匿名性検証システム１００と、匿名化装置１０２と、パーソナルデータセット記憶装置１０３と、匿名化済データセット記憶装置１０４とは、任意に、ネットワーク１０９を介して接続されてよい。
【００９９】
＝＝＝匿名化装置１０２＝＝
匿名化装置１０２は、パーソナルデータセット記憶装置１０３からパーソナルデータセット８１０を取得する。次に、匿名化装置１０２は、そのパーソナルデータセット８１０を匿名化した匿名化済データセットを生成する。次に、匿名化装置１０２は、その匿名化済データセットを匿名化済データセット記憶装置１０４へ出力する。
【０１００】
匿名化装置１０２は、その匿名化済データセットの生成において、第１に、パーソナルデータセット８１０に基づいて、被検証匿名化データセット８２０を生成する。第２に、匿名化装置１０２は、被検証匿名化データセット８２０を匿名性検証システム１００へ送信し、前述の所定の匿名性を満足するか否かの検証を要求する。第３に、匿名化装置１０２は、匿名性検証システム１００から、その検証結果を受信する。第４に、匿名化装置１０２は、その検証結果に基づいて、匿名化済みのデータセットを生成する。
【０１０１】
＝＝＝パーソナルデータセット記憶装置１０３＝＝＝
パーソナルデータセット記憶装置１０３は、パーソナルデータセット８１０を記憶する。
【０１０２】
＝＝＝匿名化済データセット記憶装置１０４＝＝＝
匿名化済データセット記憶装置１０４は、匿名化済みのデータセットを記憶する。
【０１０３】
本変形例において、匿名性検証システム１００は、匿名化装置１０２から被検証匿名化データセット８２０を取得し、被検証匿名化データセット８２０がその所定の匿名性を満足するか否かを検証し、その検証結果を匿名化装置１０２へ送信する。
【０１０４】
上述した本実施形態における変形例の効果は、匿名化システム１０１の構築を柔軟に実現することが可能になる点である。
【０１０５】
その理由は、匿名性検証システム１００と、匿名化装置１０２と、パーソナルデータセット記憶装置１０３と、匿名化済データセット記憶装置１０４とを、任意に、ネットワーク１０９を介して接続するからである。
【０１０６】
＜＜＜第２の実施形態＞＞＞
次に、本発明の第２の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
【０１０７】
図１０は、本発明の第２の実施形態に係る匿名性検証システム２００の構成を示すブロック図である。
【０１０８】
図１０に示すように、本実施形態における匿名性検証システム２００は、図１に示す匿名性検証システム１００と比べて、変更部２３０を更に含む点が異なる。
【０１０９】
＝＝＝変更部２３０＝＝＝
第１に、変更部２３０は、検証結果情報８４０に基づいて、各等価クラスに対応する推定受診年年齢値（第１の属性の推定属性値）の集合が前述の所定の匿名性を満たすように、その推定受診年年齢値を加工した、加工推定受診年年齢値を導出する。第２に、変更部２３０は、その加工推定受診年年齢値と前述の依存関係とに基づいて、受診年（第３の属性）の属性値を加工し、その受診年の加工の内容を示す分析対象属性変更情報８６０を出力する。
【０１１０】
＝＝＝変更推定値データセット８５０＝＝＝
図１１は、本実施形態における加工推定受診年年齢値を含む変更推定値データセット８５０の一例を示す図である。
【０１１１】
図１１に示す変更推定値データセット８５０は、図５に示す推定値付加データセット８３０の推定受診年齢が加工された加工推定受診年齢を含む。即ち、加工推定受診年齢は、推定受診年齢の推定受診年年齢値が加工された、加工推定受診年年齢値を属性値として含む。
【０１１２】
図１１に示すように、レコードＩＤが「ｒ２」のレコード８３１の推定受診年年齢値の「６１〜６２歳」が、レコードＩＤが「ｒ２」のレコード８５１の加工推定受診年年齢値の「６１〜６３歳」に加工されている。また、レコードＩＤが「ｒ４」のレコード８３１の推定受診年年齢値の「６０〜６４歳」が、レコードＩＤが「ｒ４」のレコード８５１の加工推定受診年年齢値の「５９〜６４歳」に加工されている。
【０１１３】
図１１に示す加工推定受診年年齢値は、変更部２３０が図６に示す検証結果情報８４０に基づいて、推定値付加データセット８３０の推定受診年年齢値を加工したものである。
【０１１４】
具体的には、変更部２３０は、レコードＩＤが「ｒ２」の推定受診年年齢値が、受診年年齢値の「６３」を含んでいないことを示す情報に基づいて、その推定受診年年齢値を加工し、「６３」を含む加工推定受診年年齢値を導出する。また、変更部２３０は、レコードＩＤが「ｒ４」の推定受診年年齢値が、受診年年齢値の「５９」を含んでいないことを示す情報に基づいて、その推定受診年年齢値を加工し、「５９」を含む加工推定受診年年齢値を導出する。
【０１１５】
＝＝＝分析対象属性変更情報８６０＝＝＝
図１２は、本実施形態における、その変更情報である、分析対象属性変更情報８６０の一例を示す図である。図１２に示す分析対象属性変更情報８６０は、受診年（第３の属性）に関し、レコードＩＤが「ｒ２」の受診年の属性値を「２０１１〜２０１４年」に、及びレコードＩＤが「ｒ４」の受診年の属性値を「２００７〜２０１６年」に変更することを示す。
【０１１６】
変更部２３０は、図１２に示す分析対象属性変更情報８６０を例えば、以下のようにして生成する。
【０１１７】
第１に、変更部２３０は、変更対象の属性の属性名（ここでは、受診年）を含む、分析対象属性変更情報８６０を生成する。
【０１１８】
第２に、変更部２３０は、変更推定値データセット８５０の１つのレコード８５１から、加工された加工推定受診年年齢値を取得する。
【０１１９】
第３に、変更部２３０は、その加工推定受診年年齢値を含むレコード８５１の抽象化生年値を取得する。
【０１２０】
第４に、変更部２３０は、その加工推定受診年年齢値とその抽象化生年値と依存関係テーブル８００とに基づいて、加工受診年の属性値（以後、加工受診年値とも呼ぶ）を算出する。
【０１２１】
具体的には、変更部２３０は、以下のようにして、その加工受診年値を算出する。
【０１２２】
変更部２３０は、レコードＩＤが「ｒ２」のレコード８５１において、加工受診年値の最大値＝加工推定受診年年齢値の最大値（６３）＋抽象化生年値の最大値（１９５１）＝２０１４を算出する。更に、変更部２３０は、加工受診年値の最小値＝加工推定受診年年齢値の最小値（６１）＋抽象化生年値の最小値（１９５０）＝２０１１を算出する。
【０１２３】
また、変更部２３０は、レコードＩＤが「ｒ４」のレコード８５１において、加工受診年値の最大値＝加工推定受診年年齢値の最大値（６４）＋抽象化生年値の最大値（１９５２）＝２０１６を算出する。更に、変更部２３０は、加工受診年値の最小値＝加工推定受診年年齢値の最小値（５９）＋抽象化生年値の最小値（１９４８）＝２００７を算出する。
【０１２４】
第５に、変更部２３０は、そのレコード８５１のレコードＩＤとその加工受診年値とを分析対象属性変更情報８６０に追加する。
【０１２５】
変更部２３０は、第２乃至５の処理を、全ての加工された加工推定受診年年齢値を含むレコード８５１について実行する。
【０１２６】
＝＝＝分析対象属性変更データセット８７０＝＝＝
図１３は、本実施形態における分析対象属性変更データセット８７０の一例を示す図である。図１３に示す分析対象属性変更データセット８７０は、図１１に示す変更推定値データセット８５０の受診年に替えて、その受診年の属性値が加工された加工受診年値を属性値とする、加工受診年を含む。分析対象属性変更データセット８７０のオリジナル受診年年齢、抽象化生年及び抽象化受診年年齢は、変更推定値データセット８５０のオリジナル受診年年齢、抽象化生年及び抽象化受診年年齢のコピーである。
【０１２７】
図１３に示すように、レコードＩＤが「ｒ２」のレコード８５１の受診年値の「２０１２年」が、レコードＩＤが「ｒ２」のレコード８７１の加工受診年値の「２０１１〜２０１４年」に加工されている。また、レコードＩＤが「ｒ４」のレコード８５１の受診年値の「２０１２年」が、レコードＩＤが「ｒ４」のレコード８７１の加工受診年値の「２００７〜２０１６年」に加工されている。
【０１２８】
変更部２３０は、図１２に示す分析対象属性変更情報８６０に替えて、図１３に示す分析対象属性変更データセット８７０を変更情報として生成してもよい。
【０１２９】
以上が、匿名性検証システム２００の機能単位の各構成要素についての説明である。
【０１３０】
匿名性検証システム２００は、匿名性検証システム１００と同様に、図７に示すコンピュータ７００によって実現されてよい。
【０１３１】
この場合、ＣＰＵ７０１は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、更に、図１０に示す変更部２３０としても、各種の処理を実行する。ここで、そのプログラムは、例えば、後述の図１４に示すフローチャートの動作をコンピュータ７００に実行させるためのプログラムである。
【０１３２】
記憶部７０２は、更に変更推定値データセット８５０、分析対象属性変更情報８６０及び分析対象属性変更データセット８７０を記憶してよい。記憶部７０２は、更に変更部２３０の一部としても含まれてよい。
【０１３３】
記憶装置７０３は、更に変更推定値データセット８５０、分析対象属性変更情報８６０及び分析対象属性変更データセット８７０を記憶してよい。記憶装置７０３は、更に変更部２３０の一部としても含まれてよい。
【０１３４】
入力部７０４は、更に変更部２３０の一部としても含まれてよい。
【０１３５】
出力部７０５は、更に変更部２３０の一部としても含まれてよい。
【０１３６】
通信部７０６は、更に変更部２３０の一部としても含まれてよい。
【０１３７】
次に本実施形態の動作について、図面を参照して詳細に説明する。
【０１３８】
図１４は、本実施形態の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したＣＰＵ７０１によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、Ｓ６０１のように、記号で記載する。
【０１３９】
図１４に示すフローチャートの動作開始の契機、及びステップＳ６０１からステップＳ６０４までの動作は、図８に示すフローチャートの動作開始の契機、及びステップＳ６０１からステップＳ６０４までの動作と同じである。
【０１４０】
ステップＳ６０４の次に、変更部２３０は、検証結果情報８４０に基づいて、各等価クラスに対応する推定受診年年齢値の集合が前述の所定の匿名性を満たすように、その推定受診年年齢値を加工した、加工推定受診年年齢値を導出する（ステップＳ６０５）。
【０１４１】
次に、変更部２３０は、その加工推定受診年年齢値と前述の依存関係とに基づいて、受診年値を加工し、その受診年値の加工の内容を示す分析対象属性変更情報８６０を出力する（ステップＳ６０６）。
【０１４２】
例えば、変更部２３０は、分析対象属性変更情報８６０を図７に示す出力部７０５を介して出力する。また、変更部２３０は、図７に示す通信部７０６を介して、図示しない機器に分析対象属性変更情報８６０を送信してもよい。また、変更部２３０は、図７に示す記憶装置７０３を介して、記録媒体７０７に分析対象属性変更情報８６０を記録してもよい。
【０１４３】
以上が、本実施形態の匿名性検証システム２００の動作の説明である。
【０１４４】
本実施形態の変形例として、本実施形態の匿名性検証システム２００は、匿名性検証システム１００に替えて、図９に示す匿名化システム１０１に含まれてもよい。
【０１４５】
発明が解決しようとする課題において説明した、属性間の関係により実質的なｋ−匿名性が保たれていないデータセットを検出できない場合があるという問題点に対する、最も単純な解決策として、以下の匿名化が考えられる。
【０１４６】
その匿名化は、準識別子である属性Ａ及び属性Ｂと、一般情報である属性Ｃとについて、ｋ−匿名性を満足するように、属性Ａ、属性Ｂ及び属性Ｃを抽象化する匿名化である。
【０１４７】
しかしながら、こうした場合、その抽象化により属性Ｃの情報損失量が所望の値より大きく、所望の粒度の属性Ｃのごとの分析ができない場合がある。
【０１４８】
即ち、このような解決策では、所望の匿名性を満足し、かつ利用目的に合致するように、匿名化された情報のデータ損失量が抑えられた匿名化を実現することはできない
一方、本実施形態の分析対象属性変更情報８６０或いは分析対象属性変更データセット８７０は、例えば図９に示す匿名化装置１０２がそのような匿名化を実現することを可能にする。
【０１４９】
上述した本実施形態における効果は、第１の実施形態の効果に加えて、属性間の関係が存在する場合であっても所望の匿名性を満足し、かつ利用目的に合致するように、匿名化された情報のデータ損失量が抑えられた匿名化を実現することを可能にする点である。ここで、その所望の匿名性は、属性間の関係が存在しても、データセット全体の実質的なｋ−匿名性が保証される匿名性である。
【０１５０】
その理由は、以下のような構成を含むからである。即ち、第１に、変更部２３０が、検証結果情報８４０に基づいて、等価クラスに対応する推定属性値の集合が前述の所定の匿名性を満たすように、その推定属性値を加工する。第２に、変更部２３０が、その加工した推定属性値と前述の依存関係とに基づいて、第３の属性を加工し、その第３の属性の加工の内容を示す変更情報を出力する。
【０１５１】
＜＜＜第３の実施形態＞＞＞
次に、本発明の第３の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
【０１５２】
図１５は、本発明の第３の実施形態に係る匿名性検証システム３００の構成を示すブロック図である。
【０１５３】
図１５に示すように、本実施形態における匿名性検証システム３００は、図１０に示す匿名性検証システム２００と比べて、匿名化部３４０を更に含む点が異なる。
【０１５４】
＝＝＝匿名化部３４０＝＝＝
匿名化部３４０は、パーソナルデータセット８１０に基づいて、被検証匿名化データセット８２０を生成する。
【０１５５】
匿名化部３４０は、分析対象属性変更情報８６０を受信し、分析対象属性変更情報８６０に基づいてパーソナルデータセット８１０を匿名化した匿名化済データセット８８０を生成し、出力する。尚、匿名化部３４０は、分析対象属性変更データセット８７０を受信し、分析対象属性変更データセット８７０に基づいてパーソナルデータセット８１０を匿名化した匿名化済データセット８８０を生成してもよい。
【０１５６】
例えば、パーソナルデータセット８１０は、図７に示す記憶部７０２或いは記憶装置７０３に、予め記憶されていてよい。また、匿名化部３４０は、図７に示す入力部７０４を介して操作者が入力した、パーソナルデータセット８１０を取得してもよい。また、匿名化部３４０は、図７に示す通信部７０６を介して図示しない機器から、パーソナルデータセット８１０を受信してもよい。また、匿名化部３４０は、図７に示す記憶装置７０３を介して、記録媒体７０７に記録されたパーソナルデータセット８１０を取得してもよい。
【０１５７】
例えば、匿名化部３４０は、匿名化済データセット８８０を図７に示す出力部７０５を介して出力する。また、匿名化部３４０は、図７に示す通信部７０６を介して、図示しない機器に匿名化済データセット８８０を送信してもよい。また、匿名化部３４０は、図７に示す記憶装置７０３を介して、記録媒体７０７に匿名化済データセット８８０を記録してもよい。
【０１５８】
例えば、匿名化部３４０は、パーソナルデータセット８１０を匿名化したデータセットから、その推定属性値の集合が前述の所定の匿名性を満たさない等価クラスを削除し、匿名化済データセット８８０を生成する。具体的には、匿名化部３４０は、例えば、分析対象属性変更情報８６０に含まれるレコードＩＤに対応する、レコードを含む等価クラスを削除する。また、匿名化部３４０は、検証結果情報８４０に含まれるレコードＩＤに対応する、レコードを含む等価クラスを削除してもよい。
【０１５９】
匿名化部３４０は、分析対象属性変更情報８６０に基づいて、パーソナルデータセット８１０を匿名化したデータセットを以下のように加工し、匿名化済データセット８８０を生成してもよい。即ち、匿名化部３４０は、パーソナルデータセット８１０を匿名化したデータセットの、その特定のレコードの受診年を、分析対象属性変更情報８６０に含まれる変更後属性値（加工受診年）で置き換える。
【０１６０】
更に、匿名化部３４０は、その置き換えた変更後属性値に対して、その変更後属性値の粒度ができるだけ小さくなるように、具体化処理実行し、匿名化済データセット８８０を生成してもよい。
【０１６１】
更に、匿名化部３４０は、その置き換えた変更後属性値に対して、その変更後属性値の粒度が所望の粒度になるように、或いは所望の粒度にできるだけ近づくように、具体化処理実行し、匿名化済データセット８８０を生成してもよい。この場合、その所望の粒度は、図７に示す記憶部７０２或いは記憶装置７０３に、予め記憶されていてよい。また、匿名化部３４０は、図７に示す入力部７０４を介して操作者が入力した、その所望の粒度を取得してもよい。また、匿名化部３４０は、図７に示す通信部７０６を介して図示しない機器から、その所望の粒度を受信してもよい。また、匿名化部３４０は、図７に示す記憶装置７０３を介して、記録媒体７０７に記録されたその所望の粒度を取得してもよい。
【０１６２】
上述の例に係わらず、匿名化部３４０は、分析対象属性変更情報８６０及び分析対象属性変更データセット８７０を利用して、任意の手法で匿名化を実施してよい。この場合、その手法の指定は、図７に示す記憶部７０２或いは記憶装置７０３に、予め記憶されていてよい。また、匿名化部３４０は、図７に示す入力部７０４を介して操作者が入力した、その手法の指定に基づいて、匿名化を実施してよい。また、匿名化部３４０は、図７に示す通信部７０６を介して図示しない機器から、受信したその手法の指定に基づいて、匿名化を実施してよい。また、匿名化部３４０は、図７に示す、記録媒体７０７に記録されたその手法の指定に基づいて、匿名化を実施してよい。
【０１６３】
匿名性検証システム３００は、匿名性検証システム２００と同様に、図７に示すコンピュータ７００によって実現されてよい。
【０１６４】
この場合、ＣＰＵ７０１は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、更に、図１５に示す匿名化部３４０としても、各種の処理を実行する。
【０１６５】
記憶部７０２は、更に匿名化済データセット８８０を記憶してよい。記憶部７０２は、更に匿名化部３４０の一部としても含まれてよい。
【０１６６】
記憶装置７０３は、更に匿名化済データセット８８０を記憶してよい。記憶装置７０３は、更に匿名化部３４０の一部としても含まれてよい。
【０１６７】
入力部７０４は、更に匿名化部３４０の一部としても含まれてよい。
【０１６８】
出力部７０５は、更に匿名化部３４０の一部としても含まれてよい。
【０１６９】
通信部７０６は、更に匿名化部３４０の一部としても含まれてよい。
【０１７０】
本実施形態の変形例として、本実施形態の匿名性検証システム３００は、匿名性検証システム１００に替えて、図９に示す匿名化システム１０１に含まれてもよい。この場合、匿名化システム１０１は、匿名化装置１０２を含まなくてもよい。
【０１７１】
上述した本実施形態における第１の効果は、第２の実施形態の効果に加えて、前述の所望の匿名性を満足し、かつ利用目的に合致するように匿名化された情報のデータ損失量が抑えられた匿名化を施された、匿名化済データセット８８０を得ることが可能になる点である。
【０１７２】
その理由は、匿名化部３４０が分析対象属性変更情報８６０或いは分析対象属性変更データセット８７０に基づいて、匿名化済データセット８８０を生成するからである。
【０１７３】
上述した本実施形態における第２の効果は、利用目的に応じた匿名化済データセット８８０を得ることが可能になる点である。
【０１７４】
その理由は、匿名化部３４０が、与えられた任意の手法及び所望の粒度に基づいて匿名化を実行するからである。
【０１７５】
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、複数個の任意のその構成要素が１個のモジュールとして実現されてよい。また、その構成要素の内の任意の一つが複数のモジュールで実現されてもよい。また、その構成要素の内の任意の一つがその構成要素の内の任意の他の一つであってよい。また、その構成要素の内の任意の一つの一部と、その構成要素の内の任意の他の一つの一部とが重複してもよい。
【０１７６】
以上説明した各実施形態における各構成要素及び各構成要素を実現するモジュールは、必要に応じ、可能であれば、ハードウエア的に実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、コンピュータ及びプログラムで実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、ハードウエア的なモジュールとコンピュータ及びプログラムとの混在により実現されてもよい。
【０１７７】
そのプログラムは、例えば、磁気ディスクや半導体メモリなど、コンピュータが読み取り可能な非一時的記録媒体に記録され、コンピュータに提供される。そして、そのプログラムは、コンピュータの立ち上げ時などに、非一時的記録媒体からコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
【０１７８】
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障のない範囲で変更することができる。
【０１７９】
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、ある動作の実行中に他の動作が発生してよい。また、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複してもよい。
【０１８０】
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作との関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で変更されてよい。
【０１８１】
以上、各実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得るさまざまな変更をすることができる。
【符号の説明】
【０１８２】
１００    匿名性検証システム
１０１    匿名化システム
１０２    匿名化装置
１０３    パーソナルデータセット記憶装置
１０４    匿名化済データセット記憶装置
１０９    ネットワーク
１１０    推定部
１２０    検証部
２００    匿名性検証システム
２３０    変更部
３００    匿名性検証システム
３４０    匿名化部
７００    コンピュータ
７０１    ＣＰＵ
７０２    記憶部
７０３    記憶装置
７０４    入力部
７０５    出力部
７０６    通信部
７０７    記録媒体
８００    依存関係テーブル
８０１    レコード
８１０    パーソナルデータセット
８１１    レコード
８２０    被検証匿名化データセット
８２１    レコード
８３０    推定値付加データセット
８３１    レコード
８４０    検証結果情報
８５０    変更推定値データセット
８５１    レコード
８６０    分析対象属性変更情報
８７０    分析対象属性変更データセット
８７１    レコード
８８０    匿名化済データセット
【図１】
2016045535.tif 000003
【図２】
2016045535.tif 000004
【図３】
2016045535.tif 000005
【図４】
2016045535.tif 000006
【図５】
2016045535.tif 000007
【図６】
2016045535.tif 000008
【図７】
2016045535.tif 000009
【図８】
2016045535.tif 000010
【図９】
2016045535.tif 000011
【図１０】
2016045535.tif 000012
【図１１】
2016045535.tif 000013
【図１２】
2016045535.tif 000014
【図１３】
2016045535.tif 000015
【図１４】
2016045535.tif 000016
【図１５】
2016045535.tif 000017