(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024160620
(43)【公開日】2024-11-14
(54)【発明の名称】分析装置、分析方法及び分析プログラム
(51)【国際特許分類】
G06F 16/24 20190101AFI20241107BHJP
【FI】
G06F16/24
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023075832
(22)【出願日】2023-05-01
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成30年度、内閣府(国立研究開発法人医薬基盤・健康・栄養研究所)、戦略的イノベーション創造プログラム(SIP)第2期「AI(人工知能)ホスピタルによる高度診断・治療システム」委託研究、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】399035766
【氏名又は名称】エヌ・ティ・ティ・コミュニケーションズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】田中 哲士
(72)【発明者】
【氏名】櫻井 陽一
(72)【発明者】
【氏名】澤田 匡史
(72)【発明者】
【氏名】山際 龍太
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA03
5B175FB04
(57)【要約】
【課題】秘密計算によるテーブルの重複削除の際に、残すレコードを指定すること。
【解決手段】実施形態の分析装置は、ソート部及び削除部を有する。ソート部は、第1のキー(重複削除キー)の値が重複するレコードを含むテーブルのレコードを、第1のキーと異なる第2のキー(ソートキー)で秘密計算によりソートする。削除部は、ソート部によるソートが行われたテーブルに含まれる、第1のキーが重複するレコードの集合のそれぞれについて、集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを秘密計算により削除する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
第1のキーの値が重複するレコードを含むテーブルのレコードを、前記第1のキーと異なる第2のキーで秘密計算によりソートするソート部と、
前記ソート部によるソートが行われた前記テーブルに含まれる、前記第1のキーが重複するレコードの集合のそれぞれについて、前記集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを、秘密計算により削除する削除部と、
を有することを特徴とする分析装置。
【請求項2】
前記ソート部は、昇順及び降順のうち、指定された順序で前記テーブルのレコードをソートすることを特徴とする請求項1に記載の分析装置。
【請求項3】
前記削除部は、前記集合の中で最上位又は最下位にある1つのレコード以外のレコードを削除する
ことを特徴とする請求項1又は2に記載の分析装置。
【請求項4】
分析装置によって実行される分析方法であって、
第1のキーの値が重複するレコードを含むテーブルのレコードを、前記第1のキーと異なる第2のキーで秘密計算によりソートするソート工程と、
前記ソート工程によるソートが行われた前記テーブルに含まれる、前記第1のキーが重複するレコードの集合のそれぞれについて、前記集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを、秘密計算により削除する削除工程と、
を含むことを特徴とする分析方法。
【請求項5】
第1のキーの値が重複するレコードを含むテーブルのレコードを、前記第1のキーと異なる第2のキーで秘密計算によりソートするソートステップと、
前記ソートステップによるソートが行われた前記テーブルに含まれる、前記第1のキーが重複するレコードの集合のそれぞれについて、前記集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを、秘密計算により削除する削除ステップと、
をコンピュータに実行させることを特徴とする分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分析装置、分析方法及び分析プログラムに関する。
【背景技術】
【0002】
従来、データを秘匿したまま統計的な演算を行い、演算の結果得られた統計量をユーザに提供する秘密計算システムが知られている。例えば、秘密計算システムは、重要な個人情報を取り扱う医療分野等におけるデータの分析に利用される場合がある。
【0003】
また、秘密計算を用いてテーブル(表)の操作を行う方法が知られている(例えば、特許文献3を参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2019/124260号
【特許文献2】特開2020-042128号公報
【特許文献3】特開2014-139640号公報
【非特許文献】
【0005】
【非特許文献1】日本電信電話株式会社、秘密計算のシステムとその原理、[online]、[令和4年11月24日検索]、インターネット<URL:https://www.rd.ntt/sil/project/sc/secure_computation.html>
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来の技術では、秘密計算によるテーブルの重複削除の際に、残すレコードを指定できない場合がある。
【0007】
図6は、従来の重複削除の手順を説明する図である。ここでは、「社員ID」列及び「所属部コード」列(以下、重複削除キー)が重複しているレコードが、1つを残して削除される。このため、
図6のテーブル51aのレコード群61a及びレコード群62aが、重複削除の対象である。
【0008】
重複削除の対象のレコード群に含まれるレコードは、重複削除キーは共通しているのに対し、例えば「入館日」列の値は互いに異なる。このため、重複削除の際に、例えば「入館日」が最も新しいレコードを残したい、といった要望があることが考えられる。
【0009】
一方で、従来の重複削除では、重複削除の対象のレコード群に含まれるレコードのうち、どのレコードが削除されるかがランダムに決定される場合がある。このため、重複削除の後に、要望通りのレコードが残らない場合がある。
【課題を解決するための手段】
【0010】
上述した課題を解決し、目的を達成するために、本発明の分析装置は、第1のキーの値が重複するレコードを含むテーブルのレコードを、前記第1のキーと異なる第2のキーで秘密計算によりソートするソート部と、前記ソート部によるソートが行われた前記テーブルに含まれる、前記第1のキーが重複するレコードの集合のそれぞれについて、前記集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを、秘密計算により削除する削除部と、を有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、秘密計算によるテーブルの重複削除の際に、残すレコードを指定できる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、実施形態に係る分析システムの構成例を示す図である。
【
図2】
図2は、実施形態に係る分析装置の構成例を示す図である。
【
図3】
図3は、実施形態に係る重複削除の手順を説明する図である。
【
図4】
図4は、実施形態に係る分析装置の処理の流れを示すフローチャートである。
【
図5】
図5は、分析プログラムを実行するコンピュータの一例を示す図である。
【
図6】
図6は、従来の重複削除の手順を説明する図である。
【発明を実施するための形態】
【0013】
以下に、本願に係る分析装置、分析方法及び分析プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【0014】
まず、
図1を用いて、分析システムの構成を説明する。分析システムは、秘密計算を利用してデータの分析を行うためのシステムである。
【0015】
図1に示すように、分析システム1は、秘密計算システム10を含む。また、秘密計算システム10は、ネットワークNを介して提供装置20及び提供装置30と接続される。例えば、ネットワークNはインターネットである。また、秘密計算システム10は、端末装置40と接続される。
【0016】
提供装置20及び提供装置30は、データ提供者側の装置である。提供装置20及び提供装置30は、秘密計算システム10にデータを提供(登録)する。
【0017】
提供装置20及び提供装置30によって提供されるデータは、秘匿化されることが望ましい情報(例えば、個人の氏名、住所等の個人情報)を含む。例えば、提供装置20及び提供装置30は、医療機関で利用されるレセプト及びDPC(Diagnosis Procedure Combination)に関するデータを提供する。
【0018】
秘密計算システム10は、データ蓄積部11及びデータ処理部12を有する。データ蓄積部11は、秘密分散によりデータを蓄積する複数の蓄積装置(蓄積装置111、蓄積装置112、蓄積装置113)を含む。また、データ処理部12は、秘密計算によりデータを処理する複数の計算装置(計算装置121、計算装置122、計算装置123)を含む。なお、蓄積装置の数及び計算装置の数は、
図1に示す例に限られない。
【0019】
秘密計算システム10は、非特許文献1(掲載URL:https://www.rd.ntt/sil/project/sc/secure_computation.html)に記載された方法に従って、秘密分散及び秘密計算を実行することができる。
【0020】
まず、秘密計算システム10に提供されたデータは、複数のシェアに分割される(断片化)。そして、複数のシェアのそれぞれは、データ蓄積部11に含まれる複数の蓄積装置に分散して蓄積される。
図1の例では、提供されたデータが3つのシェアに分割される。そして、蓄積装置111、蓄積装置112、蓄積装置113が、それぞれ1つずつシェアを蓄積する。
【0021】
データ処理部12は、データ蓄積部11に蓄積されたシェアに対し、秘密計算を実行する。データ処理部12は、複数の計算装置を使ったマルチパーティ計算により秘密計算を実行する。
図1の例では、データ処理部12は、計算装置121、計算装置122、計算装置123により秘密計算を実行する。
【0022】
データ処理部12は、シェアを復元することなく各種の統計演算を行うことができる。例えば、データ処理部12は、ソート、結合等のテーブルの操作、レコード数の集計、総和、平均、最大値、最小値、標本分散等の統計量の計算、t検定等の統計的検定を行うことができる。さらに、データ処理部12は、回帰分析及び主成分分析といった統計的分析を行うことができる。
【0023】
分析装置13は、データ処理部12を利用してデータの分析を行う。分析装置13は、データ処理部12によって実行された秘密計算の結果に基づき、分析結果をデータ利用者側の端末装置40に提供する。利用者は、端末装置40を介してデータの分析結果を得ることができる。
【0024】
例えば、秘密計算システム10には、個人ごとの属性及び身体に関するデータが提供される場合がある。属性及び身体に関するデータは秘匿化されることが望ましい個人情報である。属性及び身体に関するデータには、例えば年齢、性別、身長、体重等が含まれる。データ蓄積部11は、提供されたデータを断片化したシェアを各蓄積装置に格納する。
【0025】
なお、分割された個々のシェアは、単独では意味のないデータである。そのため、1つのシェアから元のデータを復元することはできない。一方、複数のシェアを揃えることで元のデータを復元することが可能になる。
【0026】
データの利用者は、登録されたデータそのものを閲覧することはできないが、分析装置13及び端末装置40を介して、データの分析結果を閲覧することができる。例えば、データに個人の性別及び体重が含まれている場合、利用者は、各個人の性別及び体重を閲覧することはできないが、データの分析結果である「男性の平均体重」を閲覧することができる。
【0027】
一例として、データ蓄積部11は、Shamirの閾値秘密分散法という手法を使って秘密分散を行うことができる。このとき、データ蓄積部11は、元のデータを切片とする多項式を通る3つの座標をシェアとして各サーバに保管する。また、多項式の傾きはランダムに決定されるため、元のデータが同じであってもシェアが毎回同じであるとは限らない。なお、元のデータは、数値であってもよいし、数値に変換済みのデータであってもよい。
【0028】
秘密計算システム10は、複数のシェアから元のデータを復元することができる。多項式が1次式であれば、秘密計算システム10は、2つの座標(シェアに相当)を結ぶ直線と軸との交点から切片(元のデータに相当)を求めることができる。一方で、1つの座標からは直線が定まらないため、元のデータを復元することはできない。
【0029】
また、前述の通り、データ処理部12は、シェアを復元することなく元のデータに対し秘密計算を実行することができる。例えば、座標で表されたシェア同士を加算した結果は、各シェアの元のデータ同士を加算した結果のシェアに相当する。
【0030】
分析装置13は、端末装置40からの要求に応じて、データ処理部12に秘密計算による処理を実行させる。なお、データ処理部12又は端末装置40が、分析装置13と同等の機能を実現してもよい。例えば、分析システム1は、分析装置13を有さない構成であってもよい。その場合、端末装置40がデータ処理部12と接続され、分析装置13と同等の処理を実行する。さらに、シェアに基づく統計演算は、データ処理部12ではなく端末装置40によって実行されてもよい。
【0031】
第1の実施形態では、分析装置13が秘密計算によりテーブルの重複削除を行う場合の例を説明する。なお、分析装置13が重複削除の対象とするテーブルは、例えば複数のテーブルが関連付けられたリレーショナルデータベース(RDB:Relational Database)に含まれるテーブルである。
【0032】
既に
図6を用いて説明した通り、従来の技術には、重複削除の際に、残すレコードを指定できない場合があるという問題がある。これに対して、第1の実施形態の分析装置13は、指定されたレコードを残して秘密計算によるテーブルの重複削除を行うことができる。
【0033】
図2を用いて、分析装置13の構成を説明する。
図2は、実施形態に係る分析装置の構成例を示す図である。
【0034】
分析装置13の各部について説明する。
図2に示すように、分析装置13は、通信部131、入力部132、出力部133、記憶部134及び制御部135を有する。
【0035】
通信部131は、他の装置の間でデータの通信を行う。例えば、通信部131はNIC(Network Interface Card)である。通信部131は他の装置との間でデータの送受信を行うことができる。
【0036】
入力部132は、データの入力を受け付けるためのインタフェースである。入力部132は、例えばマウス及びキーボード等の入力装置と接続される。
【0037】
出力部133は、データを出力するためのインタフェースである。出力部133は、例えばディスプレイ及びスピーカ等の入力装置と接続される。
【0038】
記憶部134は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部134は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部134は、分析装置13で実行されるOS(Operating System)及び各種プログラムを記憶する。
【0039】
制御部135は、分析装置13全体を制御する。制御部135は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部135は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。
【0040】
制御部135は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部135は、決定部1351、ソート部1352及び削除部1353を有する。
【0041】
図3を用いて、制御部135の各処理部の機能とともに、重複削除の手順を説明する。
図3は、実施形態に係る重複削除の手順を説明する図である。なお、説明のため、
図3には各テーブルの内容を自然言語として判読できる状態で示しているが、実際には、
図3に示す処理は、判読不可能なシェアの状態(例えば、無意味に見える数値の羅列)で蓄積されたテーブルを対象として、秘密計算により行われる。
【0042】
図3のテーブル51は、重複削除の対象のテーブルである。ここでは、「社員ID」列及び「所属部コード」列(以下、重複削除キー)が重複しているレコードが、1つを残して削除される。このため、
図3のテーブル51のレコード群61及びレコード群62は、重複削除の対象である。
【0043】
決定部1351は、重複削除キー、ソートキー及びソートの順序を決定する。重複削除キー及びソートキーは、1つ以上の列の集合である。ソートキーは後述するソート処理で用いられる。
【0044】
決定部1351は、端末装置40を介して受け取った利用者からの要求に応じて重複削除キー及びソートキーを決定することができる。ただし、重複削除キーとソートキーは異なるものとする。
【0045】
例えば、決定部1351は、「「社員ID」と「所属部コード」が重複するレコードを、「入館日」が最も古いレコードを残して削除する。」という要求があった場合を考える。この場合、決定部1351は、「社員ID」列と「所属部コード」列を重複削除キーに決定する。また、決定部1351は、「入館日」列をソートキーに決定する。また、決定部1351は、ソートの順序を昇順に決定する。
【0046】
なお、決定部1351は、残すことが要求されたレコードが、値が最も小さい(日時の場合は最も古いことと同意)レコードである場合、ソートの順序を昇順に決定する。逆に、決定部1351は、残すことが要求されたレコードが、値が最も大きい(日時の場合は最も新しいことと同意)レコードである場合、ソートの順序を降順に決定する。
【0047】
ソート部1352は、重複削除キーの値が重複するレコードを含むテーブル51のレコードを、ソートキーで秘密計算によりソートする。また、ソート部1352は、昇順及び降順のうち、指定された順序でテーブルのレコードをソートする。テーブル52は、ソート部1352がテーブル51をソートした後のテーブルである。
【0048】
決定部1351によって、「入館日」列がソートキーに決定され、ソートの順序が昇順に決定されている。このため、ソート部1352は、テーブル51のレコードを「入館日」列の昇順でソートする。この場合、テーブル52に示すように、「入館日」列の値が小さい(日時が古い)レコードほど、上位に配置される。
【0049】
削除部1353は、ソート部1352によるソートが行われたテーブル52に含まれる、重複削除キーが重複するレコードの集合のそれぞれについて、集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを秘密計算により削除する。例えば、
図3の例では、削除部1353は、集合の中で最上位にある1つのレコード以外のレコードを削除する。
【0050】
テーブル52のレコード群61及びレコード群62は、いずれも重複削除キーが重複するレコードの集合である。削除部1353は、レコード群61に含まれるレコードのうち、最下位に位置するレコード(「入館日」列の値が「2022/9/3」であるレコード)を削除し、それ以外のレコード(「入館日」列の値が「2022/9/2」であるレコード)を残す。
【0051】
なお、
図3の例では、ソート後のテーブル52における各レコード群に含まれるレコードは互いに隣接しているが、各レコード群に含まれるレコードは互いに隣接していなくてもよい。
【0052】
また、削除部1353は、分析装置13は、最上位のレコードではなく、最下位のレコードを残すように削除を行ってもよい。その場合、決定部1351は、上記の説明と逆の順序を決定する。すなわち、決定部1351は、残すことが要求されたレコードが、値が最も小さい(日時の場合は最も古いことと同意)レコードである場合、ソートの順序を降順に決定する。逆に、決定部1351は、残すことが要求されたレコードが、値が最も大きい(日時の場合は最も新しいことと同意)レコードである場合、ソートの順序を昇順に決定する。
【0053】
出力制御部1354は、レコードを削除した上でテーブル52を出力する。また、出力制御部1354は、レコードを削除したテーブル52を用いてさらに統計的な分析を行った結果を出力してもよい。
【0054】
図4は、実施形態に係る分析装置の処理の流れを示すフローチャートである。
図4に示すように、まず、分析装置13は、利用者からの要求を基に、重複削除キー、ソートキー及びソートの順序を決定する(ステップS101)。分析装置13は、決定した重複削除キーと順序を基にテーブルのレコードを秘密計算によりソートする(ステップS102)。
【0055】
次に、分析装置13は、重複削除キーが重複するレコード群を、ソート済みのテーブルから取得する(ステップS103)。ここで、分析装置13は、未処理のレコード群のうち1つを選択する(ステップS104)。
【0056】
分析装置13は、選択したレコード群のレコードのうち、最上位のレコード以外を秘密計算により削除する(ステップS105)。
【0057】
分析装置13は、未選択のレコード群がある場合(ステップS106、Yes)、ステップS104に戻り処理を繰り返す。分析装置13は、未選択のレコード群がない場合(ステップS106、No)、最終的に得られたテーブルを出力する(ステップS107)。
【0058】
[実施形態の効果]
これまで説明してきたように、分析装置13は、ソート部1352及び削除部1353を有する。ソート部1352は、第1のキー(重複削除キー)の値が重複するレコードを含むテーブルのレコードを、第1のキーと異なる第2のキー(ソートキー)で秘密計算によりソートする。削除部1353は、ソート部1352によるソートが行われたテーブルに含まれる、第1のキーが重複するレコードの集合のそれぞれについて、集合の中であらかじめ定められた位置にある1つのレコード以外のレコードを秘密計算により削除する。これにより、分析装置13は、重複削除の際に残すレコードがあらかじめ定められた位置に配置されるようにソートを行うことで、残すレコードを指定できる。
【0059】
ソート部1352は、昇順及び降順のうち、指定された順序でテーブルのレコードをソートする。また、削除部1353は、集合の中で最上位又は最下位にある1つのレコード以外のレコードを削除する。これにより、分析装置13は、利用者の要求に応じて削除されないレコードを最上位又は最下位に配置し、その他のレコードを削除することができる。
【0060】
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
【0061】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0062】
[プログラム]
一実施形態として、分析装置13は、パッケージソフトウェアやオンラインソフトウェアとして上記の分析処理を実行する分析プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の分析プログラムを情報処理装置に実行させることにより、情報処理装置を分析装置13として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
【0063】
また、分析装置13は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の分析処理に関するサービスを提供する分析サーバ装置として実装することもできる。例えば、分析サーバ装置は、重複削除対象のテーブルを入力とし、重複削除済みのテーブルを出力とする分析サービスを提供するサーバ装置として実装される。
【0064】
図5は、分析プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
【0065】
メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
【0066】
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、分析装置13の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、分析装置13における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
【0067】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
【0068】
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【符号の説明】
【0069】
1 分析システム
10 秘密計算システム
11 データ蓄積部
12 データ処理部
13 分析装置
131 通信部
132 入力部
133 出力部
134 記憶部
135 制御部
1351 決定部
1352 ソート部
1353 削除部