JP2023108831A - データ修正プログラム、データ修正方法、及び、情報処理装置 - Google Patents

データ修正プログラム、データ修正方法、及び、情報処理装置 Download PDF

Info

Publication number
JP2023108831A
JP2023108831A JP2022010087A JP2022010087A JP2023108831A JP 2023108831 A JP2023108831 A JP 2023108831A JP 2022010087 A JP2022010087 A JP 2022010087A JP 2022010087 A JP2022010087 A JP 2022010087A JP 2023108831 A JP2023108831 A JP 2023108831A
Authority
JP
Japan
Prior art keywords
attribute
data
value
attributes
unprotected
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
Application number
JP2022010087A
Other languages
English (en)
Inventor
斌 朴
bin Park
理史 新宮
Satoshi Shingu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2022010087A priority Critical patent/JP2023108831A/ja
Priority to EP22208762.9A priority patent/EP4220500A1/en
Priority to US18/059,173 priority patent/US20230237036A1/en
Publication of JP2023108831A publication Critical patent/JP2023108831A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2272Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】機械学習モデルによる推論結果の精度劣化を抑制する。【解決手段】データ修正プログラムは、コンピュータに、訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、処理を実行させる。【選択図】図8

Description

本発明は、データ修正プログラム、データ修正方法、及び、情報処理装置に関する。
バイアスを含む過去のデータを用いて訓練される機械学習モデルは、統計的に確率の高い判断を下すという特性上、不公平な推論結果、例えば差別を引き起こす推論結果を出力する可能性がある。バイアスは、例えば、性別等の特定の属性の偏りである。
性別、年齢、人種、国籍等の保護属性による差別を抑制するために、データから保護属性以外の非保護属性の値を書き換え、保護属性と非保護属性との間の相関を軽減することで、機械学習モデルによる不公平な推論を抑制する手法が知られている。なお、相関とは、属性間の関連性又はその強さを意味してよい。
国際公開第2021/084609号パンフレット 国際公開第2021/085188号パンフレット 国際公開第2021/005891号パンフレット
上述した手法では、保護属性と非保護属性との間の厳密な因果関係を用いないため、保護属性と偶然に相関を有する非保護属性に対してもデータの変更が行なわれ得る。
また、非保護属性の値の書き換えの度合いは、指定された(例えば1つの)パラメータに基づき一律に決定される。
このため、上述した手法では、保護属性と偶然に相関を有する非保護属性に関してもデータが変更されてしまい、機械学習モデルによる推論結果の精度劣化を引き起こす可能性がある。
1つの側面では、本発明は、機械学習モデルによる推論結果の精度劣化を抑制することを目的の1つとする。
1つの側面では、データ修正プログラムは、コンピュータに以下の処理を実行させてよい。前記処理は、訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定する処理を含んでよい。また、前記処理は、前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する処理を含んでよい。
1つの側面では、本発明は、機械学習モデルによる推論結果の精度劣化を抑制することができる。
一実施形態に係るデータ修正装置の機能を実現するコンピュータのハードウェア(HW)構成例を示すブロック図である。 一実施形態に係るデータ修正装置の機能構成例を示すブロック図である。 データの一例を示す図である。 DIR(Disparate Impact Remover)による相関関係の軽減例を示す図である。 因果グラフを利用しない場合の相関関係の軽減割合の一例を示す図である。 因果グラフの一例を示す図である。 因果グラフに基づく相関関係の軽減割合の一例を示す図である。 一実施形態に係るデータ修正装置の動作例を説明するフローチャートである。 一実施形態に係る修正済データを用いて訓練された機械学習モデルによる推論結果の一例を示す図である。
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形又は技術の適用を排除する意図はない。例えば、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の説明で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
〔1〕一実施形態
以下、機械学習モデルによる推論結果の精度劣化を抑制する手法として、一実施形態に係るデータ修正装置1(図2参照)を例に挙げて説明する。
〔1-1〕ハードウェア構成例
一実施形態に係るデータ修正装置1は、仮想サーバ(VM;Virtual Machine)であってもよいし、物理サーバであってもよい。また、データ修正装置1の機能は、1台のコンピュータにより実現されてもよいし、2台以上のコンピュータにより実現されてもよい。さらに、データ修正装置1の機能のうちの少なくとも一部は、クラウド環境により提供されるHW(Hardware)リソース及びNW(Network)リソースを用いて実現されてもよい。
図1は、一実施形態に係るデータ修正装置1の機能を実現するコンピュータ10のハードウェア(HW)構成例を示すブロック図である。データ修正装置1の機能を実現するHWリソースとして、複数のコンピュータが用いられる場合は、各コンピュータが図1に例示するHW構成を備えてよい。
図1に示すように、コンピュータ10は、HW構成として、例示的に、プロセッサ10a、メモリ10b、記憶部10c、IF(Interface)部10d、IO(Input / Output)部10e、及び読取部10fを備えてよい。
プロセッサ10aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ10aは、コンピュータ10内の各ブロックとバス10iで相互に通信可能に接続されてよい。なお、プロセッサ10aは、複数のプロセッサを含むマルチプロセッサであってもよいし、複数のプロセッサコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
プロセッサ10aとしては、例えば、CPU、MPU、GPU、APU、DSP、ASIC、FPGA等の集積回路(IC;Integrated Circuit)が挙げられる。なお、プロセッサ10aとして、これらの集積回路の2以上の組み合わせが用いられてもよい。CPUはCentral Processing Unitの略称であり、MPUはMicro Processing Unitの略称である。GPUはGraphics Processing Unitの略称であり、APUはAccelerated Processing Unitの略称である。DSPはDigital Signal Processorの略称であり、ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
例えば、データ修正装置1が一実施形態に係るデータ修正処理に加えて、機械学習処理を実行する場合、プロセッサ10aは、データ修正処理を実行するCPU等の処理装置と、機械学習処理を実行するアクセラレータとの組み合わせであってよい。アクセラレータとしては、例えば、上述したGPU、APU、DSP、ASIC又はFPGA等が挙げられる。
メモリ10bは、種々のデータやプログラム等の情報を格納するHWの一例である。メモリ10bとしては、例えばDRAM(Dynamic Random Access Memory)等の揮発性メモリ、及び、PM(Persistent Memory)等の不揮発性メモリ、の一方又は双方が挙げられる。
記憶部10cは、種々のデータやプログラム等の情報を格納するHWの一例である。記憶部10cとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、SSD(Solid State Drive)等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
記憶部10cは、コンピュータ10の各種機能の全部若しくは一部を実現するプログラム10g(データ修正プログラム)を格納してよい。
例えば、データ修正装置1のプロセッサ10aは、記憶部10cに格納されたプログラム10gをメモリ10bに展開して実行することにより、後述するデータ修正装置1(図2に例示する制御部18)としての機能を実現できる。
IF部10dは、データ修正装置1と図示しない装置との間のネットワークを含む種々のネットワークとの間の接続及び通信の制御等を行なう通信IFの一例である。装置としては、例えば、データ修正装置1にデータを提供するユーザ端末又はサーバ等のコンピュータ、データ修正装置1から出力されるデータに基づき機械学習処理を行なうサーバ等のコンピュータ等が挙げられる。
例えば、IF部10dは、イーサネット(登録商標)等のLAN(Local Area Network)、或いは、FC(Fibre Channel)等の光通信等に準拠したアダプタを含んでよい。当該アダプタは、無線及び有線の一方又は双方の通信方式に対応してよい。
なお、プログラム10gは、当該通信IFを介して、ネットワークからコンピュータ10にダウンロードされ、記憶部10cに格納されてもよい。
IO部10eは、入力装置、及び、出力装置、の一方又は双方を含んでよい。入力装置としては、例えば、キーボード、マウス、タッチパネル等が挙げられる。出力装置としては、例えば、モニタ、プロジェクタ、プリンタ等が挙げられる。また、IO部10eは、入力装置及び表示装置が一体となったタッチパネル等を含んでもよい。
読取部10fは、記録媒体10hに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部10fは、記録媒体10hを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部10fとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体10hにはプログラム10gが格納されてもよく、読取部10fが記録媒体10hからプログラム10gを読み出して記憶部10cに格納してもよい。
記録媒体10hとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
上述したコンピュータ10のHW構成は例示である。従って、コンピュータ10内でのHWの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。
〔1-2〕機能構成例
図2は、一実施形態に係るデータ修正装置1の機能構成例を示すブロック図である。データ修正装置1は、機械学習モデルの訓練に利用されるデータを修正する情報処理装置又はコンピュータの一例である。例えば、データ修正装置1は、機械学習モデルによる不公平な推論を抑制する手法を採用して、機械学習モデルの訓練に利用されるデータを修正してもよい。
一実施形態では、当該手法の一例として、DIR(Disparate Impact Remover)が利用されてよい。一実施形態に係るデータ修正装置1は、例えば、非保護属性の値を書き換える際に利用するパラメータを、属性ごとに個別に変更することで、DIRの適用による推論結果の精度劣化を抑制する。
図2に示すように、データ修正装置1は、例示的に、メモリ部11、取得部12、因果グラフ生成部13、データ書換部14、及び、出力部15を備えてよい。また、データ修正装置1は、機械学習部16を備えてもよく、さらに、推論処理部17を備えてもよい。取得部12、因果グラフ生成部13、データ書換部14、出力部15(、並びに、機械学習部16及び推論処理部17)は、制御部18の一例である。
メモリ部11は、記憶領域の一例であり、データ修正装置1が利用する種々のデータを記憶する。メモリ部11は、例えば、図1に示すメモリ10b及び記憶部10cのうちの一方又は双方が有する記憶領域により実現されてもよい。
図2に示すように、メモリ部11は、例示的に、データ11a、保護属性11b、パラメータ11c、因果グラフ11d、及び、修正済データ11eを記憶可能であってよい。また、データ修正装置1が機械学習部16を備える場合、メモリ部11は、機械学習モデル11fを記憶可能であってもよい。さらに、データ修正装置1が推論処理部17を備える場合、メモリ部11は、推論結果11gを記憶可能であってもよい。
以下、便宜上、メモリ部11が格納する情報をテーブル形式で表記するが、これに限定されるものではなく、メモリ部11が格納する情報のうちの少なくとも1つは、DB又は配列等の種々の形式であってもよい。
取得部12は、データ修正装置1で利用される種々の情報を取得する。例えば、取得部12は、データを提供する装置(図示省略)からデータ11a、保護属性11b、及び、パラメータ11cを取得し、メモリ部11に格納してよい。
データ11aは、複数の属性を含むデータであり、例えば、機械学習モデルの訓練に利用される訓練データの一例である。複数の属性のそれぞれは、保護属性又は非保護属性であってよい。
図3は、データ11aの一例を示す図である。図3に示すように、一実施形態では、データ11aがadultデータである場合を例に挙げる。adultデータは、アメリカ合衆国における国勢調査結果に基づき作成された公開データであり、成人の収入を示すデータである。以下の説明では、データ11aは、例えば収入予測(“income”が“>=50k”であるか否かの予測)等の所定のAI(Artificial Intelligence)タスクを実現するための機械学習処理に利用されるものとする。
保護属性11bは、データ11aに含まれる複数の属性のうちの第1の属性を特定する(例えば指定する)ための情報である。例えば、保護属性11bは、性別、年齢、人種、国籍等のうちの少なくとも1つを含んでよい。図3の例では、性別を示す“sex”が保護属性11bの1つである。
パラメータ11cは、データ11aに含まれる保護属性11b以外の非保護属性の値を書き換える際に利用される情報であって、非保護属性の値の書き換えの度合いを示す情報である。例えば、パラメータ11cは、1つ又は複数の値であってよい。非保護属性は、データ11aに含まれる複数の属性のうちの第2の属性の一例である。
パラメータ11cは、例えば、機械学習モデルによる不公平な推論を抑制する手法において、保護属性と非保護属性との間の相関関係を軽減するために利用されるパラメータと同様であってよい。一実施形態においては、パラメータ11cは、非保護属性の値の修正の初期値の一例である。
図4は、DIRによる相関関係の軽減例を示す図である。図4の横軸は非保護属性の値を示し、縦軸は確率分布を示す。図4に示す符号X(破線)及び符号Y(一点鎖線)は、保護属性11bの値(例えば性別“男”、“女”等)別の非保護属性の確率密度関数である。符号X及びYの各グラフから、保護属性11bの値に応じて非保護属性の値の分布に偏りが生じているため、非保護属性は、保護属性11bとの間に相関を有するといえる。
符号Z(実線)で示す確率密度関数は、通常のDIRを用いた処理により、単一のパラメータ11cを用いて非保護属性の値が一律に書き換えられた場合のグラフである。符号Zで示す確率密度関数は、符号X及び符号Yで示す確率密度関数と比較して、保護属性11bと非保護属性との間の相関関係が軽減された関数となる。
図5は、因果グラフを利用しない場合の相関関係の軽減割合の一例を示す図である。図5では、因果関係を利用しない場合として、通常のDIRを利用する場合を例に挙げる。また、図5では、パラメータ11cが“0.8”である場合を例に挙げる。
図5に示すように、DIRにおいて、非保護属性の値を単一のパラメータ11cに基づき修正する場合、非保護属性の各々と保護属性11bとの間の相関関係は、一律な割合で軽減される。この場合、上述したように、保護属性11bと偶然に相関を有する非保護属性に関してもデータが変更されてしまい、当該データを用いて訓練された機械学習モデルによる推論結果の精度劣化が引き起こされる可能性がある。
そこで、一実施形態に係るデータ修正装置1は、相関を有する保護属性11bと非保護属性との間の因果関係に基づき、非保護属性ごとに値を修正する。これにより、修正後の値を含むデータ11a(後述する修正済データ11e)を用いて訓練された機械学習モデル11fによる推論結果の精度劣化を抑制できる。
ここで、保護属性11bと非保護属性との間の因果関係とは、これらの属性間における原因と結果との関係を意味してよい。例えば、因果関係があるということは、一方の属性の値(結果)が他方の属性の値(原因)に起因したものであることを意味してよい。また、因果関係の強さとは、これらの属性間に因果関係があることの可能性、並びに、一方の属性の値に対する他方の属性の値の寄与度、の一方又は双方を意味してよい。因果関係の強さは、因果関係の程度又は度合いと称されてもよい。
因果グラフ生成部13は、データ11aにおける保護属性11bを説明変数とし、分類対象のクラスを目的変数とする因果グラフ11dを生成する。
一例として、因果グラフ生成部13は、因果探索を行なうための訓練済みの機械学習モデル(図示省略)を利用して、データ11aに含まれる属性間の因果関係を表す行列Aを推定する因果推定を実行してよい。
因果グラフ11dは、例えば、因果推定により推定された行列Aに基づき表現されてよい。例えば、因果グラフ生成部13は、推定した行列Aを因果グラフ11dとしてメモリ部11に格納してもよい。
因果探索を行なうための訓練済みの機械学習モデルとしては、例えば、LiNGAM(Linear Non-Gaussian Acyclic Model)が挙げられる。LiNGAMを利用した因果推定は、下記式(1)~式(3)によって定式化される。
x=Ax+ε (1)
x=(x,x,...,x (2)
ε=(ε,ε,...,ε (3)
上記式(2)及び式(3)において、“n”は、データ11aに含まれる複数の属性の数(属性数)を示す。一例として、“n=11”であるものとする。上記式(2)において、“x”(iは“1”以上“n”以下の整数)は、データ11aに含まれる各属性を示す。上記式(3)において、“ε”は、非ガウス分布のノイズを示す。
図6は、因果グラフ11dの一例を示す図である。因果グラフ11dは、保護属性11b及び非保護属性11d1をノードとし、属性間の因果関係の強さを示す指標11d2を、ノード(属性)間を接続するエッジ(辺)に対応付けた情報である。因果グラフ11dは、図6に例示するように有向グラフとして示されてよく、他の例では、上述のように行列Aとして示されてもよい。
LiNGAMでは、外因性変数と目的変数とを事前に設定することができる。外因性変数は、因果グラフ11dのルートノードに相当し、図6の例では、保護属性11b“sex”である。目的変数は、外因性変数との間の因果関係を推定する対象となる変数であり、因果グラフ11dの末端のノードに相当する。図6の例では、目的変数は、非保護属性11d1のうちの収入“income”である。
因果グラフ生成部13は、上記式(1)~(3)を用いて、データ11a及び保護属性11bに基づき、保護属性11bと、データ11aに含まれる非保護属性11d1の各々との間の因果関係の強さを示す指標11d2を算出してよい。
図6の例では、指標11d2は、ノード間を接続する辺上に示されている。例えば、“sex”と“edu_level”との間の指標11d2は、“0.1”である。
データ書換部14は、因果グラフ11dに基づき、非保護属性11d1のそれぞれに対して適用するパラメータ11cの割合を調整する。また、データ書換部14は、調整した割合によりデータ11aに含まれる非保護属性11d1の値を書き換え、値の書き換え後のデータ11aを、修正済データ11eとしてメモリ部11に格納する。
これにより、データ書換部14は、各非保護属性11d1と保護属性11bとの因果関係に応じた適切な割合によって、各非保護属性11d1の値を修正することができる。以下、データ書換部14による処理の一例を説明する。
例えば、データ書換部14は、因果グラフ11dに基づき、データ11aに含まれる複数の属性から、当該複数の属性のうちの保護属性11bと因果関係を有する非保護属性11d1(以下、「修正対象の非保護属性11d1」と表記する場合がある)を特定する。
修正対象の非保護属性11d1は、例えば、因果グラフ11dにおいて保護属性11bとの間に指標11d2が設定された(算出された)非保護属性11d1であってよい。
図6の例では、修正対象の非保護属性11d1は、“marital-status”、“edu_level”、“occupation”、“relationship”、“hours-per-week”及び“income”となる。
一方、保護属性11b“sex”と非保護属性11d1“workclass”との間には、辺が存在しない(直接接続されていない)。辺が存在しないということは、“sex”と“workclass”との間には、相関はあったとしても、因果関係はないことを意味する。この場合、“workclass”(第3の属性)は、修正対象外の非保護属性11d1となる。
なお、保護属性11bと因果関係を有する非保護属性11d1は、因果グラフ11dにおいて指標11d2が設定された非保護属性11d1のうちの、当該指標11d2が所定の閾値以上である非保護属性11d1に制限されてもよい。換言すれば、データ書換部14は、因果グラフ11dにおいて指標11d2が設定された非保護属性11d1のうちの、当該指標11d2が所定の閾値未満である非保護属性11d1を、修正対象外の非保護属性11d1と判定してもよい。
図7は、因果グラフ11dに基づく相関関係の軽減割合14aの一例を示す図である。図7では、パラメータ11cが“0.8”である場合を例に挙げる。図7に例示するように、データ書換部14は、修正対象の非保護属性11d1ごとに、パラメータ11cと、非保護属性11d1と保護属性11bとの間の指標11d2とに基づき、非保護属性11d1の値に適用する軽減割合14aを算出する。
軽減割合14aは、一例として、パラメータ11cと指標11d2との乗算結果であってもよい。或いは、軽減割合14aは、パラメータ11cと指標11d2とを用いた種々の演算結果であってもよい。
図7の例では、データ書換部14は、非保護属性11d1“edu_level”の軽減割合14aとして、パラメータ11c“0.8”と、保護属性11b“sex”との指標11d2“0.1”と、の乗算結果である“0.8×0.1=0.08”を算出する。
データ書換部14は、非保護属性11d1ごとに算出した軽減割合14aを用いて、データ11aに含まれる複数の非保護属性11d1の値を修正し、修正後のデータ11aを修正済データ11eとしてメモリ部11に格納する。
データ書換部14は、例えば、保護属性11bの値ごとの非保護属性11d1の値の確率分布の差を小さくする条件に従って、データ11aの当該非保護属性11d1の値を修正してよい。
当該条件としては、例えば、保護属性11bとの間の因果関係が強い非保護属性11d1ほど、値を減少させる度合いを大きくする、という条件が挙げられる。言い換えると、当該条件としては、例えば、保護属性11bとの間の因果関係が弱い非保護属性11d1ほど、値を減少させる度合いを小さくする、という条件が挙げられる。
例えば、図7では、指標11d2が“0.8”である非保護属性11d1“Marital_status”は、指標11d2が“0.1”である非保護属性11d1“edu_level”よりも、保護属性11bとの間の因果関係が強いといえる。この場合、データ書換部14は、“Marital_status”の値の方が“edu_level”の値よりも、値の修正(例えば減少)割合を大きくしてよい。
データ書換部14は、一例として、非保護属性11d1の値に(1-[算出した軽減割合])を乗算した結果を、当該非保護属性11d1の修正後の値(修正値)としてもよい。なお、軽減割合14aを用いたデータ11aの修正手法は、上述した例に限定されるものではなく、軽減割合14aの算出手法に応じて、種々の手法が採用されてもよい。
出力部15は、出力データを出力する。出力データの一例としては、例えば、修正済データ11eが挙げられる。また、出力データは、修正済データ11eに加えて、後述する機械学習モデル11f及び推論結果11gの一方又は双方を含んでもよい。
出力部15は、出力データの「出力」において、例えば、出力データを図示しない他のコンピュータに送信(提供)してもよいし、出力データをメモリ部11に蓄積して、データ修正装置1又は他のコンピュータから取得可能に管理してもよい。或いは、出力部15は、出力データの「出力」において、出力データを示す情報をデータ修正装置1等の出力装置に画面出力してもよく、その他の種々の態様により出力データを出力してよい。
上述のように、データ修正装置1は、機械学習部16を備えてもよく、さらに、推論処理部17を備えてもよい。
機械学習部16は、機械学習フェーズにおいて、非保護属性11d1の値が軽減割合14aに基づき修正された修正済データ11eに基づいて、機械学習モデル11fを訓練する機械学習処理を実行する。機械学習モデル11fは、機械学習済パラメータを含むNN(Neural Network)モデルであってよい。機械学習処理は、既知の種々の手法により実現されてよい。
推論処理部17は、推論フェーズにおいて、修正済データ11eに基づき訓練された機械学習モデル11fを用いて、推論処理を行なう。例えば、推論処理部17は、機械学習モデル11fに推論処理の対象データ(図示省略)を入力し、機械学習モデル11fからら出力された推論結果11gをメモリ部11に格納する。
〔1-3〕動作例
次に、一実施形態に係るデータ修正装置1の動作例を説明する。図8は、一実施形態に係るデータ修正装置1の動作例を説明するフローチャートである。
図8に例示するように、データ修正装置1の取得部12は、データ11a、保護属性11b及びパラメータ11cを取得し(ステップS1)、メモリ部11に格納する。
因果グラフ生成部13は、データ11a及び保護属性11bに基づき因果グラフ11dを生成し(ステップS2)、メモリ部11に格納する。
データ書換部14は、データ11a内の非保護属性11d1のうちの、未選択の非保護属性11d1を選択する(ステップS3)。
データ書換部14は、選択した非保護属性11d1が、保護属性11bと因果関係のある非保護属性11d1であるか否かを、因果グラフ11dに基づき判定する(ステップS4)。例えば、データ書換部14は、選択した非保護属性11d1と保護属性11bとの間に指標11d2が存在するか否か(或いは、所定の閾値以上であるか否か)を、因果グラフ11dに基づき判定してよい。
選択した非保護属性11d1が保護属性11bと因果関係のある非保護属性11d1であると判定された場合(ステップS4でYES)、処理がステップS5に移行する。一方、選択した非保護属性11d1が保護属性11bと因果関係のある非保護属性11d1ではないと判定された場合(ステップS4でNO)、処理がステップS6に移行する。
ステップS5では、データ書換部14は、選択した非保護属性11d1と保護属性11bとの間の因果関係に基づき、パラメータ11cを調整し、処理がステップS6に移行する。一例として、データ書換部14は、選択した非保護属性11d1と保護属性11bとの間の因果関係の強さを示す指標11d2とパラメータ11cとに基づき、軽減割合14aを算出してよい。
ステップS6では、データ書換部14は、データ11a内の非保護属性11d1に、未選択の非保護属性11d1が存在するか否かを判定する。未選択の非保護属性11d1が存在すると判定された場合(ステップS6でYES)、処理がステップS3に移行する。
未選択の非保護属性11d1が存在しないと判定した場合(ステップS6でNO)、データ書換部14は、ステップS5において算出した軽減割合14aに基づき、データ11aに含まれる各非保護属性11d1の値を修正するDIRを実行する(ステップS7)。
出力部15は、データ書換部14がDIRの実行により生成した修正済データ11eを出力し(ステップS8)、処理が終了する。
〔1-4〕一実施形態の効果
一実施形態に係るデータ修正装置1では、制御部18は、データ11aに含まれる複数の属性から、当該複数の属性のうち保護属性11bと因果関係を有する非保護属性11d1を特定する。また、制御部18は、当該保護属性11bの値ごとの非保護属性11d1の値の確率分布の差を小さくする条件に従って、データ11aの非保護属性11d1の値を修正する。
このように、データ修正装置1によれば、保護属性11bと因果関係を有する非保護属性11d1の値を修正することができる。これにより、保護属性11bと(例えば偶然の)相関はあるものの、因果関係を有しない非保護属性11d1の値が修正されることを抑制できる。
また、データ修正装置1によれば、非保護属性11d1の値を、条件に応じた適切な値に修正することができる。例えば、データ修正装置1は、保護属性11bと非保護属性11d1との間の相関関係を軽減させる際に、保護属性11bと当該非保護属性11d1との間の因果関係の強さに応じて、相関関係の軽減量を調整できる。これにより、複数の非保護属性11d1の値をパラメータ11cにより一律に修正する場合と比較して、修正済データ11eを用いて訓練された機械学習モデル11fによる推論結果の精度低下を抑制することができる。
以上のように、一実施形態に係るデータ修正装置1によれば、データ11aを修正する範囲及び度合いを適切に調整(一例として、最小限に設定)でき、差別等のバイアスを緩和した修正済データ11eを生成することができる。
図9は、一実施形態に係る修正済データ11eを用いて訓練された機械学習モデル11fによる推論結果の一例を示す図である。図9に示す横軸は公平性を示し、縦軸は精度を示す。網掛けで示す丸印は、機械学習モデル11fによる推論結果の一例をプロットしたものである。白抜きで示す丸印は、比較例として、通常のDIR(図5に示すパラメータ11cを利用したDIR)により生成されたデータを用いて訓練された機械学習モデルによる推論結果をプロットしたものである。
一実施形態に係る手法によれば、網掛けで示す丸印に示すように、白抜きで示す丸印と比較して、推論結果の公正性を担保しつつ、推論結果の精度の低下を抑制する(或いは、精度を向上させる)ことができる。
〔2〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
例えば、図2に示すデータ修正装置1が備える取得部12、因果グラフ生成部13、データ書換部14及び出力部15(並びに機械学習部16及び推論処理部17)は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。
また、図2に示すデータ修正装置1は、複数の装置がネットワークを介して互いに連携することにより、各処理機能を実現する構成(システム)であってもよい。一例として、メモリ部11はDBサーバ、取得部12及び出力部15はWebサーバ又はアプリケーションサーバ、因果グラフ生成部13、データ書換部14、機械学習部16及び推論処理部17はアプリケーションサーバ等であってもよい。この場合、DBサーバ、アプリケーションサーバ及びwebサーバが、ネットワークを介して互いに連携することにより、データ修正装置1としての各処理機能を実現してもよい。
また、一実施形態では、データ11aに含まれる複数の属性のうちの保護属性11bが1つ(性別“sex”)である場合を例に挙げたが、これに限定されるものではなく、データ11aには、複数の保護属性11bが含まれてもよい。
この場合、データ修正装置1は、保護属性11bごとに因果グラフ11dを生成してよい。
また、データ修正装置1は、保護属性11bごとに修正済データ11eを生成してもよい。或いは、データ修正装置1は、2以上の保護属性11bに係る軽減割合14aを非保護属性11d1ごとに合成(例えば乗算)することで、当該2以上の保護属性11bについて1セットの修正済データ11eを生成してもよい。
〔3〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、
前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、
処理をコンピュータに実行させる、データ修正プログラム。
(付記2)
前記条件は、前記第1の属性との因果関係が強い第2の属性ほど、値を減少させる度合いを大きくすることを含み、
前記第2の属性の値を修正する処理は、前記条件に従って、前記第2の属性の値を減少させる処理を含む、
付記1に記載のデータ修正プログラム。
(付記3)
前記訓練データと、前記修正の初期値とに基づき、前記第1の属性と前記第2の属性との因果関係の強さを示す指標を算出する、
処理を前記コンピュータに実行させ、
前記第2の属性の値を修正する処理は、前記初期値と前記指標とに基づく軽減割合に応じて、前記第2の属性の値を減少させる処理を含む、
付記2に記載のデータ修正プログラム。
(付記4)
前記訓練データに含まれる複数の属性のうち前記第1の属性と相関を有する第3の属性であって、前記第1の属性と因果関係を有しない前記第3の属性の値の修正を抑制する、
処理を前記コンピュータに実行させる、付記1~付記3のいずれか1項に記載のデータ修正プログラム。
(付記5)
前記第1の属性は、保護属性である、
付記1~付記4のいずれか1項に記載のデータ修正プログラム。
(付記6)
訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、
前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、
処理をコンピュータが実行する、データ修正方法。
(付記7)
前記条件は、前記第1の属性との因果関係が強い第2の属性ほど、値を減少させる度合いを大きくすることを含み、
前記第2の属性の値を修正する処理は、前記条件に従って、前記第2の属性の値を減少させる処理を含む、
付記6に記載のデータ修正方法。
(付記8)
前記訓練データと、前記修正の初期値とに基づき、前記第1の属性と前記第2の属性との因果関係の強さを示す指標を算出する、
処理を前記コンピュータが実行し、
前記第2の属性の値を修正する処理は、前記初期値と前記指標とに基づく軽減割合に応じて、前記第2の属性の値を減少させる処理を含む、
付記7に記載のデータ修正方法。
(付記9)
前記訓練データに含まれる複数の属性のうち前記第1の属性と相関を有する第3の属性であって、前記第1の属性と因果関係を有しない前記第3の属性の値の修正を抑制する、
処理を前記コンピュータが実行する、付記6~付記8のいずれか1項に記載のデータ修正方法。
(付記10)
前記第1の属性は、保護属性である、
付記6~付記9のいずれか1項に記載のデータ修正方法。
(付記11)
訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、
前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、
制御部を備える、情報処理装置。
(付記12)
前記条件は、前記第1の属性との因果関係が強い第2の属性ほど、値を減少させる度合いを大きくすることを含み、
前記制御部は、前記第2の属性の値を修正する処理において、前記条件に従って、前記第2の属性の値を減少させる、
付記11に記載の情報処理装置。
(付記13)
前記制御部は、
前記訓練データと、前記修正の初期値とに基づき、前記第1の属性と前記第2の属性との因果関係の強さを示す指標を算出し、
前記第2の属性の値を修正する処理において、前記初期値と前記指標とに基づく軽減割合に応じて、前記第2の属性の値を減少させる、
付記12に記載の情報処理装置。
(付記14)
前記制御部は、前記訓練データに含まれる複数の属性のうち前記第1の属性と相関を有する第3の属性であって、前記第1の属性と因果関係を有しない前記第3の属性の値の修正を抑制する、
付記11~付記13のいずれか1項に記載の情報処理装置。
(付記15)
前記第1の属性は、保護属性である、
付記11~付記14のいずれか1項に記載の情報処理装置。
1 データ修正装置
11 メモリ部
11a データ
11b 保護属性
11c パラメータ
11d 因果グラフ
11d1 非保護属性
11d2 指標
11e 修正済データ
11f 機械学習モデル
11g 推論結果
12 取得部
13 因果グラフ生成部
14 データ書換部
14a 軽減割合
15 出力部
16 機械学習部
17 推論処理部
18 制御部

Claims (7)

  1. 訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、
    前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、
    処理をコンピュータに実行させる、データ修正プログラム。
  2. 前記条件は、前記第1の属性との因果関係が強い第2の属性ほど、値を減少させる度合いを大きくすることを含み、
    前記第2の属性の値を修正する処理は、前記条件に従って、前記第2の属性の値を減少させる処理を含む、
    請求項1に記載のデータ修正プログラム。
  3. 前記訓練データと、前記修正の初期値とに基づき、前記第1の属性と前記第2の属性との因果関係の強さを示す指標を算出する、
    処理を前記コンピュータに実行させ、
    前記第2の属性の値を修正する処理は、前記初期値と前記指標とに基づく軽減割合に応じて、前記第2の属性の値を減少させる処理を含む、
    請求項2に記載のデータ修正プログラム。
  4. 前記訓練データに含まれる複数の属性のうち前記第1の属性と相関を有する第3の属性であって、前記第1の属性と因果関係を有しない前記第3の属性の値の修正を抑制する、
    処理を前記コンピュータに実行させる、請求項1~請求項3のいずれか1項に記載のデータ修正プログラム。
  5. 前記第1の属性は、保護属性である、
    請求項1~請求項4のいずれか1項に記載のデータ修正プログラム。
  6. 訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、
    前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、
    処理をコンピュータが実行する、データ修正方法。
  7. 訓練データに含まれる複数の属性から、前記複数の属性のうち第1の属性と因果関係を有する第2の属性を特定し、
    前記第1の属性の値ごとの前記第2の属性の値の確率分布の差を小さくする条件に従って、前記訓練データの前記第2の属性の値を修正する、
    制御部を備える、情報処理装置。
JP2022010087A 2022-01-26 2022-01-26 データ修正プログラム、データ修正方法、及び、情報処理装置 Pending JP2023108831A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022010087A JP2023108831A (ja) 2022-01-26 2022-01-26 データ修正プログラム、データ修正方法、及び、情報処理装置
EP22208762.9A EP4220500A1 (en) 2022-01-26 2022-11-22 Data modification program, data modification method, and information processing apparatus
US18/059,173 US20230237036A1 (en) 2022-01-26 2022-11-28 Data modification method and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022010087A JP2023108831A (ja) 2022-01-26 2022-01-26 データ修正プログラム、データ修正方法、及び、情報処理装置

Publications (1)

Publication Number Publication Date
JP2023108831A true JP2023108831A (ja) 2023-08-07

Family

ID=84360947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022010087A Pending JP2023108831A (ja) 2022-01-26 2022-01-26 データ修正プログラム、データ修正方法、及び、情報処理装置

Country Status (3)

Country Link
US (1) US20230237036A1 (ja)
EP (1) EP4220500A1 (ja)
JP (1) JP2023108831A (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7346110B2 (ja) 2019-07-08 2023-09-19 キヤノン株式会社 システム、方法、及びプログラム
US20220405640A1 (en) 2019-10-29 2022-12-22 Nippon Telegraph And Telephone Corporation Learning apparatus, classification apparatus, learning method, classification method and program
WO2021085188A1 (ja) 2019-10-29 2021-05-06 ソニー株式会社 バイアス調整装置、情報処理装置、情報処理方法及び情報処理プログラム

Also Published As

Publication number Publication date
EP4220500A1 (en) 2023-08-02
US20230237036A1 (en) 2023-07-27

Similar Documents

Publication Publication Date Title
JP2020520499A (ja) ブロックチェーンにおけるスナップショットを管理する方法、コンピュータ・プログラム、スナップショット・ノード、オーディタ・ノードおよびシステム
WO2018229877A1 (ja) 仮説推論装置、仮説推論方法、及びコンピュータ読み取り可能な記録媒体
JP6870508B2 (ja) 学習プログラム、学習方法及び学習装置
US20150371150A1 (en) Analysis device, analysis method, and program
US20230087837A1 (en) Training data generation via reinforcement learning fault-injection
JP2012208924A (ja) 適応的重み付けを用いた様々な文書間類似度計算方法に基づいた文書比較方法および文書比較システム
US20230162054A1 (en) Non-transitory computer-readable recording medium, machine training method, and information processing apparatus
US20210034983A1 (en) Learning device, learning method, and computer program product
JP6366033B2 (ja) プログラム中のif文の最適化方法
US10846082B2 (en) Systems and methods for determining and enforcing the optimal amount of source code comments
JP2013235512A (ja) 数理計画問題を解くための装置、プログラムおよび方法
US11487641B1 (en) Micro services recommendation system for identifying code areas at risk
JP2023108831A (ja) データ修正プログラム、データ修正方法、及び、情報処理装置
US20200117492A1 (en) Using a generative model to facilitate simulation of potential policies for an infrastructure as a service system
WO2022074796A1 (ja) 評価方法、評価装置、および評価プログラム
EP3413220A1 (en) Generating models for real time embedded systems that approximate non-embedded models while reducing complexity associated with the non-embedded models
US20210357728A1 (en) Synthetic data generation apparatus based on generative adversarial networks and learning method thereof
JP7283583B2 (ja) 制御方法、制御プログラム、及び情報処理装置
JP2022007311A (ja) 学習モデルからの情報漏洩リスクを評価するシステム
JP2022102319A (ja) ベクトル推定プログラム、ベクトル推定装置、及び、ベクトル推定方法
WO2023127111A1 (ja) 生成方法、生成プログラム、及び、情報処理装置
KR20210137612A (ko) 블록체인을 관리하기 위한 장치, 방법, 시스템 및 컴퓨터 판독가능 저장 매체
WO2022113355A1 (ja) システム監視装置、システム監視方法、及びコンピュータ読み取り可能な記録媒体
JP7127686B2 (ja) 仮説推論装置、仮説推論方法、及びプログラム
WO2024047735A1 (ja) 公平性評価プログラム、公平性評価方法、及び、情報処理装置