(57)【要約】時間とともに所定のグループに含まれるデータのデータ数が増減する場合でもデータの匿名性を保証する、適切な指標値を特定する。  匿名化指標決定装置は、属性を有するデータにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定し、一の属性を有するデータのデータ数が、第一の時刻で、ある閾値以上であり、かつ第二の時刻でその閾値未満である回数を閾値毎に算出し、その回数に基づいて閾値毎のスコアを算出し、そのスコアに基づいて特定される閾値である匿名化指標を特定し、ある一の属性を有するデータのデータ数が匿名化指標より少なく、かつ、そのデータ数と一つ以上の他の属性を有するデータのデータ数との和が匿名化指標以上である場合に、共通する属性に更新するデータとして一の属性および前述の他の属性を有するデータを特定する。
2012176923.tif 000002
【特許請求の範囲】
【請求項１】
属性を有するデータを管理するデータ管理手段と、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有する前記データのデータ数を特定するデータ数特定手段と、
複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出するスコア算出手段と、
前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する閾値特定手段と、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する匿名化データ特定手段と、
を含む匿名化指標決定装置。
【請求項２】
請求項１に記載の匿名化指標決定装置であって、
前記複数の閾値ごとに、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値以上となる属性の組み合わせを特定する組み合わせ特定手段を備え、
前記スコア算出手段は、属性ごとに、前記組み合わせ特定手段が特定した組み合わせの中で、前記一の属性を含む組み合わせに含まれる各属性を有するデータのデータ数の和に占める前記一の属性を含むデータのデータ数の割合の、前記第一の時刻における値から前記第二の時刻における値への変化率を求め、閾値ごとに当該変化率に基づいて前記スコアを算出し、
前記匿名化データ特定手段は、前記特定された組み合わせに複数の属性が含まれる場合に、前記共通する属性に更新するデータとして、当該複数の属性を有する各データを特定する、匿名化指標決定装置。
【請求項３】
請求項２に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記変化率の属性間の平均に基づく値の逆数の前記所定の時間の時刻間における和に基づいて、閾値ごとに、前記スコアを算出する、匿名化指標決定装置。
【請求項４】
請求項２または３に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記複数の閾値のそれぞれに対して、前記組み合わせの中の複数の属性を含む当該組み合わせに基づいて推定されるある情報量を示す情報であるインフォメーションロスを算出し、前記インフォメーションロスと前記変化率とに基づいて、閾値ごとに前記スコアを算出する、匿名化指標決定装置。
【請求項５】
請求項４に記載の匿名化指標決定装置であって、
前記組み合わせ特定手段は、前記組み合わせの中の複数の属性を含む当該組み合わせで特定される属性を有するデータのデータ数の和が最小となるように、当該組み合わせを特定する、匿名化指標決定装置。
【請求項６】
請求項４または５に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記組み合わせごとに前記インフォメーションロスを計算し、それらの和を計算し、
前記スコア算出手段は、前記組み合わせの第一の属性を有するデータのデータ数が当該閾値未満であり、当該組み合わせの第二の属性を有するデータのデータ数が閾値以上であり、第一の属性を有するデータのデータ数と第二の属性を有するデータのデータ数との和が当該閾値を基に定められる値以上である場合に、当該組み合わせに対する当該インフォメーションロスを当該閾値と計算し、
前記匿名化データ特定手段は、前記共通の属性に更新するデータとして、前記第一の属性を有するデータ、および、前記第二の属性を有するデータの中の前記閾値から前記第一の属性を有するデータのデータ数との差分で示される数のデータを特定する、匿名化指標決定装置。
【請求項７】
請求項１ないし６のいずれか１項に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記閾値特定手段が特定した前記匿名化指標が所定の値以上である場合に、当該匿名化指標を含む前記複数の閾値に対して、前記スコアを算出する、匿名化指標決定装置。
【請求項８】
請求項１ないし７のいずれか１項に記載の匿名化指標決定装置であって、
前記匿名化データ特定手段が特定したデータを前記共通する属性に更新する匿名化実行手段を含む匿名化指標決定装置。
【請求項９】
請求項１ないし７のいずれか１項に記載の匿名化指標決定装置と、
前記匿名化データ特定手段が特定したデータを前記共通する属性に更新する匿名化実行手段と、
前記匿名化実行手段が更新したデータを記憶する匿名化後データ記憶手段と、
を含む匿名化処理実行システム。
【請求項１０】
属性を有するデータを管理し、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有する、データのデータ数を特定し、
複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出し、
前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定し、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する、匿名化指標決定方法。
【請求項１１】
属性を有するデータを管理し、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有する、データのデータ数を特定し、
複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出し、
前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定し、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定し、
前記特定されたデータを前記共通する属性に更新し、
前記更新されたデータを記憶する、匿名化処理実行方法。
【請求項１２】
コンピュータに、
属性を有するデータを管理する処理と、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定する処理と、
複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出する処理と、
前記複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する処理と、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する処理と、
を実行させるための匿名化指標決定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの匿名化処理のために用いられる指標の適切な値を決定する技術に関する。
【背景技術】
【０００２】
個人情報のようなデータの少なくとも一部の情報を匿名化（ａｎｏｎｙｍｉｚａｔｉｏｎ）することで、匿名性とデータの有用性とを両立させる技術が知られている。匿名化とは、個人を特定しうる情報を加工し、個人を特定できない情報に更新することである。
例えば、特許文献１に記載された技術は、データが有する所定の属性毎に、データをグループ化する。そして、当該技術は、グループ化後、そのグループに含まれるデータのデータ数が所定の閾値を下回るか否かに基づいて、匿名化処理を行うか否か判定する。
【特許文献１】特開２０１０−０８６１７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１に記載された技術は、以下の問題点がある。すなわち、特許文献１に記載された技術は、グループに含まれるデータのデータ数が閾値を挟んで増減した場合、時刻に応じてグループに含まれるデータが匿名化されたり匿名化されなかったりする。かかる場合において、特許文献１に記載された技術は、その閾値を変更しない。つまり、特許文献１に記載された技術は、あるデータの匿名化処理がされなかった時刻におけるそのデータの内容に基づいて、そのデータの匿名化処理がされた時刻におけるそのデータの内容が推測されてしまう。したがって、特許文献１に記載された技術は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合、そのデータの匿名性を保証するための適切な指標値（例えば、閾値）を特定できない。
本発明の目的の一つは、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、データの匿名性を保証するための適切な指標値を特定できる匿名化指標決定装置、匿名化処理実行システム、匿名化指標決定方法、および匿名化処理実行方法を提供することにある。
【課題を解決するための手段】
【０００４】
本発明の一形態における第一の匿名化指標決定装置は、属性を有するデータを管理するデータ管理手段と、前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定するデータ数特定手段と、複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出するスコア算出手段と、前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する閾値特定手段と、前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する匿名化データ特定手段と、を含む。
本発明の一形態における第一の匿名化処理実行システムは、属性を有するデータを管理するデータ管理手段と、前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定するデータ数特定手段と、複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出するスコア算出手段と、前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する閾値特定手段と、前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する匿名化データ特定手段と、を含む匿名化指標決定装置と、前記匿名化データ特定手段が特定したデータを前記共通する属性に更新する匿名化実行手段と、前記匿名化実行手段が更新したデータを記憶する匿名化後データ記憶手段と、を含む。
本発明の一形態における第一の匿名化指標決定方法は、属性を有するデータを管理し、前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定し、複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出し、前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定し、前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する。
本発明の一形態における第一の匿名化処理実行方法は、属性を有するデータを管理し、前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定し、複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出し、前記の複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定し、前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを、特定し、前記特定されたデータを前記共通する属性に更新し、前記更新されたデータを記憶する。
本発明の一形態における第一の匿名化指標決定プログラムは、コンピュータに、属性を有するデータを管理する処理と、前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定する処理と、複数の閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出する処理と、前記複数の閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する処理と、前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する処理と、を実行させる。
【発明の効果】
【０００５】
本発明の効果の一例は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、データの匿名性を保証するための適切な指標値を特定できることである。
【図面の簡単な説明】
【０００６】
【図１】図１は、本発明における、第一の実施の形態における匿名化指標決定装置の構成を示すブロック図である。
【図２】図２は、データ管理部が管理するデータの一例を示す図である。
【図３】図３は、データ管理部が記憶するデータのデータ数の一例を示す図である。
【図４】図４は、抽象化ツリーの一例を示す図である。
【図５】図５は、第一の実施の形態における匿名化指標決定装置とその周辺装置とのハードウェア構成を示す図である。
【図６】図６は、第一の実施の形態における匿名化指標決定装置の動作の概要を示すフローチャートである。
【図７】図７は、第一の実施の形態の第一の変形例における匿名化指標決定装置の構成を示すブロック図である。
【図８】図８は、データ管理部が記憶する情報の一例を示す図である。
【図９】図９は、第一の実施の形態の第一の変形例における匿名化指標決定装置の構成を示すブロック図である。
【図１０】図１０は、匿名化処理実行システムの構成を示すブロック図である。
【図１１】図１１は、第一の実施の形態の第一の変形例における匿名化処理実行システムの動作の概要を示すフローチャートである。
【図１２】図１２は、第二の実施の形態における匿名化指標決定装置の構成を示すブロック図である。
【図１３】図１３は、第二の実施の形態において閾値ｋ＝５のときの組み合わせ特定部の処理の一例を示す図である。
【図１４】図１４は、第二の実施の形態において閾値ｋ＝５のときの組み合わせ特定部の処理の一例を示す図である。
【図１５】図１５は、第二の実施の形態における匿名化指標決定装置の動作の概要を示すフローチャートである。
【図１６】図１６は、第三の実施の形態における匿名化指標決定装置の構成を示すブロック図である。
【図１７】図１７は、第三の実施の形態における匿名化指標決定装置の動作の概要を示すフローチャートである。
【図１８】図１８は、第三の実施の形態において閾値ｋ＝５、属性Ａのデータのデータ数が１０、および属性Ｂのデータのデータ数が４の場合における、スコア算出部の動作の一例を示す図である。
【発明を実施するための形態】
【０００７】
本発明を実施するための形態について図面を参照して詳細に説明する。なお、各図面および明細書記載の各実施の形態において、同様の機能を備える構成要素には同様の符号が与えられ、その詳細な説明の繰り返しを省略する場合がある。
［第一の実施の形態］
図１は、本発明における第一の実施の形態における匿名化指標決定装置１００の構成の一例を示すブロック図である。図１を参照すると、匿名化指標決定装置１００は、データ管理部１０１と、データ数特定部１０２と、スコア算出部１０３と、閾値特定部１０４と、匿名化データ特定部１０５とを含む。
第一の実施の形態における匿名化指標決定装置１００は、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定する。そして、匿名化指標決定装置１００は、複数の閾値に対して、特定したデータ数が、第一の時刻で閾値以上であり、かつ、その第一の時刻から単位時間経過した第二の時刻でその閾値を下回る回数を、算出する。そして、匿名化指標決定装置１００は、算出した回数に基づいてスコアを算出する。そして、匿名化指標決定装置１００は、前述の複数の閾値から、算出したスコアに基づいて特定される一の閾値である匿名化指標を特定する。匿名化指標決定装置１００は、ある属性（一の属性）を有するデータのデータ数がこの匿名化指標より少なく、かつ、その属性（一の属性）を有するデータのデータ数と少なくとも一つ以上の他の属性を有するデータのデータ数との和がその匿名化指標以上である場合に、共通する属性に更新するデータとして、一の属性および他の属性を有するデータを特定する。
ここまでの説明のように、第一の実施の形態における匿名化指標決定装置１００は、ある閾値を挟んでデータ数が増減した回数に基づいて、匿名化指標を特定する。そして、匿名化指標決定装置１００は、匿名化指標を基に、共通する属性に更新するデータとして、一の属性および他の属性を有するデータを特定する。
よって、第一の実施の形態における匿名化指標決定装置１００は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、そのデータの匿名性を保証するための適切な指標値（匿名化指標）を特定できる。具体的には、第一の実施の形態における匿名化指標決定装置１００は、算出される回数から算出したスコアを基に、閾値から匿名化指標を特定できる。そして、匿名化指標決定装置１００は、匿名化指標を基に、共通する属性に更新するデータとして、一の属性および他の属性を有するデータを特定できる。したがって、匿名化指標決定装置１００は、前述の効果を奏することができる。
以下、第一の実施の形態における匿名化指標決定装置１００が含む各構成要素について説明する。
＝＝＝データ管理部１０１＝＝＝
データ管理部１０１は、属性を有するデータを管理する。
属性とは、例えば、準識別子（ｑｕａｓｉ−ｉｄｅｎｔｉｆｉｅｒ）である。準識別子とは、それらが組み合わされると、個人を特定する恐れがある情報である。
図２は、データ管理部１０１が管理するデータの一例を示す図である。図２を参照すると、データ管理部１０１は、所定の時間（例えばｔ０およびｔ１）の各時刻における、少なくとも一種類以上の属性とセンシティブデータとを対応付けて記憶する。図２で示される属性の種類は、「居住地」と「性別」との二種類である。センシティブデータとは、特に取り扱いに配慮が必要な個人情報である。なお、図２に示すセンシティブデータは、例示である。データ管理部１０１が管理するデータは、属性と、１つまたは複数の情報とが対応づけされていればよい。
以下の本実施形態の説明では、データが有する属性の種類を一つ（属性の種類「居住地」）として説明するが、本実施形態は、これに限られない。例えば、図２に示すように、データが有する属性の種類が複数ある場合、本実施形態の匿名化指標決定装置１００は、各種類の属性の値の組を一つの属性とみなして、以降での説明の動作を処理すればよい。例えば、匿名化指標決定装置１００は、属性の種類「居住地」の属性「自由が丘」、および、属性の種類「性別」の属性「女性」の組「自由が丘，女性」を一つの属性とみなし、以降の説明の動作を処理すればよい。
データ管理部１０１は、例えば、後述のデータ数特定部１０２から、属性ごとのデータのデータ数を示す情報を受け取り、記憶してもよい。図３は、データ管理部１０１がデータ数特定部１０２から受け取る情報の一例を示す図である。図３を参照すると、データ管理部１０１は、所定の時間（例えばｔ０からｔ３までの間）の各時刻（例えば、ｔ０、ｔ１、ｔ２、およびｔ３）において管理しているデータのデータ数を、属性ごとに記憶する。
＝＝＝データ数特定部１０２＝＝＝
データ数特定部１０２は、データ管理部１０１が管理するデータにおける、データが有する属性ごとに、所定の時間の各時刻における、その属性を有するデータの「データ数」を特定する。
例えば、図２に示されるデータがデータ管理部１０１に管理されている場合、データ数特定部１０２は、図３に示すように、時刻ｔ０において、属性「自由が丘」を有するデータのデータ数が５個、属性「緑が丘」を有するデータのデータ数が５個であると、特定する。
＝＝＝スコア算出部１０３＝＝＝
スコア算出部１０３は、複数の閾値に対して、データ数特定部１０２が属性ごとに特定したデータのデータ数が、第一の時刻で、ある閾値以上であり、かつその第一の時刻から単位時間経過した第二の時刻でその閾値未満である回数を算出する。
複数の閾値とは、例えば、０以上であり、前述の回数が０となる最小の値以下の範囲で任意に選択された異なる値を持つ閾値である。
例えば、複数の閾値の一つの閾値ｋがｋ＝５であった場合を考える。また、データ数特定部１０２が属性ごとに特定したデータのデータ数は、図３に示される数であると仮定する。
時刻ｔ０のとき、属性「自由が丘」、および「緑が丘」を有するデータのデータ数は、ともに、閾値ｋ（＝５）以上である。つまり、時刻ｔ０は、第一の時刻に相当する。そして、時刻ｔ０から単位時間経過した時刻ｔ１のとき、属性「自由が丘」、および「緑が丘」を有するデータのデータ数は、ともに、閾値ｋ（＝５）未満である。つまり、時刻ｔ１は、第一の時刻ｔ０から単位時間経過した第二の時刻に相当する。同様に、時刻ｔ２（第一の時刻に相当）のとき、属性「自由が丘」、および「緑が丘」を有するデータのデータ数は、ともに、閾値ｋ（＝５）以上である。そして、時刻ｔ３（第一の時刻から単位時間経過した第二の時刻に相当）のとき、属性「自由が丘」、および「緑が丘」を有するデータのデータ数は、ともに、閾値ｋ（＝５）未満である。
したがって、この場合、スコア算出部１０３は、前述の回数を２回と算出する。なお、スコア算出部１０３は、属性ごとの回数を算出して、合算してもよい。例えば、図３に示される数の場合、スコア算出部１０３は、前述の回数を４回と算出してもよい。
同様に、閾値ｋがｋ＝６の場合、スコア算出部１０３は、前述の回数を１回と算出する。そして、閾値ｋがｋ＝７の場合、スコア算出部１０３は、前述の回数を０回と算出する。
さらに、スコア算出部１０３は、前述の回数に基づいてスコアを算出する。このスコアは、後述の匿名化指標を特定するために用いられる値である。
本実施形態のスコア算出部１０３が用いるスコアの計算方法は、特に限られず、いろいろな計算方法を用いることができる。
スコア算出部１０３は、例えば、次の［数１］に示される計算方法に基づいてスコアＳｃ（ｋ）を算出してもよい。
【数１】
2012176923.tif 000003
［数１］において、ｎ（ｋ）は、閾値がｋのときに、スコア算出部１０３が算出した前述の回数である。
データが複数の種類の属性を有する場合、スコア算出部１０３は、閾値ごとに、属性の種類ごとのスコアを算出し、算出したスコアを合算してもよい。例えば、スコア算出部１０３は、［数２］に示される計算方法に基づいて、閾値ごとに、各属性の種類におけるスコアを合算してもよい。
【数２】
2012176923.tif 000004
［数２］において、Ｘは属性の種類の集合、ｔｙｐｅは属性の種類である。また、Ｓｃｔｙｐｅ（ｋ）は、属性の種類「ｔｙｐｅ」および閾値ｋにおけるスコアである。Ｓｃ（ｋ）は、属性ごとに、スコア算出部１０３が算出するスコアである。
＝＝＝閾値特定部１０４＝＝＝
閾値特定部１０４は、スコア算出部１０３が用いた複数の閾値の中から、スコア算出部１０３が算出したスコアに基づいて特定される一つの閾値である匿名化指標を特定する。
例えば、スコアＳｃ（ｋ）が前述の［数１］を用いて求められる場合、閾値特定部１０４は、算出されたスコアＳｃ（ｋ）が０を除いて最小となる閾値ｋを匿名化指標として特定してもよい。なお、算出されたスコアＳｃ（ｋ）が最小となる閾値ｋが複数ある場合、閾値特定部１０４は、いずれの閾値ｋを特定してもよい。ただし、本実施形態の閾値特定部１０４は、一例として、スコアＳｃ（ｋ）が最小である複数の閾値の中で、最小のｋを匿名化指標として特定する。
また、スコアが他の方法で算出される場合、閾値特定部１０４は、算出されたスコアＳｃ（ｋ）が最大となる閾値ｋを匿名化指標として特定してもよい。算出されたスコアＳｃ（ｋ）が最大となる閾値ｋが複数ある場合、閾値特定部１０４は、上の説明と同様に、複数の閾値の中から所定の規則に従い閾値ｋ（例えば、最小のｋまたは最大のｋ）を匿名化指標として特定すればよい。
＝＝＝匿名化データ特定部１０５＝＝＝
匿名化データ特定部１０５は、データ管理部１０１が管理するデータについて、以下の二条件を判定する。第一の条件は、一の属性を有するデータのデータ数が、閾値特定部１０４が特定した匿名化指標より少ないこと、である。第二の条件は、前述の一の属性を有するデータのデータ数と少なくとも一つ以上の他の属性を有するデータのデータ数との和が前述の匿名化指標以上となること、である。これらの二条件を満たす前述の「一の属性」は、本明細書において、「対象属性」とも呼ばれる。
匿名化データ特定部１０５は、共通する属性に更新するデータとして、前述の二条件を満たす前述の対象属性（一の属性）および前述の他の属性を有するデータを特定する。前述の二条件を満たす対象属性が複数ある場合、匿名化データ特定部１０５は、各対象属性に対応するデータおよび他の属性を有するデータを、それぞれ、共通する属性に更新するデータとして特定してもよい。
例えば、対象属性「緑が丘」と他の属性「自由が丘」、および、対象属性「戸山」と他の属性「大久保」のそれぞれが、前述の二条件を満たすとする。この場合、匿名化データ特定部１０５は、以下のように、共通する属性に更新するデータを特定する。
まず、匿名化データ特定部１０５は、属性「緑が丘」および属性「自由が丘」を有するデータを、一の共通する属性（例えば属性「緑が丘」および属性「自由が丘」の上位概念を示す属性「目黒区」）に更新するデータとして特定する。また、匿名化データ特定部１０５は、属性「戸山」および属性「大久保」を有するデータを、一の共通する属性（例えば属性「戸山」および属性「大久保」の上位概念を示す属性「新宿区」）に更新するデータとして特定する。
また、匿名化データ特定部１０５は、属性間の関連性を示す情報を基に、他の属性を特定してもよい。属性間の関連性を示す情報は、特に限られない。例えば、匿名化データ特定部１０５は、抽象化ツリーを用いていてもよい。抽象化ツリーを用いる場合、匿名化データ特定部１０５は、例えば、以下の通りに動作してもよい。
第一に、匿名化データ特定部１０５は、前述の第一の条件に基づいて一の属性を特定する。
第二に、匿名化データ特定部１０５は、抽象化ツリーに基づいて、他の属性の候補を特定する。
なお、抽象化ツリーとは、属性間の階層関係を示すツリー構造を備えた情報である。図４は、抽象化ツリーの一例を示す図である。図４を参照すると、属性「目黒区」は、属性「自由が丘」および「中目黒」の上位概念である。そのため、匿名化データ特定部１０５は、一の属性として属性「自由が丘」を特定した場合、属性「自由が丘」と共通の上位概念「目黒区」を上位概念とする属性「中目黒」を、他の属性の候補として特定する。なお、図４に示す例は、他の属性が一つである。そのため、匿名化データ特定部１０５は、他の属性の候補として属性「中目黒」を特定する。しかし、複数の属性が特定された場合、匿名化データ特定部１０５は、特定された複数の属性を、他の属性の候補として特定してもよい。
属性間の関連性を示す情報（例えば、抽象化ツリー）は、匿名化データ特定部１０５に記憶されてもよいし、他の構成要素に記憶されてもよい。
第三に、匿名化データ特定部１０５は、他の属性の候補のそれぞれについて、前述の一の属性に対して前述の第二の条件を満たすか否かを判定する。そして、判定に基づいて、匿名化データ特定部１０５は、前述の他の属性の候補の中から第二の条件を満たす他の属性を特定する。例えば、図４の例の場合、一の属性が属性「自由が丘」とすると、他の属性は、「中目黒」と特定される。
第四に、匿名化データ特定部１０５は、共通する属性に更新するデータとして、前述の一の属性および第三の処理にて特定した他の属性を有するデータを特定する。共通する属性とは、例えば、各属性に共通する上位概念を示す属性である。図４の例の場合、匿名化データ特定部１０５は、属性「目黒区」に更新するデータとして、属性「自由が丘」および「中目黒」を有するデータを特定する。なお、一の属性および第三の処理にて特定された他の属性の間で階層関係が存在する場合、共通する属性は、前述の各属性の中の上位概念を示す属性でもよい。例えば、図４に示す一の属性が属性「自由が丘」であり、他の属性が「目黒区」である場合、匿名化データ特定部１０５は、属性「目黒区」に更新されるデータとして、属性「自由が丘」および「目黒区」を有するデータを特定してもよい。
匿名化データ特定部１０５が特定したデータが、共通する属性に更新されると、データ管理部１０１が管理するデータは、匿名化指標をｋとするｋ−匿名性（ｋ−Ａｎｏｎｙｍｉｔｙ）が担保される。
ｋ−匿名性とは、あるデータに対して少なくとも他のｋ−１個のデータと区別できないことを保証する性質である。すなわち、ｋ−匿名性が満たされている場合、同じ準識別子（属性）を有するデータは、ｋ個以上存在する。
以上の説明の処理を基に、匿名化データ特定部１０５は、ｋ−匿名性を保証するための匿名化の処理の対象のデータを特定する。
図５は、本発明の第一の実施の形態における匿名化指標決定装置１００とその周辺装置とのハードウェア構成の一例を示す図である。図５に示されるように、匿名化指標決定装置１００は、ＣＰＵ１９１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ  １９１）、ネットワーク接続用の通信Ｉ／Ｆ１９２（通信インターフェース１９２）、メモリ１９３、および、プログラムを格納するハードディスク等の記憶装置１９４を含む。また、匿名化指標決定装置１００は、バス１９７を介して、入力装置１９５および出力装置１９６と接続する。
ＣＰＵ１９１は、オペレーティングシステムを動作させて本発明の第一の実施の形態に係る匿名化指標決定装置１００の全体を制御する。また、ＣＰＵ１９１は、例えば、図示しないドライブ装置に装着された図示しない記録媒体１９８からメモリ１９３にプログラムやデータを読み出す。そして、ＣＰＵ１９１は、このプログラムにしたがって、第一の実施の形態におけるデータ管理部１０１、データ数特定部１０２、スコア算出部１０３、閾値特定部１０４、および、匿名化データ特定部１０５として、各種の処理を実行する。
記憶装置１９４は、例えば、光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、または、半導体メモリであって、コンピュータ読み取り可能にコンピュータプログラムを記録する。また、コンピュータプログラムは、通信網に接続されている図示しない外部コンピュータからダウンロードされてもよい。データ管理部１０１は、記憶装置１９４を用いて実現されてもよい。
入力装置１９５は、例えば、マウスやキーボード、内蔵のキーボタンで実現され、入力操作に用いられる。入力装置１９５は、マウスやキーボード、内蔵のキーボタンに限らず、例えば、タッチパネル、加速度計、ジャイロセンサ、カメラでもよい。
出力装置１９６は、例えば、ディスプレイで実現され、出力を確認するために用いられる。
なお、第一の実施の形態の説明において利用されるブロック図（図１）は、ハードウェア単位の構成ではなく、機能単位のブロックを示す。これらの機能ブロックは、図５に示されるハードウェア構成を用いて実現される。ただし、匿名化指標決定装置１００が含む各部の実現手段は、特に限定されない。すなわち、匿名化指標決定装置１００は、物理的に結合した一つの装置を用いて実現されてもよいし、物理的に分離した二つ以上の装置を有線または無線で接続し、これら複数の装置を用いて実現されてもよい。
また、ＣＰＵ１９１は、記憶装置１９４に記録されているコンピュータプログラムを読み込み、そのプログラムにしたがって、データ管理部１０１、データ数特定部１０２、スコア算出部１０３、閾値特定部１０４、および、匿名化データ特定部１０５として動作してもよい。
また、既に説明したが、前述のプログラムのコードを記録した図示しない記録媒体１９８（または他の記憶媒体）が、匿名化指標決定装置１００に供給され、匿名化指標決定装置１００が記録媒体１９８に格納されたプログラムのコードを読み出し実行してもよい。すなわち、本発明は、第一の実施の形態における匿名化指標決定装置１００が実行するためのソフトウェア（匿名化指標決定プログラム）を一時的に記憶するまたは非一時的に記憶する図示しない記録媒体１９８も含む。
図６は、第一の実施の形態における匿名化指標決定装置１００の動作の概要を示すフローチャートである。
データ数特定部１０２は、データ管理部１０１が管理するデータにおいて、属性ごとに、その属性を有するデータのデータ数を特定する（ステップＳ１０１）。
スコア算出部１０３は、複数の閾値に対して、データ数特定部１０２が特定したある属性を有するデータのデータ数が、第一の時刻で、ある閾値以上であり、かつ、その第一の時刻から単位時間経過した第二の時刻でその閾値を下回る回数を算出する（ステップＳ１０２）。
スコア算出部１０３は、算出された回数に基づいて、閾値ごとのスコアを算出する（ステップＳ１０３）。
閾値特定部１０４は、前述の複数の閾値の中から、算出されたスコアに基づいて特定される一の閾値である匿名化指標を特定する（ステップＳ１０４）。
匿名化データ特定部１０５は、データ管理部１０１が管理しているデータについて、次の二条件を判定する（ステップＳ１０５）。第一の条件は、ある一の属性を有するデータのデータ数が、ステップＳ１０４にて特定された匿名化指標より少ないことである。第二の条件は、前述の一の属性を有するデータのデータ数と少なくとも一つ以上の他の属性を有するデータのデータ数との和が前述の匿名化指標以上であることである。
匿名化データ特定部１０５が、前述の二条件を満たすと判定した場合（ステップＳ１０５の“Ｙｅｓ”）、匿名化データ特定部１０５は、共通する属性に更新するデータとして、前述の一の属性および前述の少なくとも一つ以上の他の属性を有するデータを特定する（ステップＳ１０６）。一の属性が複数特定された場合、匿名化データ特定部１０５は、その一の属性ごとに、ある共通する属性に更新するデータとして、その一の属性と少なくとも一つ以上の他の属性を有するデータを特定する。そして、匿名化指標決定装置１００の処理は、終了する。
一方、匿名化データ特定部１０５が、データ管理部１０１が管理するデータについて前述の二条件を満たさないと判定した場合（ステップＳ１０５の“Ｎｏ”）、匿名化指標決定装置１００の処理は、終了する。
第一の実施の形態における匿名化指標決定装置１００は、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定する。そして、匿名化指標決定装置１００は、複数の閾値に対して、特定されたデータ数が、第一の時刻で、ある閾値以上であり、かつ、その第一の時刻から単位時間経過した第二の時刻でその閾値を下回る回数を算出する。そして、匿名化指標決定装置１００は、算出した回数に基づいて、スコアを算出する。そして、匿名化指標決定装置１００は、前述の複数の閾値の中から、算出したスコアに基づいて特定される一の閾値である匿名化指標を特定する。匿名化指標決定装置１００は、一の属性を有するデータのデータ数が匿名化指標より少なく、かつ、その一の属性を有するデータのデータ数と少なくとも一つ以上の他の属性を有するデータのデータ数との和が匿名化指標以上であるか否か（対象属性であるか否か）を判定する。そして、匿名化指標決定装置１００は、共通する属性に更新するデータとして、その対象属性および他の属性を有するデータを特定する。
これまでの説明のように、第一の実施の形態における匿名化指標決定装置１００は、ある閾値を挟んでデータ数が増減した回数に基づいて、匿名化指標を特定する。そして、匿名化指標決定装置１００は、匿名化指標を基に、共通する属性に更新するデータとして、一の属性および他の属性を有するデータを特定する。
よって、第一の実施の形態における匿名化指標決定装置１００は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、そのデータの匿名性を保証するための適切な指標値（匿名化指標）を特定できる。具体的には、第一の実施の形態における匿名化指標決定装置１００は、から算出したスコアを基に、閾値から匿名化指標を特定できる。そして、匿名化指標決定装置１００は、匿名化指標を基に、共通する属性に更新するデータとして、一の属性および他の属性を有するデータを特定できる。したがって、匿名化指標決定装置１００は、前述の効果を奏することができる。
［第一の実施の形態の第一の変形例］
第一の実施の形態において、匿名化指標決定装置１００は、匿名化データ特定部１０５が特定したデータを匿名化する匿名化実行部１１１と接続されてもよい。図７は、第一の実施の形態の第一の変形例における匿名化指標決定装置１００および匿名化実行部１１１の構成の一例を示すブロック図である。
＝＝＝匿名化実行部１１１＝＝＝
匿名化実行部１１１は、匿名化データ特定部１０５が特定したデータを匿名化する。具体的には、匿名化実行部１１１は、匿名化データ特定部１０５が特定したデータが有する該当の属性を、共通する属性に更新する。
例えば、匿名化実行部１１１は、匿名化データ特定部１０５が特定したデータが有する該当の属性に共通する上位概念を示す属性に、その該当する属性を更新してもよい。匿名化実行部１１１は、匿名化データ特定部１０５から、共通する属性を示す情報を受け取ってもよい。または、匿名化実行部１１１は、図４に示す抽象化ツリーを記憶し、その抽象化ツリーに基づいて共通する属性を特定してもよい。
匿名化実行部１１１は、前述の一の属性を有するデータの全てと、その一の属性に対応する前述の他の属性を有するデータの全てとを、共通する属性に更新してもよい。このような匿名化方法は、「グローバルリコーディング」と呼ばれる。
また、匿名化実行部１１１は、前述の一の属性を有するデータの全てと、その一の属性に対応する前述の他の属性を有するデータの一部を、共通する属性に更新してもよい。このような匿名化方法は、「ローカルリコーディング」と呼ばれる。ローカルリコーディングが適用される場合、前述の他の属性を有するデータにおいて、属性が更新されるデータのデータ数は、閾値特定部１０４が特定した匿名化指標と、前述の一の属性を有するデータのデータ数との差分値である。ローカルリコーディングが適用される場合、匿名化されるデータのデータ数は、グローバルリコーディングの場合より少ない。そのため、ローカルリコーディングの情報量の損失は、グローバルリコーディングの情報量の損失より少ない。
第一の実施の形態の第一の変形例において、データ管理部１０１は、匿名化実行部１１１が匿名化したデータを記憶してもよい。図８は、データ管理部１０１が記憶する情報の一例を示す図である。図８を参照すると、時刻ｔ１において、全てのデータが、匿名化されている。すなわち、時刻ｔ１における各データが有する属性「自由が丘」および「緑が丘」が、「目黒区」に更新されている。
第一の実施の形態の第一の変形例において、匿名化指標決定装置１００は、匿名化実行部１１１が匿名化したデータを記憶する匿名化後データ記憶部１１２と接続してもよい。図９は、第一の実施の形態の第一の変形例における匿名化指標決定装置１００、匿名化実行部１１１、および匿名化後データ記憶部１１２の構成の一例を示すブロック図である。
なお、第一の実施の形態において、匿名化指標決定装置１００が、匿名化実行部１１１および匿名化後データ記憶部１１２を含んでもよい。図１０は、匿名化指標決定装置１００、匿名化実行部１１１、および匿名化後データ記憶部１１２を含む匿名化処理実行システム１０の構成の一例を示すブロック図である。
図１１は、第一の実施の形態の第一の変形例における匿名化処理実行システム１０の動作の概要を示すフローチャートである。
データ数特定部１０２は、データ管理部１０１が管理するデータにおいて、属性ごとに、その属性を有するデータのデータ数を特定する（ステップＳ１０１）。
スコア算出部１０３は、複数の閾値に対して、データ数特定部１０２が特定したある属性を有するデータのデータ数が、第一の時刻で、ある閾値以上であり、かつその第一の時刻から単位時間経過した第二の時刻でその閾値を下回る回数を算出する（ステップＳ１０２）。
スコア算出部１０３は、算出された回数に基づいて、閾値ごとのスコアを算出する（ステップＳ１０３）。
閾値特定部１０４は、前述の複数の閾値の中から、算出されたスコアに基づいて特定される一の閾値である匿名化指標を特定する（ステップＳ１０４）。
匿名化データ特定部１０５は、データ管理部１０１が管理しているデータにおいて、次の二条件を判定する（ステップＳ１０５）。第一の条件は、ある一の属性を有するデータのデータ数が、ステップＳ１０４にて特定された匿名化指標より少ないことである。第二の条件は、前述の一の属性を有するデータのデータ数と少なくとも一つ以上の他の属性を有するデータのデータ数との和が前述の匿名化指標以上であることである。つまり、匿名化データ特定部１０５は、対象属性となる一の属性を判定する。
匿名化データ特定部１０５が、データ管理部１０１が管理するデータにおいて前述の二条件が満たされないと判定した場合（ステップＳ１０５の“Ｎｏ”）、匿名化処理実行システム１０の処理は、終了する。
一方、前述の二条件が満たされると判定された場合（ステップＳ１０５の“Ｙｅｓ”）、匿名化データ特定部１０５は、共通する属性に更新するデータとして、前述の対象属性および前述の少なくとも一つ以上の他の属性を有するデータを特定する（ステップＳ１０６）。対象属性が複数特定された場合、匿名化データ特定部１０５は、ある共通する属性に更新するデータとして、その対象属性ごとに、その対象属性と少なくとも一つ以上の他の属性を有するデータを特定する。
匿名化実行部１１１は、匿名化データ特定部１０５が特定したデータを匿名化する（ステップＳ１０７）。そして、匿名化処理実行システム１０の処理は、終了する。
第一の実施の形態の第一の変形例における匿名化指標決定装置１００および匿名化処理実行システム１０は、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定する。そして、匿名化指標決定装置１００および匿名化処理実行システム１０は、複数の閾値に対して、特定されたデータ数が、第一の時刻で、ある閾値以上であり、かつ、その第一の時刻から単位時間経過した第二の時刻でその閾値を下回る回数を算出する。そして、匿名化指標決定装置１００および匿名化処理実行システム１０は、算出した回数に基づいてスコアを算出する。そして、匿名化指標決定装置１００および匿名化処理実行システム１０は、前述の複数の閾値の中から、算出したスコアに基づいて特定される一の閾値である匿名化指標を特定する。匿名化指標決定装置１００および匿名化処理実行システム１０は、ある一の属性を有するデータのデータ数がこの匿名化指標より少なく、かつ、その一の属性を有するデータのデータ数と少なくとも一つ以上の他の属性を有するデータのデータ数との和がその匿名化指標以上である場合に、共通する属性に更新するデータとして、その一の属性（対象属性）および他の属性を有するデータを特定する。匿名化実行部１１１は、その共通する属性に、特定されたデータを更新する。
つまり、第一の実施の形態の第一の変形例における匿名化指標決定装置１００および匿名化処理実行システム１０は、ある閾値を挟んでデータ数が増減した回数に基づいて、匿名化指標を特定し、その匿名化指標に基づいて匿名化処理を実行する。よって、第一の実施の形態の第一の変形例における匿名化指標決定装置１００および匿名化処理実行システム１０は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、そのデータの匿名性を保証できる。
［第一の実施の形態の第二の変形例］
第一の実施の形態において、スコア算出部１０３は、閾値特定部１０４が特定した匿名化指標を受け取ってもよい。そして、スコア算出部１０３は、その匿名化指標における前述のスコアが所定の値以上である場合に、その匿名化指標を含む複数の閾値に対して、それぞれスコアを計算してもよい。
この所定の値とは、少なくとも匿名性が保証できないことを示す値である。ある所定の属性に対して、所定の回数匿名化されたり匿名化されなかったりという振る舞いがなされると、その属性について匿名化されても、匿名化されなかった時点での情報に基づいて類推される可能性が高まる。この所定の値は、この類推される可能性がデータの匿名性を失うか否かの閾値を示す。
第一の実施の形態の第二の変形例における匿名化指標決定装置１００は、元の匿名化指標に基づいて匿名性が保証できないと判定される場合に、新たな匿名化指標を特定する。したがって、本変形例の匿名化指標決定装置１００は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、そのデータの匿名性を保証するための適切な指標値を特定できる。そして、本変形例の匿名化指標決定装置１００は、匿名性が保証できないと判定される場合に、新たな匿名化指標を特定する。そのため、本変形例の匿名化指標決定装置１００は、本来匿名性が保証できる時点での不要な処理負荷を低減できるという効果も奏する。
［第二の実施の形態］
図１２は、第二の実施の形態における匿名化指標決定装置２００の構成の一例を示すブロック図である。図１２を参照すると、第二の実施の形態における匿名化指標決定装置２００は、データ管理部１０１と、データ数特定部１０２と、スコア算出部２０３と、閾値特定部１０４と、匿名化データ特定部２０５と、組み合わせ特定部２０６とを含む。
第二の実施の形態における匿名化指標決定装置２００は、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値以上となる属性の組み合わせを特定する。そして、匿名化指標決定装置２００は、特定された組み合わせの中から、所定の属性を含む組み合わせに含まれる各属性を有するデータのデータ数の和を特定する。匿名化指標決定装置２００は、属性ごとに、その和に占めるその所定の属性を有するデータのデータ数の割合の、第一の時刻における値から第二の時刻における値への変化率を求める（算出する）。匿名化指標決定装置２００は、求めた変化率に基づいて、匿名化指標を特定するためのスコアを算出する。
ここで算出される変化率は、匿名化されたデータから、匿名化される前のデータが類推される確率を示す。
すなわち、変化率の大きなデータは、匿名化処理の前後で、データ数の属性間の比率の変化が大きい。そのため、変化率の大きなデータは、匿名化される前のデータが類推される確率が小さい。一方、変化率の小さなデータは、匿名化処理の前後で、データ数の属性間の比率の変化が小さい。そのため、変化率の小さなデータは、匿名化される前のデータが類推される確率が大きい。
第二の実施の形態における匿名化指標決定装置２００は、匿名化される前のデータが類推される確率に基づいて、匿名化指標を特定するためのスコアを算出する。よって、匿名化指標決定装置２００は、時間とともに所定のグループに含まれるデータのデータ数が増減し、匿名化される前のデータが類推される可能性が高い場合でも、そのデータの匿名性を保証するための適切な指標値を特定できる。
以下、第二の実施の形態における匿名化指標決定装置２００が含む各構成要素について説明する。
＝＝＝スコア算出部２０３＝＝＝
スコア算出部２０３は、複数の閾値に対して、データ数特定部１０２が特定したある一の属性を有するデータのデータ数が、第一の時刻で、ある閾値以上であり、かつその第一の時刻から単位時間経過した第二の時刻でその閾値未満である場合に、以下の処理を実行する。ここで、前述の二条件を満たす「一の属性」は、本明細書において、「算出対象属性」とも呼ばれる。
スコア算出部２０３は、後述の組み合わせ特定部２０６が特定した組み合わせの中から、前述の算出対象属性を含む組み合わせを特定する。そして、スコア算出部２０３は、特定された組み合わせに含まれる属性ごとに、その組み合わせに含まれる各属性を有するデータのデータ数の和に占めるその算出対象属性を含むデータのデータ数の割合の、第一の時刻における値から単位時間経過した第二の時刻における値への変化率を求める。
以下、図３を参照して説明する。ここで、閾値ｋは、ｋ＝５とする。ｋ＝５とすると、第二の時刻をｔ１とした属性「自由が丘」および「緑が丘」、並びに第二の時刻をｔ３とした属性「自由が丘」および「緑が丘」が、算出対象属性に該当する。そして、これらの算出対象属性を含む組み合わせは、属性「自由が丘」＋「緑が丘」とする。以下、この組み合わせは、「組み合わせ「自由が丘」＋「緑が丘」」とも呼ばれる。
スコア算出部２０３は、第一の時刻における、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和に占める、その算出対象属性を含むデータのデータ数の割合Ｐ０を算出する。例えば、第一の時刻がｔ０の場合、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和は、１０である。そして、時刻ｔ０において、属性「自由が丘」を含むデータのデータ数の前述の和に占める割合は、５／１０＝１／２である。また、第一の時刻がｔ０の場合、属性「緑が丘」を含むデータのデータ数の前述の和に占める割合は、５／１０＝１／２である。
次に、スコア算出部２０３は、第二の時刻における、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和に占める、その算出対象属性を含むデータのデータ数の割合Ｐ１を算出する。例えば、第二の時刻がｔ１の場合、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和は、７である。そして、時刻ｔ１において、属性「自由が丘」を含むデータのデータ数の前述の和に占める割合は、４／７である。また、第二の時刻がｔ１の場合、属性「緑が丘」を含むデータのデータ数の前述の和に占める割合は、３／７である。
次に、スコア算出部２０３は、前述の割合Ｐ０およびＰ１に基づいて変化率ＳＰｋ（ａｔｔｒ，ｔ）を算出する。ここで、ｋは閾値であり、ａｔｔｒは算出対象属性であり、ｔは第二の時刻である。具体的には、スコア算出部２０３は、［数３］に示される計算方法を用いて、変化率ＳＰｋ（ａｔｔｒ，ｔ）を算出する。
【数３】
2012176923.tif 000005
前述の例の場合、［数４］に示すように、算出対象属性「自由が丘」についての変化率ＳＰ５（自由が丘，ｔ１）は、ＳＰ＝１／８と算出される。
【数４】
2012176923.tif 000006
また、前述の例の場合、［数５］に示されるように、算出対象属性「緑が丘」についての変化率ＳＰ５（緑ヶ丘，ｔ１）は、ＳＰ＝１／６と算出される。
【数５】
2012176923.tif 000007
第一の時刻がｔ２の場合における変化率ＳＰｋ（ａｔｔｒ，ｔ）は、以下の［数６］に示されるように算出される。
【数６】
2012176923.tif 000008
スコア算出部２０３は、前述の変化率ＳＰｋ（ａｔｔｒ，ｔ）を用いて、閾値ごとに、以下の［数７］に示される方法に基づいてスコアＳｃ（ｋ）を算出する。［数７］においてＡは、算出対象属性を含む組み合わせに含まれる属性の集合である。ａｔｔｒは、前述の組み合わせに含まれる属性である。今の場合、ａｔｔｒは、「自由が丘」および「緑が丘」である。また、Ｔ’は、所定の時間の中で「第二の時刻」に該当する時刻を含む集合である。今の場合、Ｔ’は、時刻ｔ１およびｔ３を含む。ｔは、Ｔ’に含まれる各時刻、すなわち、時刻ｔ１またはｔ３である。なお、［数７］を用いて算出される値は、本明細書において「プライバシーロス（Ｐｒｉｖａｃｙ  Ｌｏｓｓ）」とも呼ばれる。そして、当該値は、ＰＬ（ｋ）とも表記される。
【数７】
2012176923.tif 000009
［数７］に基づけば、スコアＳｃ（ｋ）は、変化率ＳＰｋ（ａｔｔｒ，ｔ）の、算出対象属性間における平均に１を加算した値の逆数の、所定の時刻間の「第二の時刻」における和に基づいて算出される。
前述の例の場合、スコア算出部２０３は、［数８］に示されるように、スコアＳｃ（５）＝１０３／５５（＝１．８７…）と算出する。
【数８】
2012176923.tif 000010
図３において閾値ｋがｋ＝６である場合、スコアは、以下のように算出される。
ｋ＝６の場合、第二の時刻をｔ３とした属性「自由が丘」および「緑が丘」が、算出対象属性に該当する。
まず、スコア算出部２０３は、第一の時刻における、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和に占める、その算出対象属性を含むデータのデータ数の割合Ｐ０を算出する。
第一の時刻がｔ２の場合、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和は、１２である。そして、ｔ２において、属性「自由が丘」を含むデータのデータ数の、前述の和に占める割合は、６／１２＝１／２である。また、第一の時刻がｔ２の場合、属性「緑が丘」を含むデータのデータ数の、前述の和に占める割合は、６／１２＝１／２である。
次に、スコア算出部２０３は、第二の時刻における、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和に占める、その算出対象属性を含むデータのデータ数の割合Ｐ１を算出する。
第二の時刻がｔ３の場合、組み合わせ「自由が丘」＋「緑が丘」に含まれる各属性を有するデータのデータ数の和は、８である。そして、ｔ３において、属性「自由が丘」を含むデータのデータ数の、前述の和に占める割合は、４／８＝１／２である。また、第二の時刻がｔ３の場合、属性「緑が丘」を含むデータのデータ数の、前述の和に占める割合は、４／８＝１／２である。
そして、スコア算出部２０３は、前述の割合Ｐ０およびＰ１に基づいて変化率ＳＰ６（ａｔｔｒ，ｔ３）を算出する。ｋ＝６の場合、Ｐ０およびＰ１は、いずれも１／２である。そのため、ＳＰ６（ａｔｔｒ，ｔ３）＝０である。よって、スコア算出部２０３は、閾値ｋ＝６におけるスコアを、以下の［数９］に示される方法を用いて算出する。
【数９】
2012176923.tif 000011
また、図３において閾値ｋがｋ＝７である場合、算出対象属性が存在しない。したがって、Ｔ’は空集合であるので、スコアＳｃ（７）は、［数１０］に示されるように０である。
【数１０】
2012176923.tif 000012
＝＝＝組み合わせ特定部２０６＝＝＝
組み合わせ特定部２０６は、複数の閾値ごとに、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値以上となる属性の組み合わせを特定する。
複数の閾値とは、スコア算出部２０３が使用する複数の閾値と同様の値である。組み合わせ特定部２０６は、スコア算出部２０３がある閾値に基づいて所定の条件を満たすか否か判定する。そして、その条件を満たした際に、スコア算出部２０３は、前述のある閾値を、組み合わせ特定部２０６に渡してもよい。組み合わせ特定部２０６は、スコア算出部２０３から閾値を受け取ると、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、受け取った閾値以上となる属性の組み合わせを特定してもよい。
図１３および図１４は、閾値ｋ＝５のときの組み合わせ特定部２０６の処理の一例を示す図である。例えば、図１３を参照すると、属性ｃおよびｄを有するデータは、それぞれ閾値「５」未満である。また、属性ｃおよびｄを有するデータのデータ数の和は、６であり、閾値「５」以上である。一方、属性ａおよびｂを有するデータのデータ数は、それぞれ５であり、閾値「５」以上である。よって、組み合わせ特定部２０６は、属性ａ、属性ｂ、および属性ｃ＋ｄという、属性の組み合わせを特定する。
ここで、組み合わせ特定部２０６は、複数の属性を含む組み合わせに該当するデータのデータ数が最小となる組み合わせを特定してもよい。複数の属性を含む組み合わせに該当するデータは、匿名化処理の対象として扱われる。そのため、該当するデータのデータ数が最小となる組み合わせは、匿名化処理に基づく情報量の損失量を小さくする。
また、例えば、図１４を参照すると、属性ｂおよびｃを有するデータは、それぞれ閾値「５」未満である。また、属性ａおよびｄを有するデータのデータ数は、それぞれ閾値「５」以上である。ここで、属性ｂおよびｃを有するデータのデータ数の和は、「３」であり、依然として閾値未満である。この場合、組み合わせ特定部２０６は、閾値以上で最小のデータ数を有するデータの属性を、閾値未満のデータ数のデータの属性の組み合わせに追加する。すなわち、組み合わせ特定部２０６は、属性ａおよび属性ｂ＋ｃ＋ｄ、という属性の組み合わせを特定する。
＝＝＝匿名化データ特定部２０５＝＝＝
匿名化データ特定部２０５は、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれる場合に、共通する属性に更新するデータとして、その各属性を有するデータを特定する。匿名化データ特定部２０５が備える他の機能は、第一の実施の形態における匿名化データ特定部１０５と同様である。
共通する属性とは、例えば、前述の組み合わせに含まれる各属性に共通する上位概念を示す属性であってもよい。例えば、図４の例の場合、匿名化データ特定部２０５は、属性「自由が丘」および「中目黒」を有するデータを、それぞれが有する属性が属性「目黒区」に更新されるデータとして特定する。また、前述の組み合わせに含まれる各属性の間で階層関係が存在する場合、共通する属性とは、前述の各属性の中の上位概念を示す属性であってもよい。例えば、図４の例の場合、一の属性が属性「自由が丘」であり、他の属性が「目黒区」である場合に、匿名化データ特定部２０５は、以下のように動作してもよい。すなわち、匿名化データ特定部２０５は、それぞれが有する属性が属性「目黒区」に更新されるデータとして、属性「自由が丘」および「目黒区」を有するデータを特定してもよい。なお、ここでの、一の属性とは、第一の実施の形態における匿名化データ特定部１０５での処理における「第一の条件」を満たす属性である。第一の条件は、一の属性を有するデータのデータ数が、閾値特定部１０４が特定した匿名化指標より少ないこと、である。
図１５は、第二の実施の形態における匿名化指標決定装置２００の動作の概要を示すフローチャートである。
データ数特定部１０２は、データ管理部１０１が管理するデータにおいて、属性ごとに、その属性を有するデータのデータ数を特定する（ステップＳ１０１）。
スコア算出部２０３は、複数の閾値の中のある閾値ｋに対して、次の二条件を満たす属性（算出対象属性）を特定する（ステップＳ２０１）。第一の条件は、その属性を有するデータのデータ数が、第一の時刻で、ある閾値以上であることである。第二の条件は、その第一の時刻から単位時間経過した第二の時刻でその閾値を下回ることである。スコア算出部２０３は、閾値ｋを組み合わせ特定部２０６に渡す。
組み合わせ特定部２０６は、閾値ｋについて、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値ｋ以上となる属性の組み合わせを特定する（ステップＳ２０２）。
スコア算出部２０３は、組み合わせ特定部２０６が特定した組み合わせの中から、ステップＳ２０１にて特定された算出対象属性を含む組み合わせを特定する（ステップＳ２０３）。そして、スコア算出部２０３は、前述の組み合わせに含まれる属性ごとに、特定された組み合わせに含まれる各属性を有するデータのデータ数の和に占める、その算出対象属性を含むデータのデータ数の割合の変化率を求める（ステップＳ２０４）。
スコア算出部２０３は、複数の閾値の全てに対して算出対象属性を特定したか否か判定する（ステップＳ２０５）。
スコア算出部２０３が、算出対象属性を特定していない閾値があると判定した場合（ステップＳ２０５の“Ｎｏ”）、匿名化指標決定装置２００の処理は、ステップＳ２０１に戻り、同様の処理を繰り返す。
一方、スコア算出部２０３が、複数の閾値の全てに対して算出対象属性を特定したと判定した場合（ステップＳ２０５の“Ｙｅｓ”）、匿名化指標決定装置２００の処理は、ステップＳ２０６へ進む。
スコア算出部２０３は、前述の変化率を用いて、閾値ごとのスコアを算出する（ステップＳ２０６）。
閾値特定部１０４は、スコア算出部２０３が用いた複数の閾値の中から、算出されたスコアに基づいて特定される一の閾値である匿名化指標を特定する（ステップＳ１０４）。
匿名化データ特定部２０５は、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれるか否か判定する（ステップＳ２０７）。
匿名化データ特定部２０５は、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれると判定した場合（ステップＳ２０７の“Ｙｅｓ”）、共通する属性に更新するデータとして、その各属性を有するデータを特定する（ステップＳ２０８）。そして、匿名化指標決定装置２００の処理は、終了する。
一方、匿名化データ特定部２０５が、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれないと判定した場合（ステップＳ２０７の“Ｎｏ”）、匿名化指標決定装置２００の処理は、終了する。
第二の実施の形態における匿名化指標決定装置２００は、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値以上となる属性の組み合わせを特定する。そして、匿名化指標決定装置２００は、特定された組み合わせの中から、所定の属性を含む組み合わせに含まれる各属性を有するデータのデータ数の和を特定する。匿名化指標決定装置２００は、属性ごとに、その和に占めるその所定の属性を有するデータのデータ数の割合の、第一の時刻における値から第二の時刻における値への変化率を求める。匿名化指標決定装置２００は、その変化率に基づいて、匿名化指標を特定するためのスコアを算出する。
算出される変化率は、匿名化されたデータから、匿名化される前のデータが類推される確率を示す。すなわち、変化率の大きいデータは、匿名化処理の前後で、データ数の属性間の比率が大きい。そのため、変化率の大きなデータは、匿名化される前のデータが類推される確率が小さい。一方、変化率の小さいデータは、匿名化処理の前後でデータ数の属性間の比率の変化が小さい。そのため、変化率の小さなデータは、匿名化される前のデータが類推される確率が大きい。
第二の実施の形態における匿名化指標決定装置２００は、匿名化される前のデータが類推される確率に基づいて、匿名化指標を特定するためのスコアを算出する。よって、匿名化指標決定装置２００は、時間とともに所定のグループに含まれるデータのデータ数が増減し、匿名化される前のデータが類推される可能性が高い場合でも、そのデータの匿名性を保証するための適切な指標値を特定できる。
［第三の実施の形態］
図１６は、第三の実施の形態における匿名化指標決定装置３００の構成の一例を示すブロック図である。図１６を参照すると、第三の実施の形態における匿名化指標決定装置３００は、データ管理部１０１と、データ数特定部１０２と、スコア算出部３０３と、閾値特定部１０４と、匿名化データ特定部２０５と、組み合わせ特定部２０６とを含む。
第三の実施の形態における匿名化指標決定装置３００は、インフォメーションロスと、第二の実施の形態における匿名化指標決定装置２００と同様の方法を用いて算出する変化率とに基づいて、匿名化指標を特定するためのスコアを算出する。インフォメーションロスとは、匿名化処理のために、失われる情報量を示す情報である。
データの匿名性を保証するように匿名化指標を特定すると、情報量が失われる匿名化処理が行われる。
そこで、第三の実施の形態における匿名化指標決定装置３００は、データの匿名性を保証するとともに、匿名化処理のために失われる情報量にも基づいて、匿名化処理に用いられる匿名化指標を特定する。第三の実施の形態における匿名化指標決定装置３００は、時間とともに所定のグループに含まれるデータのデータ数が増減し、匿名化される前のデータが類推される可能性が高い場合でも、そのデータの匿名性を保証するための適切な指標値を特定できる。さらに、第三の実施の形態における匿名化指標決定装置３００は、匿名化処理のために失われる情報量を、低減する適切な指標値を特定できる。
以下、第三の実施の形態における匿名化指標決定装置３００が含む各構成要素について説明する。
＝＝＝スコア算出部３０３＝＝＝
スコア算出部３０３は、インフォメーションロスと変化率とに基づいて、複数の閾値ごとに、スコアを算出する。
インフォメーションロスとは、組み合わせ特定部２０６が特定した組み合わせの中で、複数の属性を含む組み合わせに基づいて推定される、その組み合わせに適用される匿名化処理のため失われる情報量を示す情報である。閾値ｋに対して算出されるインフォメーションロスとは、所定の閾値ｋに対するｋ−匿名性を保証するための匿名化処理のために失われる情報量を示す情報である。
インフォメーションロスとは、例えば、データ管理部１０１が管理するデータのデータ数に占める、組み合わせ特定部２０６が特定した組み合わせのうちの複数の属性を含む組み合わせで特定される属性を有するデータのデータ数の和の割合に基づいて、推定される情報量を示す情報であってもよい。
スコア算出部３０３は、例えば、以下の［数１１］および［数１２］に示される算出方法に基づいて、複数の閾値ごとに、インフォメーションロスを算出する。
［数１１］において、各記号の意味は、以下の通りである。ＩＬ（ｋ）は、閾値ｋにおけるインフォメーションロスである。Ｔは、所定の時間である。今の場合、Ｔは、時刻ｔ０、ｔ１、ｔ２、ｔ３を含む。ｔは、Ｔに含まれる各時刻、すなわち時刻ｔ０、ｔ１、ｔ２、ｔ３である。ｄｋ（ｔ）は、複数の属性を含む組み合わせで特定される属性を有するデータのデータ数の和を示す関数である。具体的にはｄｋ（ｔ）は、［数１２］で表される方法を用いて計算される関数である。Ｎ（ｔ）は、時刻ｔにおいてデータ管理部１０１が管理するデータの総数である。
［数１２］において、各記号の意味は、以下の通りである。ａｔｔｒは、属性を示す。ｄ（ａｔｔｒ，ｔ）は、時刻ｔにおける、属性ａｔｔｒを有するデータの集合である。Ｃ（ｔ）は、時刻ｔにおける組み合わせである。ｃｏｕｎｔ（Ｃ（ｔ））は、組み合わせＣ（ｔ）に含まれる属性の数を算出する関数である。Ｐ（ｔ）は、組み合わせ特定部２０６が特定した組み合わせＣ（ｔ）の集合である。
【数１１】
2012176923.tif 000013
【数１２】
2012176923.tif 000014
［数１２］は、ｄｋ（ｔ）が、複数の属性を含む組み合わせＣ（ｔ）で特定される属性ａｔｔｒを有するデータのデータ数の和であることを示している。
以下は、図３に示されるデータについてのインフォメーションロスの計算例である。図３において閾値ｋ＝５の場合、各時刻における組み合わせＣ（ｔ）の集合Ｐ（ｔ）、およびｃｏｕｎｔ（Ｃ（ｔ））は、以下の［数１３］に示されるように特定される。なお、［数１３］において、組み合わせＣ（ｔ）は、簡単のため、その組み合わせＣ（ｔ）に含まれる属性の集合として表記されている。
【数１３】
2012176923.tif 000015
よって、閾値ｋ＝５の場合、各時刻におけるｄｋ（ｔ）（＝ｄ５（ｔ））は、以下の［数１４］に示されるように計算される。
【数１４】
2012176923.tif 000016
したがって、ｋ＝５の場合のインフォメーションロスＩＬ（５）は、［数１５］に示されるように計算される。
【数１５】
2012176923.tif 000017
同様に、図３において、閾値ｋ＝６および７の場合におけるインフォメーションロスは、それぞれ［数１６］に示されるように計算される。
【数１６】
2012176923.tif 000018
また、スコア算出部３０３は、第二の実施の形態におけるスコア算出部２０３の処理と同様の方法に基づき、複数の閾値ごとに変化率を算出する。そして、スコア算出部３０３は、前述の変化率に基づいて、複数の閾値ごとに、プライバシーロスＰＬ（ｋ）を算出する。
スコア算出部３０３は、複数の閾値のそれぞれに対して、インフォメーションロスを算出する。そして、スコア算出部３０３は、算出したインフォメーションロスとプライバシーロスとに基づいて、複数の閾値ごとに、スコアを算出する。
具体的には、スコア算出部３０３は、以下の［数１７］に示される方法に基づいて、複数の閾値ごとに、スコアを算出する。
【数１７】
2012176923.tif 000019
［数１７］において、α１、α２、β１、およびβ２は、それぞれ、任意の定数である。
例えば、α１、α２、β１、およびβ２の値がそれぞれ１の場合、スコア算出部３０３は、［数１８］ないし［数２０］に示されるように、閾値ｋ＝５，６，７におけるそれぞれのスコアＳｃ（ｋ）を算出する。
【数１８】
2012176923.tif 000020
【数１９】
2012176923.tif 000021
【数２０】
2012176923.tif 000022
スコア算出部３０３は、前述の抽象化ツリーに基づいて、複数の閾値ごとに、インフォメーションロスを算出してもよい。具体的には、スコア算出部３０３は、以下の各ステップに基づいて、インフォメーションロスを算出してもよい。
第一に、スコア算出部３０３は、前述の抽象化ツリーにおいて、組み合わせＣ（ｔ）に含まれる各属性が対応するノードを特定する。
第二に、スコア算出部３０３は、特定された各属性の抽象化ツリーにおけるノードの全ての上位概念（親またはツリーの根）であるノードを特定する。
第三に、スコア算出部３０３は、特定された各属性の抽象化ツリーにおけるノードのそれぞれについて、前述の上位概念のノードまでの階層の差を算出する。この差は、抽象化処理の前後におけるデータの属性の抽象度の差を示す。この差が大きいほど抽象度が増し、情報の損失量が大きくなる。
以下の説明は、図４に示される抽象化ツリーに基づいた、スコア算出部３０３の前述の第三の処理の一例である。
組み合わせＣ（ｔ）に、属性「自由が丘」、「中目黒」、および「港区」が含まれている場合、スコア算出部３０３は、各属性が対応する抽象化ツリー上でのノードを特定する。そして、スコア算出部３０３は、特定された各ノードの全ての上位概念であるノードを特定する。図４の例において、スコア算出部３０３は、属性「東京都特別区」を前述の上位概念であるノードと特定する。そして、スコア算出部３０３は、組み合わせＣ（ｔ）に含まれる属性ごとにそれぞれが対応するノードと、前述の上位概念であるノード「東京都特別区」との階層の差を算出する。図４を参照すると、スコア算出部３０３は、「自由が丘」と「東京都特別区」との階層の差を「２」と算出する。また、スコア算出部３０３は、「中目黒」と「東京都特別区」との階層の差を「２」と算出する。スコア算出部３０３は、「港区」と「東京都特別区」との階層の差を「１」と算出する。
第四に、スコア算出部３０３は、データ管理部１０１が管理するデータのデータ数に占める、組み合わせ特定部２０６が特定した組み合わせの中で、複数の属性を含む組み合わせで特定される属性を有するデータのデータ数の和の割合と、前述の階層の差とに基づいて、インフォメーションロスを算出する。
スコア算出部３０３は、例えば、以下の［数２１］および［数２２］に示される算出方法に基づいて、インフォメーションロスを算出する。
［数２１］において、各記号の意味は、以下の通りである。ＩＬ（ｋ）は、閾値ｋにおけるインフォメーションロスである。Ｔは、所定の時間である。今の場合、Ｔは、例えば時刻ｔ０、ｔ１、ｔ２、ｔ３を含む。この場合、ｔは、Ｔに含まれる各時刻、すなわち時刻ｔ０、ｔ１、ｔ２、ｔ３である。ｄｋ（ｔ）は、複数の属性を含む組み合わせで特定される属性を有するデータのデータ数の和を示す関数である。具体的には、ｄｋ（ｔ）は、［数２２］で表される方法を用いて計算される関数である。Ｎ（ｔ）は、時刻ｔにおいてデータ管理部１０１が管理するデータの総数である。
［数２２］において、各記号の意味は、以下の通りである。ａｔｔｒは、属性を示す。ｄ（ａｔｔｒ，ｔ）は、時刻ｔにおける、属性ａｔｔｒを有するデータの集合である。Ｃ（ｔ）は、時刻ｔにおける組み合わせである。ｃｏｕｎｔ（Ｃ（ｔ））は、組み合わせＣ（ｔ）に含まれる属性の数を算出する関数である。Ｐ（ｔ）は、組み合わせ特定部２０６が特定した組み合わせＣ（ｔ）の集合である。Δｍ（ａｔｔｒ，ｔ）は、属性ａｔｔｒを含むＣ（ｔ）に含まれる各属性に対応する、抽象化ツリーにおけるノードのそれぞれについて、それらの全ての上位概念を示すノードまでの階層の差である。
【数２１】
2012176923.tif 000023
【数２２】
2012176923.tif 000024
［数２２］は、ｄｋ（ｔ）が、複数の属性を含む組み合わせＣ（ｔ）で特定される属性ａｔｔｒを有するデータのデータ数の和と、抽象化処理の前後における属性ａｔｔｒを有するデータの属性の抽象度の差と、の積であることを示している。
前述の例において、スコア算出部３０３は、データ管理部１０１が管理するデータのデータ数に占める、組み合わせ特定部２０６が特定した組み合わせにおける複数の属性を含む組み合わせで特定される属性を有するデータのデータ数の和の割合を用いた。しかし、スコア算出部３０３は、この割合に基づかなくてもよい。この場合、例えば、スコア算出部３０３は、前述の抽象化ツリーに基づいて、複数の閾値ごとに、インフォメーションロスを算出してもよい。この場合、スコア算出部３０３は、例えば、以下の［数２３］および［数２４］に示される算出方法に基づいて、インフォメーションロスを算出する。
【数２３】
2012176923.tif 000025
【数２４】
2012176923.tif 000026
図１７は、第三の実施の形態における匿名化指標決定装置３００の動作の概要を示すフローチャートである。
データ数特定部１０２は、データ管理部１０１が管理するデータにおいて、属性ごとに、その属性を有するデータのデータ数を特定する（ステップＳ１０１）。
スコア算出部３０３は、複数の閾値の中のある閾値ｋに対して、次の二条件を満たす属性（算出対象属性）を特定する（ステップＳ２０１）。第一の条件は、その属性を有するデータのデータ数が、第一の時刻で、ある閾値以上であることである。第二の条件は、その第一の時刻から単位時間経過した第二の時刻でその閾値を下回ることである。スコア算出部３０３は、閾値ｋを組み合わせ特定部２０６に渡す。
組み合わせ特定部２０６は、閾値ｋについて、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値ｋ以上となる属性の組み合わせを特定する（ステップＳ２０２）。ここで、組み合わせ特定部２０６は、複数の属性を含む組み合わせに該当するデータ数が最小となる組み合わせを特定してもよい。
スコア算出部３０３は、組み合わせ特定部２０６が特定した組み合わせの中から、ステップＳ２０１にて特定された算出対象属性を含む組み合わせを特定する（ステップＳ２０３）。そして、スコア算出部３０３は、前述の組み合わせに含まれる属性ごとに、特定した組み合わせに含まれる各属性を有するデータのデータ数の和に占める、その算出対象属性を含むデータのデータ数の割合の変化率を求める（ステップＳ２０４）。
スコア算出部３０３は、前述の変化率を用いて、前述の閾値ｋに対するプライバシーロスを算出する（ステップＳ３０１）。
スコア算出部３０３は、前述の閾値ｋに対する、インフォメーションロスを算出する（ステップＳ３０２）。
スコア算出部３０３は、複数の閾値の全てに対して、算出対象属性を特定したか否か判定する（ステップＳ３０３）。
スコア算出部３０３が、算出対象属性を特定していない閾値があると判定した場合（ステップＳ３０３の“Ｎｏ”）、匿名化指標決定装置３００の処理は、ステップＳ２０１に戻る。
一方、スコア算出部２０３が、複数の閾値の全てに対して算出対象属性を特定したと判定した場合（ステップＳ３０３の“Ｙｅｓ”）、匿名化指標決定装置３００の処理は、ステップＳ３０４へ進む。
スコア算出部３０３は、ステップＳ３０１にて算出されるプライバシーロスと、ステップＳ３０２にて算出されるインフォメーションロスとに基づいて、閾値ごとにスコアを算出する（ステップＳ３０４）。
閾値特定部１０４は、スコア算出部３０３が用いた複数の閾値の中から、算出されたスコアに基づいて特定される一の閾値である匿名化指標を特定する（ステップＳ１０４）。
匿名化データ特定部２０５は、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれるか否か判定する（ステップＳ２０７）。
匿名化データ特定部２０５が、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれると判定した場合（ステップＳ２０７の“Ｙｅｓ”）、匿名化データ特定部２０５は、その各属性を有するデータを、共通する属性に更新するデータとして特定する（ステップＳ２０８）。そして、匿名化指標決定装置３００の処理は、終了する。
一方、匿名化データ特定部２０５が、組み合わせ特定部２０６が特定した組み合わせに複数の属性が含まれないと判定した場合（ステップＳ２０７の“Ｎｏ”）、匿名化指標決定装置３００の処理は、終了する。
第三の実施の形態における匿名化指標決定装置３００は、インフォメーションロスと、第二の実施の形態における匿名化指標決定装置２００と同様の方法を用いて算出される変化率とに基づいて、匿名化指標を特定するためのスコアを算出する。インフォメーションロスとは、匿名化処理のために失われる情報量を示す情報である。
データの匿名性を保証するように匿名化指標を特定すると、情報量が失われる匿名化処理が行われる。そこで、第三の実施の形態における匿名化指標決定装置３００は、データの匿名性を保証するとともに、匿名化処理のために失われる情報量にも基づいて、匿名化処理に用いられる匿名化指標を特定する。したがって、第三の実施の形態における匿名化指標決定装置３００は、時間とともに所定のグループに含まれるデータのデータ数が増減し、匿名化される前のデータが類推される可能性が高い場合でも、そのデータの匿名性を保証するための適切な指標値を特定できる。さらに、第三の実施の形態における匿名化指標決定装置３００は、匿名化処理のために失われる情報量を低減させる適切な指標値を特定できる。
［第四の実施の形態］
第三の実施の形態において、スコア算出部３０３は、匿名化方法としてグローバルリコーディングが適用された場合のインフォメーションロスを算出した。
スコア算出部３０３は、匿名化処理としてローカルリコーディングが適用された場合のインフォメーションロスに基づいて、スコアを算出してもよい。また、スコア算出部３０３は、グローバルリコーディングが適用される場合のインフォメーションロスと、ローカルリコーディングが適用される場合のインフォメーションロスとを比較してもよい。そして、スコア算出部３０３は、より値の小さいインフォメーションロスを用いてスコアを算出してもよい。
図１８に示されるように、閾値ｋ＝５、属性Ａのデータのデータ数が１０、および属性Ｂのデータのデータ数が４の場合におけるスコア算出部３０３の動作を、一例として説明する。
図１８に示されるデータに対して、匿名化処理としてグローバルリコーディングが適用される場合、属性Ａを有するデータの１０個と属性Ｂを有するデータの４個とを合わせた１４個のデータが、匿名化処理される（パターン１）。よって、スコア算出部３０３は、匿名化処理の対象となるデータとして、前述の１４個のデータをインフォメーションロスの計算対象とする。
一方、匿名化処理としてローカルリコーディングが適用される場合、属性Ａを有するデータの１個と属性Ｂを有するデータの４個とを合わせた５個のデータが、匿名化処理される（パターン２）。よって、スコア算出部３０３は、匿名化処理の対象となるデータとして、前述の５個のデータをインフォメーションロスの計算対象とする。
具体的には、スコア算出部３０３は、組み合わせ特定部２０６が特定した組み合わせに含まれるデータの構成を変更する。図１８に示すの場合、スコア算出部３０３は、組み合わせ特定部２０６が特定した組み合わせＣ（ｔ）＝｛Ａ，Ｂ｝を、２個の組み合わせ「Ｃ１（ｔ）＝｛Ａ｝およびＣ２（ｔ）＝｛Ａ，Ｂ｝」に分割する。組み合わせＣ１（ｔ）は、属性Ａを有するデータ９個を含む。また、組み合わせＣ２（ｔ）は、属性Ａを有するデータ１個と、属性Ｂを有するデータ４個とを含む。
パターン１およびパターン２のいずれにおいても、ある一つの属性を有するデータのデータ数は、閾値である５以上である。例えば、パターン１の場合、属性Ａ＋Ｂを有するデータのデータ数は、１４である。また、パターン２の場合、属性Ａを有するデータのデータ数は９、属性Ａ＋Ｂを有するデータのデータ数は５である。したがって、パターン１およびパターン２のいずれの場合も、ｋ＝５の場合のｋ−匿名性を満たしている。
スコア算出部３０３は、パターン１の場合のインフォメーションロス、およびパターン２の場合のインフォメーションロスを算出する。そして、スコア算出部３０３は、算出結果を比較する。具体的には、スコア算出部３０３は、前述の［数１１］および［数１２］に示される方法を用いて、それぞれのインフォメーションロスを計算する。パターン１の場合、インフォメーションロスＩＦ（５）は、１４／１４＝１である。また、パターン２の場合、インフォメーションロスＩＦ（５）は、５／１４である。
よって、スコア算出部３０３は、パターン２の場合のインフォメーションロスＩＦ（５）＝５／１４を用いて、スコアを算出する。
パターン２（ローカルリコーディング）を用いたインフォメーションロスがスコア算出に使われる場合、匿名化データ特定部２０５は、スコア算出部３０３が構成を変更した組み合わせに基づいて、共通の属性に更新するデータを特定する。
第四の実施の形態において、スコア算出部３０３は、組み合わせ特定部２０６が特定した組み合わせごとに、インフォメーションロスを算出してもよい。その際、スコア算出部３０３は、その組み合わせごとに、それぞれのグローバルリコーディングとローカルリコーディングのいずれのインフォメーションロスが小さいかを判定してもよい。
第四の実施の形態における匿名化指標決定装置３００は、ｋ−匿名性を満たさないデータのデータ数およびｋ−匿名性を満たすデータのデータ数に基づいて、インフォメーションロスのより小さい匿名化方法が選択されるように、データの組み合わせの構成を変更する。よって、第四の実施の形態における匿名化指標決定装置３００は、第三の実施の形態における匿名化指標決定装置３００と同様の効果を奏するとともに、匿名化処理のために失われる情報量を、さらに低減させる適切な指標値を特定できる。
本発明の効果の一例は、時間とともに所定のグループに含まれるデータのデータ数が増減する場合でも、そのデータの匿名性を保証するための適切な指標値を特定できることである。
以上、各実施の形態および実施例を参照して本発明を説明したが、本発明は上記実施の形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しえる様々な変更をすることができる。
また、本発明の各実施の形態における各構成要素は、その機能をハードウェア的に実現することはもちろん、コンピュータとプログラムとで実現することができる。プログラムは、磁気ディスクや半導体メモリなどのコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御し、そのコンピュータを前述した各実施の形態における構成要素として機能させる。
この出願は、２０１１年６月２０日に出願された日本出願特願２０１１−１３６４８８を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０００８】
本発明における匿名化指標決定装置は、時刻とともに管理するデータのデータ数が増減するセンシティブデータ管理システムに適用されうる。
【符号の説明】
【０００９】
１０  匿名化処理実行システム
１００、２００、３００  匿名化指標決定装置
１０１  データ管理部
１０２  データ数特定部
１０３、２０３、３０３  スコア算出部
１０４  閾値特定部
１０５、２０５  匿名化データ特定部
１１１  匿名化実行部
１１２  匿名化後データ記憶部
１９１  ＣＰＵ
１９２  通信Ｉ／Ｆ
１９３  メモリ
１９４  記憶装置
１９５  入力装置
１９６  出力装置
１９７  バス
１９８  記録媒体
２０６  組み合わせ特定部
【図１】
2012176923.tif 000027
【図２】
2012176923.tif 000028
【図３】
2012176923.tif 000029
【図４】
2012176923.tif 000030
【図５】
2012176923.tif 000031
【図６】
2012176923.tif 000032
【図７】
2012176923.tif 000033
【図８】
2012176923.tif 000034
【図９】
2012176923.tif 000035
【図１０】
2012176923.tif 000036
【図１１】
2012176923.tif 000037
【図１２】
2012176923.tif 000038
【図１３】
2012176923.tif 000039
【図１４】
2012176923.tif 000040
【図１５】
2012176923.tif 000041
【図１６】
2012176923.tif 000042
【図１７】
2012176923.tif 000043
【図１８】
2012176923.tif 000044
【手続補正書】
【提出日】平成25年12月12日(2013.12.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
属性を有するデータを管理するデータ管理手段と、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有する前記データのデータ数を特定するデータ数特定手段と、
閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出するスコア算出手段と、
前記閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する閾値特定手段と、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する匿名化データ特定手段と、
を含む匿名化指標決定装置。
【請求項２】
請求項１に記載の匿名化指標決定装置であって、
前記閾値に対して、ある属性を有するデータのデータ数、または、複数の属性の中のいずれかを有するデータのデータ数の和が、閾値以上となる属性の組み合わせを特定する組み合わせ特定手段を備え、
前記スコア算出手段は、属性ごとに、前記組み合わせ特定手段が特定した組み合わせの中で、前記一の属性を含む組み合わせに含まれる各属性を有するデータのデータ数の和に占める前記一の属性を含むデータのデータ数の割合の、前記第一の時刻における値から前記第二の時刻における値への変化率を求め、閾値ごとに当該変化率に基づいて前記スコアを算出し、
前記匿名化データ特定手段は、前記特定された組み合わせに複数の属性が含まれる場合に、前記共通する属性に更新するデータとして、当該複数の属性を有する各データを特定する、匿名化指標決定装置。
【請求項３】
請求項２に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記変化率の属性間の平均に基づく値の逆数の前記所定の時間の時刻間における和に基づいて、閾値ごとに、前記スコアを算出する、匿名化指標決定装置。
【請求項４】
請求項２または３に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記閾値に対して、前記組み合わせの中の複数の属性を含む当該組み合わせに基づいて推定されるある情報量を示す情報であるインフォメーションロスを算出し、前記インフォメーションロスと前記変化率とに基づいて、閾値ごとに前記スコアを算出する、匿名化指標決定装置。
【請求項５】
請求項４に記載の匿名化指標決定装置であって、
前記組み合わせ特定手段は、前記組み合わせの中の複数の属性を含む当該組み合わせで特定される属性を有するデータのデータ数の和が最小となるように、当該組み合わせを特定する、匿名化指標決定装置。
【請求項６】
請求項４または５に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記組み合わせごとに前記インフォメーションロスを計算し、それらの和を計算し、
前記スコア算出手段は、前記組み合わせの第一の属性を有するデータのデータ数が当該閾値未満であり、当該組み合わせの第二の属性を有するデータのデータ数が閾値以上であり、第一の属性を有するデータのデータ数と第二の属性を有するデータのデータ数との和が当該閾値を基に定められる値以上である場合に、当該組み合わせに対する当該インフォメーションロスを当該閾値と計算し、
前記匿名化データ特定手段は、前記共通の属性に更新するデータとして、前記第一の属性を有するデータ、および、前記第二の属性を有するデータの中の前記閾値から前記第一の属性を有するデータのデータ数との差分で示される数のデータを特定する、匿名化指標決定装置。
【請求項７】
請求項１ないし６のいずれか１項に記載の匿名化指標決定装置であって、
前記スコア算出手段は、前記閾値特定手段が特定した前記匿名化指標が所定の値以上である場合に、当該匿名化指標を含む前記閾値に対して、前記スコアを算出する、匿名化指標決定装置。
【請求項８】
請求項１ないし７のいずれか１項に記載の匿名化指標決定装置であって、
前記匿名化データ特定手段が特定したデータを前記共通する属性に更新する匿名化実行手段を含む匿名化指標決定装置。
【請求項９】
請求項１ないし７のいずれか１項に記載の匿名化指標決定装置と、
前記匿名化データ特定手段が特定したデータを前記共通する属性に更新する匿名化実行手段と、
前記匿名化実行手段が更新したデータを記憶する匿名化後データ記憶手段と、
を含む匿名化処理実行システム。
【請求項１０】
属性を有するデータを管理し、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有する、データのデータ数を特定し、
閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出し、
前記閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定し、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する、匿名化指標決定方法。
【請求項１１】
属性を有するデータを管理し、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有する、データのデータ数を特定し、
閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出し、
前記閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定し、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定し、
前記特定されたデータを前記共通する属性に更新し、
前記更新されたデータを記憶する、匿名化処理実行方法。
【請求項１２】
コンピュータに、
属性を有するデータを管理する処理と、
前記データにおいて、属性ごとに、所定の時間の各時刻における、その属性を有するデータのデータ数を特定する処理と、
閾値に対して、一つの属性を有するデータのデータ数が、第一の時刻で当該閾値以上であり、かつ当該第一の時刻から単位時間経過した第二の時刻で当該閾値未満である回数を算出し、当該回数に基づいて閾値ごとのスコアを算出する処理と、
前記閾値から、前記スコアに基づいて特定される一の閾値である匿名化指標を特定する処理と、
前記管理されるデータの中の一の属性を有するデータのデータ数が前記匿名化指標より少なく、かつ、当該データ数と少なくとも一以上の他の属性を有するデータのデータ数との和が前記匿名化指標以上である場合に、共通する属性に更新するデータとして、当該一の属性および当該他の属性を有するデータを特定する処理と、
を実行させるための匿名化指標決定プログラム。
【国際調査報告】
2012176923.tif 000045
2012176923.tif 000046