JP2016053829A - Information processing method, program, and information processing device - Google Patents
Information processing method, program, and information processing device Download PDFInfo
- Publication number
- JP2016053829A JP2016053829A JP2014179367A JP2014179367A JP2016053829A JP 2016053829 A JP2016053829 A JP 2016053829A JP 2014179367 A JP2014179367 A JP 2014179367A JP 2014179367 A JP2014179367 A JP 2014179367A JP 2016053829 A JP2016053829 A JP 2016053829A
- Authority
- JP
- Japan
- Prior art keywords
- bundle
- attribute
- reference point
- anonymity
- minimal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
本開示は、情報処理方法、プログラム、及び情報処理装置に関する。 The present disclosure relates to an information processing method, a program, and an information processing apparatus.
近年では、ネットワークや各種センサ等の発達に伴い、各種情報を収集する手段が多様化しており、収集される情報も多岐に亘り、このような収集手段により収集された各種情報が様々なビジネスに活用されている。また、近年では、例えば、データマイニングと呼ばれる技術等を活用することで、個々のデータのみでは明示されておらず導き出すことが困難な情報を、データベース等のような複数のデータの集合から抽出することも可能となってきている。 In recent years, with the development of networks and various sensors, the means for collecting various information has been diversified, and the information collected is diverse. Various information collected by such collecting means can be used in various businesses. It is utilized. In recent years, for example, by utilizing a technique called data mining, information that is not clearly shown only by individual data and is difficult to derive is extracted from a set of a plurality of data such as a database. It is also possible.
一方で、収集される情報の中には、個人を特定することが可能な情報も含まれており、当該個人のプライバシの保護を要する場合もある。このような課題に対して、収集された各種情報を抽象化することで匿名性を高め、個人のプライバシを保護することも可能ではあるが、情報の抽象化に伴い情報量が減少し、データの有用性が損なわれる場合もある。 On the other hand, the collected information includes information that can identify an individual, and may require protection of the privacy of the individual. In response to such issues, it is possible to improve anonymity by abstracting various collected information and protect personal privacy, but the amount of information decreases with the abstraction of information, and data The usefulness of may be impaired.
そこで、本開示では、情報量の減少を最低限に抑えて情報を抽象化するための条件を効率よく導出することが可能な、情報処理方法、プログラム、及び情報処理装置を提案する。 Therefore, the present disclosure proposes an information processing method, a program, and an information processing apparatus that can efficiently derive a condition for abstracting information while minimizing a decrease in the amount of information.
本開示によれば、プロセッサが、複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理を実行することと、前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理を実行することと、を含み、プロセッサが、特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とを、前記新たな基準点が導出されなくなるまで実行し、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力する、情報処理方法が提供される。 According to the present disclosure, each attribute value that can be taken by the target attribute is gradually increased by using at least two or more attributes among the plurality of attributes of the table including a plurality of records including the plurality of attributes as the target attribute. Among the first bundles defined based on the order relation that makes the classification more abstract, with each combination between the two or more target attributes as a first element of a plurality of classifications to be abstracted When the table is abstracted based on the classification corresponding to each of the first elements, the first element that satisfies anonymity based on a predetermined condition is used as a reference point between the records of the table. Performing a search process for searching for a minimal element satisfying the anonymity, and each subset of a finite set defined based on the number of classifications for each target attribute as a second element, Among the second bundles defined as the order relation of the second original inclusion relation, the second original complement set previously associated with the searched minimal element is specified, and Performing a reference point derivation process for deriving a first element satisfying the anonymity among the first elements corresponding to each of the minimum crossings as the new reference point, and a processor is specified. The search process based on the new reference point and the reference point derivation process based on the minimal element searched by the search process are executed until the new reference point is not derived, and a series of searched There is provided an information processing method for outputting a combination of the classifications indicated by each of the minimal elements as a candidate for a condition for abstracting the table.
また、本開示によれば、コンピュータに、複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理と、前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理と、を実行させ、特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とを、前記新たな基準点が導出されなくなるまで実行させる、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力させる、プログラムが提供される。 Further, according to the present disclosure, each attribute value that can be taken by the target attribute is set to the computer with at least two or more attributes among the plurality of attributes of the table including a plurality of records including the plurality of attributes. A first bundle defined based on an order relationship that makes the classification more abstract, with each combination between the two or more target attributes as a first element of a plurality of classifications that are classified so as to be more abstract When the table is abstracted based on the classification corresponding to each of the first elements, the first element satisfying anonymity based on a predetermined condition between the records of the table is a reference point. As a second element, a search process for searching for a minimal element satisfying the anonymity and each subset of a finite set defined based on the number of classifications for each target attribute, Among the second bundles that define the original inclusion relation as the order relation, specify the second original complement that is associated in advance with the searched minimal element, and each minimal traversal of the complement A reference point deriving process for deriving the first element satisfying the anonymity among the first elements corresponding to the new reference point as the new reference point, and based on the specified new reference point The classification indicated by each of the searched series of minimal elements, wherein a search process and the reference point derivation process based on the minimal element searched by the search process are executed until the new reference point is not derived. Is provided as a candidate for a condition for abstracting the table.
また、本開示によれば、複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理を実行する極小元探索部と、前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理を実行する基準点導出部と、特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とが、前記新たな基準点が導出されなくなるまで実行された結果に基づき、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力する出力部と、を備える、情報処理装置が提供される。 Further, according to the present disclosure, at least two or more attributes of the plurality of attributes of the table including a plurality of records including a plurality of attributes are set as target attributes, and each attribute value that can be taken by the target attribute is abstracted in stages. Of the first bundle defined based on the order relationship that makes the classification more abstract, with each combination between the two or more target attributes as a first element of a plurality of classifications that are classified to be When the table is abstracted based on the classification corresponding to each of the first elements, the first element satisfying anonymity based on a predetermined condition is used as a reference point between the records of the table. A minimal element search unit that executes a search process for searching for a minimal element that satisfies anonymity, and each subset of a finite set defined based on the number of classifications for each target attribute as a second element, Among the second bundles defined as the order relation of the second original inclusion relation, the second original complement set previously associated with the searched minimal element is specified, and A reference point deriving unit that executes a reference point deriving process for deriving a first element satisfying the anonymity as a new reference point among the first elements corresponding to each of the minimum crossings, and the specified new The search process based on the reference point and the reference point derivation process based on the minimal element searched by the search process are searched based on the results executed until the new reference point is not derived. There is provided an information processing apparatus comprising: an output unit that outputs the combination of classifications indicated by each of a series of the minimal elements as a candidate for a condition for abstracting the table.
以上説明したように本開示によれば、情報量の減少を最低限に抑えて情報を抽象化するための条件を効率よく導出することが可能な、情報処理方法、プログラム、及び情報処理装置が提供される。 As described above, according to the present disclosure, there is provided an information processing method, a program, and an information processing apparatus capable of efficiently deriving a condition for abstracting information while minimizing a decrease in the amount of information. Provided.
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。 Note that the above effects are not necessarily limited, and any of the effects shown in the present specification, or other effects that can be grasped from the present specification, together with or in place of the above effects. May be played.
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。 Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In addition, in this specification and drawing, about the component which has the substantially same function structure, duplication description is abbreviate | omitted by attaching | subjecting the same code | symbol.
なお、説明は以下の順序で行うものとする。
1.概要
2.用語の定義
2.1.(k,t)−匿名性
2.2.属性の一般化階層
2.3.一般化戦略
2.4.ハイパーグラフと横断
3.機能構成
4.処理
4.1.属性値の一般化
4.2.(k,t)−匿名性の判定
4.3.元の変換
4.4.極小元の探索
4.5.一連の処理の流れ
5.計算量
6.変形例
6.1.変形例1:一般化戦略の探索に係る処理負荷の軽減
6.2.変形例2:システム構成の一例
7.ハードウェア構成
8.まとめ
The description will be made in the following order.
1.
<1.概要>
まず、図1を参照して、本開示の実施形態に係る情報処理装置10が適用された情報処理システム1の一例について説明したうえで、本実施形態に係る情報処理装置10の課題について整理する。図1は、本実施形態に係る情報処理装置10が適用された情報処理システム1の概略的なシステム構成の一例を示している。
<1. Overview>
First, with reference to FIG. 1, an example of the
図1に示すように、情報処理システム1は、例えば、各種データが蓄積されたDB(データベース)50と、DBサーバ70と、1以上のクライアント80と、情報処理装置10と、管理者端末30と、一般化DB40とを含む。なお、情報処理システム1は、一般化DB40を参照する解析サーバ60を含んでもよい。
As illustrated in FIG. 1, the
DB50は、所謂リレーショナルデータベースに相当し、複数の属性を含むデータをレコードとして、当該レコードを複数含むテーブルd10を含んで構成される。例えば、図2は、DB50に含まれるテーブルd10の構成の一例について説明するための説明図である。なお、図2に示すテーブルd10は、患者の病歴をデータとして管理するためのテーブルd10の一例を示しており、当該患者の年齢、性別、及び病気等の情報を、患者ごとに管理している。
The
図2において、参照符号d11は、「属性」を示しており、個々のデータ(後述する「レコード」)が含む特徴を示す項目に相当する。また、参照符号d13は、「属性値」を示しており、属性d11の取る具体的な値に相当する。また、参照符号d15は、「レコード」であり、各属性d11に対応する属性値d13それぞれの集合からなる。なお、レコードは、行(row)やタプル(tuble)と呼ばれる場合もある。 In FIG. 2, reference symbol d <b> 11 indicates “attribute” and corresponds to an item indicating a feature included in each piece of data (“record” to be described later). Reference sign d13 indicates an “attribute value” and corresponds to a specific value taken by the attribute d11. Reference numeral d15 is a “record”, and includes a set of attribute values d13 corresponding to the attributes d11. A record is sometimes called a row or a tuple.
また、テーブルd10は、レコードd15の集合である。なお、本説明では、図2に示すように、テーブルd10は、属性d11ごとの属性値d13を列としてレコードd15を形成し、当該レコードd15を行方向に配列することで形成されているものとする。即ち、テーブルd10は、各レコードd15を、属性d11ごとの属性値d13の列ベクトルとしてリスト化して表現される。 The table d10 is a set of records d15. In this description, as shown in FIG. 2, the table d10 is formed by forming a record d15 with the attribute value d13 for each attribute d11 as a column, and arranging the record d15 in the row direction. To do. That is, the table d10 is expressed by listing each record d15 as a column vector of attribute values d13 for each attribute d11.
なお、本説明では、本実施形態に係る情報処理装置10の特徴をよりわかりやすくするために、属性d11を、識別子d111と、準識別子d113と、機微属性d115とに分類して説明する。
In this description, the attribute d11 is classified into an identifier d111, a quasi-identifier d113, and a sensitive attribute d115 in order to make the characteristics of the
識別子d111は、各レコードd15を一意に特定するための属性であり、具体的な一例として、主キー(primary key)が挙げられる。識別子d111の具体的な一例としては、アカウントIDやサービスIDのような、所謂ID(identifier)が挙げられる。 The identifier d111 is an attribute for uniquely specifying each record d15, and a specific example is a primary key. A specific example of the identifier d111 is a so-called ID (identifier) such as an account ID or a service ID.
機微属性d115は、例えば、テーブルd10の特性を決定づけていると考えられる属性に相当する。具体的な一例として、図2に示すように、患者の病歴をデータとして管理するテーブルd10の場合には、患者の「病気」を示す属性d11は、テーブルd10を特徴づける(当該テーブルd10に特徴的な)属性であり、機微属性d115に相当する。 The sensitive attribute d115 corresponds to, for example, an attribute that is considered to determine the characteristics of the table d10. As a specific example, as shown in FIG. 2, in the case of the table d10 that manages the patient's medical history as data, the attribute d11 indicating the patient's “disease” characterizes the table d10 (characterized by the table d10). Attribute) and corresponds to the sensitive attribute d115.
準識別子d113は、単体では各レコードd15を識別することが困難ではあるが、他の属性d11と組み合わせることで、各レコードd15を一意に特定し得る、もしくは、特定のレコードd15を絞り込み得る属性を示している。図2に示す例では、参照符号d113a及びd113bで示された「年齢」及び「性別」を示す属性は、これらの属性を組み合わせることで、対象となる患者(個人)を絞り込み得ることから、準識別子d113に相当する。 Although it is difficult to identify each record d15 by itself, the quasi-identifier d113 is an attribute that can uniquely identify each record d15 by combining with other attributes d11 or can narrow down a specific record d15. Show. In the example shown in FIG. 2, the attributes indicating “age” and “gender” indicated by the reference signs d113a and d113b can be narrowed down by combining these attributes to narrow down target patients (individuals). It corresponds to the identifier d113.
DBサーバ70は、DB50を参照または更新するためのサーバである。また、クライアント80は、ネットワークn1を介してDBサーバ70にアクセスすることで、DB50内のデータを参照または更新するための端末を示している。
The
情報処理装置10は、DB50に含まれる各テーブルのうち、少なくとも一部のテーブルd10について、一部の属性d11の属性値d13を一般化(抽象化)することで、より匿名性を高めたテーブルd30を生成する。
The
例えば、図3は、テーブルd10の一部の属性d11の属性値d13を一般化(抽象化)することで、より匿名性を高めたテーブルd30を生成する処理の概要について説明するための説明図である。なお、本説明では、情報処理装置10の処理をわかりやすくするために、図2に示したテーブルd10のように、テーブルd10が所謂ユーザの個人情報を管理するテーブルである場合を例に説明する。また、機微属性d115が個人のプライバシに関わる属性d11を示しており、準識別子d113が個人を特定し得る属性d11であるものとして説明する。
For example, FIG. 3 is an explanatory diagram for explaining an outline of processing for generating a table d30 with higher anonymity by generalizing (abstracting) attribute values d13 of some attributes d11 of the table d10. It is. In this description, in order to make the processing of the
具体的には、図3に示す例では、情報処理装置10は、テーブルd10における「年齢」及び「性別」を示す属性d113a及びd113bの属性値を一般化(抽象化)している。
Specifically, in the example illustrated in FIG. 3, the
例えば、情報処理装置10は、年齢を示す属性d113aの属性値d15を、10代や20代のように世代を示す属性値に分類することで、当該属性d113aの属性値d15を一般化し、年齢を示す属性値の匿名性を高めている。
For example, the
具体的には、年齢を示す属性d113aの属性値の定義域を{0,1,・・・,125}、世代の定義域{10歳未満,10代,20代,・・・,90代,100歳以上}とした場合に、情報処理装置10は、年齢を示す属性値0〜9を、10歳未満を示す属性値に対応付ける。同様に、情報処理装置10は、年齢を示す属性値10〜19を、10代を示す属性値に対応付けることとなる。
Specifically, the definition area of the attribute value of the attribute d113a indicating the age is {0, 1,..., 125}, the generation definition area {under 10 years old, teens, 20s,. , 100 years old or older}, the
即ち、図3に示す例では、情報処理装置10は、属性d113aの属性値のうち、20〜29は、20代を示す属性値[20,29]に対応付け、30〜39は、30代を示す属性値[30,39]に対応付けることで、年齢を示す属性値の匿名性を高めている。
That is, in the example illustrated in FIG. 3, the
同様に、情報処理装置10は、性別を示す属性d113bの属性値{男,女,未登録}を、性別を示す情報が登録されているか否か(即ち、性別を示す情報の登録状況)を示す属性値{登録,未登録}に対応付けている。具体的には、情報処理装置10は、属性d113bの属性値のうち、「男」及び「女」は、性別を示す情報が登録されていることを示す属性値「登録」に対応付けることで、性別を示す属性値の匿名性を高めている。
Similarly, the
このような一般化に伴い、例えば、「ID」が「1」〜「2」で示されたレコードや、「ID」が「3」〜「4」で示されたレコードを、「年齢」及び「性別」の属性に基づき識別することが困難となる。 With such generalization, for example, records with “ID” “1” to “2” and records with “ID” “3” to “4” are changed to “age” and It becomes difficult to identify based on the attribute of “sex”.
一方で、「ID」が「7」で示されたレコードは、「年齢」及び「性別」を示す属性d113a及びd113bの属性値を一般化しても、40代であり、かつ、性別の情報が登録されているレコードが他に存在しないため、一意に特定され得る。このことは、「ID」が「8」で示されたレコードについても同様である。そのため、情報処理装置10は、属性値が一般化されたテーブルd30のうち、上記に示した一意に特定され得るレコードを、あらかじめ決められたレコード数以下の範囲で削除する。
On the other hand, the record whose “ID” is “7” is in the 40s even if the attribute values of the attributes d113a and d113b indicating “age” and “sex” are generalized, and the sex information is Since no other record exists, it can be uniquely identified. The same applies to the record whose “ID” is “8”. Therefore, the
このような構成により、テーブルd30中のいずれのレコードを抽出し、当該レコードに対応する患者の識別を試みたとしても、対応する患者の可能性を2通り未満に絞り込むことが困難となり、匿名性が担保される。 With such a configuration, even if any record in the table d30 is extracted and identification of the patient corresponding to the record is attempted, it becomes difficult to narrow down the possibility of the corresponding patient to less than two ways, and the anonymity Is secured.
ここで、図3に示すテーブルd10の例では、悪意のある第三者が「年齢」及び「性別」を基に個人を特定し得る場合には、対象となるレコードを一意に特定し得た。そのため、悪意のある第三者は、「年齢」及び「性別」の情報を基に特定の個人に対応するレコードをテーブルd10中から特定し、当該特定したレコードに基づき、当該個人の「病気」という新たな情報を知り得ることとなる。なお、「年齢」及び「性別」等の既知の情報に基づき、特定の個人に対応するレコードをテーブル中から特定することを、以降では、「再識別」と記載する場合がある。 Here, in the example of the table d10 shown in FIG. 3, when a malicious third party can identify an individual based on “age” and “gender”, the target record can be uniquely identified. . Therefore, a malicious third party specifies a record corresponding to a specific individual from the table d10 based on the information of “age” and “gender”, and based on the specified record, the “disease” of the individual You will get new information. Note that specifying a record corresponding to a specific individual from the table based on known information such as “age” and “gender” may be referred to as “re-identification” hereinafter.
一方で、テーブルd30に示すように、いずれのレコードを抽出したとしても、当該レコードと「年齢」及び「性別」が重複する他のレコードが存在する場合には、悪意のある第三者は、「年齢」及び「性別」を基に個人を一意に特定することが困難となる。即ち、テーブルd30は、テーブルd10よりも匿名性が高められていることがわかる。 On the other hand, as shown in the table d30, even if any record is extracted, if there is another record in which the record and "age" and "gender" overlap, the malicious third party It becomes difficult to uniquely identify an individual based on “age” and “gender”. That is, it can be seen that the anonymity of the table d30 is higher than that of the table d10.
以上のようにして、情報処理装置10は、テーブルd10について、一部の属性d11の属性値d13を一般化(抽象化)することで、より匿名性を高めたテーブルd30を生成する。そして、情報処理装置10は、生成したテーブルd30を、一般化DB40に出力する。一般化DB40は、情報処理装置10により生成されたテーブルd30を管理するための構成である。
As described above, the
なお、本説明では、情報処理システム1の構成をよりわかりやすくするために、DB50と一般化DB40とを別々の構成として説明しているが、必ずしもこのような構成には限定されない。具体的な一例として、DB50と一般化DB40とを一つのDBとして構成し、当該DBにおいて、テーブルd10と、当該テーブルd10を基に生成されたテーブルd30とを管理してもよい。
In this description, in order to make the configuration of the
また、管理者端末30は、所謂DB50や一般化DB40の管理者が、情報処理装置10を操作するためのインタフェースの一例である。
The
なお、DBサーバ70は、一般化DB40中の、テーブルd30を参照できるように構成されていてもよい。また、解析サーバ60は、一般化DB40に記憶されたテーブルd30中の情報を、例えば、データマイニング等の技術を利用することで解析し、当該解析の結果を、ネットワークn11を介してクライアント80に出力してもよい。
The
以上、図1を参照して、本実施形態に係る情報処理装置10が適用された情報処理システム1の概略的なシステム構成の一例について説明した。
Heretofore, an example of a schematic system configuration of the
上記に説明したように、情報処理装置10は、DB50に含まれる少なくとも一部のテーブルd10について、一部の属性d11の属性値d13を一般化し、必要に応じて一部のレコードを削除することで、より匿名性を高めたテーブルd30を生成する。
As described above, the
なお、属性値をより一般化するほど、匿名性はより高くなる傾向にある。これに対して、属性値を一般化することで、従前では識別されていた各属性値が、同じ属性値としてまとめられることになるため、個々のレコードを識別するための情報が損なわれ、情報量が減少する。そのため、属性値をより一般化するほど、データの有用性がより損なわれる傾向にある。 In addition, the anonymity tends to be higher as the attribute value is more generalized. On the other hand, by generalizing attribute values, each attribute value that was previously identified is collected as the same attribute value, so the information for identifying individual records is impaired, and information The amount decreases. Therefore, as the attribute value becomes more general, the usefulness of the data tends to be impaired.
また、削除するレコード数の最大値が増大するほど、匿名性をより高くすることが可能となる傾向にある。一方で、レコードの削除が、情報量の減少につながることは言うまでもなく、削除するレコード数が増大すれば、情報量がより減少することとなる。即ち、削除するレコード数の最大値が増大するほど、母集合の範囲がより制限される可能性が高くなり、データの有用性がより損なわれる可能性がある。 In addition, as the maximum number of records to be deleted increases, anonymity tends to become higher. On the other hand, it goes without saying that deletion of a record leads to a decrease in the amount of information, and as the number of records to be deleted increases, the amount of information further decreases. That is, as the maximum value of the number of records to be deleted increases, there is a higher possibility that the range of the population is more restricted, and the usefulness of data may be further impaired.
このように、匿名性の担保と、データとしての有用性とはトレードオフの関係にある。そのため、所定の条件に基づく匿名性(後述する、(k,t)−匿名性)を満たし、かつ、情報量の減少を最小限に抑えることが可能な、属性値を抽象化するための条件を特定することが望ましい。 Thus, the guarantee of anonymity and the usefulness as data are in a trade-off relationship. Therefore, a condition for abstracting attribute values that satisfies anonymity based on a predetermined condition (to be described later, (k, t) -anonymity) and can minimize a decrease in the amount of information. It is desirable to specify.
その一方で、複数の属性d11について属性値d13を一般化することで匿名性を担保する場合には、どの属性d11についてどこまで一般化すれば(即ち、一般化のレベルをどの程度に設定すれば)、所定の条件に基づく匿名性が担保されるかは、テーブルd10内のデータ(即ち、各レコードd15)に依存する。そのため、所定の条件に基づく匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な、属性値を抽象化するための条件を特定するための計算量を事前に見積もることが困難であった。 On the other hand, when anonymity is ensured by generalizing the attribute value d13 for a plurality of attributes d11, to what extent the attribute d11 is generalized (that is, how much the level of generalization is set) ) Whether the anonymity based on a predetermined condition is secured depends on the data in the table d10 (that is, each record d15). Therefore, it is possible to estimate in advance the amount of calculation for specifying the conditions for abstracting attribute values that can satisfy anonymity based on predetermined conditions and minimize the decrease in the amount of information. It was difficult.
また、一般化の対象となる属性d11の数が増えるほど、複数の属性d11間における一般化のレベルの組み合わせの数は増大する。このような特性から、所定の条件に基づく匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な、属性値を抽象化するための条件を効率よく導出することが可能な仕組みが求められている。 Further, as the number of attributes d11 to be generalized increases, the number of combinations of generalization levels among a plurality of attributes d11 increases. From these characteristics, it is possible to efficiently derive conditions for abstracting attribute values that can satisfy anonymity based on a predetermined condition and can minimize a decrease in the amount of information. A mechanism is required.
そこで、本実施形態に係る情報処理装置10として、所定の条件に基づく匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な、属性値を抽象化するための条件を効率よく導出することが可能な仕組みを提案する。以下に、本実施形態に係る情報処理装置10について、さらに詳しく説明する。
Therefore, as the
<2.用語の定義>
本実施形態に係る情報処理装置10の詳細について説明するにあたり、まず、本説明で使用する用語の定義について以下にまとめる。
<2. Definition of terms>
In describing details of the
[2.1.(k,t)−匿名性]
本項では、図4を参照して、匿名性の条件である(k,t)−匿名性について説明する。図4は、(k,t)−匿名性について説明するための説明図である。なお、図4に示す例は、図3と同様に、患者の病歴をデータとして管理するためのテーブルd10を、「年齢」及び「性別」の属性d113a及びd113bそれぞれの属性値を一般化することで、匿名性を高めたテーブルd30を生成した場合を示している。
[2.1. (K, t) -anonymity]
In this section, (k, t) -anonymity, which is a condition for anonymity, will be described with reference to FIG. FIG. 4 is an explanatory diagram for explaining (k, t) -anonymity. In the example shown in FIG. 4, as in FIG. 3, the table d10 for managing the patient's medical history as data is generalized with the attribute values of the “age” and “sex” attributes d113a and d113b. The case where the table d30 which raised anonymity is produced | generated is shown.
図4において、参照符号d351〜d355は、「年齢」及び「性別」の属性d113a及びd113bの属性値を一般化した場合に、各属性間の属性値の組み合わせが等しい集合を示している。なお、以降の説明では、この各属性間の属性値の組み合わせが等しい集合を「等価クラス」と記載する場合がある。例えば、等価クラスd351は、「年齢」を示す属性d313aの属性値が、「20代」を示す「[20,29]」であり、「性別」を示す属性d313bの属性値が、性別を示す情報が登録されていることを示す「登録」である集合を示している。同様に、等価クラスd353は、「年齢」を示す属性d313aの属性値が、「30代」を示す「[30,39]」であり、「性別」を示す属性d313bの属性値が、性別を示す情報が登録されていないことを示す「未登録」である集合を示している。 In FIG. 4, reference symbols d351 to d355 indicate sets in which the attribute value combinations between the attributes are equal when the attribute values of the “age” and “sex” attributes d113a and d113b are generalized. In the following description, a set having the same combination of attribute values between attributes may be referred to as an “equivalent class”. For example, in the equivalence class d351, the attribute value of the attribute d313a indicating “age” is “[20, 29]” indicating “20's”, and the attribute value of the attribute d313b indicating “sex” indicates gender. A set of “registration” indicating that information is registered is shown. Similarly, in the equivalent class d353, the attribute value of the attribute d313a indicating “age” is “[30, 39]” indicating “30's”, and the attribute value of the attribute d313b indicating “sex” is gender. A set of “unregistered” indicating that the indicated information is not registered is shown.
ここで、テーブル中の任意の等価クラスを抽出した場合に、当該等価クラスのレコード数がいずれの場合においてもk以上である場合に、当該テーブルが「k−匿名性(k-Anonymity)」を満たすという。即ち、k−匿名性を満たすテーブルは、当該テーブル中のいずれのレコードに対して再識別が試みられたとしても、再識別の対象の候補をk通り未満に絞り込むことが困難である。 Here, when an arbitrary equivalent class is extracted from the table, if the number of records of the equivalent class is k or more in any case, the table indicates “k-anonymity”. Satisfy. That is, for a table that satisfies k-anonymity, it is difficult to narrow down candidates for re-identification to less than k, no matter which record in the table is re-identified.
また、テーブルがk−匿名性を満たさない場合においても、等価クラスのレコード数がk未満であるようなレコードを全て削除することで、k−匿名性を満たすことが可能な場合がある。このように、レコード数がt以下の範囲でレコードを削除することで、k−匿名性を満たすことが可能な場合を、「(k,t)−匿名性((k,t)-Anonymity)」を満たすという。 Even when the table does not satisfy k-anonymity, it may be possible to satisfy k-anonymity by deleting all records whose number of records in the equivalent class is less than k. In this way, by deleting records in a range where the number of records is equal to or less than t, the case where k-anonymity can be satisfied is expressed as “(k, t) -anonymity ((k, t) -Anonymity)”. "
具体的な一例として、図4に示す例において、テーブルd10及びd30が、k=2、t=2とした(2,2)−匿名性を満たすか否かについて以下に説明する。 As a specific example, whether or not the tables d10 and d30 satisfy (2, 2) -anonymity with k = 2 and t = 2 in the example illustrated in FIG. 4 will be described below.
例えば、テーブルd10は、「年齢」を示す属性d113aの属性値がそれぞれ異なる。そのため、例えば、「年齢」が「29」、「性別」が「女」のレコードに対して再識別を試みた場合には、「ID」が「2」のレコードが一意に特定される。このことは、他のレコードについても同様である。即ち、テーブルd10は、2−匿名性を満たしてないことがわかる。 For example, in the table d10, the attribute value of the attribute d113a indicating “age” is different. Therefore, for example, when re-identification is attempted for a record whose “age” is “29” and “sex” is “female”, the record whose “ID” is “2” is uniquely identified. The same applies to other records. That is, it can be seen that the table d10 does not satisfy 2-anonymity.
また、テーブルd10において、各レコードは、「年齢」及び「性別」の属性d113a及びd113bに着目した場合に、各属性間の属性値の組み合わせが等しい他のレコードが存在しない。即ち、テーブルd10は、レコード数が2以下の範囲でレコードの削除を行ったとしても、2−匿名性を満たさない。即ち、テーブルd10は、(2,2)−匿名性を満たさないこととなる。 Further, in the table d10, when focusing on the attributes d113a and d113b of the “age” and “gender”, there is no other record having the same combination of attribute values between the attributes. That is, the table d10 does not satisfy 2-anonymity even if records are deleted in a range where the number of records is 2 or less. That is, the table d10 does not satisfy (2, 2) -anonymity.
これに対して、テーブルd30は、(2,2)−匿名性を満たしている。具体的には、テーブルd30は、レコード数が2未満の等価クラスd354及びd353を含むため、2−匿名性は満たしていない。しかしながら、レコード数が2未満の等価クラスd354及びd353に対応するレコードを削除することで、当該レコード削除後のテーブルd30は、2−匿名性を満たす。このとき、等価クラスd354及びd353に対応するレコードのレコード数は2(即ち、2以下)であるため、テーブルd30は、(2,2)−匿名性を満たすこととなる。 On the other hand, the table d30 satisfies (2, 2) -anonymity. Specifically, since the table d30 includes equivalence classes d354 and d353 having the number of records of less than 2, 2-anonymity is not satisfied. However, by deleting records corresponding to the equivalent classes d354 and d353 having the number of records less than 2, the table d30 after the record deletion satisfies 2-anonymity. At this time, since the number of records corresponding to the equivalent classes d354 and d353 is 2 (that is, 2 or less), the table d30 satisfies (2, 2) -anonymity.
以上、図4を参照して、匿名性の条件である(k,t)−匿名性について説明した。 The anonymity condition (k, t) -anonymity has been described above with reference to FIG.
[2.2.属性の一般化階層]
次に、図5及び図6を参照して、属性の一般化階層について説明する。図5及び図6は、属性の一般化階層について説明するための説明図である。
[2.2. Generalized hierarchy of attributes]
Next, a generalized hierarchy of attributes will be described with reference to FIGS. 5 and 6 are explanatory diagrams for explaining a generalized hierarchy of attributes.
ここで、「属性の一般化階層」とは、一の属性について属性値を段階的に一般化した場合に、一般化前の属性値と一般化後の属性値との間の一般化の対応関係を階層構造(所謂、木構造)で示したものである。 Here, “attribute generalization hierarchy” means the generalization correspondence between the attribute value before generalization and the attribute value after generalization when attribute values are generalized step by step for one attribute The relationship is shown in a hierarchical structure (so-called tree structure).
例えば、図5は、図2に示したテーブルd10のうち、「年齢」を示す属性d113aの属性値を一般化(抽象化)するための属性の一般化階層の一例を示している。なお、以降では、図5に示す、属性d113aを一般化(抽象化)するための属性の一般化階層、即ち、属性d113aの一般化階層を、「属性の一般化階層d21」と記載する場合がある。 For example, FIG. 5 illustrates an example of an attribute generalization hierarchy for generalizing (abstracting) the attribute value of the attribute d113a indicating “age” in the table d10 illustrated in FIG. In the following, the attribute generalization hierarchy for generalizing (abstracting) the attribute d113a shown in FIG. 5, that is, the generalization hierarchy of the attribute d113a will be described as “attribute generalization hierarchy d21”. There is.
図5に示す例では、「年齢」を示す属性d113aの属性値d13を2段階に分けて一般化した場合について示している。図5において、参照符号d22は、「年齢」を示す属性の属性値d13を段階的に一般化した場合の、属性の一般化階層d21における各階層の高さを示している。なお、以降では、各階層の高さを「一般化レベル」と記載する場合がある。 In the example shown in FIG. 5, the attribute value d13 of the attribute d113a indicating “age” is generalized in two stages. In FIG. 5, reference symbol d22 indicates the height of each layer in the attribute generalization layer d21 when the attribute value d13 of the attribute indicating “age” is generalized stepwise. Hereinafter, the height of each layer may be described as a “generalization level”.
図5において、参照符号d210は、「年齢」を示す属性が取り得る一連の属性値、即ち、定義域{0,1,2,・・・,125}で示された属性値に対応する階層を示している。なお、図5に示す属性の一般化階層d21では、「年齢」を示す属性が取り得る一連の属性値、即ち、一般化が施されていない属性値の階層d210の一般化レベルを「0」に設定している。 In FIG. 5, reference symbol d <b> 210 indicates a series of attribute values that can be taken by the attribute indicating “age”, that is, a hierarchy corresponding to the attribute value indicated by the domain {0, 1, 2,. Is shown. Note that in the attribute generalization layer d21 shown in FIG. 5, a series of attribute values that can be taken by the attribute indicating “age”, that is, the generalization level of the attribute value layer d210 that has not been generalized is set to “0”. Is set.
また、参照符号d211は、階層d210で示された「年齢」を示す属性の一連の属性値を一般化することで、「世代」を示す属性値に分類した場合の、当該「世代」を示す属性値に対応する階層を示している。なお、図5に示す例では、「世代」を示す属性値の定義域は、{10歳未満,10代,20代,・・・,90代,100歳以上}で示される。 The reference sign d211 indicates the “generation” when the attribute value indicating the “age” indicated in the hierarchy d210 is generalized to be classified into the attribute value indicating the “generation”. The hierarchy corresponding to the attribute value is shown. In the example shown in FIG. 5, the definition area of the attribute value indicating “generation” is indicated by {under 10 years old, 10s, 20s,..., 90s, over 100 years}.
また、図5に示す例では、階層d210における属性値「0」〜「9」は、階層d211における「10歳未満」を示す属性値「[0,9]」に対応付けられている。即ち、属性の一般化階層d21は、階層d210における属性値「0」〜「9」を、階層d211における属性値「[0,9]」に一般化することを示している。同様にして、階層d210における属性値「10」〜「19」は、階層d211における「10代」を示す属性値「[10,19]」に一般化されることとなる。なお、図5に示す属性の一般化階層d21では、階層d211の一般化レベルを「1」に設定している。 In the example illustrated in FIG. 5, the attribute values “0” to “9” in the hierarchy d210 are associated with the attribute value “[0, 9]” indicating “under 10 years” in the hierarchy d211. That is, the attribute generalization hierarchy d21 indicates that the attribute values “0” to “9” in the hierarchy d210 are generalized to the attribute values “[0, 9]” in the hierarchy d211. Similarly, the attribute values “10” to “19” in the hierarchy d210 are generalized to the attribute value “[10, 19]” indicating “10th generation” in the hierarchy d211. Note that, in the attribute generalization layer d21 shown in FIG. 5, the generalization level of the layer d211 is set to “1”.
また、参照符号d212は、階層d211で示された「世代」を示す属性値を、さらに一般化した属性値に分類した場合の、当該属性値に対応する階層を示している。なお、図5に示した属性の一般化階層d21では、階層d212は、各年齢を識別しない場合の属性値を示しており、定義域は{[0,125]}となる。即ち、階層d211の属性値を階層d212の属性値に一般化すると、階層d211の属性値はいずれも、階層d212の属性値「[0,125]」に一般化されることとなる。なお、図5に示す属性の一般化階層d21では、階層d212の一般化レベルを「2」に設定している。 Reference numeral d212 indicates a hierarchy corresponding to the attribute value when the attribute value indicating "generation" indicated by the hierarchy d211 is further classified into a generalized attribute value. In the attribute generalization hierarchy d21 shown in FIG. 5, the hierarchy d212 indicates attribute values when each age is not identified, and the definition area is {[0, 125]}. That is, when the attribute value of the hierarchy d211 is generalized to the attribute value of the hierarchy d212, any attribute value of the hierarchy d211 is generalized to the attribute value “[0, 125]” of the hierarchy d212. In the attribute generalization hierarchy d21 shown in FIG. 5, the generalization level of the hierarchy d212 is set to “2”.
このように、属性の一般化階層d21は、より一般化されるほど階層の高さが高くなるように(即ち、一般化レベルが高くなるように)構成される。 In this way, the attribute generalization hierarchy d21 is configured such that the higher the generalization hierarchy, the higher the hierarchy (that is, the higher the generalization level).
同様に、図6は、図2に示したテーブルd10のうち、「性別」を示す属性d113bの属性値を一般化(抽象化)するための属性の一般化階層の一例を示している。なお、以降では、図5に示す、属性d113bを一般化(抽象化)するための属性の一般化階層、即ち、属性d113bの一般化階層を、「属性の一般化階層d23」と記載する場合がある。 Similarly, FIG. 6 shows an example of an attribute generalization hierarchy for generalizing (abstracting) the attribute value of the attribute d113b indicating “sex” in the table d10 shown in FIG. In the following, the attribute generalization hierarchy for generalizing (abstracting) the attribute d113b shown in FIG. 5, that is, the generalization hierarchy of the attribute d113b is described as “attribute generalization hierarchy d23”. There is.
図6に示す例では、「性別」を示す属性d113bの属性値d13を2段階に分けて一般化した場合について示している。図6において、参照符号d24は、「性別」を示す属性の属性値d13を段階的に一般化した場合の、属性の一般化階層d23における各階層の高さ(即ち、一般化レベル)を示している。 In the example shown in FIG. 6, the attribute value d13 of the attribute d113b indicating “sex” is generalized in two stages. In FIG. 6, reference numeral d24 indicates the height (that is, the generalization level) of each hierarchy in the attribute generalization hierarchy d23 when the attribute value d13 of the attribute indicating “gender” is generalized stepwise. ing.
図6において、参照符号d230は、「性別」を示す属性が取り得る一連の属性値、即ち、定義域{男,女,未登録}で示された属性値に対応する階層を示している。なお、図6に示す属性の一般化階層d23では、「性別」を示す属性が取り得る一連の属性値、即ち、一般化が施されていない属性値の階層d230の一般化レベルを「0」に設定している。 In FIG. 6, a reference symbol d <b> 230 indicates a hierarchy corresponding to a series of attribute values that can be taken by the attribute indicating “gender”, that is, the attribute value indicated in the domain {male, female, unregistered}. Note that in the attribute generalization layer d23 shown in FIG. 6, a series of attribute values that can be taken by the attribute indicating “gender”, that is, the generalization level of the attribute value layer d230 that has not been generalized is set to “0”. Is set.
また、参照符号d231は、階層d230で示された「性別」を示す属性の一連の属性値を一般化することで、「性別を示す情報の登録状況」を示す属性値に分類した場合の、当該属性値に対応する階層を示している。なお、図5に示す例では、「性別を示す情報の登録状況」を示す属性値の定義域は、{登録,未登録}で示される。 Further, the reference sign d231 is obtained by generalizing a series of attribute values indicating the “sex” indicated in the hierarchy d230 to be classified into attribute values indicating the “registration status of information indicating sex”. A hierarchy corresponding to the attribute value is shown. In the example shown in FIG. 5, the definition area of the attribute value indicating “registration status of information indicating gender” is indicated by {registered, unregistered}.
また、図6に示す例では、階層d210における属性値「男」及び「女」は、階層d231において「性別を示す情報が登録されている」ことを示す属性値「登録」に対応付けられている。即ち、属性の一般化階層d23は、階層d230における属性値「男」及び「女」を、階層d231における属性値「登録」に一般化することを示している。同様にして、階層d230における属性値「未登録」は、階層d231において「性別を示す情報が登録されていない」ことを示す属性値「未登録」に対応付けられている。なお、図6に示す属性の一般化階層d23では、階層d231の一般化レベルを「1」に設定している。 In the example illustrated in FIG. 6, the attribute values “male” and “female” in the hierarchy d210 are associated with the attribute value “registration” indicating that “information indicating sex” is registered in the hierarchy d231. Yes. That is, the attribute generalization hierarchy d23 indicates that the attribute values “male” and “female” in the hierarchy d230 are generalized to the attribute value “registration” in the hierarchy d231. Similarly, the attribute value “unregistered” in the hierarchy d230 is associated with the attribute value “unregistered” indicating that “information indicating gender is not registered” in the hierarchy d231. Note that in the attribute generalization layer d23 shown in FIG. 6, the generalization level of the layer d231 is set to “1”.
また、参照符号d232は、階層d231で示された「性別を示す情報の登録状況」を示す属性値を、さらに一般化した属性値に分類した場合の、当該属性値に対応する階層を示している。なお、図6に示した属性の一般化階層d23では、階層d232は、性別を識別しない場合の属性値を示しており、定義域を{不明}とすることで、各患者の性別が不明であるものと取扱った場合を示している。即ち、階層d231の属性値を階層d232の属性値に一般化すると、階層d231の属性値はいずれも、階層d232の属性値「不明」に一般化されることとなる。なお、図6に示す属性の一般化階層d23では、階層d232の一般化レベルを「2」に設定している。 Reference numeral d232 indicates a hierarchy corresponding to the attribute value when the attribute value indicating the “registration status of information indicating gender” indicated in the hierarchy d231 is further classified into a generalized attribute value. Yes. In addition, in the attribute generalization hierarchy d23 shown in FIG. 6, the hierarchy d232 shows the attribute value when the gender is not identified, and the gender of each patient is unknown by setting the definition area to {unknown}. It shows the case where it is handled as a certain thing. That is, when the attribute value of the hierarchy d231 is generalized to the attribute value of the hierarchy d232, any attribute value of the hierarchy d231 is generalized to the attribute value “unknown” of the hierarchy d232. Note that in the attribute generalization hierarchy d23 shown in FIG. 6, the generalization level of the hierarchy d232 is set to “2”.
なお、属性の一般化階層d23は、図5を参照して説明した属性の一般化階層d21と同様に、より一般化されるほど階層の高さが高くなるように(即ち、一般化レベルが高くなるように)構成される。 Note that the attribute generalization hierarchy d23 is set so that the higher the generalization level is, the higher the hierarchy becomes higher (that is, the generalization level is the same as the attribute generalization hierarchy d21 described with reference to FIG. 5). Configured to be higher).
以上、図5及び図6を参照して、属性の一般化階層について説明した。 The attribute generalization hierarchy has been described above with reference to FIGS. 5 and 6.
[2.3.一般化戦略]
次に、テーブルd10を一般化するための一般化戦略の一例について説明する。図5及び図6を参照して説明したように、複数の属性それぞれについて一般化階層が与えられている場合には、各属性に対してどの高さまで一般化を行うかの違い(即ち、各属性の一般化階層の高さの組み合わせ)により、一般化の方法が複数存在することとなる。
[2.3. Generalization strategy]
Next, an example of a generalization strategy for generalizing the table d10 will be described. As described with reference to FIG. 5 and FIG. 6, when a generalization hierarchy is given for each of a plurality of attributes, a difference in which generalization is performed for each attribute (that is, for each attribute) There are a plurality of generalization methods depending on the combination of the height of the generalization hierarchy of attributes.
例えば、図5及び図6に示す例では、「年齢」を示す属性d113aの一般化階層の高さは0(年齢)、1(世代)、2(区別なし)であり、「性別」を示す属性d113bの一般化階層の高さは0(性別)、1(登録状況)、2(不明(区別なし))である。ここで、「年齢」を示す属性d113aの一般化階層の高さをv1、「性別」を示す属性d113bの一般化階層の高さをv2とした場合に、[v1,v2]の組み合わせは、[0,0]、[0,1]、・・・、[2,1]、[2,2]となる。このように、一般化の対象となる各属性の一般化階層の高さの組み合わせを、本説明では「一般化戦略(Generalization Strategy)」と記載する場合がある。 For example, in the example shown in FIGS. 5 and 6, the height of the generalized hierarchy of the attribute d113a indicating “age” is 0 (age), 1 (generation), 2 (no distinction), and indicates “sex”. The height of the generalized hierarchy of the attribute d113b is 0 (gender), 1 (registration status), 2 (unknown (no distinction)). Here, the height of the generalization hierarchy of attributes d113a indicating "age" v 1, the height of the generalization hierarchy of attributes d113b indicating "sex" in the case of the v 2, [v 1, v 2] The combinations are [0, 0], [0, 1],..., [2, 1], [2, 2]. As described above, the combination of the heights of the generalization hierarchies of the attributes to be generalized may be described as “Generalization Strategy” in this description.
例えば、一般化戦略[1,2]を適用した場合には、「年齢」を示す属性d113aの属性値は、高さが「1」の「世代」を示す属性値に一般化され、「性別」を示す属性d113bの属性値は、高さが「2」の「不明(区別なし)」を示す属性値に一般化される。このように、各一般化戦略は、テーブルd10における「年齢」及び「性別」を示す属性d113a及びd113bそれぞれの属性値を一般化するための指標を示している。 For example, when the generalization strategy [1, 2] is applied, the attribute value of the attribute d113a indicating “age” is generalized to the attribute value indicating “generation” having a height of “1”. The attribute value of the attribute d113b indicating “” is generalized to an attribute value indicating “unknown (no distinction)” having a height of “2”. As described above, each generalization strategy indicates an index for generalizing the attribute values of the attributes d113a and d113b indicating “age” and “sex” in the table d10.
ここで、ある一般化戦略aと、当該一般化戦略aの各要素のうちいずれか一つの要素(即ち、いずれか一つの属性の一般化階層の高さ)を1だけ増加させた(即ち、一階層分だけ一般化した)一般化戦略bの大小関係を、a<bとする。具体的な一例として、一般化戦略[1,1]と[1,2]とは、[1,1]<[1,2]の関係にある。同様に、一般化戦略[1,2]と[2,2]とは、[1,2]<[2,2]の関係にある。一方で、一般化戦略[1,2]と[2,1]との間には、大小関係は定義されない。このような大小関係を順序関係として規定し、一連の一般化戦略[v1,v2]=[0,0]、[0,1]、・・・、[2,1]、[2,2]を元とすることで、一般化戦略[v1,v2]は束(Lattice)をなす。この束を、以降では「一般化戦略からなる束」と呼ぶ場合がある。 Here, a generalization strategy a and any one of the elements of the generalization strategy a (that is, the height of the generalization hierarchy of any one attribute) are increased by 1 (that is, The magnitude relationship of the generalization strategy b (generalized for one layer) is assumed to be a <b. As a specific example, the generalization strategies [1,1] and [1,2] have a relationship of [1,1] <[1,2]. Similarly, the generalization strategies [1,2] and [2,2] have a relationship of [1,2] <[2,2]. On the other hand, no magnitude relationship is defined between the generalization strategies [1,2] and [2,1]. Such a magnitude relationship is defined as an order relationship, and a series of generalization strategies [v 1 , v 2 ] = [0, 0], [0, 1],..., [2, 1], [2, 2], the generalization strategy [v 1 , v 2 ] forms a lattice. Hereinafter, this bundle may be referred to as a “bundle composed of generalization strategies”.
例えば、図7は、一般化戦略からなる束について説明するための説明図である。図7は、図5及び図6に示した、「年齢」及び「性別」を示す属性d113a及びd113bそれぞれの一般化階層に基づき規定される一般化戦略[v1,v2]を元とした、一般化戦略からなる束の一例を示している。 For example, FIG. 7 is an explanatory diagram for explaining a bundle of generalization strategies. FIG. 7 is based on the generalization strategy [v 1 , v 2 ] defined based on the generalization hierarchy of the attributes d113a and d113b indicating “age” and “sex” shown in FIG. 5 and FIG. Shows an example of a bundle of generalization strategies.
また、本説明では、半順序関係が定義されている束<L,≦>に対して、以下に(条件1)及び(条件2)で示す性質を満たす関数qを、束<L,≦>のクエリ関数と呼ぶ。
(条件1)q:L→{0,1};束の台集合を定義域とするブール値への写像
(条件2)任意のa,b∈Lに対して、a≦(≧)bならばq(a)≦(≧)q(b)
Further, in this description, for a bundle <L, ≦> in which a partial order relation is defined, a function q that satisfies the properties shown in (Condition 1) and (Condition 2) below is expressed as a bundle <L, ≦>. Called the query function.
(Condition 1) q: L → {0,1}; mapping to a Boolean value with a set of bundles as a domain (Condition 2) For any a, bεL, if a ≦ (≧) b Q (a) ≦ (≧) q (b)
また、半順序が定義された束<L,≦>と、上述したクエリ関数qとが与えられている場合に、以下に示す(条件3)及び(条件4)を満たす元(即ち、一般化戦略)a=[v1,v2]を、極小元と呼ぶ。
(条件3)q(a)=1
(条件4)任意のa>b∈Lに対してq(b)=0
Further, when a bundle <L, ≦> in which a partial order is defined and the above-described query function q are given, elements satisfying (Condition 3) and (Condition 4) shown below (ie, generalization) Strategy) a = [v 1 , v 2 ] is called a minimal element.
(Condition 3) q (a) = 1
(Condition 4) q (b) = 0 for any a> bεL
例えば、図7に示す例では、一般化戦略[2,2]、[2,1]、[1,2]、[1,1]、[2,0]が、クエリ関数qに基づき、q((v1,v2))=1を満たす。また、一般化戦略[0,2]、[0,1]、[1,0]、[0,0]が、クエリ関数qに基づき、q((v1,v2))=0を満たす。このとき、参照符号d50は、q((v1,v2))=1を満たす元(即ち、一般化戦略)と、q((v1,v2))=0を満たす元の境界を示しており、元[1,1]及び[2,0]が極小元となる。 For example, in the example shown in FIG. 7, the generalization strategies [2, 2], [2, 1], [1, 2], [1, 1], [2, 0] are based on the query function q, ((V 1 , v 2 )) = 1 is satisfied. Further, the generalization strategies [0, 2], [0, 1], [1, 0], [0, 0] satisfy q ((v 1 , v 2 )) = 0 based on the query function q. . At this time, the reference sign d50 has a boundary between an element satisfying q ((v 1 , v 2 )) = 1 (that is, a generalized strategy) and an element satisfying q ((v 1 , v 2 )) = 0. The elements [1, 1] and [2, 0] are the minimal elements.
以上、図7を参照して、テーブルd10を一般化するための一般化戦略の一例と、当該一般化戦略からなる束の一例とについて説明した。 The example of the generalization strategy for generalizing the table d10 and the example of the bundle composed of the generalization strategy have been described above with reference to FIG.
[2.4.ハイパーグラフと横断]
次に、図8及び図9を参照して、ハイパーグラフ及び横断について説明する。図8及び図9は、ハイパーグラフ及び横断について説明するための説明図である。
[2.4. Hypergraph and crossing]
Next, the hypergraph and the crossing will be described with reference to FIGS. 8 and 9 are explanatory diagrams for explaining the hypergraph and the crossing.
ハイパーグラフについて説明するにあたり、まず、図8を参照して、頂点の集合Vと、集合V中の2つ頂点を結ぶエッジEからなるグラフ(V,E)について説明する。例えば、図8に示す例は、V={1,2,3,4,5}、E={{1,4},{1,5},{2,3},{2,4},{4,5}}となるグラフ(V,E)を示している。ここで、例えば、エッジE={1,4}は、頂点「1」と頂点「4」とを結ぶエッジを示している。同様に、エッジE={2,3}は、頂点「2」と頂点「3」とを結ぶエッジを示している。 In describing the hypergraph, first, a graph (V, E) including a vertex set V and an edge E connecting two vertices in the set V will be described with reference to FIG. For example, in the example shown in FIG. 8, V = {1, 2, 3, 4, 5}, E = {{1, 4}, {1, 5}, {2, 3}, {2, 4}, The graph (V, E) which becomes {4, 5}} is shown. Here, for example, the edge E = {1, 4} indicates an edge connecting the vertex “1” and the vertex “4”. Similarly, an edge E = {2, 3} indicates an edge connecting the vertex “2” and the vertex “3”.
これに対して、図8に示すグラフ(V,E)のエッジEを、2つ以上の頂点を結ぶハイパーエッジHに一般化したグラフを、ハイパーグラフ(V,H)と呼ぶ。図9は、ハイパーグラフ(V,H)の一例を示している。例えば、図9に示す例は、V={1,2,3,4,5}、H={{1,2,4},{1,5},{2,3,5},{1,4,5}}となるハイパーグラフ(V,H)を示している。ここで、例えば、ハイパーエッジH={1,2,4}は、頂点「1」、頂点「2」、及び頂点「4」を結ぶハイパーエッジを示している。同様に、ハイパーエッジH={1,5}は、頂点「1」及び頂点「5」を結ぶハイパーエッジを示している。 On the other hand, a graph obtained by generalizing the edge E of the graph (V, E) shown in FIG. 8 into a hyper edge H connecting two or more vertices is called a hyper graph (V, H). FIG. 9 shows an example of the hypergraph (V, H). For example, in the example shown in FIG. 9, V = {1, 2, 3, 4, 5}, H = {{1, 2, 4}, {1, 5}, {2, 3, 5}, {1 , 4, 5}}, a hypergraph (V, H) is shown. Here, for example, the hyper edge H = {1, 2, 4} indicates a hyper edge connecting the vertex “1”, the vertex “2”, and the vertex “4”. Similarly, the hyper edge H = {1, 5} indicates a hyper edge connecting the vertex “1” and the vertex “5”.
次に、図9を参照して、横断について説明する。ハイパーグラフ(V,H)の任意のハイパーエッジと少なくとも一部を共有するVの部分集合を「横断」と呼ぶ。また、横断のうち、いずれの要素を取り除いても横断とならなくなるものを「極小横断」と呼ぶ。 Next, crossing will be described with reference to FIG. A subset of V that shares at least part with any hyperedge of the hypergraph (V, H) is called “crossing”. In addition, a crossing that does not become a crossing if any element is removed is called a “minimal crossing”.
例えば、図9に示す例では、Vの部分集合{1,2,4}は、ハイパーエッジH={{1,2,4},{1,5},{2,3,5},{1,4,5}}のいずれとも一部を共有するため、横断に相当する。また、部分集合{1,2,4}から、要素「4」を取り除いた部分集合{1,2}は、ハイパーエッジH={{1,2,4},{1,5},{2,3,5},{1,4,5}}のいずれとも一部を共有する。このことから、部分集合{1,2,4}は、極小横断ではないことがわかる。 For example, in the example shown in FIG. 9, the subset {1, 2, 4} of V has hyperedges H = {{1, 2, 4}, {1, 5}, {2, 3, 5}, { 1, 4, 5}} shares a part and corresponds to crossing. Further, the subset {1, 2} obtained by removing the element “4” from the subset {1, 2, 4} is a hyper edge H = {{1, 2, 4}, {1, 5}, {2 , 3, 5} and {1, 4, 5}} share a part. This shows that the subset {1, 2, 4} is not a minimal crossing.
また、Vの部分集合{1,2}は、前述通り横断に相当するが、要素「1」及び「2」のいずれかを取り除くと、ハイパーエッジH={{1,2,4},{1,5},{2,3,5},{1,4,5}}の少なくともいずれかと一部を共有しない状態となる。このことから、部分集合{1,2}は、極小横断に相当する。同様に、Vの部分集合{1,5}も、極小横断となる。 Further, the subset {1, 2} of V corresponds to the crossing as described above. However, if any one of the elements “1” and “2” is removed, the hyper edge H = {{1, 2, 4}, { 1, 5}, {2, 3, 5}, and {1, 4, 5}} are not shared in part. From this, the subset {1, 2} corresponds to the minimum crossing. Similarly, the subset {1, 5} of V is also a minimal crossing.
以上、図8及び図9を参照して、ハイパーグラフ及び横断について説明した。 The hypergraph and the crossing have been described above with reference to FIGS. 8 and 9.
<3.機能構成>
次に、図10を参照して、本実施形態に係る情報処理装置10の機能構成の一例について説明する。図10は、本実施形態に係る情報処理装置10の機能構成の一例について説明するための説明図である。
<3. Functional configuration>
Next, an example of a functional configuration of the
図10に示すように、情報処理装置10は、DB情報取得部11と、DB情報出力部12と、階層情報取得部13と、解析部14と、解析結果出力部15と、一般化条件取得部16と、DB情報変換部17と、変換結果出力部18とを含む。
As illustrated in FIG. 10, the
DB情報取得部11は、DB50に含まれるテーブルのうち、処理対象となるテーブルd10の情報(即ち、属性の定義情報や、各レコード等の、テーブルを形成するデータ)を、当該DB50から取得する。なお、処理対象となるテーブルd10とは、一部の属性の属性値を一般化(抽象化)することで、より匿名性を高めたテーブルd30を生成するための入力情報となるテーブルを示している。DB情報取得部11は、取得したテーブルd10の情報を、DB情報出力部12、解析部14、及びDB情報変換部17のそれぞれに出力する。なお、DB情報取得部11は、取得したテーブルd10の情報を、図示しない記憶部に保持または記憶させることで、当該テーブルの情報を、当該記憶部を介して間接的に、DB情報出力部12、解析部14、及びDB情報変換部17のそれぞれに出力してもよい。
The DB
DB情報出力部12は、DB情報取得部11から処理対象となるテーブルd10の情報を取得し、取得したテーブルd10の情報を、管理者端末30を介して管理者に提示する。これにより、管理者は、テーブルd10のうち、属性値の一般化(抽象化)の対象となる属性や、当該属性の属性値を一般化(抽象化)するための属性の一般化階層を定義することが可能となる。
The DB
階層情報取得部13は、処理対象となるテーブルd10の各属性のうち、管理者端末30を介して管理者より指定された、属性値の一般化(抽象化)の対象となる属性を示す情報と、当該属性それぞれの一般化階層を示す情報とを、当該管理者端末30から取得する。そして、階層情報取得部13は、取得した属性値の一般化(抽象化)の対象となる属性を示す情報と、当該属性それぞれの一般化階層を示す情報とを、解析部14に出力する。
The hierarchy
また、階層情報取得部13は、管理者端末30を介して管理者より指定された匿名性の条件を示す情報を、当該管理者端末30から取得してもよい。なお、匿名性の条件を示す情報とは、例えば、(k,t)−匿名性の条件である、k−匿名性を満たすための等価クラスに含まれるレコードのレコード数の閾値kと、削除するレコードのレコード数の最大値tとに相当する。そして、階層情報取得部13は、管理者端末30から取得した匿名性の条件を示す情報を、解析部14に出力する。
Further, the hierarchy
なお、匿名性の条件を示す情報の取得元は、必ずしも管理者端末30には限定されない。具体的な一例として、階層情報取得部13は、情報処理装置10内の記憶部(図示しない)にあらかじめ記憶された、匿名性の条件を示す情報を取得し、取得した当該情報を解析部14に出力してもよい。
Note that the acquisition source of the information indicating the anonymity condition is not necessarily limited to the
解析部14は、DB情報取得部11から処理対象となるテーブルd10の情報を取得する。また、解析部14は、階層情報取得部13から、処理対象となるテーブルd10の各属性のうち、属性値の一般化(抽象化)の対象となる属性を示す情報と、当該属性それぞれの一般化階層を示す情報とを取得する。また、解析部14は、階層情報取得部13から、匿名性の条件を示す情報を取得する。
The
解析部14は、取得した属性値の一般化(抽象化)の対象となる属性を示す情報と、当該属性それぞれの一般化階層を示す情報とに基づき、テーブルd10を、より匿名性を高めたテーブルd30に変換するための一般化戦略(即ち、各属性の一般化階層の高さの組み合わせ)を規定する。なお、これにより規定される一般化戦略は、対象となる属性それぞれの属性値がより一般化(抽象化)されるように区分するための各分類の、当該対象となる属性間における組み合わせに相当する。そして、解析部14は、既定した各一般化戦略のうち、取得した匿名性の条件を満たし、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略を抽出する。
The
そこで、上述した解析部14の構成及び動作を、以下に詳しく説明する。図10に示すように、解析部14は、解析データ生成部141と、極小元探索部143と、基準点導出部145とを含む。
Therefore, the configuration and operation of the
解析データ生成部141は、属性値の一般化(抽象化)の対象となる属性それぞれの一般化階層を示す情報に基づき、各属性の一般化階層の高さの組み合わせを抽出し、抽出した各組み合わせを一般化戦略として規定する。
The analysis
そして、解析データ生成部141は、既定した各一般化戦略を元として、各一般化戦略が要素として有する各属性の一般化階層の高さをより一般化(抽象化)する順序関係(換言すると、各属性の分類をより抽象化する順序関係)に基づき、一般化戦略からなる束を規定する。このとき、解析データ生成部141は、例えば、ある一般化戦略aと、当該一般化戦略aの各要素のうちいずれか一つの要素を1だけ増加させた(即ち、一階層分だけ一般化した)一般化戦略bの大小関係をa<bとする順序関係に基づき、一般化戦略からなる束を規定する。
Then, the analysis
具体的な一例として、解析データ生成部141は、図5及び図6に示した「年齢」及び「性別」のそれぞれに対応する属性の一般化階層から、図7に示した一般化戦略からなる束を規定することとなる。なお、以降では、一般化戦略からなる束における元を、特に「一般化ノード」と記載する場合がある。また、以降では、図5及び図6に示した属性の一般化階層と、図7に示した一般化戦略からなる束を対象として処理する場合を例に説明する。
As a specific example, the analysis
なお、一般化戦略からなる束が「第1の束」の一例に相当する。また、一般化戦略からなる束における各元、即ち、各属性の一般化階層の高さの組み合わせに基づき規定される一般化戦略が、「第1の元」の一例に相当する。 Note that a bundle composed of generalization strategies corresponds to an example of a “first bundle”. Further, each element in a bundle composed of generalized strategies, that is, a generalized strategy defined based on a combination of heights of generalized hierarchies of each attribute corresponds to an example of “first element”.
極小元探索部143は、既定された一般化戦略からなる束における各一般化ノードのうち、取得した匿名性の条件(即ち、(k,t)−匿名性)を満たすことが可能な一般化戦略に対応する極小元を探索する。なお、(k,t)−匿名性を満たすことが可能な一般化戦略とは、当該一般化戦略に基づきテーブルd10を一般化(抽象化)した場合に、一般化後のテーブルd30が、(k,t)−匿名性を満たすことが可能な一般化戦略を示すものとする。
The minimal
具体的には、極小元探索部143は、既定された一般化戦略からなる束における一般化ノードに対応する一般化戦略が、(k,t)−匿名性を満たすことが可能な一般化戦略か否かを判定する処理を、クエリ関数qとして規定している。なお、以降では、(k,t)−匿名性を満たすことが可能な一般化戦略に対応する元(即ち、一般化ノード)を、単に「(k,t)−匿名性を満たす元」と記載する場合がある。
Specifically, the minimal
そして、極小元探索部143は、既定された一般化戦略からなる束において、(k,t)−匿名性を満たすいずれかの元(一般化ノード)を基準点として、当該元の各要素のうち少なくともいずれかをより具体化する方向に向けて、(k,t)−匿名性を満たす極小元を探索する。
Then, the minimal
具体的には、極小元探索部143は、(k,t)−匿名性を満たすことが確認された元の各要素(即ち、一般化階層の高さ)のうち、いずれかの要素をより具体化する方向にシフトさせ、当該シフト後の元が(k,t)−匿名性を満たす元か否かを判定する。そして、極小元探索部143は、シフト後の元が(k,t)−匿名性を満たす場合には、いずれかの要素をさらに具体化する方向にシフトさせ、シフト後の元が(k,t)−匿名性を満たさない場合には、いずれかの要素を一般化(抽象化)する方向にシフトさせる。このように、極小元探索部143は、いずれかの要素をシフトさせ、シフト後の元が(k,t)−匿名性を満たす元か否かを判定する処理を逐次実行することで、(k,t)−匿名性を満たす極小元を探索する。
Specifically, the minimal
なお、極小元探索部143が、(k,t)−匿名性を満たす極小元を探索できれば、その探索方法は、特に限定されない。具体的な一例として、極小元探索部143は、所謂二分探索に基づき、(k,t)−匿名性を満たす極小元を探索してもよい。
The search method is not particularly limited as long as the minimum
また、各属性それぞれの属性値を最も一般化(抽象化)する分類(一般化階層)の組み合わせを示す一般化戦略は、(k,t)−匿名性を満たし得る。そのため、当該一般化戦略に対応する一般化ノードは、(k,t)−匿名性を満たす極小元を探索する場合の基準点となり得る。具体的な一例として、図5及び図6に示した「年齢」及び「性別」のそれぞれに対応する属性の一般化階層の高さを、それぞれ「2」に設定した場合の一般化戦略に対応する一般化ノード(即ち、図7において(2,2)で示された一般化ノード)は、(k,t)−匿名性を満たす極小元を探索する場合の基準点となり得る。 Moreover, the generalization strategy which shows the combination of the classification (generalization hierarchy) which generalizes (abstracts) the attribute value of each attribute most can satisfy (k, t) -anonymity. Therefore, the generalized node corresponding to the generalization strategy can be a reference point when searching for a minimal element that satisfies (k, t) -anonymity. As a specific example, it corresponds to the generalization strategy when the height of the generalization hierarchy of the attribute corresponding to each of “age” and “gender” shown in FIGS. 5 and 6 is set to “2” respectively. The generalized node (that is, the generalized node indicated by (2, 2) in FIG. 7) can be a reference point when searching for a minimal element that satisfies (k, t) -anonymity.
以上のように、極小元探索部143は、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索し、探索された極小元の情報を保持する。また、極小元探索部143は、(k,t)−匿名性を満たす極小元の探索結果を基準点導出部145に通知する。
As described above, the minimum
基準点導出部145は、極小元探索部143から、(k,t)−匿名性を満たす極小元の探索結果を取得する。基準点導出部145は、取得した当該極小元の探索結果に基づき、既定された一般化戦略からなる束において、極小元探索部143による探索がなされていない一般化ノードのうち、(k,t)−匿名性を満たす一般化ノードを導出し、導出した一般化ノードを新たな基準点の候補として、極小元探索部143に出力する。
The reference
この新たな基準点の候補の出力を受けて、極小元探索部143は、当該候補を基準点として新たに(k,t)−匿名性を満たす極小元を探索するとともに、当該探索結果を基準点導出部145に出力する。
In response to the output of this new reference point candidate, the local
なお、極小元探索部143が(k,t)−匿名性を満たす極小元を探索する処理と、当該探索結果に基づき、基準点導出部145が新たな基準点の候補を導出する処理との詳細については、別途後述する。
The minimum
以上のようにして、極小元探索部143は、基準点導出部145と相互に連携して動作し、基準点導出部145により新たな基準点の候補が抽出されなくなるまで、(k,t)−匿名性を満たす極小元を探索して保持する。そして、極小元探索部143は、保持された一連の極小元(即ち、探索された一連の(k,t)−匿名性を満たす極小元)それぞれに対応する一般化戦略を、解析結果出力部15に出力する。
As described above, the local minimum
解析結果出力部15は、極小元探索部143により探索された一連の極小元それぞれに対応する一般化戦略を、当該極小元探索部143から取得する。そして、解析結果出力部15は、取得した一連の一般化戦略を、(k,t)−匿名性を満たすようにテーブルd10を一般化(抽象化)するための条件(即ち、一般化戦略)の候補として、管理者端末30を介して管理者に提示する。なお、このとき提示される条件、即ち、探索された一連の極小元それぞれに対応する一般化戦略が、あらかじめ指定された(k,t)−匿名性を満たすようにテーブルd10を一般化し、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略に相当する。
The analysis
一般化条件取得部16は、解析部14により規定された一連の一般化戦略のうち、管理者端末30を介して管理者に指定された一般化戦略に基づき、テーブルd10を一般化(抽象化)するための条件を、当該管理者端末30から取得する。なお、テーブルd10を一般化(抽象化)するための条件とは、管理者により指定された一般化戦略に基づき、各属性の属性値を一般化(抽象化)するための分類を示す情報や、(k,t)−匿名性の条件を示す情報に相当する。なお、以降では、テーブルd10を一般化(抽象化)するための条件を、「テーブルd10の一般化条件」と記載する場合がある。
The generalization
そして、一般化条件取得部16は、取得したテーブルd10の一般化条件を示す情報を、DB情報変換部17に出力する。
Then, the generalization
DB情報変換部17は、DB情報取得部11から、処理対象となるテーブルd10の情報を取得する。また、DB情報変換部17は、DB情報変換部17から、テーブルd10の一般化条件を示す情報を取得する。
The DB
DB情報変換部17は、テーブルd10の一般化条件を示す情報に基づき、テーブルd10の中の対象となる属性の属性値を一般化することで、当該テーブルd10の情報を、より匿名性を高めたテーブルd30の情報に変換する。
The DB
具体的には、DB情報変換部17は、一般化の対象となる属性の属性値を、テーブルd10の一般化条件として指定された分類中の属性値に対応付けることで、当該属性の属性値を一般化する。例えば、DB情報変換部17は、年齢を示す属性の属性値を、世代を示す属性値に対応付けることで、当該年齢を示す属性の属性値を抽象化する。
Specifically, the DB
また、DB情報変換部17は、テーブルd10の一般化条件として指定された(k,t)−匿名性の条件に基づき、属性値が抽象化されたテーブルd10から、等価クラスのレコード数がk未満であるようなレコードを、レコード数がt以下の範囲で削除する。以上のようにして、DB情報変換部17は、テーブルd10の情報を、より匿名性を高めたテーブルd30の情報に変換する。
Further, the DB
そして、DB情報変換部17は、テーブルd10の情報を変換することで生成されたテーブルd30の情報を、変換結果出力部18を介して一般化DB40に出力する。変換結果出力部18は、DB情報変換部17により生成されたテーブルd30の情報を、一般化DB40に出力するためのインタフェースに相当する。
Then, the DB
以上、図10を参照して、本実施形態に係る情報処理装置10の機能構成の一例について説明した。
Heretofore, an example of the functional configuration of the
<4.処理>
次に、情報処理装置10の一連の処理の流れについて、特に、解析部14の処理、即ち、処理対象となるテーブルd10を一般化(抽象化)するための一般化戦略の候補を導出する処理に着目して、さらに詳しく説明する。なお、本説明では、解析部14の処理として、まず、「属性値の一般化」、「(k,t)−匿名性の判定」、「元の変換」、及び「極小元の探索」に係る各部分処理について説明し、その後に、「一連の処理の流れ(即ち、全体的な処理の流れ)」について説明する。
<4. Processing>
Next, with regard to the flow of a series of processes of the
[4.1.属性値の一般化]
まず、図11を参照して、テーブルd10の各レコードのうち、対象となる属性の属性値を、入力として指定された一般化戦略と、当該属性の一般化階層とに基づき一般化する処理の一例について説明する。図11は、対象となる属性の属性値を一般化する処理の一例について説明するための説明図であり、同処理のアルゴリズムを所謂プログラムコードの形式で模式的に提示した図である。なお、図11に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。
[4.1. Generalization of attribute values]
First, referring to FIG. 11, the process of generalizing the attribute value of the target attribute among the records in the table d10 based on the generalization strategy specified as input and the generalization hierarchy of the attribute. An example will be described. FIG. 11 is an explanatory diagram for explaining an example of the process of generalizing the attribute value of the target attribute, and is a diagram schematically showing the algorithm of the process in a so-called program code format. In the example shown in FIG. 11, some information is abstracted for easy understanding of the processing flow, and is not necessarily shown in a format that can be compiled based on a compiler of a specific programming language.
図11に示した「getFrequentSets」関数は、入力として、変数v=(v1,v2,・・・,vn)で示された一般化戦略(即ち、一般化ノード)と、変数Tで示された処理対象となるテーブルd10と、変数(H1,H2,・・・,Hn)で示された各属性の一般化階層を示す情報とを取得する。 The “getFrequentSets” function shown in FIG. 11 takes as input a generalization strategy (that is, a generalized node) indicated by variables v = (v 1 , v 2 ,..., V n ) and a variable T. The table d10 to be processed and the information indicating the generalized hierarchy of each attribute indicated by the variables (H 1 , H 2 ,..., H n ) are acquired.
なお、(v1,v2,・・・,vn)のそれぞれは、互いに異なる属性に対応しており、各属性について指定された一般化階層の高さ(換言すると、当該属性の属性値を、一般化するための分類)をそれぞれ示している。同様に、(H1,H2,・・・,Hn)は、互いに異なる属性に対応しており、各属性の一般化階層をそれぞれ示している。例えば、Hi(vi)は、i番目の属性の一般化階層のうち、高さがviに対応する階層(分類)を示している。 Note that each of (v 1 , v 2 ,..., V n ) corresponds to a different attribute, and the height of the generalized hierarchy specified for each attribute (in other words, the attribute value of the attribute) , Classification for generalization). Similarly, (H 1 , H 2 ,..., H n ) correspond to mutually different attributes, and indicate generalized hierarchies of the respective attributes. For example, H i (v i ) indicates a hierarchy (classification) whose height corresponds to v i among the generalized hierarchies of the i-th attribute.
具体的には、図11に示した「getFrequentSets」関数は、入力として取得したテーブルTの各レコードrそれぞれを、等価クラスに割り当てる。このとき、同関数は、レコードrの各属性の属性値をriとした場合に、当該属性の一般化階層における高さviの属性(分類)に一般化した場合の値diに置き換えることで、各レコードrを割り当てるべき等価クラスを特定している。 Specifically, the “getFrequentSets” function shown in FIG. 11 assigns each record r of the table T acquired as an input to the equivalence class. At this time, when the attribute value of each attribute of the record r is r i , the function replaces the value d i when generalized to the attribute (classification) of the height v i in the generalization hierarchy of the attribute. Thus, the equivalence class to which each record r is to be assigned is specified.
より具体的には、「getFrequentSets」関数は、テーブルT中の各レコードrについて、任意の高さviについて、属性値ri∈di∈Hi(vi)を満足する値の組み合わせd=(d1,d2,・・・,dn)を特定する。そして、同関数は、特定した値の組み合わせdに応じて、各レコードrを、当該値の組み合わせdに対応する等価クラスに割り当てる。以上のようにして、同関数は、各レコードrが割り当てられた等価クラスの集合F’を生成し、生成した集合F’を出力する。 More specifically, the “getFrequentSets” function is a combination of values satisfying the attribute value r i ∈d i ∈ H i (v i ) for an arbitrary height v i for each record r in the table T. = (D 1 , d 2 ,..., D n ) is specified. The function assigns each record r to an equivalence class corresponding to the value combination d according to the specified value combination d. As described above, the function generates a set F ′ of equivalence classes to which each record r is assigned, and outputs the generated set F ′.
例えば、図12は、対象となる属性の属性値を、入力として指定された一般化戦略と、当該属性の一般化階層とに基づき一般化する処理の処理結果の一例を示している。図12に示す例は、図2に示したテーブルd10の「年齢」及び「性別」を示す属性d113a及びd113bそれぞれの属性値を一般化した場合の一例を示している。なお、図12に示す例では、属性d113a及びd113bそれぞれの属性値を一般化するために、図5及び図6に示した属性の一般化階層を使用し、各一般化階層の高さを「1」とした一般化ノード(1,1)に基づき、各属性値を一般化している。 For example, FIG. 12 illustrates an example of a processing result of a process of generalizing an attribute value of a target attribute based on a generalization strategy specified as an input and a generalization hierarchy of the attribute. The example illustrated in FIG. 12 illustrates an example in which the attribute values of the attributes d113a and d113b indicating “age” and “sex” in the table d10 illustrated in FIG. 2 are generalized. In the example shown in FIG. 12, in order to generalize the attribute values of the attributes d113a and d113b, the attribute generalization hierarchy shown in FIGS. 5 and 6 is used, and the height of each generalization hierarchy is set to “ Each attribute value is generalized based on the generalized node (1, 1) set to “1”.
即ち、図12に示す例の場合には、「getFrequentSets」関数は、テーブルd10の各レコードが割り当てられた等価クラスd351〜d355を、集合F’として出力することとなる。 That is, in the example shown in FIG. 12, the “getFrequentSets” function outputs the equivalence classes d351 to d355 to which the records of the table d10 are assigned as the set F ′.
以上、図11及び図12を参照して、テーブルd10の各レコードのうち、対象となる属性の属性値を、入力として指定された一般化戦略と、当該属性の一般化階層とに基づき一般化する処理の一例について説明した。 As described above, with reference to FIGS. 11 and 12, the attribute value of the target attribute among the records in the table d10 is generalized based on the generalization strategy specified as input and the generalization hierarchy of the attribute. An example of the processing to be performed has been described.
[4.2.(k,t)−匿名性の判定]
次に、図13を参照して、所望の一般化戦略が、(k,t)−匿名性を満たすことが可能な一般化戦略か否かを判定する処理の一例について説明する。図13は、所望の一般化戦略が、(k,t)−匿名性を満たすことが可能な一般化戦略か否かを判定する処理の一例について説明するための説明図であり、同処理のアルゴリズムを所謂プログラムコードの形式で模式的に提示した図である。なお、図13に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。
[4.2. (K, t)-Determination of Anonymity]
Next, an example of processing for determining whether or not a desired generalization strategy is a generalization strategy that can satisfy (k, t) -anonymity will be described with reference to FIG. FIG. 13 is an explanatory diagram for explaining an example of processing for determining whether or not a desired generalization strategy is a generalization strategy that can satisfy (k, t) -anonymity. It is the figure which presented the algorithm typically in the form of what is called a program code. In the example shown in FIG. 13, some information is abstracted for easy understanding of the processing flow, and is not necessarily shown in a format that can be compiled based on a compiler of a specific programming language.
図13に示した「kAnonymityCheck」関数は、入力として、変数v=(v1,v2,・・・,vn)で示された一般化戦略(即ち、一般化ノード)と、(k,t)−匿名性の閾値(即ち、k及びt)と、変数Tで示された処理対象となるテーブルd10と、変数(H1,H2,・・・,Hn)で示された各属性の一般化階層を示す情報とを取得する。なお、(v1,v2,・・・,vn)及び(H1,H2,・・・,Hn)の定義は、図11を参照して前述した、属性値を一般化するための「getFrequentSets」関数の場合と同様である。 The “kAnonymityCheck” function shown in FIG. 13 has, as inputs, a generalization strategy (that is, a generalized node) indicated by variables v = (v 1 , v 2 ,..., V n ), and (k, t)-Anonymity threshold (ie, k and t), table d10 to be processed indicated by variable T, and each indicated by variable (H 1 , H 2 ,..., H n ) Get information indicating the generalized hierarchy of attributes. The definitions of (v 1 , v 2 ,..., V n ) and (H 1 , H 2 ,..., H n ) generalize the attribute values described above with reference to FIG. This is the same as the case of the “getFrequentSets” function.
具体的には、図13に示した「kAnonymityCheck」関数は、入力として取得したテーブルTの各レコードrを、入力として取得した一般化戦略vに基づき、等価クラスに割り当てる。なお、各レコードrを等価クラスに割り当てる処理は、図11に基づき前述した「getFrequentSets」関数に相当する。 Specifically, the “kAnonymityCheck” function shown in FIG. 13 assigns each record r of the table T acquired as an input to an equivalence class based on the generalization strategy v acquired as an input. The process of assigning each record r to the equivalence class corresponds to the “getFrequentSets” function described above with reference to FIG.
また、「kAnonymityCheck」関数は、各レコードrが割り当てられた各等価クラスについて、レコード数が入力として取得した閾値k以上か否かを判定し、レコード数がk未満となる等価クラスのサイズ(等価クラスの元の数)cを計上する。そして、同関数は、計上されたレコード数がk未満となる等価クラスのサイズcが、入力として取得した閾値t以下の場合には「真(True)」を出力し、閾値tを超える場合には「偽(False)」を出力する。 In addition, the “kAnonymityCheck” function determines, for each equivalent class to which each record r is assigned, whether or not the number of records is greater than or equal to the threshold value k acquired as an input, and the size of the equivalent class with which the number of records is less than k (equivalent Count the original number of classes) c. The function outputs “True” when the size c of the equivalent class in which the number of recorded records is less than k is equal to or smaller than the threshold value t acquired as an input, and when it exceeds the threshold value t. Outputs "False".
以上、図13を参照して、所望の一般化戦略が、(k,t)−匿名性を満たすことが可能な一般化戦略か否かを判定する処理の一例について説明した。 The example of the process for determining whether or not the desired generalization strategy is a generalization strategy that can satisfy (k, t) -anonymity has been described above with reference to FIG.
[4.3.元の変換]
前述したように、情報処理装置10の基準点導出部145は、一般化戦略からなる束から、極小元探索部143が探索した(k,t)−匿名性を満たす極小元の探索結果を基に、(k,t)−匿名性を満たす一般化ノードを、新たな基準点の候補として特定する。このとき、基準点導出部145は、各属性の属性値を一般化する分類の数(換言すると、各属性の一般化階層の高さ)に基づき離散集合から誘導される束を規定し、一般化戦略からなる束と当該離散集合から誘導される束との間で元を変換することで、新たな基準点の候補を特定する。
[4.3. Original conversion]
As described above, the reference
そこで、本項では、まず、図14を参照して、各属性の属性値を一般化する分類の数に基づく離散集合から誘導される束について説明し、その後、図14〜図17を参照して、元の変換に係る処理の一例について説明する。なお、以降では、各属性の属性値を一般化する分類の数に基づく離散集合から誘導される束を、単に、「離散集合から誘導される束」と記載する場合がある。 Therefore, in this section, first, a bundle derived from a discrete set based on the number of classifications that generalizes the attribute values of each attribute will be described with reference to FIG. 14, and then refer to FIGS. An example of processing related to the original conversion will be described. In the following, a bundle derived from a discrete set based on the number of classifications that generalizes the attribute values of each attribute may be simply referred to as a “bundle derived from the discrete set”.
なお、離散集合から誘導される束とは、有限集合[n]:={1,2,・・・,n}の冪集合をB([n])とした場合に、冪集合B([n])の各元の包含関係を半順序関係として規定される束<B([n]),⊆>に相当する。 Note that a bundle derived from a discrete set refers to a 冪 set B ([[] when a 冪 set of a finite set [n]: = {1, 2,..., N} is B ([n]). n]) corresponds to a bundle <B ([n]), ⊆> defined as a partial order relationship.
例えば、図14は、一般化戦略からなる束と離散集合から誘導される束との間の対応関係の一例について示した図であり、各束の間での元の対応関係を示している。なお、図14に示す例では、図5及び図6に示した属性の一般化階層に基づく一般化戦略からなる束(図7参照)を適用した場合の一例を示している。 For example, FIG. 14 is a diagram showing an example of a correspondence relationship between a bundle composed of a generalization strategy and a bundle derived from a discrete set, and shows an original correspondence relationship between each bundle. The example shown in FIG. 14 shows an example in which a bundle (see FIG. 7) composed of generalization strategies based on the attribute generalization hierarchy shown in FIGS. 5 and 6 is applied.
図14に示す例では、各属性の属性値を一般化する分類(換言すると、各属性の一般化階層のうち、属性値そのものを示す高さ「0」の階層を除いたもの)の数に基づき規定される有限集合(離散集合)の各部分集合を元として、当該部分集合間の包含関係を順序関係とすることで、離散集合から誘導される束が規定されている。具体的には、各属性の属性値を一般化する分類の数の和を最大とする正の整数の集合の各部分集合を元として、当該部分集合間の間の包含関係を順序関係とすることで、離散集合から誘導される束が規定されている。 In the example shown in FIG. 14, the number of classifications that generalize the attribute values of each attribute (in other words, the generalized hierarchy of each attribute, excluding the hierarchy of height “0” indicating the attribute value itself). Based on each subset of a finite set (discrete set) defined on the basis of the order, the bundle derived from the discrete set is defined by using the inclusion relation between the subsets as an order relationship. Specifically, based on each subset of a set of positive integers that maximizes the sum of the number of classifications that generalize the attribute values of each attribute, the inclusion relationship between the subsets is an order relationship. Thus, a bundle derived from a discrete set is defined.
なお、図14に示す例では、離散集合から誘導される束の正の整数の有限集合{1,2,3,4}のうち、要素「1」及び「2」に基づく有限集合{1,2}の部分集合により、図5に示した年齢を示す属性の高さ「0」〜「2」で示された各分類(即ち、一般化階層)を示している。 In the example shown in FIG. 14, among the positive integer finite sets {1, 2, 3, 4} of bundles derived from the discrete sets, the finite sets {1, 2, 3 based on the elements “1” and “2” are used. 2} represents the respective classifications (namely, generalized hierarchies) indicated by the heights “0” to “2” of the attributes indicating the age shown in FIG.
具体的には、年齢を示す属性の一般化階層おける高さ「0」の分類(即ち、属性値そのもの)は、離散集合から誘導される束において、正の整数の部分集合{1,2}で示される。また、年齢を示す属性の一般化階層おける高さ「1」の分類は、離散集合から誘導される束において、正の整数の部分集合{1}で示される。また、年齢を示す属性の一般化階層おける高さ「2」の分類は、離散集合から誘導される束において、正の整数の部分集合{}(即ち、空集合)で示される。 Specifically, the classification of height “0” in the generalized hierarchy of attributes indicating age (that is, the attribute value itself) is a subset of positive integers {1, 2} in a bundle derived from a discrete set. Indicated by Further, the classification of the attribute indicating the age with the height “1” in the generalized hierarchy is represented by a positive integer subset {1} in the bundle derived from the discrete set. In addition, the classification of the attribute indicating the age at the height “2” in the generalized hierarchy is represented by a positive integer subset {} (that is, an empty set) in a bundle derived from the discrete set.
同様に、図14に示す例では、離散集合から誘導される束の正の整数の有限集合{1,2,3,4}のうち、要素「3」及び「4」に基づく有限集合{3,4}の部分集合により、図6に示した性別を示す属性の高さ「0」〜「2」で示された各分類(即ち、一般化階層)を示している。 Similarly, in the example shown in FIG. 14, among the positive integer finite sets {1, 2, 3, 4} of bundles derived from the discrete sets, the finite set {3 based on the elements “3” and “4” , 4} represents the respective classifications (namely, generalized hierarchies) indicated by the attribute heights “0” to “2” indicating the gender shown in FIG.
具体的には、性別を示す属性の一般化階層おける高さ「0」の分類(即ち、属性値そのもの)は、離散集合から誘導される束において、正の整数の部分集合{3,4}で示される。また、性別を示す属性の一般化階層おける高さ「1」の分類は、離散集合から誘導される束において、正の整数の部分集合{3}で示される。また、性別を示す属性の一般化階層おける高さ「2」の分類は、離散集合から誘導される束において、正の整数の部分集合{}(即ち、空集合)で示される。 Specifically, the classification of the attribute indicating gender having a height of “0” in the generalized hierarchy (that is, the attribute value itself) is a subset of positive integers {3,4} in a bundle derived from the discrete set. Indicated by In addition, the classification of the attribute indicating sex by the height “1” in the generalized hierarchy is represented by a positive integer subset {3} in a bundle derived from the discrete set. In addition, the classification of the attribute indicating gender with the height “2” in the generalized hierarchy is represented by a positive integer subset {} (that is, an empty set) in a bundle derived from the discrete set.
即ち、各属性に対応する複数の分類のそれぞれは、より具体化された分類ほど、当該属性に関連付けられた、複数の連続した正の整数に対応した要素のうち、より多くの要素が、値のより小さい要素から順次加えられた部分集合に対応付けられている。 That is, for each of the plurality of classifications corresponding to each attribute, the more specific the classification is, the more elements among the elements corresponding to the plurality of consecutive positive integers associated with the attribute are the values. Are associated with subsets added sequentially starting with smaller elements.
なお、このとき、一般化戦略からなる束の最大元(2,2)は、離散集合から誘導される束の最小限{}(即ち、空集合)に対応付けられ、一般化戦略からなる束の最小元(0,0)は、離散集合から誘導される束の最大元{1,2,3,4}に対応付けられる。 At this time, the maximum element (2, 2) of the bundle composed of the generalization strategy is associated with the minimum {} (ie, empty set) of the bundle derived from the discrete set, and the bundle composed of the generalization strategy. Is associated with the maximum element {1, 2, 3, 4} of the bundle derived from the discrete set.
以上のようにして、離散集合から誘導される束を規定することで、一般化階層からなる束の各元(即ち、一般化ノード)が、当該離散集合から誘導される束の元に対応付けられる。 By defining a bundle derived from a discrete set as described above, each element of the bundle consisting of the generalized hierarchy (that is, a generalized node) is associated with the element of the bundle derived from the discrete set. It is done.
具体的な一例として、図14に示す例では、一般化戦略からなる束の一般化ノード(0,1)は、離散集合から誘導される束の元{1,2,3}に対応付けられる。同様に、一般化戦略からなる束の一般化ノード(2,1)は、離散集合から誘導される束の元{3}に対応付けられる。 As a specific example, in the example illustrated in FIG. 14, a generalized node (0, 1) of a bundle composed of a generalization strategy is associated with a bundle element {1, 2, 3} derived from a discrete set. . Similarly, a bundle generalization node (2, 1) consisting of a generalization strategy is associated with a bundle element {3} derived from a discrete set.
以上のような構成のもと、一般化戦略からなる束と、離散集合から誘導される束との間で、一方の束の元を他方の束の元に変換する処理の一例について以下に説明する。 Based on the above configuration, an example of processing for converting one bundle element into another bundle element between a bundle consisting of a generalized strategy and a bundle derived from a discrete set will be described below. To do.
まず、図14及び図15を参照して、一般化戦略からなる束の元(即ち、一般化ノード)を、離散集合から誘導される束の元に変換する処理の一例について説明する。図15は、一般化戦略からなる束の元を、離散集合から誘導される束の元に変換する処理の一例について説明するための説明図であり、同処理のアルゴリズムを所謂プログラムコードの形式で模式的に提示した図である。なお、図15に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。 First, with reference to FIGS. 14 and 15, an example of processing for converting a bundle element (that is, a generalized node) composed of a generalization strategy into a bundle element derived from a discrete set will be described. FIG. 15 is an explanatory diagram for explaining an example of a process for converting a bundle element composed of a generalization strategy into a bundle element derived from a discrete set. The algorithm of the process is expressed in a so-called program code format. It is the figure shown typically. Note that the example shown in FIG. 15 abstracts a part of information for easy understanding of the flow of processing, and is not necessarily shown in a format that can be compiled based on a compiler of a specific programming language.
図15に示した「set」関数は、入力として、変数v=(v1,v2,・・・,vn)で示された一般化ノードと、(h1,h2,・・・,hn)で示された各属性の一般化階層の高さの最大値を示す情報とを取得する。なお、(v1,v2,・・・,vn)の定義は、図11を参照して前述した、属性値を一般化するための「getFrequentSets」関数の場合と同様である。また、(h1,h2,・・・,hn)のそれぞれは、互いに異なる属性に対応しており、各属性の一般化階層の高さの最大値を示している。即ち、hiは、i番目の属性の一般化階層の高さの最大値を示していることとなる。 The “set” function shown in FIG. 15 has, as inputs, a generalized node indicated by variables v = (v 1 , v 2 ,..., V n ), and (h 1 , h 2 ,. , H n ), the information indicating the maximum value of the generalized hierarchy height of each attribute is acquired. The definition of (v 1 , v 2 ,..., V n ) is the same as that of the “getFrequentSets” function for generalizing attribute values described above with reference to FIG. Each of (h 1 , h 2 ,..., H n ) corresponds to a different attribute and indicates the maximum height of the generalized hierarchy of each attribute. That is, h i indicates the maximum value of the generalized hierarchy of the i-th attribute.
図15に示す「set」関数は、図14に示した一般化戦略からなる束の元と離散集合から誘導される束の元との対応関係に基づき、一般化戦略からなる束の最小元(0,0)を入力とした場合に、離散集合から誘導される束の最大元{1,2,3,4}を出力する。同様に、同関数は、一般化戦略からなる束の最大元(2,2)を入力とした場合に、離散集合から誘導される束の最小限{}を出力する。 The “set” function shown in FIG. 15 is based on the correspondence between the bundle element composed of the generalized strategy shown in FIG. 14 and the bundle element derived from the discrete set, and the minimum element of the bundle composed of the generalized strategy ( When 0,0) is input, the maximum element {1, 2, 3, 4} of bundles derived from the discrete set is output. Similarly, this function outputs the minimum {} of bundles derived from a discrete set when the maximum element (2, 2) of bundles composed of generalization strategies is input.
また、一般化戦略からなる束の最小元に対して、少なくともいずれかの属性に対応する要素が加算された元を、「set」関数の入力とした場合に着目する。この場合には、同関数は、離散集合から誘導される束の最大元に対応する集合から、一般化ノードにおいて値が加算された属性に対応する要素のうち、より値の大きい要素が、当該加算分だけ削除された部分集合に対応する元を出力する。 Further, attention is paid to a case where an element obtained by adding an element corresponding to at least one of the attributes to the minimum element of a bundle composed of generalization strategies is used as an input of the “set” function. In this case, from the set corresponding to the largest element of the bundle derived from the discrete set, the same function is the element with the larger value among the elements corresponding to the attribute added with the value in the generalized node. The element corresponding to the subset deleted by the addition is output.
具体的な一例として、一般化戦略からなる束の最小元(0,0)に対して、性別を示す属性に対応する要素が1加算された(即ち、当該属性を1段階だけ一般化した)一般化ノード(0,1)に着目する。この場合には、離散集合から誘導される束の最大元に対応する集合{1,2,3,4}のうち、要素「3」と「4」とが、性別を示す属性に対応している。そのため、「set」関数は、集合{1,2,3,4}から、要素「3」と「4」とのうち、より大きい要素を1つだけ削除した部分集合{1,2,3}に対応する元を、一般化ノード(0,1)に対応する元として出力する。 As a specific example, the element corresponding to the attribute indicating sex is added to the minimum element (0, 0) of the bundle consisting of the generalization strategy (that is, the attribute is generalized only by one level). Focus on the generalized node (0, 1). In this case, in the set {1, 2, 3, 4} corresponding to the maximum element of the bundle derived from the discrete set, the elements “3” and “4” correspond to the attribute indicating gender. Yes. Therefore, the “set” function is a subset {1, 2, 3} obtained by deleting only one larger element from the elements “3” and “4” from the set {1, 2, 3, 4}. Is output as an element corresponding to the generalized node (0, 1).
また、他の一例として、一般化戦略からなる束の最小元(0,0)に対して、年齢を示す属性に対応する要素が2加算された(即ち、当該属性を2段階だけ一般化した)一般化ノード(2,0)に着目する。この場合には、離散集合から誘導される束の最大元に対応する集合{1,2,3,4}のうち、要素「1」と「2」とが、年齢を示す属性に対応している。そのため、「set」関数は、集合{1,2,3,4}から、要素「1」と「2」とのうち、より大きい要素を2つだけ削除した部分集合{3,4}に対応する元を、一般化ノード(2,0)に対応する元として出力する。 As another example, the element corresponding to the attribute indicating age is added to the minimum element (0, 0) of the bundle consisting of the generalization strategy (that is, the attribute is generalized by only two stages). Note the generalized node (2, 0). In this case, in the set {1, 2, 3, 4} corresponding to the maximum element of the bundle derived from the discrete set, the elements “1” and “2” correspond to the attribute indicating the age. Yes. Therefore, the “set” function corresponds to the subset {3, 4} in which only two larger elements of the elements “1” and “2” are deleted from the set {1, 2, 3, 4}. Is output as an element corresponding to the generalized node (2, 0).
以上のようにして、「set」関数は、図14に示した一般化戦略からなる束の元と離散集合から誘導される束の元との対応関係に基づき、入力として取得した一般化ノードvを、離散集合から誘導される束の元V={a1,a2,・・・}に変換する。 As described above, the “set” function is the generalized node v acquired as an input based on the correspondence between the bundle elements formed by the generalization strategy shown in FIG. 14 and the bundle elements derived from the discrete set. Is converted into a bundle element V = {a 1 , a 2 ,...
以上、図14及び図15を参照して、一般化戦略からなる束の元(即ち、一般化ノード)を、離散集合から誘導される束の元に変換する処理の一例について説明した。 As described above, with reference to FIGS. 14 and 15, an example of processing for converting a bundle element (that is, a generalized node) including a generalization strategy into a bundle element derived from a discrete set has been described.
次に、図16及び図17を参照して、離散集合から誘導される束の元を、一般化戦略からなる束の元(即ち、一般化ノード)に変換する処理の一例について説明する。図16及び図17は、離散集合から誘導される束の元を、一般化戦略からなる束の元(即ち、一般化ノード)に変換する処理の一例について説明するための説明図である。また、図17は、同処理のアルゴリズムを所謂プログラムコードの形式で模式的に提示した図である。なお、図17に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。 Next, an example of processing for converting a bundle element derived from a discrete set into a bundle element (ie, a generalized node) composed of a generalization strategy will be described with reference to FIGS. FIGS. 16 and 17 are explanatory diagrams for explaining an example of processing for converting a bundle element derived from a discrete set into a bundle element (ie, a generalized node) including a generalization strategy. FIG. 17 is a diagram schematically showing the algorithm of the processing in a so-called program code format. Note that the example shown in FIG. 17 abstracts a part of information for easy understanding of the flow of processing, and is not necessarily shown in a format that can be compiled based on a compiler of a specific programming language.
まず、図16を参照して、離散集合から誘導される束の元を、一般化戦略からなる束の元(即ち、一般化ノード)に変換する処理の概要について説明する。図14を参照するとわかるように、一般化戦略からなる束の元と、離散集合から誘導される束の元とを1対1で対応付けた場合に、離散集合から誘導される束の元全てに対して、一般化戦略からなる束の元が対応付けられるとは限らない。 First, with reference to FIG. 16, an outline of processing for converting a bundle element derived from a discrete set into a bundle element (ie, a generalized node) composed of a generalization strategy will be described. As can be seen with reference to FIG. 14, all the bundle elements derived from the discrete set when the bundle elements formed by the generalization strategy and the bundle elements derived from the discrete set are associated one-to-one. On the other hand, a bundle element made up of a generalization strategy is not always associated.
具体的な一例として、前述した「set」関数により、一般化戦略からなる束の元を、離散集合から誘導される束の元に変換した場合に、変換後の元として、例えば、部分集合{1,2,4}に対応する元や、部分集合{1,4}に対応する元は出力されない。そのため、「set」関数の逆変換を行ったとしても、必ずしも、離散集合から誘導される束の元全てを、一般化戦略からなる束の元に変換できるとは限らない。 As a specific example, when a bundle element composed of a generalization strategy is converted into a bundle element derived from a discrete set by the above-described “set” function, for example, a subset { Elements corresponding to 1, 2, 4} and elements corresponding to the subset {1, 4} are not output. Therefore, even if the inverse transformation of the “set” function is performed, it is not always possible to transform all the elements of the bundle derived from the discrete set into the elements of the bundle consisting of the generalization strategy.
以上のような状況を鑑みて、図17に示す「vec」関数は、離散集合から誘導される束の元全てを、一般化戦略からなる束におけるいずれかの元(即ち、一般化ノード)に対応付けるアルゴリズムを提供する。そこで、図17を参照して、離散集合から誘導される束の元を、一般化戦略からなる束の元(即ち、一般化ノード)に変換する、「vec」関数の詳細について以下に説明する。 In view of the above situation, the “vec” function shown in FIG. 17 converts all elements of a bundle derived from a discrete set into any element (that is, a generalized node) in a bundle composed of a generalization strategy. Provide the matching algorithm. The details of the “vec” function for converting a bundle element derived from a discrete set into a bundle element consisting of a generalization strategy (ie, a generalized node) will be described below with reference to FIG. .
図17に示した「vec」関数は、入力として、変数V={a1,a2,・・・}で示された離散集合から誘導される束の元と、(h1,h2,・・・,hn)で示された各属性の一般化階層の高さの最大値を示す情報とを取得する。なお、(h1,h2,・・・,hn)の定義は、図15を参照して前述した、一般化戦略からなる束の元を、離散集合から誘導される束の元に変換する「set」関数の場合と同様である。 The “vec” function shown in FIG. 17 has, as inputs, a bundle element derived from a discrete set indicated by a variable V = {a 1 , a 2 ,...}, (H 1 , h 2 , .., H n ), information indicating the maximum value of the height of the generalized hierarchy of each attribute is acquired. Note that the definition of (h 1 , h 2 ,..., H n ) is to convert a bundle element composed of the generalization strategy described above with reference to FIG. 15 into a bundle element derived from a discrete set. This is the same as the case of the “set” function.
「vec」関数は、入力として取得した離散集合から誘導される束の元を、「set」関数により一般化戦略からなる束の一般化ノードが対応付けられた、離散集合から誘導される束の元のいずれかに対応付ける。具体的には、同関数は、入力として取得した元が示す正の整数の有限集合(即ち、有限集合{1,2,3,4}の部分集合)において、各属性に関連付けられた要素に着目して、当該要素よりも低い値を示す他の要素が欠落している場合には、当該他の要素を補間することで、他の元に対応付ける。 The “vec” function is a bundle derived from a discrete set that is associated with a bundle generalized node consisting of a generalization strategy by the “set” function. Map to one of the original. Specifically, in the finite set of positive integers indicated by the element acquired as input (that is, a subset of the finite set {1, 2, 3, 4}), the function is applied to the element associated with each attribute. When attention is paid to other elements that are lower in value than the element, the other elements are interpolated to correspond to other elements.
例えば、図16において、離散集合から誘導される束の元のうち、有限集合{2,3}で示された元に着目する。前述したように、図14及び図16に示した離散集合から誘導される束の元では、要素「1」及び「2」に基づく有限集合{1,2}の部分集合により、年齢を示す属性の分類が示される。即ち、有限集合{2,3}に着目した場合に、年齢を示す属性に関連付けられた要素は「2」であり、当該要素より低い値を示す要素「1」が欠落していることがわかる。この場合には、「vec」関数は、有限集合{2,3}に対して、年齢を示す属性に対応する要素「1」を補間する。 For example, in FIG. 16, attention is paid to the elements indicated by the finite set {2, 3} among the bundle elements derived from the discrete set. As described above, in the bundle derived from the discrete set shown in FIG. 14 and FIG. 16, the attribute indicating the age is represented by a subset of the finite set {1, 2} based on the elements “1” and “2”. Classification is shown. That is, when focusing on the finite set {2, 3}, it is understood that the element associated with the attribute indicating age is “2” and the element “1” indicating a value lower than the element is missing. . In this case, the “vec” function interpolates the element “1” corresponding to the attribute indicating age with respect to the finite set {2, 3}.
また、図14及び図16に示した離散集合から誘導される束の元では、要素「3」及び「4」に基づく有限集合{3,4}の部分集合により、性別を示す属性の分類が示される。即ち、有限集合{2,3}に着目した場合に、性別を示す属性に関連付けられた要素は「3」であり、当該要素より低い値を示す要素は存在しない。この場合には、「vec」関数は、有限集合{2,3}に対して、性別を示す属性に対応する要素を新たに補完することはない。 Further, in the bundle source derived from the discrete set shown in FIGS. 14 and 16, the attribute classification indicating sex is determined by the subset of the finite set {3, 4} based on the elements “3” and “4”. Indicated. That is, when focusing on the finite set {2, 3}, the element associated with the attribute indicating gender is “3”, and there is no element indicating a value lower than that element. In this case, the “vec” function does not newly supplement the element corresponding to the attribute indicating sex with respect to the finite set {2, 3}.
以上のようにして、「vec」関数は、離散集合から誘導される束において、有限集合{2,3}で示された元を、有限集合{1,2,3}で示された他の元に対応付ける。なお、離散集合から誘導される束において有限集合{1,2,3}で示された元は、図14及び図16に示すように、一般化戦略からなる束の一般化ノード(0,1)に対応付けられる。即ち、「vec」関数は、有限集合{2,3}を要素の補間により有限集合{1,2,3}に対応付けることで、離散集合から誘導される束において有限集合{2,3}で示された元を、一般化戦略からなる束の一般化ノード(0,1)に変換する。 As described above, in the bundle derived from the discrete set, the “vec” function replaces the element indicated by the finite set {2, 3} with the other set indicated by the finite set {1, 2, 3}. Map to the original. In the bundle derived from the discrete set, the element indicated by the finite set {1, 2, 3} is a bundle generalized node (0, 1) consisting of a generalization strategy as shown in FIGS. ). That is, the “vec” function associates the finite set {2, 3} with the finite set {1, 2, 3} by interpolating elements, so that in the bundle derived from the discrete set, the finite set {2, 3} The indicated element is transformed into a bundle of generalized nodes (0, 1) consisting of generalization strategies.
また他の一例として、図16において、離散集合から誘導される束の元のうち、有限集合{1,4}で示された元に着目する。この場合には、年齢を示す属性に関連付けられた要素は「1」であり、当該要素より低い値を示す要素は存在しない。この場合には、「vec」関数は、有限集合{1,4}に対して、年齢を示す属性に対応する要素を新たに補間することはない。 As another example, in FIG. 16, attention is paid to elements indicated by a finite set {1, 4} among bundle elements derived from a discrete set. In this case, the element associated with the attribute indicating age is “1”, and there is no element indicating a value lower than that element. In this case, the “vec” function does not newly interpolate an element corresponding to the attribute indicating age for the finite set {1, 4}.
また、有限集合{1,4}に着目した場合に、性別を示す属性に関連付けられた要素は「4」であり、当該要素より低い値を示す要素「3」が欠落していることがわかる。この場合には、「vec」関数は、有限集合{1,4}に対して、性別を示す属性に対応する要素「3」を補間する。 Further, when focusing on the finite set {1, 4}, it is understood that the element associated with the attribute indicating gender is “4” and the element “3” indicating a value lower than the element is missing. . In this case, the “vec” function interpolates the element “3” corresponding to the attribute indicating sex with respect to the finite set {1, 4}.
以上のようにして、「vec」関数は、離散集合から誘導される束において、有限集合{1,4}で示された元を、有限集合{1,3,4}で示された他の元に対応付ける。なお、離散集合から誘導される束において有限集合{1,3,4}で示された元は、図14及び図16に示すように、一般化戦略からなる束の一般化ノード(1,0)に対応付けられる。即ち、「vec」関数は、有限集合{1,4}を要素の補間により有限集合{1,3,4}に対応付けることで、離散集合から誘導される束において有限集合{1,4}で示された元を、一般化戦略からなる束の一般化ノード(1,0)に変換する。 As described above, in the bundle derived from the discrete set, the “vec” function replaces the element represented by the finite set {1, 4} with the other represented by the finite set {1, 3, 4}. Map to the original. Note that in a bundle derived from a discrete set, an element represented by a finite set {1, 3, 4} is a bundle generalized node (1,0) consisting of a generalization strategy as shown in FIGS. ). In other words, the “vec” function associates the finite set {1, 4} with the finite set {1, 3, 4} by interpolating elements, so that in the bundle derived from the discrete set, the finite set {1, 4} The indicated element is transformed into a bundle of generalized nodes (1, 0) consisting of generalization strategies.
同様にして、離散集合から誘導される束において、有限集合{1,2,4}、{2,3,4}、{2,4}で示された各元は、有限集合{1,2,3,4}で示された他の元に対応付けられる。なお、離散集合から誘導される束において有限集合{1,2,3,4}で示された元は、図14及び図16に示すように、一般化戦略からなる束の一般化ノード(0,9)に対応付けられる。即ち、「vec」関数は、離散集合から誘導される束において、有限集合{1,2,4}、{2,3,4}、{2,4}で示された各元を、一般化戦略からなる束の一般化ノード(0,0)に変換する。 Similarly, in a bundle derived from a discrete set, each element indicated by a finite set {1, 2, 4}, {2, 3, 4}, {2, 4} is represented by a finite set {1, 2, , 3, 4}. In the bundle derived from the discrete set, the element indicated by the finite set {1, 2, 3, 4} is a bundle generalized node (0) as shown in FIG. 14 and FIG. , 9). That is, the “vec” function generalizes each element represented by a finite set {1, 2, 4}, {2, 3, 4}, {2, 4} in a bundle derived from a discrete set. Convert to a bundle of generalized nodes (0, 0) consisting of strategies.
以上のようにして、「vec」関数は、図16に示すように、入力として取得した離散集合から誘導される束の元V={a1,a2,・・・}を、一般化戦略からなる束の一般化ノードv=(v1,v2,・・・,vn)に変換する。 As described above, as shown in FIG. 16, the “vec” function uses a bundle element V = {a 1 , a 2 ,... Is converted into a generalized node v = (v 1 , v 2 ,..., V n ).
以上、図16及び図17を参照して、離散集合から誘導される束の元を、一般化戦略からなる束の元(即ち、一般化ノード)に変換する処理の一例について説明した。 As described above, with reference to FIGS. 16 and 17, an example of processing for converting a bundle element derived from a discrete set into a bundle element (that is, a generalized node) including a generalization strategy has been described.
[4.4.極小元の探索]
次に、図18及び図19を参照して、前述した解析部14の極小元探索部143が、一般化戦略からなる束における各一般化ノードから、(k,t)−匿名性を満たす極小元を探索する処理の一例について説明する。図18及び図19は、一般化戦略からなる束における各一般化ノードから、(k,t)−匿名性を満たす極小元を探索する処理の一例について説明するための説明図である。
[4.4. Search for local minimum]
Next, referring to FIG. 18 and FIG. 19, the local
まず、図18を参照して、一般化戦略からなる束における各一般化ノードから、(k,t)−匿名性を満たす極小元を探索するための「AMSS(A Most Specific Sentences)」関数の処理の流れについて説明する。図18は、同処理のアルゴリズムを所謂プログラムコードの形式で模式的に提示した図である。なお、図18に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。 First, referring to FIG. 18, an “AMSS (A Most Specific Sentences)” function for searching for a minimal element satisfying (k, t) −anonymity from each generalized node in a bundle composed of generalization strategies. The flow of processing will be described. FIG. 18 is a diagram schematically showing the algorithm of the processing in a so-called program code format. In the example shown in FIG. 18, some information is abstracted for easy understanding of the processing flow, and is not necessarily shown in a format that can be compiled based on a compiler of a specific programming language.
図18に示した「AMSS」関数は、入力として、変数v=(v1,v2,・・・,vn)で示された(k,t)−匿名性を満たす一般化ノードと、変数Tで示された処理対象となるテーブルd10と、変数(H1,H2,・・・,Hn)で示された各属性の一般化階層を示す情報とを取得する。なお、(v1,v2,・・・,vn)及び(H1,H2,・・・,Hn)の定義は、図11を参照して前述した、属性値を一般化するための「getFrequentSets」関数の場合と同様である。 The “AMSS” function shown in FIG. 18 has a generalized node satisfying (k, t) -anonymity represented by variables v = (v 1 , v 2 ,..., V n ) as inputs, A table d10 to be processed indicated by the variable T and information indicating the generalized hierarchy of each attribute indicated by the variables (H 1 , H 2 ,..., H n ) are acquired. The definitions of (v 1 , v 2 ,..., V n ) and (H 1 , H 2 ,..., H n ) generalize the attribute values described above with reference to FIG. This is the same as the case of the “getFrequentSets” function.
「AMSS」関数は、極小元探索部143の動作として前述したように、一般化戦略からなる束において、(k,t)−匿名性を満たす元(一般化ノード)を基準点として、少なくともいずれかの要素をより具体化する方向に向けて、(k,t)−匿名性を満たす極小元を探索する。
As described above as the operation of the minimal
具体的には、「AMSS」関数は、入力として指定された(k,t)−匿名性を満たす一般化ノードvを、(k,t)−匿名性を満たす極小元を探索するための基準点として設定する。そして、同関数は、(k,t)−匿名性を満たすことが確認された元の各要素(即ち、一般化階層の高さ)のうち、いずれかの要素をより具体化する方向にシフトさせ、当該シフト後の元が(k,t)−匿名性を満たす元か否かを判定する。なお、(k,t)−匿名性の判定には、図13を参照して前述した「kAnonymityCheck」関数を使用すればよい。 Specifically, the “AMSS” function is a criterion for searching for a generalized node v that satisfies (k, t) -anonymity specified as an input, and a minimal element that satisfies (k, t) -anonymity. Set as a point. Then, the function is shifted in a direction to make one of the elements more specific among the original elements (that is, the height of the generalized hierarchy) confirmed to satisfy (k, t) -anonymity. And determine whether or not the element after the shift satisfies (k, t) -anonymity. For the determination of (k, t) -anonymity, the “kAnonymityCheck” function described above with reference to FIG. 13 may be used.
そして、「AMSS」関数は、シフト後の元が(k,t)−匿名性を満たす場合には、いずれかの要素をさらに具体化する方向にシフトさせ、シフト後の元が(k,t)−匿名性を満たさない場合には、いずれかの要素を一般化(抽象化)する方向にシフトさせる。このように、同関数は、いずれかの要素をシフトさせ、シフト後の元が(k,t)−匿名性を満たす元か否かを判定する処理を逐次実行することで、(k,t)−匿名性を満たす極小元を探索する。 Then, when the element after the shift satisfies (k, t) -anonymity, the “AMSS” function shifts any element in a direction to further embody, and the element after the shift becomes (k, t )-If anonymity is not satisfied, shift any element in the direction of generalization (abstraction). As described above, the same function sequentially shifts any element and sequentially determines whether the element after the shift satisfies (k, t) -anonymity. )-Search for a minimal element that satisfies anonymity.
なお、図18に示す例では、「AMSS」関数は、(k,t)−匿名性を満たす極小元を探索に、所謂二分探索と呼ばれる方法を用いている。 In the example shown in FIG. 18, the “AMSS” function uses a so-called binary search method for searching for a minimal element satisfying (k, t) -anonymity.
ここで、図19を参照して、図18に示した「AMSS」関数に基づき、極小元探索部143が、(k,t)−匿名性を満たす極小元の探索に係る処理について、具体的な例を挙げて説明する。図19に示す例は、図5及び図6に示した属性の一般化階層に基づく一般化戦略からなる束(図7参照)を適用し、最大元(2,2)を基準点とした場合の一例について示している。なお、図19に示す境界d50は、(k,t)−匿名性を満たす元と、(k,t)−匿名性を満たさない元の境界を示しており、当該境界d50から最大元側(即ち、図面の下側)の各元が、(k,t)−匿名性を満たす元に相当する。もちろん、境界d50から最小元側(即ち、図面の上側)の各元は、(k,t)−匿名性を満たさない元に相当することは言うまでもない。
Here, referring to FIG. 19, based on the “AMSS” function shown in FIG. 18, the minimum
図19に示す例では、極小元探索部143は、まず、年齢の属性に対応する要素をより具体化する方向(即ち、一般化戦略の高さを低くする方向)にシフトさせている。即ち、極小元探索部143は、一般化ノード(2,2)から、年齢の属性に対応する要素をより具体化する方向にシフトさせた一般化ノード(1,2)の(k,t)−匿名性を判定する。ここでは、一般化ノード(1,2)は、(k,t)−匿名性を満たすものとする。
In the example illustrated in FIG. 19, the local
一般化ノード(1,2)が(k,t)−匿名性を満たすため、極小元探索部143は、当該一般化ノード(1,2)から、年齢の属性に対応する要素をより具体化する方向にシフトさせた一般化ノード(0,2)の(k,t)−匿名性を判定する。ここでは、一般化ノード(0,2)は、(k,t)−匿名性を満たさないものとする。
Since the generalized node (1, 2) satisfies (k, t) -anonymity, the local
一般化ノード(0,2)は、(k,t)−匿名性を満たさないため、極小元探索部143は、一般化ノード(1,2)から、性別の属性に対応する要素をより具体化する方向にシフトさせた一般化ノード(1,1)の(k,t)−匿名性を判定する。ここでは、一般化ノード(1,1)は、(k,t)−匿名性を満たすものとする。
Since the generalized node (0, 2) does not satisfy (k, t) -anonymity, the local
一般化ノード(1,1)が(k,t)−匿名性を満たすため、極小元探索部143は、当該一般化ノード(1,1)から、性別の属性に対応する要素をより具体化する方向にシフトさせた一般化ノード(1,0)の(k,t)−匿名性を判定する。ここでは、一般化ノード(1,0)は、(k,t)−匿名性を満たさないものとする。
Since the generalized node (1, 1) satisfies (k, t) -anonymity, the local
なお、一般化ノード(0,1)は、一般化ノード(0,2)の判定結果に基づき、(k,t)−匿名性を満たさないことが既に判定されている。これは、一般化ノード(0,1)が、一般化ノード(0,2)のうち、年齢の属性に対応する要素をさらに具体化した一般化ノードに相当するためである。具体的には、(k,t)−匿名性を満たさない一般化ノードを、さらに具体化した他の一般化ノードは、(k,t)−匿名性を満たさない。そのため、一般化ノード(0,2)が(k,t)−匿名性を満たさないと判定された場合には、当該一般化ノード(0,2)をさらに具体化した一般化ノード(0,1)は、当該一般化ノード(0,2)の判定結果をもって、(k,t)−匿名性を満たさないこととなる。 Note that it is already determined that the generalized node (0, 1) does not satisfy (k, t) -anonymity based on the determination result of the generalized node (0, 2). This is because the generalized node (0, 1) corresponds to a generalized node further embodying elements corresponding to the age attribute among the generalized nodes (0, 2). Specifically, the generalized node that does not satisfy (k, t) -anonymity, and another generalized node that is further specified does not satisfy (k, t) -anonymity. For this reason, when it is determined that the generalized node (0, 2) does not satisfy (k, t) -anonymity, the generalized node (0, 2) that further specifies the generalized node (0, 2). 1) does not satisfy (k, t) -anonymity with the determination result of the generalized node (0, 2).
ここで、一般化ノード(1,1)をaとした場合に、a>bの関係を有する一般化ノードbは、(0,1)及び(1,0)となる。このとき、(k,t)−匿名性を判定する処理をクエリ関数qとした場合に、aが極小元であるとは、q(a)=1であり、かつ、任意のa>b∈Lに対してq(b)=0が成り立つことであった。なお、一般化ノード(0,1)については、実際にq(a)を計算しなくても、前述の通り、一般化ノード(0,2)の判定結果に基づき、q(a)=0であることは自明である。そのため、極小元探索部143は、一般化ノード(1,1)を極小元と判定し、当該一般化ノード(1,1)を出力する。
Here, when a is a generalized node (1, 1), generalized nodes b having a> b relationship are (0, 1) and (1, 0). At this time, when the process of determining (k, t) -anonymity is a query function q, a is a minimal element, q (a) = 1, and any a> b∈ Q (b) = 0 holds for L. As for the generalized node (0, 1), q (a) = 0 based on the determination result of the generalized node (0, 2) as described above without actually calculating q (a). It is self-evident. Therefore, the minimal
以上、図18及び図19を参照して、極小元探索部143が、一般化戦略からなる束における各一般化ノードから、(k,t)−匿名性を満たす極小元を探索する処理の一例について説明した。
As described above, with reference to FIG. 18 and FIG. 19, an example of processing in which the minimal
[4.5.一連の処理の流れ]
次に、図20及び図21を参照して、前述した解析部14が、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索し、探索された一連の極小元それぞれに対応する一般化戦略を出力する処理の一例について説明する。図20及び図21は、解析部14の一連の処理の流れの一例について説明するための説明図である。
[4.5. Flow of a series of processing]
Next, referring to FIG. 20 and FIG. 21, the
図20は、解析部14の一連の処理の一例を示した「All-MSS(All Most Specific Sentences)」関数のアルゴリズムを、所謂プログラムコードの形式で模式的に提示した図である。なお、図20に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。
FIG. 20 is a diagram schematically showing an algorithm of an “All-MSS (All Most Specific Sentences)” function showing an example of a series of processes of the
図20に示した「All-MSS」関数は、入力として、(k,t)−匿名性の閾値(即ち、k及びt)と、変数Tで示された処理対象となるテーブルd10と、変数(H1,H2,・・・,Hn)で示された各属性の一般化階層を示す情報とを取得する。なお、(H1,H2,・・・,Hn)の定義は、図11を参照して前述した、属性値を一般化するための「getFrequentSets」関数の場合と同様である。 The “All-MSS” function shown in FIG. 20 has (k, t) -anonymity thresholds (that is, k and t) as input, a table d10 to be processed indicated by a variable T, and a variable Information indicating the generalized hierarchy of each attribute indicated by (H 1 , H 2 ,..., H n ) is acquired. The definition of (H 1 , H 2 ,..., H n ) is the same as that of the “getFrequentSets” function for generalizing attribute values described above with reference to FIG.
また、図21は、図20に示した「All-MSS」関数の一連の処理の流れを示したフローチャートである。以下に、図21を参照して、「All-MSS」関数の一連の処理の流れ、即ち、解析部14の一連の処理の流れの一例について説明する。なお、本説明では、図5及び図6に示した属性の一般化階層に基づく一般化戦略からなる束(図7参照)を適用したものとして説明する。なお、この場合には、一般化戦略からなる束の各一般化ノードは、図14及び図16に示した離散集合から誘導される束の元に対応付けられるものとする。
FIG. 21 is a flowchart showing a flow of a series of processes of the “All-MSS” function shown in FIG. Hereinafter, with reference to FIG. 21, an example of a flow of a series of processes of the “All-MSS” function, that is, an example of a series of processes of the
(ステップS101)
解析部14は、DB情報取得部11から処理対象となるテーブルd10(即ち、T)の情報を取得する。また、解析部14は、階層情報取得部13から、処理対象となるテーブルd10の各属性のうち、属性値の一般化(抽象化)の対象となる属性を示す情報と、当該属性それぞれの一般化階層を示す情報(即ち、(H1,H2,・・・,Hn))とを取得する。また、解析部14は、階層情報取得部13から、匿名性の条件を示す情報として、(k,t)−匿名性の閾値(即ち、k及びt)を取得する。
(Step S101)
The
解析データ生成部141は、属性値の一般化(抽象化)の対象となる属性それぞれの一般化階層を示す情報に基づき、各属性の一般化階層の高さの組み合わせを抽出し、抽出した各組み合わせを一般化戦略として規定する。
The analysis
そして、解析データ生成部141は、既定した各一般化戦略を元として、各一般化戦略が要素として有する各属性の一般化階層の高さをより一般化(抽象化)する順序関係(換言すると、各属性の分類をより抽象化する順序関係)に基づき、一般化戦略からなる束を規定する。
Then, the analysis
(ステップS103)
極小元探索部143は、まず、一般化戦略からなる束の最大元を基準点として、「AMSS」関数に基づき、(k,t)−匿名性を満たす極小元vを取得する。具体的には、極小元探索部143は、図19に基づき前述したように、一般化戦略からなる束の最大元(2,2)を基準点とした場合に、(k,t)−匿名性を満たす極小元v=(1,1)を取得する。極小元探索部143は、(k,t)−匿名性を満たす極小元の探索結果として、取得した極小元v=(1,1)を基準点導出部145に通知する。
(Step S103)
First, the minimal
(ステップS105)
基準点導出部145は、極小元探索部143から、(k,t)−匿名性を満たす極小元の探索結果として、極小元v=(1,1)を取得する。基準点導出部145は、取得した極小元vを入力として「set」関数に基づき、当該極小元vに対応する、離散集合から誘導される束の元Vを特定する。
(Step S105)
The reference
例えば、図22は、基準点導出部145の処理の一例について説明するための説明図であり、基準点導出部145が、取得した極小元v=(1,1)に対応する、離散集合から誘導される束の元を特定する処理を模式的に示している。なお、図22において、参照符号d52は、一般化戦略からなる束に示された境界d50を、離散集合から誘導される束側に示したものである。即ち、境界d52から最小元側(即ち、図面の下側)の各元を、一般化戦略からなる束の一般化ノードに変換した場合に、当該一般化ノードは(k,t)−匿名性を満たすこととなる。また、境界d52から最大元側(即ち、図面の上側)の各元を、一般化戦略からなる束の一般化ノードに変換した場合に、当該一般化ノードは(k,t)−匿名性を満たさないこととなる。
For example, FIG. 22 is an explanatory diagram for explaining an example of the processing of the reference
即ち、基準点導出部145は、取得した極小元v=(1,1)に対応する、離散集合から誘導される束の元Vとして、V={1,3}を特定する。
That is, the reference
次に、基準点導出部145は、特定した離散集合から誘導される束の元V={1,3}の補集合を導出し、導出した補集合を変数Cで示された集合に代入する。例えば、図23は、基準点導出部145の処理の一例について説明するための説明図である。図23に示す例では、基準点導出部145は、離散集合から誘導される束の元V={1,3}の補集合に対応する元{2,4}を導出し、導出した元{2,4}を集合Cに代入する。
Next, the reference
(ステップS107)
次いで、基準点導出部145は、変数Dで示された集合を、空集合で初期化する。なお、当該集合Dは、離散集合から誘導される束の各元のうち、後述する処理が既に完了している元を保持するための集合であり、当該元に対して再度処理が実行されるのを防ぐために設けられている。
(Step S107)
Next, the reference
(ステップS109)
基準点導出部145は、離散集合から誘導される束の元が示す正の整数の集合から、極小横断に相当する部分集合を抽出する関数Trに対して、導出した補集合Cを入力する。そして、基準点導出部145は、関数Trの出力として、補集合Cの極小横断に相当する部分集合Tr(C)を取得し、当該部分集合Tr(C)の要素のうち、集合Dに含まれない要素に対応する離散集合から誘導される束の元を、変数Xで示された元として抽出する。
(Step S109)
The reference
具体的な一例として、図23に示すように、基準点導出部145は、離散集合から誘導される束の元{2,4}の極小横断に相当する部分集合Tr(C)として、Tr(C)={{2},{4}}を取得する。
As a specific example, as shown in FIG. 23, the reference
なお、関数Trは、入力された集合(例えば、補集合C)をハイパーエッジとするハイパーグラフの双対を計算する、所謂ハイパーグラフ双対化(Hypergraph Dualization)のアルゴリズムとして知られる処理に相当する。そのため、ハイパーグラフ双対化のアルゴリズムに基づく処理であれば、関数Trの処理内容は特に限定されない。また、ハイパーグラフ双対化のアルゴリズムに基づく処理に限らず、入力された正の整数の集合から、極小横断に相当する部分集合を抽出することが可能であれば、関数Trの処理内容は特に限定されないことは言うまでもない。 The function Tr corresponds to a process known as a so-called hypergraph dualization algorithm for calculating a hypergraph dual with the input set (for example, the complementary set C) as a hyper edge. Therefore, the processing content of the function Tr is not particularly limited as long as the processing is based on the hypergraph dualization algorithm. Further, the processing contents of the function Tr are not particularly limited as long as it is possible to extract a subset corresponding to the minimum crossing from the set of input positive integers, not limited to the processing based on the hypergraph dualization algorithm. It goes without saying that it is not done.
(ステップS111)
離散集合から誘導される束の元Xが存在する場合には(ステップS109、YES)、基準点導出部145は、「vec」関数に基づき、当該元Xに対応する、一般化戦略からなる束の一般化ノードvを特定する。
(Step S111)
When there is a bundle element X derived from the discrete set (step S109, YES), the reference
例えば、図24は、基準点導出部145の処理の一例について説明するための説明図である。図24に示す例では、基準点導出部145が、「vec」関数に基づき、離散集合から誘導される束の元{2}及び元{4}それぞれについて、対応する一般化戦略からなる束の一般化ノードvを特定している。具体的には、基準点導出部145は、離散集合から誘導される束の元{2}に対応する一般化ノードとして、一般化ノードv=(0,2)を特定する。同様に、基準点導出部145は、離散集合から誘導される束の元{4}に対応する一般化ノードとして、一般化ノードv=(2,0)を特定する。
For example, FIG. 24 is an explanatory diagram for explaining an example of processing of the reference
(ステップS113)
そして、基準点導出部145は、特定した一般化ノードvが、(k,t)−匿名性を満たすか否かを判定する。なお、(k,t)−匿名性を満たすか否かの判定には、前述した「kAnonymityCheck」関数を適用すればよい。
(Step S113)
Then, the reference
(ステップS119)
特定した一般化ノードvが(k,t)−匿名性を満たさない場合には(ステップS113、NO)、基準点導出部145は、当該一般化ノードvの特定元である、離散集合から誘導される束の元X(即ち、「vec」関数に入力した元X)を集合Dに加える。例えば、図24に示す例では、離散集合から誘導される束の元{2}に対応する一般化ノードv=(0,2)は、(k,t)−匿名性を満たさない。そのため、基準点導出部145は、一般化ノードv=(0,2)の特定元である、離散集合から誘導される束の元X={2}を集合Dに加える。
(Step S119)
When the identified generalized node v does not satisfy (k, t) -anonymity (NO in step S113), the reference
(ステップS115)
これに対して、特定した一般化ノードvが(k,t)−匿名性を満たす場合には(ステップS113、YES)、基準点導出部145は、当該一般化ノードvを新たな基準点の候補として、極小元探索部143に出力する。例えば、図24に示す例では、離散集合から誘導される束の元{4}に対応する一般化ノードv=(2,0)は、(k,t)−匿名性を満たす。そのため、基準点導出部145は、一般化ノードv=(2,0)を、新たな基準点の候補として、極小元探索部143に出力する。
(Step S115)
On the other hand, when the specified generalized node v satisfies (k, t) -anonymity (step S113, YES), the reference
この新たな基準点の候補の出力を受けて、極小元探索部143は、当該候補を基準点として新たに(k,t)−匿名性を満たす極小元wを探索する。そして、極小元探索部143は、(k,t)−匿名性を満たす極小元の探索結果として、探索された極小元wを基準点導出部145に通知する。
Upon receiving the output of the new reference point candidate, the local minimum
(ステップS117)
基準点導出部145は、取得した極小元wに対応する、離散集合から誘導される束の元Vを特定し、特定した元Vの補集合を集合Cに加える。
(Step S117)
The reference
(ステップS109)
そして、極小元探索部143及び基準点導出部145は、ステップS111〜S117に示された一連の処理を、部分集合Tr(C)の要素のうち、集合Dに含まれない要素に対応する離散集合から誘導される束の元Xが存在する限り継続する(ステップS109、YES)。
(Step S109)
Then, the minimal
例えば、図25は、極小元探索部143の処理の一例について説明するための説明図であり、極小元探索部143が、一般化ノードv=(2,0)を新たな基準点として、(k,t)−匿名性を満たす極小元を探索する場合について示している。なお、図25に示す例では、一般化ノードv=(2,0)自体が、(k,t)−匿名性を満たす極小元に相当する。
For example, FIG. 25 is an explanatory diagram for explaining an example of processing of the minimal
そして、離散集合から誘導される束の元Xが存在しない場合には(ステップS109、NO)、極小元探索部143は、探索された一連の(k,t)−匿名性を満たす極小元それぞれに対応する一般化戦略を、解析結果出力部15に出力する。
When there is no bundle element X derived from the discrete set (step S109, NO), the minimal
例えば、図26は、極小元探索部143の処理結果の一例について説明するための説明図であり、図5及び図6に示した属性の一般化階層に基づく一般化戦略からなる束(図7参照)から探索された、(k,t)−匿名性を満たす極小元の一例を示している。即ち、図26に示す例では、一般化ノード(1,1)及び(2,0)が、(k,t)−匿名性を満たす極小元に相当する。そのため、極小元探索部143は、一般化ノード(1,1)及び(2,0)に対応する一般化戦略を、解析結果出力部15に出力することとなる。
For example, FIG. 26 is an explanatory diagram for explaining an example of the processing result of the local
解析結果出力部15は、極小元探索部143により探索された一連の極小元それぞれに対応する一般化戦略を、当該極小元探索部143から取得する。そして、解析結果出力部15は、取得した一連の一般化戦略を、(k,t)−匿名性を満たすようにテーブルd10を一般化(抽象化)するための条件(即ち、一般化戦略)の候補として、管理者端末30を介して管理者に提示する。なお、このとき提示される条件、即ち、探索された一連の極小元それぞれに対応する一般化戦略が、あらかじめ指定された(k,t)−匿名性を満たすようにテーブルd10を一般化し、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略に相当する。
The analysis
なお、ステップS109として示したように、解析部14は、補集合Cをハイパーエッジとするハイパーグラフの双対を計算する処理を繰り返し計算することとなる。そのため、同処理として、ハイパーグラフの双対化が逐次的に実行可能なアルゴリズム、即ち、新たなハイパーエッジが追加されたとしても、既に双対を計算したハイパーグラフについては、再計算を必要としないアルゴリズムを適用してもよい。このようなアルゴリズムを適用することで、解析部14は、(k,t)−匿名性を満たす極小元の探索に係る計算量をより削減することが可能となる。
As shown in step S109, the
以上、図20及び図21を参照して、前述した解析部14が、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索し、探索された一連の極小元それぞれに対応する一般化戦略を出力する処理の一例について説明した。
As described above, with reference to FIGS. 20 and 21, the
<5.計算量>
次に、図27を参照して、本実施形態に係る情報処理装置10が、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索する場合の、当該探索に係る処理の計算量について説明する。図27は、本実施形態に係る情報処理装置10が、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索する場合の、当該探索に係る処理の計算量について説明するための説明図である。なお、本説明では、情報処理装置10が、(k,t)−匿名性を満たす極小元を探索する場合の計算量を、(k,t)−匿名性を満たすか否かを判定するクエリ関数q(即ち、「kAnonymityCheck」関数)の実行回数として説明する。また、図27は、一例として、図5及び図6に示した「年齢」及び「性別」を示す属性の一般化階層に基づく一般化戦略からなる束を示している。
<5. Calculation amount>
Next, with reference to FIG. 27, the
まず、情報処理装置10が、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索する場合の計算量を説明するための用語として、「入力のサイズ」、「出力のサイズ」、「ボーダー」、及び「束の幅」の定義について説明する。
First, as terms for explaining the amount of calculation when the
(入力のサイズ)
「入力のサイズ」とは、一般化戦略の表現長に相当する。入力のサイズRiは、一般化の対象となる属性の数mと、各属性の一般化階層における階層の数miとに基づき、以下に示す(式1)に基づき規定される。
(Input size)
The “input size” corresponds to the expression length of the generalization strategy. Size Ri inputs, the number m of attributes to be generalized, based on the number m i of the hierarchy in general hierarchy of each attribute is defined based on the following equation (1).
例えば、図5示した「年齢」を示す属性の一般化階層は、高さが0、1、2の3つの階層を有しており、階層の数mi=3となる。同様に、図6示した「性別」を示す属性の一般化階層は、高さが0、1、2の3つの階層を有しており、階層の数mi=3となる。そのため、「年齢」及び「性別」を示す属性の属性値を一般化するための一般化戦略の数は、図27に示した、(0,0),(0,1),・・・,(1,2),(2,2)の9つとなる。したがって、図27に示す例では、入力のサイズRi=log9となる。
For example, the generalized hierarchy of the attribute indicating “age” shown in FIG. 5 has three hierarchies with
(出力のサイズ)
「出力のサイズ」とは、情報処理装置10が出力する一般化戦略の数に相当し、即ち、情報処理装置10により探索された(k,t)−匿名性を満たす極小元の数に相当する。
(Output size)
The “size of output” corresponds to the number of generalization strategies output by the
図27に示す例において、境界d50を、(k,t)−匿名性を満たす元と、(k,t)−匿名性を満たさない元の境界とした場合に、(k,t)−匿名性を満たす極小元は、一般化ノード(1,1)及び(2,0)の2つとなる。即ち、図27に示す例では、出力のサイズは「2」となる。 In the example shown in FIG. 27, when the boundary d50 is an original boundary that satisfies (k, t) -anonymity and an original boundary that does not satisfy (k, t) -anonymity, (k, t) -anonymity There are two minimal elements satisfying the characteristics, generalized nodes (1, 1) and (2, 0). That is, in the example shown in FIG. 27, the output size is “2”.
(ボーダー)
「ボーダー」とは、束上の境界にあたる一般化戦略の集合に相当し、「正のボーダー」と、「負のボーダー」とに分けられる。
(border)
The “border” corresponds to a set of generalized strategies corresponding to the boundaries on the bundle, and is divided into a “positive border” and a “negative border”.
「正のボーダー」とは、(k,t)−匿名性を満たす極小な一般化戦略(即ち、(k,t)−匿名性を満たす極小元)の集合に相当する。図27に示す例では、一般化ノード(1,1)及び(2,0)の集合が、正のボーダーに相当する。即ち、正ボーダーのサイズと、出力のサイズとは一致することとなる。 The “positive border” corresponds to a set of minimal generalization strategies satisfying (k, t) -anonymity (that is, (k, t) -minimum elements satisfying anonymity). In the example shown in FIG. 27, a set of generalized nodes (1, 1) and (2, 0) corresponds to a positive border. That is, the size of the main border and the output size are the same.
「負のボーダー」とは、(k,t)−匿名性を満たさない極大な一般化戦略の集合に相当する。図27に示す例では、一般化ノード(0,2)及び(1,0)の集合が、負のボーダーに相当する。 A “negative border” corresponds to a set of maximal generalization strategies that do not satisfy (k, t) -anonymity. In the example shown in FIG. 27, a set of generalized nodes (0, 2) and (1, 0) corresponds to a negative border.
(束の幅)
「束の幅」とは、束上の元のうち、「行き先」が最も多い元の当該行き先の数に相当する。ここで、一般化ノードBが、一般化ノードAの「行き先」であるとは、順序関係において、A>Bであり、かつ、A>C>Bを満たす一般化ノードCが存在しないことを意味する。なお、ここでノード間の関係を示す記号として「>」を用いたが、この記号は、数値間の大小関係を示す記号ではなく、ノード間の順序関係を示しており、所謂「succeed」と呼ばれる記号に相当する。また、以降の説明では、ノード間の関係を示す記号として、「>」、「<」、「≧」、及び「≦」を使用した場合には、これらの記号は、数値間の大小関係を示す記号ではなく、ノード間の順序関係を示しているものとする。
(Bundle width)
The “bundle width” corresponds to the number of destinations having the largest “destination” among the sources on the bundle. Here, the generalized node B is the “destination” of the generalized node A. In the order relation, A> B and there is no generalized node C that satisfies A>C> B. means. Here, “>” is used as a symbol indicating a relationship between nodes, but this symbol indicates an order relationship between nodes, not a symbol indicating a magnitude relationship between numerical values, so-called “succeed”. It corresponds to the symbol called. In the following description, when “>”, “<”, “≧”, and “≦” are used as symbols indicating the relationship between the nodes, these symbols indicate the magnitude relationship between the numerical values. It is assumed that the order relationship between the nodes is shown instead of the symbol.
具体的には、図27に示す例において、一般化ノード(1,2)の行き先は、一般化ノード(0,2)及び(1,1)であり、当該行き先の数は2つとなる。なお、図27に示す例において、行き先の数が2つを超える一般化ノードは存在しない。そのため、図27に示す例では、束の幅は「2」となる。 Specifically, in the example shown in FIG. 27, the destinations of the generalized nodes (1, 2) are the generalized nodes (0, 2) and (1, 1), and the number of the destinations is two. In the example shown in FIG. 27, there is no generalized node having more than two destinations. Therefore, in the example shown in FIG. 27, the width of the bundle is “2”.
(計算量)
以上を踏まえ、出力のサイズをN、側の幅をw、負のボーダーのサイズをB−とした場合には、情報処理装置10が、(k,t)−匿名性を満たす極小元を探索する場合の計算量Qは、以下に示す(式2)で示される。なお、出力のサイズNは、入力のサイズと、一般化の対象となるデータに依存する。
(Calculation amount)
Based on the above, when the output size is N, the side width is w, and the negative border size is B − , the
ここで、(k,t)−匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略、即ち、(k,t)−匿名性を満たす一連の極小元を特定する処理は、所謂列挙問題に相当する。このような列挙問題を解く従来のアルゴリズムは、一般的にはヒューリスティックなアルゴリズムに相当し、計算量を事前に算出することが困難であった。 Here, a generalized strategy that satisfies (k, t) -anonymity and can minimize a decrease in the amount of information, that is, a series of minimal elements that satisfy (k, t) -anonymity. The specified process corresponds to a so-called enumeration problem. Conventional algorithms for solving such enumeration problems generally correspond to heuristic algorithms, and it has been difficult to calculate the amount of calculation in advance.
これに対して、本実施形態に係る情報処理装置10は、ハイパーグラフ双対化のアルゴリズムを、探索元(即ち、(k,t)−匿名性を満たす極小元)を列挙するために利用している。このようなハイパーグラフ双対化のアルゴリズムには、論理的な上限が与えられているものもある。そのため、本実施形態に係る情報処理装置10が、(k,t)−匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略を特定(列挙)する処理の計算量を事前に算出することが可能となる。
In contrast, the
また、本実施形態に係る情報処理装置10の処理として説明したアルゴリズムに依れば、必ずしも全ての一般化戦略(即ち、一般化ノード)に対して、(k,t)−匿名性を満たすか否かの判定をおこなう必要はない。具体的な一例として、図20〜図26を参照して説明した例では、一般化ノード(2,1)に対して、(k,t)−匿名性を満たすか否かの判定を行われていないが、(k,t)−匿名性を満たす極小元(1,1)及び(2,0)を特定している。このように、本実施形態に係る情報処理装置10の処理として説明したアルゴリズムに依れば、一般化戦略からなる束から、(k,t)−匿名性を満たす一連の極小元を効率よく探索(列挙)し、当該探索に係る処理の負荷を低減することが可能となる。
Further, according to the algorithm described as the processing of the
以上、図27を参照して、本実施形態に係る情報処理装置10が、一般化戦略からなる束から、(k,t)−匿名性を満たす極小元を探索する場合の、当該探索に係る処理の計算量について説明した。
As described above, with reference to FIG. 27, the
<6.変形例>
次に、本実施形態に係る情報処理システム1の変形例について説明する。
<6. Modification>
Next, a modified example of the
[6.1.変形例1:一般化戦略の探索に係る処理負荷の軽減]
まず、変形例1として、図28及び図29を参照して、情報処理装置10の解析部14が、一般化戦略からなる束から(k,t)−匿名性を満たす一連の極小元を探索する処理の他の一例について説明する。図28及び図29は、変形例1に係る解析部14の一連の処理の流れの一例について説明するための説明図である。
[6.1. Modification 1: Reduction of processing load related to search for generalization strategy]
First, as
図28は、変形例1に係る解析部14の一連の処理の一例を示した「All-MSS」関数のアルゴリズムを、所謂プログラムコードの形式で模式的に提示した図である。なお、図28に示す例は、処理の流れをわかりやすくするために一部の情報を抽象化して示しており、必ずしも特定のプログラム言語のコンパイラに基づきコンパイルできる形式で示したものではない。また、図29は、図28に示した「All-MSS」関数の一連の処理の流れを示したフローチャートである。
FIG. 28 is a diagram schematically showing an algorithm of the “All-MSS” function showing an example of a series of processes of the
なお、変形例1に係る解析部14は、図20及び図21を参照して前述した実施形態に係る解析部14の処理の一部を変更することで、(k,t)−匿名性を満たす一連の極小元を探索する処理の処理量を低減している。
In addition, the
具体的には、変形例1に係る解析部14は、一般化ノードが(k,t)−匿名性を満たさないと判定した場合には、この(k,t)−匿名性を満たさない一般化ノードを、集合Eに加える。この(k,t)−匿名性を満たさない一般化ノードからは、いずれの要素をより具体化する方向にシフトさせたとしても、シフト後の一般化ノードが(k,t)−匿名性を満たさない。そこで、変形例1に係る解析部14は、(k,t)−匿名性を満たす極小元を探索するための新たな基準点の候補を特定した際に、当該候補と集合Eとを比較することで、特定した新たな基準点の候補の中から集合Eに含まれる一般化ノードを事前に除く。このような構成により、変形例1に係る解析部14は、(k,t)−匿名性の判定に係る処理(即ち、図13に示した「kAnonymityCheck」関数)の実行回数をより低減し、(k,t)−匿名性を満たす一連の極小元を探索する処理の処理量を低減する。
Specifically, when it is determined that the generalized node does not satisfy (k, t) -anonymity, the
そこで、以降では、図29を参照して、特に、図21に示した処理とは異なる部分に着目して、より詳しく説明する。 Therefore, in the following, with reference to FIG. 29, a detailed description will be given, particularly focusing on portions different from the processing shown in FIG.
(ステップS101〜S105)
ステップS101〜S105に係る処理は、図21に示した例と同様のため詳細な説明は省略する。即ち、極小元探索部143は、まず、一般化戦略からなる束の最大元を基準点として(k,t)−匿名性を満たす極小元を探索する。そして、基準点導出部145は、探索された極小元を離散集合から誘導される元に変換し、変換された元の補集合を、集合Cに代入する。
(Steps S101 to S105)
Since the process concerning step S101-S105 is the same as that of the example shown in FIG. 21, detailed description is abbreviate | omitted. That is, the minimal
(ステップS107’)
次いで、基準点導出部145は、変数Dで示された集合と、変数Eで示された集合とを、空集合で初期化する。
(Step S107 ′)
Next, the reference
(ステップS109)
基準点導出部145は、離散集合から誘導される束の元が示す正の整数の集合から、極小横断に相当する部分集合を抽出する関数Trに対して、導出した補集合Cを入力する。そして、基準点導出部145は、関数Trの出力として、補集合Cの極小横断に相当する部分集合Tr(C)を取得し、当該部分集合Tr(C)の要素のうち、集合Dに含まれない要素に対応する離散集合から誘導される束の元を、変数Xで示された元として抽出する。
(Step S109)
The reference
(ステップS111)
離散集合から誘導される束の元Xが存在する場合には(ステップS109、YES)、基準点導出部145は、「vec」関数に基づき、当該元Xに対応する、一般化戦略からなる束の一般化ノードvを特定する。
(Step S111)
When there is a bundle element X derived from the discrete set (step S109, YES), the reference
(ステップS121)
次に、基準点導出部145は、集合Eと、特定した一般化ノードvとに基づき、w≧vの関係を満たす集合Eの要素w(即ち、一般化ノードw)が存在するか否かを判定する。
(Step S121)
Next, the reference
(ステップS123)
w≧vの関係を満たす集合Eの要素wが存在する場合には(ステップS121、YES)、基準点導出部145は、特定された一般化ノードvの特定元である、離散集合から誘導される束の元X(即ち、「vec」関数に入力した元X)を集合Dに加える。
(Step S123)
When there is an element w of the set E that satisfies the relationship w ≧ v (YES in step S121), the reference
(ステップS113)
w≧vの関係を満たす集合Eの要素wが存在しない場合には(ステップS121、NO)、基準点導出部145は、特定された一般化ノードv(k,t)−匿名性を満たすか否かを判定する。なお、(k,t)−匿名性を満たすか否かの判定には、前述した「kAnonymityCheck」関数を適用すればよい。
(Step S113)
If there is no element w of the set E that satisfies the relationship of w ≧ v (step S121, NO), the reference
(ステップS115)
特定した一般化ノードvが(k,t)−匿名性を満たす場合には(ステップS113、YES)、基準点導出部145は、当該一般化ノードvを新たな基準点の候補として、極小元探索部143に出力する。
(ステップS117)
そして、基準点導出部145は、取得した極小元wに対応する、離散集合から誘導される束の元Vを特定し、特定した元Vの補集合を集合Cに加える。
(Step S115)
When the identified generalized node v satisfies (k, t) -anonymity (step S113, YES), the reference
(Step S117)
Then, the reference
(ステップS131)
一方で、特定した一般化ノードvが(k,t)−匿名性を満たさない場合には(ステップS113、NO)、基準点導出部145は、w<vの関係を満たす集合Eの要素wが存在するか否かを判定する。
(Step S131)
On the other hand, when the specified generalized node v does not satisfy (k, t) -anonymity (step S113, NO), the reference
(ステップS133)
w<vの関係を満たす集合Eの要素wが存在する場合には(ステップS131、YES)、基準点導出部145は、集合Eから当該要素wを除き、特定した一般化ノードvを加える(即ち、E←E\{w}∪{v})。
(Step S133)
When there is an element w of the set E that satisfies the relationship of w <v (step S131, YES), the reference
(ステップS135)
また、w<vの関係を満たす集合Eの要素wが存在しな場合には(ステップS131、NO)、基準点導出部145は、集合Eに、特定した一般化ノードvを加える。
(Step S135)
If there is no element w of the set E that satisfies the relationship w <v (step S131, NO), the reference
(ステップS135)
そして、基準点導出部145は、特定された一般化ノードvの特定元である、離散集合から誘導される束の元X(即ち、「vec」関数に入力した元X)を集合Dに加える。
(Step S135)
Then, the reference
(ステップS109)
以上のようにして、極小元探索部143及び基準点導出部145は、ステップS111〜S137に示された一連の処理を、部分集合Tr(C)の要素のうち、集合Dに含まれない要素に対応する離散集合から誘導される束の元Xが存在する限り継続する(ステップS109、YES)。
(Step S109)
As described above, the minimal
そして、離散集合から誘導される束の元Xが存在しない場合には(ステップS109、NO)、極小元探索部143は、探索された一連の(k,t)−匿名性を満たす極小元それぞれに対応する一般化戦略を、解析結果出力部15に出力する。以降の処理は、図21に示した例と同様のため詳細な説明は省略する。
When there is no bundle element X derived from the discrete set (step S109, NO), the minimal
以上、図28及び図29を参照して、変形例1に係る解析部14が、一般化戦略からなる束から(k,t)−匿名性を満たす一連の極小元を探索する処理の他の一例について説明した。上記に説明したように、変形例1に係る解析部14は、(k,t)−匿名性を満たす極小元を探索するための新たな基準点の候補を特定した際に、当該候補と集合Eとを比較することで、特定した新たな基準点の候補の中から集合Eに含まれる一般化ノードを事前に除く。このような構成により、変形例1に係る解析部14は、(k,t)−匿名性の判定に係る処理(即ち、図13に示した「kAnonymityCheck」関数)の実行回数をより低減し、(k,t)−匿名性を満たす一連の極小元を探索する処理の処理量を低減することが可能となる。
As described above, with reference to FIG. 28 and FIG. 29, the
[6.2.変形例2:システム構成の一例]
次に、変形例2として、本実施形態に係る情報処理システムのシステム構成の一例について説明する。
[6.2. Modification 2: Example of system configuration]
Next, as a second modification, an example of a system configuration of the information processing system according to the present embodiment will be described.
例えば、図30は、変形例2に係る情報処理システム1の一例について説明するための説明図である。図30において、参照符号10’は、前述した実施形態に係る情報処理装置10(図1参照)に相当する。即ち、図30に示す例は、前述した実施形態に係る情報処理装置10を、複数の情報処理装置101〜10nにより構成される分散処理システム10’として実現した場合について示している。
For example, FIG. 30 is an explanatory diagram for describing an example of the
前述したように、本実施形態に係る情報処理装置10は、DB50に記憶されたテーブルd10を解析することで一般化戦略の候補を探索し、管理者から指定された一般化戦略に基づきテーブルd10を、より匿名性が向上したテーブルd30に変換する。このような特性から、特に、解析の対象となる属性(即ち、一般化の対象となる属性)の数や、レコード数が増大するほど、情報処理装置10の処理負荷は増大する。
As described above, the
そのため、前述した実施形態に係る情報処理装置10(図1参照)を、図30に示すように、分散処理システム10’として構成することで、個々の情報処理装置(即ち、情報処理装置101〜10n)の処理負荷を軽減してもよい。この場合には、図10に示した情報処理装置10の各構成のうち、特に、解析部14やDB情報変換部17の処理を、複数の情報処理装置101〜10nにより分散処理するとよい。
Therefore, the information processing apparatus 10 (see FIG. 1) according to the above-described embodiment is configured as a distributed
また、図31は、変形例2に係る情報処理システム1の一例について説明するための説明図であり、図31において、参照符号50’は、前述した実施形態に係るDB50(図1参照)に相当する。即ち、図31に示す例は、前述した実施形態に係るDB50を、複数のDB501〜50mにより構成される分散DB50’として実現した場合について示している。
FIG. 31 is an explanatory diagram for explaining an example of the
特に、所謂データベースに対するデータの入出力は、当該データベースを実現するためのハードウェア(例えば、サーバやストレージ)の入出力性能に依存し、当該入出力性能がボトルネックとなる場合もある。特に、本実施形態に係る情報処理システム1では、処理対象となるテーブルd10のレコード数が増大するほど、テーブルd10のデータ量は増大する。そのため、テーブルd10のレコード数が増大するほど、DB50を構成するハードウェアの入出力性能がボトルネックとなり、情報処理装置10がDB50からテーブルd10の情報を取得するための時間が増大する場合がある。
In particular, the input / output of data to a so-called database depends on the input / output performance of hardware (for example, a server or a storage) for realizing the database, and the input / output performance may become a bottleneck. In particular, in the
そのため、前述した実施形態に係るDB50(図1参照)を、図31に示すように、分散DB50’として構成することで、ハードウェアの入出力性能に依存するボトルネックを解消してもよい。
Therefore, the bottleneck that depends on the input / output performance of the hardware may be eliminated by configuring the DB 50 (see FIG. 1) according to the above-described embodiment as a distributed
具体的な一例として、テーブルd10中の各レコードを、分散DB50’の各データベース501〜50mに分散して管理してもよい。このような構成により、例えば、情報処理装置10が、分散DB50’からテーブルd10の情報(特に、テーブルd10の各レコード)を取得する際に、当該情報の取得に係る時間を最大で1/mに短縮することも可能となる。
As a specific example, each record in the table d10 may be distributed and managed in each
なお、図31に示す例では、DB50を分散DBとして構成する例について説明したが、一般化DB40(図1参照)を分散DBとして構成してもよい。即ち、一般化DB40を分散DBとして構成することで、情報処理装置10が、テーブルd10の情報に基づき生成したテーブルd30の情報を一般化DB40に出力する際に、当該一般化DB40へのテーブルd30の情報の出力に係る時間を短縮することが可能となる。
In the example shown in FIG. 31, the example in which the
また、図30及び図31に示す構成を組み合わせてもよい。即ち、情報処理装置10を分散処理システム10’として構成し、DB50を分散DB50’として構成してもよい。もちろん、一般化DB40を分散DBとして構成してもよい。
Further, the configurations shown in FIGS. 30 and 31 may be combined. That is, the
以上、図30及び図31を参照して、変形例2に係る情報処理システムのシステム構成の一例について説明した。
The example of the system configuration of the information processing system according to the
<7.ハードウェア構成>
次に、図32を参照して、本開示の実施形態に係る情報処理装置10のハードウェア構成の一例について説明する。図32は、本実施形態に係る情報処理装置10のハードウェア構成の一例を示した図である。
<7. Hardware configuration>
Next, an example of a hardware configuration of the
図32に示すように、本実施形態に係る情報処理装置10は、プロセッサ901と、メモリ903と、ストレージ905と、通信デバイス911と、バス915とを含む。また、情報処理装置10は、操作デバイス907と、報知デバイス909とを含んでもよい。
As illustrated in FIG. 32, the
プロセッサ901は、例えばCPU(Central Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)又はSoC(System on Chip)であってよく、情報処理装置10の様々な処理を実行する。プロセッサ901は、例えば、各種演算処理を実行するための電子回路により構成することが可能である。なお、前述した解析部14や、DB情報変換部17は、プロセッサ901により実現され得る。
The
メモリ903は、RAM(Random Access Memory)及びROM(Read Only Memory)を含み、プロセッサ901により実行されるプログラム及びデータを記憶する。ストレージ905は、半導体メモリ又はハードディスクなどの記憶媒体を含み得る。
The
操作デバイス907は、ユーザが所望の操作を行うための入力信号を生成する機能を有する。操作デバイス907は、例えばボタン及びスイッチなどユーザが情報を入力するための入力部と、ユーザによる入力に基づいて入力信号を生成し、プロセッサ901に供給する入力制御回路などから構成されてよい。
The
報知デバイス909は、出力デバイスの一例であり、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)装置、有機EL(OLED:Organic Light Emitting Diode)ディスプレイなどのデバイスであってよい。この場合には、報知デバイス909は、画面を表示することにより、ユーザに対して所定の情報を報知することができる。
The
また、他の一例として、報知デバイス909は、LED(Light Emitting Diode)のように、点灯又は点滅のパターンにより、所定の情報をユーザに報知するデバイスであってもよい。また、報知デバイス909は、スピーカ等のように、所定の音響信号を出力することで、所定の情報をユーザに報知するデバイスであってもよい。
As another example, the
通信デバイス911は、本開示の実施形態に係る情報処理装置10が備える通信手段であり、ネットワークを介して外部装置と通信する。通信デバイス911は、有線または無線用の通信インタフェースである。通信デバイス911を、無線通信インタフェースとして構成するバイには、当該通信デバイス911は、通信アンテナ、RF(Radio Frequency)回路、ベースバンドプロセッサなどを含んでもよい。
The
通信デバイス911は、外部装置から受信した信号に各種の信号処理を行う機能を有し、受信したアナログ信号から生成したデジタル信号をプロセッサ901に供給することが可能である。
The
バス915は、プロセッサ901、メモリ903、ストレージ905、操作デバイス907、報知デバイス909、及び通信デバイス911を相互に接続する。バス915は、複数の種類のバスを含んでもよい。
The
また、コンピュータに内蔵されるプロセッサ、メモリ、及びストレージなどのハードウェアを、上記した情報処理装置10が有する構成と同等の機能を発揮させるためのプログラムも作成可能である。また、当該プログラムを記録した、コンピュータに読み取り可能な記憶媒体も提供され得る。
In addition, it is possible to create a program for causing hardware such as a processor, a memory, and a storage built in a computer to exhibit functions equivalent to the configuration of the
<8.まとめ>
以上説明したように、本実施形態に係る情報処理装置10は、処理対象となるテーブルd10中の対象となる属性それぞれについて、当該属性の属性値を段階的により一般化されるように区分するための複数の分類に基づく、当該属性の一般化階層を取得する。そして、情報処理装置10は、当該属性間における分類の組み合わせ(即ち、一般化階層の高さの組み合わせ)を元として、当該分類をより一般化(抽象化)する順序関係に基づき、一般化戦略からなる束を規定する。
<8. Summary>
As described above, the
情報処理装置10は、既定した一般化戦略からなる束のうち、(k,t)−匿名性を満たす元を基準点として、当該元の各要素のうち、いずれかの要素をより具体化する方向にシフトさせることで、(k,t)−匿名性を満たす極小元を探索する。
The
(k,t)−匿名性を満たす極小元を探索したら、情報処理装置10は、探索した当該極小元に基づき、新たな基準点を導出する。具体的には、情報処理装置10は、特定した極小元を、離散集合から誘導される束の元に変換し、変換された元の補集合から極小横断を求め、当該極小横断に対応する一般化戦略からなる束の元のうち、(k,t)−匿名性を満たす元を新たな基準点の候補とする。
When searching for a minimal element that satisfies (k, t) -anonymity, the
そして、情報処理装置10は、新たな基準点に基づく(k,t)−匿名性を満たす極小元を探索に係る処理と、当該探索の結果に基づく新たな基準点の導出に係る処理とを、新たな基準点の候補が導出されなくなるまで実行する。以上のようにして、情報処理装置10は、(k,t)−匿名性を満たす一連の極小元を探索し、探索された一連の極小元それぞれに対応する一般化戦略を出力する。なお、探索された一連の極小元それぞれに対応する一般化戦略が、(k,t)−匿名性を満たすようにテーブルd10を一般化し、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略に相当する。
Then, the
なお、(k,t)−匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略、即ち、(k,t)−匿名性を満たす一連の極小元を特定する処理は、所謂列挙問題に相当する。このような列挙問題を解く従来のアルゴリズムは、一般的にはヒューリスティックなアルゴリズムに相当し、計算量を事前に算出することが困難であった。 It should be noted that (k, t) -generalization strategy that satisfies anonymity and can minimize the decrease in the amount of information, that is, identifies a series of minimal elements that satisfy (k, t) -anonymity. This processing corresponds to a so-called enumeration problem. Conventional algorithms for solving such enumeration problems generally correspond to heuristic algorithms, and it has been difficult to calculate the amount of calculation in advance.
これに対して、本実施形態に係る情報処理装置10は、ハイパーグラフ双対化のアルゴリズムを、探索元(即ち、(k,t)−匿名性を満たす極小元)を列挙するために利用している。このようなハイパーグラフ双対化のアルゴリズムには、論理的な上限が与えられているものもある。そのため、本実施形態に係る情報処理装置10が、(k,t)−匿名性を満たし、かつ、情報量の減少を最小限に抑えることが可能な一般化戦略を特定(列挙)する処理の計算量を事前に算出することが可能となる。
In contrast, the
また、本実施形態に係る情報処理装置10に依れば、必ずしも全ての一般化戦略(即ち、一般化ノード)に対して、(k,t)−匿名性を満たすか否かの判定をおこなう必要はない。そのため、本実施形態に係る情報処理装置10に依れば、一般化戦略からなる束から、(k,t)−匿名性を満たす一連の極小元を探索する(列挙する)処理の負荷を、低減することが可能となる。
Further, according to the
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。 The preferred embodiments of the present disclosure have been described in detail above with reference to the accompanying drawings, but the technical scope of the present disclosure is not limited to such examples. It is obvious that a person having ordinary knowledge in the technical field of the present disclosure can come up with various changes or modifications within the scope of the technical idea described in the claims. Of course, it is understood that it belongs to the technical scope of the present disclosure.
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。 Further, the effects described in the present specification are merely illustrative or exemplary and are not limited. That is, the technology according to the present disclosure can exhibit other effects that are apparent to those skilled in the art from the description of the present specification in addition to or instead of the above effects.
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
プロセッサが、複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理を実行することと、
前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理を実行することと、
を含み、
プロセッサが、特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とを、前記新たな基準点が導出されなくなるまで実行し、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力する、情報処理方法。
(2)
前記匿名性は、前記テーブル中において、前記2以上の対象属性それぞれの前記属性値の組み合わせが等しい前記レコードの集合を示す等価クラスのうち、レコード数が所定の数k未満の前記等価クラスに対応する前記レコードを、所定の数t以下の範囲で削除した場合に、当該レコードを削除した後の前記テーブル中の前記レコードに基づく前記等価クラスのそれぞれについて、レコード数が前記所定の数k以上となることを条件とする、前記(1)に記載の情報処理方法。
(3)
前記第2の束は、前記対象属性ごとの前記分類の数の和を最大とする正の整数の有限集合の冪集合を前記第2の元として、当該第2の元の包含関係を順序関係として規定される、前記(1)または(2)に記載の情報処理方法。
(4)
前記第1の束における前記第1の元それぞれと、前記第2の束における前記第2の元それぞれとは、前記第1の束の最大元と前記第2の束の最小元とが対応し、かつ、前記第1の束の最小元と前記第2の束の最大元と対応するように、前記第1の束及び前第2の束それぞれの順序関係に基づき、あらかじめ対応付けられる、前記(3)に記載の情報処理装置。
(5)
前記第2の束において、
前記対象属性それぞれには、前記正の整数の有限集合の各要素うち、互いに異なる複数の連続した正の整数に対応した要素が関連付けられ、
当該対象属性に対応する前記複数の分類それぞれは、前記複数の連続した正の整数に対応した当該要素に基づく有限集合の部分集合に対応付けられる、前記(3)または(4)に記載の情報処理装置。
(6)
前記第2の束において、
前記対象属性に対応する複数の分類それぞれは、より具体化された当該分類ほど、当該対象属性に関連付けられた前記複数の連続した正の整数に対応した要素のうち、より多くの当該要素が、値のより小さい要素から順次加えられた部分集合に対応付けられる、前記(5)に記載の情報処理装置。
(7)
前記極小横断に対応する前記第1の元は、当該極小横断に対して、前記対象属性ごとに、当該対象属性に関連付けられた前記複数の連続した正の整数に対応した要素のうち、当該極小横断が含む当該要素よりも値の小さい他の要素が補間された、正の整数の有限集合に対応する前記第2の元に基づき特定される、前記(6)に記載の情報処理装置。
(8)
最初に実行される前記探索処理では、前記第1の束の最大元を前記基準点として、前記極小元が探索される、前記(1)〜(7)のいずれか一項に記載の情報処理方法。
(9)
前記最大元は、前記第1の束のうち、前記2以上の対象属性それぞれの前記属性値を最も抽象化する前記分類の組み合わせに対応する前記第1の元である、前記(8)に記載の情報処理方法。
(10)
前記探索処理では、前記基準点から、前記2以上の対象属性のうち少なくともいずれかに対応する前記分類がより具体化される方向に向けて、前記極小元が探索される、前記(1)〜(9)のいずれか一項に記載の情報処理方法。
(11)
前記探索処理では、前記2以上の対象属性のうち少なくともいずれかに対応する前記分類を、より具体化される方向に向けた二分探索に基づき、前記極小元が探索される、前記(10)に記載の情報処理装置。
(12)
前記極小横断それぞれに対応する前記第1の元のうち、前記探索処理に基づき探索済みの前記第1の元は、前記新たな基準点の候補から除かれる、前記(1)〜(11)のいずれか一項に記載の情報処理方法。
(13)
前記極小横断は、前記補集合をハイパーエッジとするハイパーグラフの双対化に基づき特定される、前記(1)〜(12)のいずれか一項に記載の情報処理方法。
(14)
前記探索処理と前記基準点導出処理との少なくともいずれかは、複数のプロセッサにより分散処理される、前記(1)〜(13)のいずれか一項に記載の情報処理方法。
(15)
コンピュータに、
複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理と、
前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理と、
を実行させ、
特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とを、前記新たな基準点が導出されなくなるまで実行させる、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力させる、プログラム。
(16)
複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理を実行する極小元探索部と、
前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理を実行する基準点導出部と、
特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とが、前記新たな基準点が導出されなくなるまで実行された結果に基づき、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力する出力部と、
を備える、情報処理装置。
The following configurations also belong to the technical scope of the present disclosure.
(1)
The processor can abstract each of the attribute values that can be taken by the target attribute by using at least two or more attributes as the target attribute among the plurality of attributes of the table including a plurality of records including the plurality of attributes. The first element of the first bundle defined based on the order relationship that makes the classification more abstract, with each combination between the two or more target attributes as a first element of a plurality of classification categories When the table is abstracted based on the classification corresponding to each, the minimum satisfying the anonymity with the first element satisfying the anonymity based on a predetermined condition between the records of the table as a reference point Performing a search process to search for the source;
Search among the second bundles in which each subset of the finite set defined based on the number of classifications for each target attribute is a second element and the inclusion relation of the second element is defined as an order relation A first element satisfying the anonymity among the first elements corresponding to each of the minimal crossings of the complementary set is identified in advance and is associated with the minimal element. Executing a reference point derivation process for deriving as a new reference point;
Including
A processor executes the search process based on the specified new reference point and the reference point derivation process based on the local minimum searched by the search process until the new reference point is not derived. An information processing method for outputting a combination of the classifications indicated by each of the searched series of minimum elements as a candidate for a condition for abstracting the table.
(2)
The anonymity corresponds to the equivalence class having a record number less than a predetermined number k among equivalence classes indicating the set of records in which the combination of the attribute values of the two or more target attributes is equal in the table. When the records to be deleted are deleted in a range of a predetermined number t or less, the number of records is equal to or more than the predetermined number k for each of the equivalence classes based on the records in the table after the records are deleted. The information processing method according to (1), on the condition that
(3)
The second bundle is an ordered relation of the inclusion relation of the second element, with the second element being a power set of a finite set of positive integers that maximizes the sum of the number of classifications for each target attribute. The information processing method according to (1) or (2), defined as:
(4)
Each of the first elements in the first bundle and each of the second elements in the second bundle correspond to a maximum element of the first bundle and a minimum element of the second bundle. And, in correspondence with the minimum element of the first bundle and the maximum element of the second bundle, it is associated in advance based on the order relationship of the first bundle and the previous second bundle, The information processing apparatus according to (3).
(5)
In the second bundle,
Each of the target attributes is associated with an element corresponding to a plurality of consecutive positive integers different from each other in each element of the finite set of positive integers,
The information according to (3) or (4), wherein each of the plurality of classifications corresponding to the target attribute is associated with a subset of a finite set based on the element corresponding to the plurality of consecutive positive integers. Processing equipment.
(6)
In the second bundle,
Each of the plurality of classifications corresponding to the target attribute has more specific elements among elements corresponding to the plurality of consecutive positive integers associated with the target attribute as the classification is more specific. The information processing apparatus according to (5), wherein the information processing apparatus is associated with a subset sequentially added from an element having a smaller value.
(7)
The first element corresponding to the minimum crossing is, for each of the target attributes, for the minimum crossing, among the elements corresponding to the plurality of consecutive positive integers associated with the target attribute. The information processing apparatus according to (6), specified based on the second element corresponding to a finite set of positive integers interpolated with other elements having a value smaller than the element included in the crossing.
(8)
The information processing according to any one of (1) to (7), wherein in the search process executed first, the minimal element is searched with the maximum element of the first bundle as the reference point. Method.
(9)
The maximum element is the first element corresponding to the combination of the classifications that most abstracts the attribute values of the two or more target attributes in the first bundle, according to (8). Information processing method.
(10)
In the search process, the minimal element is searched from the reference point toward a direction in which the classification corresponding to at least one of the two or more target attributes is more specific. The information processing method according to any one of (9).
(11)
In the search process, the minimum element is searched based on a binary search in which the classification corresponding to at least one of the two or more target attributes is directed to a more specific direction. The information processing apparatus described.
(12)
Of the first elements corresponding to each of the minimum crossings, the first element that has been searched based on the search process is excluded from the candidates for the new reference point. The information processing method according to any one of the above.
(13)
The information processing method according to any one of (1) to (12), wherein the minimal crossing is specified based on dualization of a hypergraph with the complement set as a hyperedge.
(14)
The information processing method according to any one of (1) to (13), wherein at least one of the search process and the reference point derivation process is distributed by a plurality of processors.
(15)
On the computer,
A plurality of divisions such that at least two or more attributes of a plurality of attributes of a table including a plurality of records including a plurality of attributes are set as target attributes, and attribute values that can be taken by the target attributes are abstracted in stages. Corresponding to each of the first elements of the first bundle defined on the basis of the order relation that makes the classification more abstract, with each combination of the two or more target attributes of the classification as a first element When the table is abstracted based on the classification to be performed, the minimal element satisfying the anonymity is searched with the first element satisfying the anonymity based on a predetermined condition as a reference point between the records of the table Search process to
Search among the second bundles in which each subset of the finite set defined based on the number of classifications for each target attribute is a second element and the inclusion relation of the second element is defined as an order relation A first element satisfying the anonymity among the first elements corresponding to each of the minimal crossings of the complementary set is identified in advance and is associated with the minimal element. A reference point deriving process for deriving as a new reference point;
And execute
A search is performed to execute the search process based on the specified new reference point and the reference point derivation process based on the local minimum searched by the search process until the new reference point is not derived. A program for outputting a combination of the classifications indicated by each of the series of minimum elements as a candidate for a condition for abstracting the table.
(16)
A plurality of divisions such that at least two or more attributes of a plurality of attributes of a table including a plurality of records including a plurality of attributes are set as target attributes, and attribute values that can be taken by the target attributes are abstracted in stages. Corresponding to each of the first elements of the first bundle defined on the basis of the order relation that makes the classification more abstract, with each combination of the two or more target attributes of the classification as a first element When the table is abstracted based on the classification to be performed, the minimal element satisfying the anonymity is searched with the first element satisfying the anonymity based on a predetermined condition as a reference point between the records of the table A minimal element search unit that executes search processing to perform,
Search among the second bundles in which each subset of the finite set defined based on the number of classifications for each target attribute is a second element and the inclusion relation of the second element is defined as an order relation A first element satisfying the anonymity among the first elements corresponding to each of the minimal crossings of the complementary set is identified in advance and is associated with the minimal element. A reference point derivation unit for executing a reference point derivation process for deriving a reference point as a new reference point;
The search process based on the specified new reference point and the reference point derivation process based on the local minimum searched by the search process are executed until the new reference point is not derived. An output unit that outputs a combination of the classifications indicated by each of the searched series of minimal elements as a candidate for a condition for abstracting the table;
An information processing apparatus comprising:
1 情報処理システム
10 情報処理装置
11 DB情報取得部
12 DB情報出力部
13 階層情報取得部
14 解析部
141 解析データ生成部
143 極小元探索部
145 基準点導出部
15 解析結果出力部
16 一般化条件取得部
17 DB情報変換部
18 変換結果出力部
30 管理者端末
40 一般化DB
50 DB
60 解析サーバ
70 DBサーバ
80 クライアント
DESCRIPTION OF
50 DB
60
Claims (16)
前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理を実行することと、
を含み、
プロセッサが、特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とを、前記新たな基準点が導出されなくなるまで実行し、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力する、情報処理方法。 The processor can abstract each of the attribute values that can be taken by the target attribute by using at least two or more attributes as the target attribute among the plurality of attributes of the table including a plurality of records including the plurality of attributes. The first element of the first bundle defined based on the order relationship that makes the classification more abstract, with each combination between the two or more target attributes as a first element of a plurality of classification categories When the table is abstracted based on the classification corresponding to each, the minimum satisfying the anonymity with the first element satisfying the anonymity based on a predetermined condition between the records of the table as a reference point Performing a search process to search for the source;
Search among the second bundles in which each subset of the finite set defined based on the number of classifications for each target attribute is a second element and the inclusion relation of the second element is defined as an order relation A first element satisfying the anonymity among the first elements corresponding to each of the minimal crossings of the complementary set is identified in advance and is associated with the minimal element. Executing a reference point derivation process for deriving as a new reference point;
Including
A processor executes the search process based on the specified new reference point and the reference point derivation process based on the local minimum searched by the search process until the new reference point is not derived. An information processing method for outputting a combination of the classifications indicated by each of the searched series of minimum elements as a candidate for a condition for abstracting the table.
前記対象属性それぞれには、前記正の整数の有限集合の各要素うち、互いに異なる複数の連続した正の整数に対応した要素が関連付けられ、
当該対象属性に対応する前記複数の分類それぞれは、前記複数の連続した正の整数に対応した当該要素に基づく有限集合の部分集合に対応付けられる、請求項3に記載の情報処理装置。 In the second bundle,
Each of the target attributes is associated with an element corresponding to a plurality of consecutive positive integers different from each other in each element of the finite set of positive integers,
The information processing apparatus according to claim 3, wherein each of the plurality of classifications corresponding to the target attribute is associated with a subset of a finite set based on the element corresponding to the plurality of consecutive positive integers.
前記対象属性に対応する複数の分類それぞれは、より具体化された当該分類ほど、当該対象属性に関連付けられた前記複数の連続した正の整数に対応した要素のうち、より多くの当該要素が、値のより小さい要素から順次加えられた部分集合に対応付けられる、請求項5に記載の情報処理装置。 In the second bundle,
Each of the plurality of classifications corresponding to the target attribute has more specific elements among elements corresponding to the plurality of consecutive positive integers associated with the target attribute as the classification is more specific. The information processing apparatus according to claim 5, wherein the information processing apparatus is associated with a subset sequentially added from an element having a smaller value.
複数の属性を含むレコードを複数含むテーブルの当該複数の属性のうち、少なくとも2以上の属性を対象属性として、当該対象属性が取り得る属性値それぞれが段階的により抽象化されるように区分する複数の分類の、前記2以上の対象属性間における各組み合わせを第1の元として、前記分類をより抽象化する順序関係に基づき規定される第1の束のうち、前記第1の元それぞれに対応する前記分類に基づき前記テーブルを抽象化した場合に、当該テーブルの前記レコード間で、所定の条件に基づく匿名性を満たす前記第1の元を基準点として、当該匿名性を満たす極小元を探索する探索処理と、
前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理と、
を実行させ、
特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とを、前記新たな基準点が導出されなくなるまで実行させる、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力させる、プログラム。 On the computer,
A plurality of divisions such that at least two or more attributes of a plurality of attributes of a table including a plurality of records including a plurality of attributes are set as target attributes, and attribute values that can be taken by the target attributes are abstracted in stages. Corresponding to each of the first elements of the first bundle defined on the basis of the order relation that makes the classification more abstract, with each combination of the two or more target attributes of the classification as a first element When the table is abstracted based on the classification to be performed, the minimal element satisfying the anonymity is searched with the first element satisfying the anonymity based on a predetermined condition as a reference point between the records of the table Search process to
Search among the second bundles in which each subset of the finite set defined based on the number of classifications for each target attribute is a second element and the inclusion relation of the second element is defined as an order relation A first element satisfying the anonymity among the first elements corresponding to each of the minimal crossings of the complementary set is identified in advance and is associated with the minimal element. A reference point deriving process for deriving as a new reference point;
And execute
A search is performed to execute the search process based on the specified new reference point and the reference point derivation process based on the local minimum searched by the search process until the new reference point is not derived. A program for outputting a combination of the classifications indicated by each of the series of minimum elements as a candidate for a condition for abstracting the table.
前記対象属性ごとの前記分類の数に基づき規定される有限集合の各部分集合を第2の元とし、当該第2の元の包含関係を順序関係として規定される第2の束のうち、探索された前記極小元にあらかじめ対応付けられた前記第2の元の補集合を特定し、当該補集合の極小横断それぞれに対応する前記第1の元のうち、前記匿名性を満たす第1の元を新たな前記基準点として導出する基準点導出処理を実行する基準点導出部と、
特定された前記新たな基準点に基づく前記探索処理と、当該探索処理により探索される前記極小元に基づく前記基準点導出処理とが、前記新たな基準点が導出されなくなるまで実行された結果に基づき、探索された一連の前記極小元それぞれが示す前記分類の組み合わせを、前記テーブルを抽象化するための条件の候補として出力する出力部と、
を備える、情報処理装置。
A plurality of divisions such that at least two or more attributes of a plurality of attributes of a table including a plurality of records including a plurality of attributes are set as target attributes, and attribute values that can be taken by the target attributes are abstracted in stages. Corresponding to each of the first elements of the first bundle defined on the basis of the order relation that makes the classification more abstract, with each combination of the two or more target attributes of the classification as a first element When the table is abstracted based on the classification to be performed, the minimal element satisfying the anonymity is searched with the first element satisfying the anonymity based on a predetermined condition as a reference point between the records of the table A minimal element search unit that executes search processing to perform,
Search among the second bundles in which each subset of the finite set defined based on the number of classifications for each target attribute is a second element and the inclusion relation of the second element is defined as an order relation A first element satisfying the anonymity among the first elements corresponding to each of the minimal crossings of the complementary set is identified in advance and is associated with the minimal element. A reference point derivation unit for executing a reference point derivation process for deriving a reference point as a new reference point;
The search process based on the specified new reference point and the reference point derivation process based on the local minimum searched by the search process are executed until the new reference point is not derived. An output unit that outputs a combination of the classifications indicated by each of the searched series of minimal elements as a candidate for a condition for abstracting the table;
An information processing apparatus comprising:
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014179367A JP2016053829A (en) | 2014-09-03 | 2014-09-03 | Information processing method, program, and information processing device |
PCT/JP2015/069577 WO2016035448A1 (en) | 2014-09-03 | 2015-07-07 | Information processing method, program, and information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014179367A JP2016053829A (en) | 2014-09-03 | 2014-09-03 | Information processing method, program, and information processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016053829A true JP2016053829A (en) | 2016-04-14 |
Family
ID=55439518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014179367A Pending JP2016053829A (en) | 2014-09-03 | 2014-09-03 | Information processing method, program, and information processing device |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2016053829A (en) |
WO (1) | WO2016035448A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020501254A (en) * | 2016-11-28 | 2020-01-16 | シーメンス アクチエンゲゼルシヤフトSiemens Aktiengesellschaft | Method and system for anonymizing data stock |
WO2021038801A1 (en) * | 2019-08-29 | 2021-03-04 | 富士通株式会社 | Pattern extraction program, device, and method |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11507684B2 (en) * | 2017-10-11 | 2022-11-22 | Nippon Telegraph And Telephone Corporation | κ-anonymization device, method, and program |
CN111552847B (en) * | 2020-04-29 | 2023-04-25 | 杭州迪普科技股份有限公司 | Method and device for changing number of objects |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002084531A2 (en) * | 2001-04-10 | 2002-10-24 | Univ Carnegie Mellon | Systems and methods for deidentifying entries in a data source |
CA2690788C (en) * | 2009-06-25 | 2018-04-24 | University Of Ottawa | System and method for optimizing the de-identification of datasets |
JP5452187B2 (en) * | 2009-11-26 | 2014-03-26 | Kddi株式会社 | Public information privacy protection device, public information privacy protection method and program |
JP5611852B2 (en) * | 2011-01-31 | 2014-10-22 | Kddi株式会社 | Public information privacy protection device, public information privacy protection method and program |
-
2014
- 2014-09-03 JP JP2014179367A patent/JP2016053829A/en active Pending
-
2015
- 2015-07-07 WO PCT/JP2015/069577 patent/WO2016035448A1/en active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020501254A (en) * | 2016-11-28 | 2020-01-16 | シーメンス アクチエンゲゼルシヤフトSiemens Aktiengesellschaft | Method and system for anonymizing data stock |
WO2021038801A1 (en) * | 2019-08-29 | 2021-03-04 | 富士通株式会社 | Pattern extraction program, device, and method |
JPWO2021038801A1 (en) * | 2019-08-29 | 2021-03-04 | ||
CN114287017A (en) * | 2019-08-29 | 2022-04-05 | 富士通株式会社 | Pattern extraction program, apparatus and method |
Also Published As
Publication number | Publication date |
---|---|
WO2016035448A1 (en) | 2016-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10235425B2 (en) | Entity fingerprints | |
Hu et al. | Differential privacy in telco big data platform | |
Potamias et al. | K-nearest neighbors in uncertain graphs | |
Manzoor et al. | Expanding taxonomies with implicit edge semantics | |
WO2018092044A1 (en) | Data object creation and recommendation using machine learning based offline and online evolution | |
US10657171B2 (en) | Image search device and method for searching image | |
JP6398724B2 (en) | Information processing apparatus and information processing method | |
WO2016035448A1 (en) | Information processing method, program, and information processing device | |
JP2010020490A (en) | Device for providing information on unfamiliar place, and method for providing information on unfamiliar place | |
US20240094887A1 (en) | Intellectual-Property Landscaping Platform with Interactive Graphical Element | |
US10135723B2 (en) | System and method for supervised network clustering | |
JPWO2011004529A1 (en) | Classification hierarchy re-creation system, classification hierarchy re-creation method, and classification hierarchy re-creation program | |
US20220101462A1 (en) | Intellectual-Property Landscaping Platform | |
EP2678809A1 (en) | Entity fingerprints | |
CN112612901A (en) | Medical knowledge map intelligent management retrieval platform | |
US20160085389A1 (en) | Knowledge automation system thumbnail image generation | |
Zhou et al. | Scalable distance labeling maintenance and construction for dynamic small-world networks | |
JP2019204246A (en) | Learning data creation method and learning data creation device | |
JP2018170008A (en) | Method and system for mapping attributes of entities | |
CN113767403A (en) | Automatic resolution of over-and under-designations in knowledge graphs | |
CN112214556B (en) | Label generation method, label generation device, electronic equipment and computer readable storage medium | |
Yang et al. | LAZY R-tree: The R-tree with lazy splitting algorithm | |
US11468065B2 (en) | Information processing apparatus, information processing method, and non-transitory computer-readable recording medium | |
CN116597443B (en) | Material label processing method, device, electronic equipment and medium | |
Zarka et al. | Fuzzy reasoning framework to improve semantic video interpretation |