"複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に前記複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、前記レコードの数の分布に、偏りが大きいことを表す条件を満たしているか判断するステップと、前記レコードの数の分布に、前記偏りが大きいことを表す条件を満たしている場合には、前記複数のレコードのうち少なくとも1のレコードにおける前記第1の属性の属性値を、曖昧化データに置換し、前記データ格納部に格納するステップと、を含み、コンピュータに実行される情報処理方法。前記データ格納部に格納されているレコードを、前記第1の属性とは異なる第2の属性の属性値が同じレコードにグループ化することで、前記複数のレコードを抽出する抽出ステップと、前記複数のレコードにおける前記第1の属性の属性値毎に、当該第1の属性の属性値を含むレコードの数を計数し、前記データ格納部に格納するステップと、をさらに含む請求項1記載の情報処理方法。前記曖昧化データが、少なくとも前記第1の属性の属性値のうち頻度が最も多い属性値である確率のデータを含む請求項1又は2記載の情報処理方法。前記抽出ステップが、前記第2の属性の属性値が、k個以上同じ値となるように匿名化する処理を行った後に実施される請求項1又は2記載の情報処理方法。前記偏りが大きいことを表す条件が、前記第1の属性の属性値が2種類しか出現しておらず且つ頻度が少ない方の属性値の頻度が1又は2であるという条件と、前記第1の属性の属性値が1種類しか存在しないという条件とのいずれかを満たすという判断条件である請求項1乃至4のいずれか1つ記載の情報処理方法。前記曖昧化ステップが、前記複数のレコードのレコード数と前記第1の属性の属性値の取り得る種類の数とに応じて算出される確率に従い、前記複数のレコードのうち1又は2のレコードにおける第1の属性の属性値を曖昧化する複数の曖昧化パターンのうちいずれかを特定するステップと、特定された前記曖昧化パターンに従って、前記第1の属性の属性値を前記曖昧化データで置換するステップと、を含む請求項1乃至5のいずれか記載の情報処理方法。前記偏りが大きいことを表す条件が、前記第1の属性の属性値が2種類しか出現しておらず且つ頻度が少ない方の属性の頻度が1であるという条件と、前記第1の属性の属性値が1種類しか存在しないという条件とのいずれかを満たすという判断条件である請求項1乃至4記載のいずれか1つ記載の情報処理方法。複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に前記複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、前記レコードの数の分布に、偏りが大きいことを表す条件を満たしているか判断するステップと、前記レコードの数の分布に、前記偏りが大きいことを表す条件を満たしている場合には、前記複数のレコードのうち少なくとも1のレコードにおける前記第1の属性の属性値を、曖昧化データに置換し、前記データ格納部に格納するステップと、を、コンピュータに実行させるプログラム。複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に前記複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、前記レコードの数の分布に、偏りが大きいことを表す条件を満たしているか判断する判断部と、前記レコードの数の分布に、前記偏りが大きいことを表す条件を満たしている場合には、前記複数のレコードのうち少なくとも1のレコードにおける前記第1の属性の属性値を、曖昧化データに置換し、前記データ格納部に格納する曖昧化処理部と、を有する情報処理装置。従って、本技術の目的は、一側面によれば、元の値の出現分布の傾向を残しつつプライバシー保護を行う技術を提供することである。本技術に係る情報処理方法は、A複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、レコードの数の分布が、偏りが大きいことを表す条件を満たしているか判断するステップと、Bレコードの数の分布が、偏りが大きいことを表す条件を満たしている場合には、複数のレコードのうち少なくとも1のレコードにおける第1の属性の属性値を、曖昧化データに置換し、データ格納部に格納するステップとを含む。元の値の出現分布の傾向を残しつつプライバシー保護を行うことができる。[実施の形態1]本実施の形態に係る情報処理装置の構成例を図5に示す。図5に示すように、情報処理装置100は、第1データ格納部110と、判断部120と、曖昧化処理部130と、第2データ格納部140とを有する。第1データ格納部110は、例えば図6に示すように、あるレコード群についてプライバシー情報となるため曖昧化対象の属性について、当該レコード群において出現する属性値毎にその出現頻度が格納されている。図6の例では、値不満の出現頻度が3であり、値普通の出現頻度が1である。このようなデータを、頻度表と呼ぶことにする。また、第1データ格納部110は、属性値として取り得る値の種類mの値についても格納する。判断部120は、第1データ格納部110に格納されている頻度表を基に、出現頻度の分布に偏りが発生しているか判断する。判断部120が偏り発生を検出すると、曖昧化処理部130に処理を指示する。曖昧化処理部130は、判断部120からの指示に応じて、第2データ格納部140に格納されているレコード群第1データ格納部110に格納されているデータの元データの少なくとも1つのレコードにおける曖昧化対象の属性の属性値を、曖昧化データで置換し、置換結果を第2データ格納部140に格納する。次に、本実施の形態に係る情報処理装置100の処理内容について、図7を用いて説明する。まず、判断部120は、第1データ格納部110から処理対象のレコードについての頻度表を読み出すステップS1。そして、判断部120は、頻度表から、出現頻度の分布に偏りが大きいか判断するステップS3。例えば、頻度表において2種類しか属性値が出現しておらず且つ出現頻度が少ない方の属性値の出現頻度が1又は2となっている場合、又は1種類しか属性値が出現していない場合には、出現頻度の分布に偏りが大きいと判断する。回答者自身が結果を見る場合には、他の回答者の回答を一意に識別できないようにするためには、このような条件を採用する。また、この場合には、ステップS5では、多くとも2つのレコードの属性値を曖昧化する。また、回答した人が結果を見ないという前提がある場合には、例えば、頻度表において2種類しか属性値が出現しておらず且つ出現頻度が少ない方の属性値の出現頻度が1となっている場合、又は1種類しか属性値が出現していない場合に、出現頻度の分布に偏りが大きいと判断する。このような場合には、ステップS5では、多くとも1つのレコードの属性値を曖昧化する。このほかにも予め基準を設定しておき、出現頻度の偏りを表す指標値が、予め設定されている基準以上であれば、出現頻度の偏りが大きいと判断する。出現頻度の分布に偏りが大きいと判断されなかった場合には処理を終了する。一方、出現頻度の分布に偏りが大きいと判断された場合には、判断部120は、曖昧化処理部130に処理を指示する。曖昧化処理部130は、判断部120からの指示に応じて、出現頻度の偏りに応じて頻度表における1以上の属性値を確率的に曖昧化するステップS5。曖昧化処理部130は、変更後の頻度表を、第1データ格納部110に格納する。例えば、本実施の形態では、例えば出現頻度の偏り例えば2種類しか属性値が出現しておらず且つ出現頻度が少ない方の属性値の出現頻度が1である場合、2である場合及びnに応じて複数の曖昧化態様が用意されている。そして、各曖昧化態様においては、例えばmと出現頻度の総和nの値とに応じて決定される確率に応じて、1又は2の属性値を曖昧化データに置換する複数のパターンのいずれかを選択する。なお、1種類しか属性値が出現しない場合には出現頻度の分布に偏りが大きいと言えるが、曖昧化できるのはその1種類の属性値しかないので、そのままその属性値を曖昧化することになる。例えば、図6に示すように出現している属性値が不満と普通の2種類で、出現頻度が少ない方である普通の出現頻度が1である場合、m=3でn=4であれば、1つの曖昧化態様として、以下のような曖昧化パターンを規定しておく。A:確率11で、不満1レコードと普通1レコードを曖昧化B:それ以外89で、不満1レコードを曖昧化従って、曖昧化処理部130は、乱数を発生させて、パターンA又はBを選択して、頻度表を変更する。例えば、パターンBが選択された場合には、頻度表は図8に示すように変更される。図8の例では、曖昧化データとしてが用いられている。このように、どのような属性値かを特定できないようなデータに置換する。但し、だけではなく、元の値の確率分布情報を含むようにしても良い。具体的には、この例では不満=57,普通=43というデータをも含むようにしても良い。その後、曖昧化処理部130は、第2データ格納部140に格納されているレコード群の一部のレコードを、変更後の頻度表に従って変更し、変更後のレコードを第2データ格納部140に格納するステップS7。図8に示すような頻度表に変更する場合には、属性値不満のレコードを1つ選択して曖昧化データに置換する。上で述べた例では、図3の1行目から4行目についての頻度表を処理していたので、図3の1行目から4行目が変更対象であり、その中で曖昧化対象の属性回答の属性値不満の3レコードのいずれかをランダムに選択して、曖昧化データに置換する。例えば、図9に示すようなデータに変更される。図9の例では、上で述べたように、図3の1行目から4行目のうち3行目のレコードの属性回答の属性値不満が不満=57,普通=43に置換されている。このようにすれば、回答者が図9の結果を見たとしても、他の回答者がどのように回答したかを一意に特定できない。一方、企画部/開発部は不満の数又は割合が高い傾向があることも把握できる。すなわち、出現頻度に偏りが大きい場合であっても、元の値の出現頻度の傾向を保持しつつプライバシー保護が図られるようになる。なお、頻度表を変更することなく、ステップS7でいずれの属性値を曖昧化データに置換するかを決定できれば、直接レコードにおける曖昧化対象の属性の属性値を曖昧化データに置換しても良い。[実施の形態2]本実施の形態に係る情報処理装置の構成例を、図10に示す。図10に示すように、情報処理装置200は、第1データ格納部210と、k-匿名化処理部220と、グループ化処理部230と、出力部240と、入力部250と、曖昧化処理部260と、第2データ格納部270とを有する。第1データ格納部210には、処理の対象となるレコード群が格納されている。k-匿名化処理部220は、第1データ格納部210に格納されているレコード群について、よく知られたk-匿名化処理を実施する。入力部250は、プライバシー保護上あまり問題とならない属性と、ユーザから曖昧化対象の属性及びその属性の取り得る属性値の種類数mの組み合わせの入力を受け付け、第1データ格納部210に格納する。グループ化処理部230は、k-匿名化処理後のレコード群について、プライバシー保護の上であまり問題のない属性の属性値が同じレコードをグループ化する。グループ化処理部230は、グループ化についてのデータを第1データ格納部210に格納する。曖昧化処理部260は、各グループについて、曖昧化処理を実施し、曖昧化の処理結果を第1データ格納部210に格納する。なお、曖昧化処理部260は、頻度表などの処理途中のデータについては第2データ格納部270に格納する。出力部240は、第1データ格納部210に格納されているデータを、出力装置表示装置や印刷装置などに出力する。次に、図11乃至図21を用いて、情報処理装置200の処理内容を説明する。既に、入力部250は、ユーザから、第1データ格納部210に格納されているレコード群における曖昧化対象の属性及びその属性の取り得る属性値の種類数mの組み合わせの入力を受け付け、第1データ格納部210に格納しているものとする。例えば、レコード群において部署、年齢、アンケートの回答1及び回答2が属性となっており、部署及び年齢が、プライバシー保護をあまり問題としない属性として指定されているものとする。そして、プライバシー情報である曖昧化対象属性は回答1及び回答2とする。そして、回答1については、属性値不満、普通及び満足という3種類の取り得る属性値が存在しており、{回答1:3}というような入力がなされる。すなわち、回答1についてはm=3である。また、回答2についても、属性値不満、普通及び満足という3種類の取り得る属性値が存在しており、{回答2:3}というような入力がなされる。すなわち、回答2についても、m=3である。そして、k-匿名化処理部220は、第1データ格納部210に格納されているレコード群に対して、よく知られたk-匿名化処理を実施することで、プライバシー保護上あまり問題とならない属性の属性値がkレコード以上同じになるようにその属性値を変更し、変更後のデータを第1データ格納部210に格納する図11:ステップS11。本実施の形態では、この段階で図12に示すようなデータが第1データ格納部210に格納されているものとする。図12の例では、k=4であり、部署製造部門及び年齢25-42というレコードが4レコードになるように、そして部署営業部門及び年齢24-44というレコードが4レコードになるように、年齢属性の属性値が変更されている。その後、グループ化処理部230は、第1データ格納部210に格納されているk-匿名化処理後のレコード群について、曖昧化対象属性以外の属性の属性値に基づき、レコードをグループ化するステップS13。図12の例では、部署及び年齢の属性値が同じレコード同士を同じグループに分類する。上でも述べたように、部署製造部門及び年齢25-42という4レコードと、部署営業部門及び年齢24-44という4レコードとがグループとして特定され、グループ分けのデータが第1データ格納部210に格納される。例えば、レコード1乃至4が第1のグループであり、レコード5乃至8が第2のグループであることを表すデータが格納される。その後、曖昧化処理部260は、第1データ格納部210に格納されているグループ分けのデータに基づき、未処理のグループを1つ特定するステップS15。さらに、曖昧化処理部260は、未処理の曖昧化対象属性を1つ特定するステップS16。そして、曖昧化処理部260は、特定されたグループ及び曖昧化対象属性について、頻度表を生成し、第2データ格納部270に格納するステップS17。例えば、レコード1乃至4のグループの属性回答1について頻度表を生成すると、図13に示すような頻度表が得られる。そして、曖昧化処理部260は、曖昧化処理を実施するステップS19。曖昧化処理については、図14乃至図21を用いて説明する。曖昧化処理部260は、第2データ格納部270から頻度表を読み出し、第1データ格納部210から、特定されたグループ及び曖昧化対象属性についての取り得る属性値の種類数mを読み出す図14:ステップS31。また、曖昧化処理部260は、変数nに頻度表における総頻度出現頻度の総和を設定するステップS33。そして、曖昧化処理部260は、nが3以上であるか判断するステップS35。nが3未満、すなわち1又は2の場合には、曖昧化処理部260は、頻度表において全ての要素を曖昧化するステップS37。そのまま公開するには総頻度が低すぎてプライバシー保護が図れないため、いずれの属性値についても曖昧化データに置換する。例えばに置換する。なお、確率分布情報を付加するようにしても良い。この場合には、各属性値について確率1/mずつというようなデータを付加する。処理は端子Bを介して図16のステップS65に移行する。一方、nが3以上であれば、曖昧化処理部260は、頻度表のレコード数が2であるか判断するステップS39。頻度表のレコード数が2以外であれば、曖昧化処理部260は、頻度表のレコード数が1であるか判断するステップS41。頻度表のレコード数が1以外、すなわち3以上である場合には、曖昧化データに置換しなくてもプライバシー保護上あまり問題とならないので、何もせず端子Cを介して、呼び出し元の処理に戻る。一方、頻度表のレコード数が1であれば、曖昧化処理部260は、頻度表における唯一のレコードの出現頻度nのうち2つを曖昧化するステップS43。このように取り得る属性値の種類がmであるにも拘わらず、1種類しか出現していない場合には、出現頻度に偏りが大きいと判断して、出現頻度nのうち2つを曖昧化データで置換する。そうすると、元々ある属性値の出現頻度がn-2となり、曖昧化データの出現頻度が2となる。曖昧化データは、例えばa=確率P,a以外=1-P/m-1ずつとする。aは、曖昧化データで置換した属性値であり、Pはn=4の場合には4/7、それ以外の場合には2/n1である。これについては詳しくは以下で述べる。その後処理は端子Bを介して図16のステップS65に移行する。また、頻度表のレコード数が2であれば、曖昧化処理部260は、頻度表においてレコードを出現頻度順に並べ替え、多い方をa、少ない方をbと設定するステップS45。そして、曖昧化処理部260は、bの出現頻度は2以下であるか判断するステップS47。bの出現頻度は3以上であれば、曖昧化データに置換しなくてもプライバシ保護上あまり問題とならないので、何もせず端子Cを介して、呼び出し元の処理に戻る。一方、bの出現頻度が2であれば、曖昧化処理部260は、確率算出処理を実施するステップS49。確率算出処理では、m及びnから、確率x及びpが算出される。処理は端子Aを介して図16のステップS51に移行する。確率算出処理について、図15を用いて説明する。但し、具体的な処理を説明する前に、n≧3の場合の考え方について説明する。まず、頻度表が{a:n}属性値aの出現頻度がnのとき、特定の人がaであることを他者に一意に決められないようにするには、少なくとも2個を曖昧化すると、プライバシー保護上問題が無くなる。一方、多くの情報を提示するため曖昧化は最小限にしたいので、{a:n-2,:2}と曖昧化すべきである。は曖昧化データである。{a:n-2,:2}の元の頻度表が{a:n}であると決められないようにするために、確率x,y,p,qを次のように定める。頻度表が{a:n-1,b:1}のとき、{a:n-2,:2}とする確率をxとする。頻度表が{a:n-1,b:1}のとき、{a:n-2,b:1,:1}とする確率をyとする。頻度表が{a:n-2,b:2}のとき、{a:n-2,:2}とする確率をpとする。頻度表が{a:n-2,b:2}のとき、{a:n-2,b:1,:1}とする確率をqとする。ここで、0≦x,0≦y,0≦p,0≦q,xy≦1,pq≦1である。このとき、取り得る属性値a及びbなどの出現確率を全て等しいとすると、{a:n-2,:2}の元の頻度表が{a:n}である確率をA、bの人から見た時{a:n-2,:2}の元の頻度表が{a:n-1,b:1}である確率をB、bの人から見た時{a:n-2,b:1,:1}の頻度表が{a:n-1,b:1}である確率をCとすると、A,B及びCは、以下の式で表される。なお、v=m-1である。このとき、{a:n-2,:2}の元の頻度表で2つのに対応するaの個数の期待値をE、{a:n-2,b:1,:1}の元の頻度表でがaである確率をPとすると、それらは次の式となる。プライバシー保護を最大限にするため、A=B=C且つその値が最小となるx,y,p,qを求めることを考える。なお、A,B,Cのいずれかが1になると、特定の人がaであることが他者に一意に決められてしまう。A=B=Cより、pは次の式によりxで表される。ここで、n≧5の場合、xy=pq=1のときA,B,Cは最小になり、x,A,P,Eは次の式になる。n=4の場合、{a:2,b:2}を曖昧化する際、{a:2,:2}と{b:2,:2}、{a:2,b:1,:1}と{a:1,b:2,:1}の確率をそれぞれ等しくしたいため、xy=1,pq=1/2の時、A,B,Cは最小になり、x,A,P,Eは次の式になる。n=3の場合、n=4の場合と同じように対称性を考え、xyp=1,q=yとし、x,A,P,Eは次の式になる。以上のような考え方からすると、図15に示すような処理を実施する。すなわち、曖昧化処理部260は、v=m-1と設定するステップS61。そして、曖昧化処理部260は、n=4であるか判断するステップS63。n=4であれば、上で述べたように、曖昧化処理部260は、x=3/14v及びP=4/7を算出するステップS67。処理はステップS69に移行する。一方、n=4以外であれば、上で述べたように、曖昧化処理部260は、x=2n-1/vnn1及びP=2/n1を算出するステップS65。そして処理はステップS69に移行する。そして、曖昧化処理部260は、p=2vnx2/n-12-vnxを算出するステップS69。そして呼び出し元の処理に戻る。なお、図14の処理では、総頻度nが2以下というように少ない場合、nは3以上でも出現する属性値の数が1である場合に、プライバシー保護を図るために画一的に曖昧化する曖昧化態様を示している。次に、図16を用いて端子A以降の処理を説明する。図16では、最も少ない出現頻度の属性値の出現頻度が1の場合と2の場合といった出現頻度の偏りとnに従って、複数の曖昧化態様のいずれかを選択するようになっており、各曖昧化態様では、図15で算出した確率x及びpに従って確率的に複数の曖昧化パターンのうちいずれかを選択するようになっている。すなわち、曖昧化処理部260は、bの出現頻度が2であるか判断するステップS51。bの出現頻度が2ではない、すなわち1であれば、曖昧化処理部260は、n=3であるか判断するステップS53。n=3であれば、曖昧化処理部260は、乱数により、以下の曖昧化パターンのいずれかを選択して、実行するステップS57。すなわち、1確率xで、a1個と、b1個を曖昧化する。この場合、bの出現頻度は1であるが、このbも曖昧化されて{a:1,:2}となるので、確率分布情報については、a=確率1/2=2/31、a以外=確率1-1/2/vずつという情報となる。2確率pで、a2個を曖昧化する。この場合、{b:1,:2}となるので、確率分布情報については、b=確率1/2、b以外=確率1-1/2/vずつという情報となる。3それ以外で、a1個を曖昧化する。この場合、{a:1,b:1,:1}となるので、a=確率1/2、b=確率1/2=1-1/2という情報となる。そして処理はステップS65に移行する。一方、n=3以外の場合n=4以上には、曖昧化処理部260は、乱数により、以下の曖昧化パターンのいずれかを選択し、実行するステップS55。すなわち、1確率xで、a1個とb1個を曖昧化する。この場合、bの出現頻度は1であるが、このbも曖昧化されて{a:n-2,:2}となるので、確率分布情報については、m=5以上であればa=確率2/n2、a以外=確率1-2/n2/vずつという情報となる。m=4であればa=確率4/7、a以外=確率1-4/7/vずつという情報になる。2それ以外で、a1個を曖昧化する。この場合、{a:n-2,b:1,:1}となるので、確率分布情報については、a=確率1/2、b=確率1/2=1-1/2という情報となる。そして処理はステップS65に移行する。また、bの出現頻度が2であれば、曖昧化処理部260は、n=4であるか判断するステップS59。n=4であれば、曖昧化処理部260は、乱数により、以下の曖昧化パターンのいずれかを選択し、実行するステップS63。すなわち、1確率pで、a2個を曖昧化する。この場合、{b:2,:2}となるので、確率分布情報については、b=確率4/7、b以外=確率1-4/7/vずつという情報となる。2確率pで、b2個を曖昧化する。この場合、{a:n-2,:2}となるので、確率分布情報については、a=確率4/7、a以外=確率1-4/7/vずつという情報となる。3確率0.5-pで、a1個を曖昧化する。この場合、{a:1,b:2,:1}となるので、確率分布情報については、b=確率4/7、a=確率3/7=1-4/7という情報となる。4それ以外で、b1個を曖昧化する。この場合、{a:2,b:1,:1}となるので、確率分布情報については、a=確率4/7、b=確率3/7=1-4/7という情報となる。そして処理はステップS65に移行する。一方、n=4以外の場合n=5以上、曖昧化処理部260は、乱数により、以下の曖昧化パターンのいずれかを選択し、実行するステップS61。すなわち、1確率pで、b2個を曖昧化する。この場合、{a:n-2,:2}となるので、確率分布情報については、a=確率2/n1、a以外=確率1-2/n1/vずつという情報となる。2それ以外で、b1個を曖昧化する。この場合、{a:n-2,b:1,:1}となるので、確率分布情報については、a=確率2/n1、b=確率1-2n1という情報になる。そして処理はステップS65に移行する。その後、曖昧化処理部260は、変更後の頻度表を、第2データ格納部270に格納するステップS65。そして、呼び出し元の処理に戻る。図11の処理の説明に戻って、曖昧化処理部260は、第2データ格納部270に変更後の頻度表が格納されている場合には、変更前の頻度表との差を、第1データ格納部210に格納されており且つステップS15で特定されたグループに属するレコード群の属性値を変更するステップS21。そして、曖昧化処理部260は、未処理の曖昧化対象属性が存在するか判断するステップS22。未処理の曖昧化対象属性が存在する場合には、ステップS16に戻る。一方、未処理の曖昧化対象属性が存在しない場合には、曖昧化処理部260は、未処理のグループが存在するか判断するステップS23。未処理のグループが存在する場合には、ステップS15に戻る。一方、未処理のグループが存在しない場合には、出力部240は、第1データ格納部210に格納されている修正後の元データを、出力装置例えば表示装置、印刷装置、又はネットワークで接続されている他のコンピュータなどに出力するステップS25。例えば、図12の例でグループが部署製造部門且つ年齢25-42で、曖昧化対象属性回答1を処理対象とする場合、図13に示すような頻度表が得られる。このような場合、bの出力頻度は1で、n=4であるからステップS55の曖昧化態様が選択される。また、図15の処理フローからすると、x=3/28、p=3/56となる。そうすると、確率xで、a1個とb1個を曖昧化するか、それ以外でa1個を曖昧化する。後者が選択されると、図17に示すように頻度表が変更される。aは不満であるから、不満の出現頻度が1減少し、その分不満=57、普通=43が追加される。このような変更後の頻度表によれば、図12の元データの関連部分は、図18に示すようになる。図18の例では、aである不満が回答1となっているレコードをランダムに1つ選択して、不満=57、普通=43に変更する。一方、前者が選択されると、図19に示すように頻度表が変更される。この場合、不満の出現頻度が1減少し、普通の出現頻度は1だったのでレコード自体が消去される。このような変更後の頻度表によれば、図12の元データの関連部分は、図20に示すようになる。回答1が普通のレコードは1つだけなのでそのレコードの属性値を不満=57、不満以外=21ずつに変更する。さらに、回答1が不満のレコードは3つあるのでランダムに1つ選択して不満=57、不満以外=21ずつに変更する。なお、図12の元データ全体については、例えば図21に示すようなデータに変換され、ステップS25で出力される。部署営業部門且つ年齢24-44というグループの回答1という曖昧化対象属性については、3種類の属性値が出現するので曖昧化することなく、そのまま出力することになる。また、部署営業部門且つ年齢24-44というグループの回答2という曖昧化対象属性については、属性値普通が1種類しか出現していないので、ランダムに2つのレコードを選択して曖昧化データで置換している。その他のグループ及び曖昧化対象属性については、確率的にいずれかの曖昧化パターンが選択される。[実施の形態3]第2の実施の形態では、回答者が変更後の元データを見たとしても、他の回答者の回答を一意に特定できないようにしていたが、回答者が曖昧化後のデータを見ることがないということであれば、図14及び図16の曖昧化処理については、図22に示すような曖昧化処理を行えばよい。但し、nが3以上の場合には、以下のように考える。すなわち、頻度表が{a:n}頻度が多い方の属性値aの出現頻度が総頻度と同じnであるである場合、特定の人がaであることを頻度表と無関係な他者に一意に決められないようにするには、少なくとも1個を曖昧化することになる。一方、曖昧化は最小限にしたいため、{a:n-1,:1}と曖昧化すべきである。{a:n-1,:1}の元の頻度表が{a:n}であると決められないようにするために、確率xを次のように定める。すなわち、頻度表が{a:n-1,b:1}のとき、{a:n-1,:1}とする確率をxとする。ここで0≦x≦1である。このとき、取り得る属性値a及びbなどの出現確率を全て等しいとすると、{a:n-1,:1}の元の頻度表が{a:n}である確率をPとすると、これは次の式となる。プライバシー保護を最大限にするため、Pが最小となるxを求めることを考える。なお、Pが1になると、特定の人がaであることが頻度表と無関係な他者にも一意に決められてしまう。従って、n≧3の場合、x=1のときPは最小になり、Pは次の式になる。また、n=2の場合、{a:1,b:1}を曖昧化する際、{a:1,:1}と{b:1,:1}の確率を等しくしたいため、x=1/2のときPは最小になり、Pは次の式になる。以上のような考え方に基づき、以下のような処理を実施する。まず、曖昧化処理部260は、第2データ格納部270から頻度表を読み出す図22:ステップS101。また、曖昧化処理部260は、nに総頻度出現頻度の総和を設定するステップS103。そして、曖昧化処理部260は、頻度表のレコード数が2であるか判断するステップS105。頻度表のレコード数が2以外である場合1又は3以上の場合、曖昧化処理部260は、頻度表のレコード数が1であるか判断するステップS119。頻度表のレコード数が1ではない、即ち3以上である場合には曖昧化することなく呼び出し元の処理に戻る。一方、頻度表のレコード数が1である場合には、曖昧化処理部260は、唯一のレコードの出現頻度のうち1つを曖昧化するステップS121。ステップS43と同趣旨である。上で述べたように、nが3以上であれば、確率分布情報については、a=確率P、a以外=確率1-P/vずつという情報になる。m=3及びn=4であれば、P=1/vn1=1/3-141=11となる。そして処理はステップS117に移行する。また、頻度表のレコード数が2である場合には、曖昧化処理部260は、頻度表においてレコードを頻度順に並べ替え、多い方をa、少ない方をbに設定するステップS107。そして、曖昧化処理部260は、bの頻度は1であるか判断するステップS109。bの頻度が2以上であれば、上記の前提の下では問題がないので、曖昧化することなく呼び出し元の処理に戻る。一方、bの頻度が1である場合には、曖昧化処理部260は、n=2であるか判断するステップS111。nが2以外の場合には、曖昧化処理部260は、b1個を曖昧化するステップS115。この場合、{a:n-1,:1}であるから、確率分布情報については、nが3以上であればa=確率P=1/vn1、a以外の属性値=確率1-P/vずつとなる。そして処理はステップS117に移行する。また、n=2である場合には、曖昧化処理部260は、乱数により、次のいずれかの曖昧化パターンのうちいずれかを選択して、実行するステップS113。すなわち、1確率1/2で、a1個を曖昧化する。この場合、確率分布情報については、{b:1,:1}であるから、b=確率1/v1,b以外=確率1-1/v1/vずつという情報である。2それ以外で、b1個を曖昧化する。この場合、確率分布情報については、{a:1,:1}であるから、a=確率1/v1,a以外=確率1-1/v1/vずつという情報である。そして、ステップS117に移行する。その後、曖昧化処理部260は、変更後の頻度表を第2データ格納部270に格納するステップS117。例えば図12に示した例を図22の処理フローで処理すると、図23のようなデータが得られる。すなわち、部署製造部門且つ年齢25-42というグループの曖昧化対象属性回答2については、第2の実施の形態では曖昧化されていたが、本実施の形態では曖昧化されない。また、部署製造部門且つ年齢25-42というグループの曖昧化対象属性回答1については、ステップS115において、回答1が普通であるレコードの属性値が不満=11、不満以外=44ずつという曖昧化データに置換される。また、部署営業部門且つ年齢24-44というグループの曖昧化対象属性回答1を処理する場合には、曖昧化されない。部署営業部門且つ年齢24-44というグループの曖昧化対象属性回答2を処理する場合に、ステップS121で曖昧化データに置換される。すなわち、不満=11、不満以外=44ずつとなる。以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。機能ブロック構成については、一例であって、必ずしも実際のプログラムモジュール構成と一致しない場合もある。また、処理フローについても、処理結果が変わらない限り、処理順番を入れ替えたり、複数のステップを並列実行しても良い。また、上で述べた実施の形態では、全ての属性値を平等に扱ったが、属性値によってはプライバシー上あまり問題にならないような値を特別扱いするなどしても良い。たとえば、各人について回答が普通であることは開示して問題ない場合は、普通普通普通普通や普通普通満足普通などは、偏りが大きいと判定される場合においても曖昧化しない、といったアルゴリズムにしても良い。なお、上で述べた情報処理装置100及び200は、コンピュータ装置であって、図24に示すように、メモリ2501とCPUCentralProcessingUnit2503とハードディスクドライブHDD:HardDiskDrive2505と表示装置2509に接続される表示制御部2507とリムーバブルディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティングシステムOS:OperatingSystem及び本実施例における処理を実施するためのアプリケーションプログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーションプログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーションプログラムはコンピュータ読み取り可能なリムーバブルディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーションプログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。以上述べた本実施の形態をまとめると、以下のようになる。本実施の形態に係る情報処理方法は、A複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、レコードの数の分布が、偏りが大きいことを表す条件を満たしているか判断するステップと、Bレコードの数の分布が偏りが大きいことを表す条件を満たしている場合には、複数のレコードのうち少なくとも1のレコードにおける第1の属性の属性値を、曖昧化データに置換し、データ格納部に格納するステップとを含む。このように曖昧化対象の第1の属性の属性値を曖昧化データと置換することで、元の値の出現分布の傾向を残しつつプライバシー保護を図ることができるようになる。また、本実施の形態に係る情報処理方法が、Cデータ格納部に格納されているレコードを、第1の属性とは異なる第2の属性又は第2の属性群の属性値が同じレコードにグループ化することで、複数のレコードを抽出する抽出ステップと、D複数のレコードにおける第1の属性の属性値毎に、当該第1の属性の属性値を含むレコードの数を計数し、データ格納部に格納するステップとをさらに含むようにしても良い。このように、曖昧化対象属性の属性値毎に、レコード数を算出するようにしても良い。さらに、上で述べた曖昧化データが、少なくとも第1の属性の属性値のうち頻度が最も多い属性値である確率のデータを含むようにしても良い。このような確率のデータが提示されれば、より元の値の傾向を把握することが容易になる。また、上で述べた抽出ステップが、第2の属性又は第2の属性群の属性値が、k個以上同じ値となるように匿名化する処理を行った後に実施される場合もある。すなわちk-匿名化処理を実施すれば、基礎的なプライバシー保護を実現できるようになる。さらに、上で述べた偏りが大きいことを表す条件が、第1の属性の属性値が2種類しか出現しておらず頻度が少ない方の属性値の頻度が1又は2であるという条件と、第1の属性の属性値が1種類しか存在しないという条件とのいずれかを満たすという判断条件である場合もある。回答者自身が処理結果を見ても他の回答者の回答内容を一意に識別できないようにしつつ、曖昧化するデータを最小限に抑えるには、このような条件を採用する。なお、この場合、曖昧化データと置換するレコードの数は多くとも2となる。また、複数のレコードのレコード数が2以下である場合に、曖昧化ステップを実施するようにしても良い。このように、元々の回答者の数が少ない場合には曖昧化を行ってプライバシー保護を図る。また、上で述べた曖昧化ステップが、複数のレコードのレコード数と第1の属性の属性値の取り得る種類の数とに応じて算出される確率に従い、複数のレコードのうち1又は2のレコードにおける第1の属性の属性値を曖昧化する複数の曖昧化パターンのうちいずれかを特定するステップと、特定された曖昧化パターンに従って、第1の属性の属性値を曖昧化データで置換するステップとを含むようにしても良い。このような処理を行うと効果的にプライバシー保護が図られる。さらに、上で述べた偏りが大きいことを表す条件が、第1の属性の属性値が2種類しか出現しておらず且つ頻度が少ない方の属性の頻度が1であるという条件と、第1の属性の属性値が1種類しか存在しないという条件とのいずれかを満たすという判断条件である場合もある。例えば、回答者自身が処理結果を見ることがない場合には、このような条件でもプライバシー保護が図られる。この場合、曖昧化データと置換されるレコードの数は1となる。さらに、複数のレコードにおける第1の属性の属性値が、第1の属性値と当該第1の属性値より頻度が低い第2の属性値とを含み、複数のレコードのレコード数をnとする場合、例えば以下のようにして上で述べた確率を算出するようにしても良い。すなわち、第1の属性値がn-2個出現し、2レコード分前記曖昧化データに置換されたことを表す情報が生成されている場合において実際には第1の属性値がn個出現していた場合の確率Aと、第2の属性値に該当する人から見て第1の属性値がn-2個出現し、2レコード分曖昧化データに置換されたことを表す情報が生成されている場合において実際には第1の属性値がn-1個出現しており且つ第2の属性が1つ出現していた場合の確率Bと、第2の属性値に該当する人から見て第1の属性値がn-2個出現し、第2の属性値が1個出現し、1レコード分曖昧化データに置換されたことを表す情報が生成されている場合において実際には第1の属性値がn-1個出現しており且つ第2の属性が1つ出現していた場合の確率Cと、が等しく且つ最小になるという条件を満たすように、上で述べた確率が算出されるようにしても良い。適切な確率を算出できる。なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD-ROMなどの光ディスク、光磁気ディスク、半導体メモリ例えばROM、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。付記1複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に前記複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、前記レコードの数の分布に、偏りが大きいことを表す条件を満たしているか判断するステップと、前記レコードの数の分布に、前記偏りが大きいことを表す条件を満たしている場合には、前記複数のレコードのうち少なくとも1のレコードにおける前記第1の属性の属性値を、曖昧化データに置換し、前記データ格納部に格納するステップと、を含み、コンピュータにより実行される情報処理方法。付記2前記データ格納部に格納されているレコードを、前記第1の属性とは異なる第2の属性の属性値が同じレコードにグループ化することで、前記複数のレコードを抽出する抽出ステップと、前記複数のレコードにおける前記第1の属性の属性値毎に、当該第1の属性の属性値を含むレコードの数を計数し、前記データ格納部に格納するステップと、をさらに含む付記1記載の情報処理方法。付記3前記曖昧化データが、少なくとも前記第1の属性の属性値のうち頻度が最も多い属性値である確率のデータを含む付記1又は2記載の情報処理方法。付記4前記抽出ステップが、前記第2の属性の属性値が、k個以上同じ値となるように匿名化する処理を行った後に実施される付記1又は2記載の情報処理方法。付記5前記偏りが大きいことを表す条件が、前記第1の属性の属性値が2種類しか出現しておらず且つ頻度が少ない方の属性値の頻度が1又は2であるという条件と、前記第1の属性の属性値が1種類しか存在しないという条件とのいずれかを満たすという判断条件である付記1乃至4のいずれか1つ記載の情報処理方法。付記6前記複数のレコードのレコード数が2以下である場合に、前記曖昧化ステップを実施する付記5記載の情報処理方法。付記7前記曖昧化ステップが、前記複数のレコードのレコード数と前記第1の属性の属性値の取り得る種類の数とに応じて算出される確率に従い、前記複数のレコードのうち1又は2のレコードにおける第1の属性の属性値を曖昧化する複数の曖昧化パターンのうちいずれかを特定するステップと、特定された前記曖昧化パターンに従って、前記第1の属性の属性値を前記曖昧化データで置換するステップと、を含む付記1乃至6のいずれか記載の情報処理方法。付記8前記偏りが大きいことを表す条件が、前記第1の属性の属性値が2種類しか出現しておらず且つ頻度が少ない方の属性の頻度が1であるという条件と、前記第1の属性の属性値が1種類しか存在しないという条件とのいずれかを満たすという判断条件である付記1乃至4記載のいずれか1つ記載の情報処理方法。付記9前記複数のレコードにおける前記第1の属性の属性値が、第1の属性値と当該第1の属性値より頻度が低い前記第2の属性値とを含み、前記複数のレコードのレコード数をnとし、前記第1の属性値がn-2個出現し、2レコード分前記曖昧化データに置換されたことを表す情報が生成されている場合において実際には前記第1の属性値がn個出現していた場合の確率Aと、前記第2の属性値に該当する人から見て前記第1の属性値がn-2個出現し、2レコード分前記曖昧化データに置換されたことを表す情報が生成されている場合において実際には前記第1の属性値がn-1個出現しており且つ前記第2の属性が1つ出現していた場合の確率Bと、前記第2の属性値に該当する人から見て前記第1の属性値がn-2個出現し、前記第2の属性値が1個出現し、1レコード分前記曖昧化データに置換されたことを表す情報が生成されている場合において実際には前記第1の属性値がn-1個出現しており且つ前記第2の属性が1つ出現していた場合の確率Cと、が等しく且つ最小になるという条件を満たすように、前記確率が算出される付記7記載の情報処理方法。付記10複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に前記複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、前記レコードの数の分布に、偏りが大きいことを表す条件を満たしているか判断するステップと、前記レコードの数の分布に、前記偏りが大きいことを表す条件を満たしている場合には、前記複数のレコードのうち少なくとも1のレコードにおける前記第1の属性の属性値を、曖昧化データに置換し、前記データ格納部に格納するステップと、を、コンピュータに実行させるプログラム。付記11複数のレコードに含まれ且つ曖昧化対象と指定されている第1の属性の属性値の種類毎に前記複数のレコードのうち当該第1の属性の属性値が出現するレコードの数が格納されているデータ格納部に格納されているデータから、前記レコードの数の分布に、偏りが大きいことを表す条件を満たしているか判断する判断部と、前記レコードの数の分布に、前記偏りが大きいことを表す条件を満たしている場合には、前記複数のレコードのうち少なくとも1のレコードにおける前記第1の属性の属性値を、曖昧化データに置換し、前記データ格納部に格納する曖昧化処理部と、を有する情報処理装置。"