IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特許7395960予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置
<>
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図1
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図2
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図3
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図4
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図5
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図6
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図7
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図8
  • 特許-予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-04
(45)【発行日】2023-12-12
(54)【発明の名称】予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置
(51)【国際特許分類】
   G06N 99/00 20190101AFI20231205BHJP
【FI】
G06N99/00 180
【請求項の数】 6
(21)【出願番号】P 2019196929
(22)【出願日】2019-10-30
(65)【公開番号】P2021071823
(43)【公開日】2021-05-06
【審査請求日】2022-07-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】渡邉 俊一
(72)【発明者】
【氏名】大木 雄介
【審査官】渡辺 順哉
(56)【参考文献】
【文献】特開平08-278901(JP,A)
【文献】特開2019-125240(JP,A)
【文献】国際公開第2020/008919(WO,A1)
【文献】米国特許出願公開第2007/0185896(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
予測モデルに入力されたデータセットと、当該データセットに対する前記予測モデルの予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択し、
選択した前記複数のモデルそれぞれを葉とし、前記データセットに含まれるデータを根から前記葉に至る間で分類する論理それぞれを節とする決定木を作成し、
作成した前記決定木の葉に属するデータのばらつきに基づいて、前記決定木の剪定する枝を特定し、
特定した前記枝を剪定した決定木に対応するデータセットに基づいて前記決定木を再作成し、
再作成した前記決定木の各節に対応する論理それぞれを、前記予測モデルの説明結果として出力する、
処理をコンピュータが実行することを特徴とする予測モデル説明方法。
【請求項2】
前記特定する処理は、前記決定木の葉に属するデータにばらつきのある枝について剪定した場合のコストを計算し、計算した前記コストを最小とする枝を剪定する枝として特定する、
ことを特徴とする請求項1に記載の予測モデル説明方法。
【請求項3】
今回再作成した決定木について計算した前記コストと、前回再作成した決定木について計算した前記コストとの差が所定値未満となるまで前記特定する処理と、前記再作成する処理とを繰り返す、
ことを特徴とする請求項2に記載の予測モデル説明方法。
【請求項4】
前記データセットは、前記予測結果が正解として付与された前記予測モデルの生成に用いられるデータセットであり、
前記選択する処理は、前記データセットと、当該データセットに付与された前記予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択する、
ことを特徴とする請求項1乃至3のいずれか一項に記載の予測モデル説明方法。
【請求項5】
予測モデルに入力されたデータセットと、当該データセットに対する前記予測モデルの予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択し、
選択した前記複数のモデルそれぞれを葉とし、前記データセットに含まれるデータを根から前記葉に至る間で分類する論理それぞれを節とする決定木を作成し、
作成した前記決定木の葉に属するデータのばらつきに基づいて、前記決定木の剪定する枝を特定し、
特定した前記枝を剪定した決定木に対応するデータセットに基づいて前記決定木を再作成し、
再作成した前記決定木の各節に対応する論理それぞれを、前記予測モデルの説明結果として出力する、
処理をコンピュータに実行させることを特徴とする予測モデル説明プログラム。
【請求項6】
予測モデルに入力されたデータセットと、当該データセットに対する前記予測モデルの予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択する選択部と、
選択した前記複数のモデルそれぞれを葉とし、前記データセットに含まれるデータを根から前記葉に至る間で分類する論理それぞれを節とする決定木を作成し、作成した前記決定木の葉に属するデータのばらつきに基づいて、前記決定木の剪定する枝を特定し、特定した前記枝を剪定した決定木に対応するデータセットに基づいて前記決定木を再作成して前記予測モデルの説明木を生成する生成部と、
生成した前記説明木の各節に対応する論理それぞれを、前記予測モデルの説明結果として出力する出力部と、
を有することを特徴とする予測モデル説明装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置に関する。
【背景技術】
【0002】
従来、機械学習などにより生成した予測モデルについて、ブラックボックス化しがちである予測結果の解釈を容易とする技術がある。このような予測結果の解釈については、学習用のデータセットから線形分離可能なモデルの回帰係数の重みを特定し、特定した重みを用いて説明している技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2016-91306号公報
【文献】特開2005-222445号公報
【文献】特開2009-301557号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、予測モデルに対する十分な説明性能を得ることが困難であるという問題がある。例えば、線形分離可能なモデルは、学習用のデータセットの中の1つのデータに対して理由を示しており、他のデータについての理由は不明である。このため、複数の線形分離可能なモデルを用いて学習用のデータセット全体の説明を試みるように線形分離可能なモデルの数を単純に増やすと、計算量が増大する。一方で、線形分離可能なモデルの数を少なくすると、予測モデルに対する説明性が十分でなくなることとなる。
【0005】
1つの側面では、予測モデルを精度よく説明することを可能とする予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
1つの案では、予測モデル説明方法は、選択する処理と、作成する処理と、特定する処理と、再作成する処理と、出力する処理とをコンピュータが実行する。選択する処理は、予測モデルに入力されたデータセットと、当該データセットに対する予測モデルの予測結果とに基づいてデータセットに含まれるデータを線形分離可能な複数のモデルを選択する。作成する処理は、選択した複数のモデルそれぞれを葉とし、データセットに含まれるデータを根から葉に至る間で分類する論理それぞれを節とする決定木を作成する。特定する処理は、作成した決定木の葉に属するデータのばらつきに基づいて、決定木の剪定する枝を特定する。再作成する処理は、特定した枝を剪定した決定木に対応するデータセットに基づいて決定木を再作成する。出力する処理は、再作成した決定木の各節に対応する論理それぞれを、予測モデルの説明結果として出力する。
【発明の効果】
【0007】
本発明の1実施態様によれば、予測モデルを精度よく説明することができる。
【図面の簡単な説明】
【0008】
図1図1は、実施形態にかかる情報処理装置の機能構成例を示すブロック図である。
図2図2は、実施形態にかかる情報処理装置の動作例を示すフローチャートである。
図3図3は、解釈可能モデルの生成、選択を説明する説明図である。
図4図4は、決定木の生成を説明する説明図である。
図5図5は、決定木の枝刈りを説明する説明図である。
図6図6は、再度作成した決定木を説明する説明図である。
図7図7は、出力結果を例示する説明図である。
図8図8は、解釈可能モデル数の違いを説明する説明図である。
図9図9は、予測モデル説明プログラムを実行するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【0009】
以下、図面を参照して、実施形態にかかる予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する予測モデル説明方法、予測モデル説明プログラム、予測モデル説明装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【0010】
図1は、実施形態にかかる情報処理装置の機能構成例を示すブロック図である。図1に示すように、情報処理装置1は、機械学習などにより生成した予測モデル12へ入力するデータの入力データセット11と、入力データセット11をもとに予測モデル12が予測した予測結果13の入力を受け付ける。次いで、情報処理装置1は、入力データセット11および予測結果13に基づき、決定木手法を用いて予測モデル12が入力データセット11に含まれるデータからラベルの予測(分類)を行う論理を求め、予測モデル12の説明結果として出力する。すなわち、情報処理装置1は、予測モデル説明装置の一例である。情報処理装置1としては、例えばパーソナルコンピュータ等を適用できる。
【0011】
具体的には、情報処理装置1は、入力データセット11に含まれるデータから予測モデル12が予測したラベルなどの予測結果13をもとに、入力データセット11に含まれるデータを線形分離可能な複数のモデルを選択する。なお、線形分離可能なモデルとは、各要素(例えばデータの項目)を次元とする空間において、予測モデル12により予測されたラベルの集合(例えばClassA、ClassBのラベルに分類する場合のClassA、ClassBの集合)を分離する直線(n次元空間におけるn-1次元の超平面)である。一例として、線形分離可能なモデルは、ラベルの分離面に近い(分離面に沿った)重回帰モデルである。
【0012】
このような線形分離可能なモデルは、予測モデル12により予測されたラベルの集合を分離するために重要なモデルとみなせることから、予測モデル12を解釈可能なモデル(以下、解釈可能モデルとも呼ぶ)と言える。決定木手法では、入力データセット11に含まれるデータをもとに、選択した複数の線形分離可能なモデルを葉とし、入力データセット11に含まれるデータを根から葉に至る間で分類する論理それぞれを節(中間ノード)とする決定木を生成する。
【0013】
この決定木における各中間ノードの論理は、所定の項目における条件式として表現できる。決定木の生成では、所定の項目について、データを二分割するように条件式の閾値を定めることで、根から順に中間ノードを求めていく。例えば、情報処理装置1は、入力データセット11の中の1つの項目(次元)に着目し、入力データセット11の集合が二分割されるようにその項目の条件式における閾値を決定すること(中間ノードの決定)を根から順に繰り返すことで、決定木を生成する。このとき、情報処理装置1は、決定木の葉において、線形分離可能なモデルに対して直近するデータが可能な限り属するように、中間ノードを生成する。このように決定木手法を用いて生成した決定木において、予測モデル12の説明結果として用いる最終的な決定木のことは、説明木と称する場合がある。
【0014】
具体的には、情報処理装置1は、入力部10と、モデル生成部20と、説明木生成部30と、出力部40とを有する。
【0015】
入力部10は、入力データセット11および予測結果13の入力を受け付ける処理部である。入力部10は、受け付けた入力データセット11および予測結果13をモデル生成部20へ出力する。
【0016】
モデル生成部20は、入力データセット11および予測結果13に基づき、入力データセット11に含まれるデータについて、複数の解釈可能モデルを選択する処理部である。モデル生成部20は、解釈可能モデル作成部21と、モデル選択部22とを有する。
【0017】
解釈可能モデル作成部21は、入力データセット11をプロットした空間において予測モデル12の予測結果13に示されたラベルの集合を分離する直線(n次元空間場合はn-1次元の超平面)、すなわち線形分離可能なモデルを重回帰計算などにより複数生成する。モデル選択部22は、複数のモデルを組み合わせて分離面を近似するように、生成したモデルの中から分離面により近いものを複数選択する。
【0018】
説明木生成部30は、予測モデル12の説明結果として用いる説明木(決定木)を生成する処理部である。説明木生成部30は、決定木生成部31と、評価部32と、データセット修正部33とを有する。
【0019】
決定木生成部31は、モデル選択部22が選択した複数のモデルそれぞれを葉とし、入力データセット11に含まれるデータを根から葉に至る間で分類する論理それぞれを節とする決定木を生成する。
【0020】
具体的には、決定木生成部31は、モデル選択部22が選択した複数のモデルそれぞれを決定木の葉として定義する。次いで、決定木生成部31は、入力データセット11に含まれるデータの所定の項目について、データを二分割するように条件式の閾値を定めることで、データを分類する論理(中間ノード)を根から順に求める。このとき、決定木生成部31は、データをプロットした点とモデルとの距離を求め、決定木の葉において解釈可能モデルに直近するデータが可能な限り属するように、中間ノードにおける論理の内容を定める。
【0021】
評価部32は、決定木生成部31が作成した決定木の葉に属するデータのばらつきを評価する処理部である。決定木生成部31が生成した決定木では、各葉において、解釈可能モデルに直近するデータが可能な限り属するようにしているが、葉のモデルとは別のモデルを直近とするデータが含まれる場合がある。評価部32は、決定木の各葉に属するデータについて、葉のモデルに直近するデータの数に対する、葉のモデルとは別のモデルを直近とするデータ量を計量することで、データのばらつきを評価する。
【0022】
決定木において、データにばらつきのある箇所(葉)は、決定木手法によるモデル説明時に解釈が困難な箇所である。すなわち、データにばらつきのある葉に属するデータは、決定木手法において解釈困難なデータに対応する。本実施形態では、このような解釈困難なデータを入力データセット11より除いて決定木を再作成することで、より信頼度の高い決定木(解釈困難な箇所(葉)がない、もしくは少ない)を生成する。
【0023】
具体的には、評価部32は、データにばらつきのある葉への枝を剪定し、その葉に属するデータを削除する場合に決定木へ与える影響度(剪定した場合のコスト(修正コスト関数))を求める。そして、評価部32は、剪定した場合の修正コスト関数を最小とする枝を剪定する枝として特定する。
【0024】
例えば、評価部32は、minC=R(T)+αE(T)とする修正コスト関数により、コストを最小(minC)とする枝を特定する。ここで、Tは決定木であり、R(T)は決定木の信頼度を評価した値、E(T)は決定木における枝のデータ範囲を評価した値、αは正則化パラメータ(罰則値)である。
【0025】
データセット修正部33は、決定木生成部31が決定木を生成するデータセットを修正する処理部である。具体的には、データセット修正部33は、入力データセット11に含まれるデータより評価部32が剪定する枝として特定した枝の葉に属するデータを除外する。これにより、データセット修正部33は、評価部32が特定した枝を剪定した決定木に対応するデータセットを得る。決定木生成部31は、データセット修正部33が修正したデータセットを用いて決定木を再作成する。
【0026】
出力部40は、説明木生成部30が生成した決定木(説明木)の各節(中間ノード)に対応する論理それぞれを予測モデル12の説明結果として出力する処理部である。具体的には、出力部40は、説明木の根から葉に至る中間ノードの論理(所定の項目の条件式)を読み出し、ディスプレイやファイルなどに出力する。これにより、ユーザは、予測モデル12による予測結果13の解釈を容易に行うことができる。
【0027】
図2は、実施形態にかかる情報処理装置1の動作例を示すフローチャートである。図2に示すように、処理が開始されると、モデル生成部20は、解釈可能モデルを複数生成し、生成したモデルの中から分離面に近いものを複数選択する処理を行う(S1)。
【0028】
図3は、解釈可能モデルの生成、選択を説明する説明図である。図3に示すように、予測モデル12は、「Class A」のラベル13Aと、「Class B」のラベル13Bとの二値に分類するものとする。
【0029】
解釈可能モデル作成部21は、重会計計算などによりラベル13A、13Bの集合を分離する直線(解釈可能モデル)を複数求める。モデル選択部22は、求めた複数の解釈可能モデルを組み合わせ、分離面を最大限近似可能な解釈可能モデルを少数選択する(図示例ではM1~M6)。
【0030】
図2に戻り、S1に次いで、決定木生成部31は、モデル選択部22が選択した複数のモデル(解釈可能モデルM1~M6)それぞれを葉とし、入力データセット11に含まれるデータを根から葉に至る間で分類する論理それぞれを節とする決定木Tを生成する(S2)。
【0031】
図4は、決定木Tの生成を説明する説明図である。図4に示すように、決定木生成部31は、解釈可能モデルM1~M6それぞれを葉L1~L6とし、入力データセット11に含まれるデータをノードn0~n4で分類する決定木Tを生成する。なお、葉L1~L6におけるカッコ内の数値は、左から順に解釈可能モデルM1~M6に直近するデータ量を示している。このデータ量より、葉L2では、[5,10,5,0,0,0]であることから、データにばらつきが生じている。
【0032】
次いで、評価部32は、決定木Tについて、各葉に繋がる枝を剪定した枝刈り時の修正コスト関数(minC=R(T)+αE(T))を評価する(S3)。
【0033】
例えば、評価部32は、α=0.1、E(T)=1-(Dn+1/D)として各葉のminC=R(T)+αE(T)を計算する。なお、Dは、決定木Tにおける分類対象のデータセットを示し、Dn+1は、対処とする枝を剪定した場合の決定木Tn+1におけるデータセットを示す。
【0034】
一例として、図4に例示した葉L2に繋がる枝(Node #3_n)の剪定時のコスト(C)の計算は、次のとおりとなる。
C=(1-15/20)*(20/100)+0.1*(1-(80/100))=0.070
【0035】
同様に、葉L4に繋がる枝(Node #4_n)の剪定時のコスト(C)の計算は、次のとおりとなる。
C=(1-10/20)*(20/100)+0.1*(1-(80/100))=0.120
【0036】
次いで、評価部32は、決定木Tについて、修正コスト関数を最小(min)にする枝を特定する。次いで、データセット修正部33は、特定した枝を剪定した修正木をT’とし、データセット修正部33が特定した枝の葉に属するデータを入力データセット11より除外する。そして、データセット修正部33は、データセット修正部33が特定した枝の葉に属するデータを除外したデータセット、すなわちT’の分類対象であるデータセットをDとする(S4)。
【0037】
図5は、決定木Tの枝刈りを説明する説明図である。図5に示すように、ノードn3におけるn側の分類(葉L2)は、データにばらつきがあることから、信頼性に欠け、解釈が困難となっている。そこで、データセット修正部33は、修正コスト関数を最小(図示例では0.07)とする葉L2に繋がる枝を剪定し、修正木T’のデータセットDを得る。
【0038】
次いで、決定木生成部31は、データセットDで決定木Tn+1を生成する(S5)。次いで、評価部32は、決定木Tn+1について、S3と同様に、各葉に繋がる枝を剪定した枝刈り時の修正コスト関数を評価する(S6)。
【0039】
次いで、評価部32は、決定木Tn+1について、修正コスト関数を最小(min)にする枝を特定する。次いで、データセット修正部33は、特定した枝を剪定した修正木をTn+1’とし、データセット修正部33が特定した枝の葉に属するデータをデータセットDより除外する。そして、データセット修正部33は、データセット修正部33が特定した枝の葉に属するデータを除外したデータセット、すなわちTn+1’の分類対象であるデータセットをDn+1とする(S7)。
【0040】
図6は、再度作成した決定木Tn+1を説明する説明図である。図6に示すように、決定木生成部31は、解釈可能モデルM1~M6それぞれを葉L1~L6とし、データセットDに含まれるデータをノードn0~n4で分類する決定木Tn+1を生成する。このように再作成した決定木Tn+1では、葉L2におけるデータのばらつきが、[0,15,5,0,0,0]であることから、前回に比べて小さくなっている。
【0041】
なお、図6に例示した葉L2に繋がる枝(Node #3_n)の剪定時のコスト(C)の計算は、次のとおりとなる。
C=0+0.1*(1-(60/80))=0.025
【0042】
次いで、説明木生成部30は、剪定した枝における修正コスト関数の評価価値(C)について、前回との差が所定値(ε)未満であるか否かを判定する(S8)。この所定値(ε)については、任意の値を設定することができる。
【0043】
所定値(ε)未満であり、修正コスト関数の評価価値の変化が十分に小さい場合(S8:Yes)、説明木生成部30は、修正木T’のデータセットDで生成した決定木Tn+1を説明木として採用する(S9)。
【0044】
例えば、図5に例示した葉L2に繋がる枝を剪定する場合の修正コスト関数の値(前回の値)は0.070であり、図6に例示した葉L2に繋がる枝を剪定する場合の修正コスト関数の値(今回の値)は0.025である。よって、説明木生成部30は、0.070-0.025<εである場合、S5で生成した決定木Tn+1を説明木とする。
【0045】
所定値(ε)未満でない場合(S8:No)、説明木生成部30は、S7のデータセットDn+1での決定木の再作成を行うように、S5へ処理を戻す。これにより、剪定した場合のコストの変化が十分に小さくなるまで剪定・枝刈りを繰り返すこととなる。
【0046】
S9に次いで、出力部40は、説明木生成部30が生成した説明木の結果をディスプレイやファイルなどに出力する(S10)。
【0047】
図7は、出力結果を例示する説明図である。図7に示すように、出力部40による出力結果画面41には、説明木生成部30が生成した説明木の各節に対応する論理(例えば年次>10日,代休>5日,残業<5h)が列挙される。また、出力部40は、論理の内容が所定の条件(例えば代休数、残業数が所定値以上など)を満たすか否かの判定結果(代休取得多、残業多など)を出力結果画面41に出力してもよい。これにより、ユーザは、予測モデル12による予測結果13の解釈を容易に行うことができる。
【0048】
図8は、解釈可能モデル数の違いを説明する説明図である。図8のケースC1に示すように、解釈可能モデルMが多くなる場合は、解釈可能モデルMの数に応じて計算量が増大する。また、ケースC2に示すように、解釈可能モデルMが少ない場合は、予測結果13における学習空間の説明性が十分でなくなる。本実施形態では、ラベル13A、13Bの分離面に近い解釈可能モデルMを選択することで、適切な計算コストで十分な説明性を得ることができる。
【0049】
以上のように、情報処理装置1は、モデル生成部20と、説明木生成部30と、出力部40とを有する。モデル生成部20は、予測モデル12に入力された入力データセット11と、入力データセット11に対する予測モデル12の予測結果13とに基づいて入力データセット11に含まれるデータを線形分離可能な複数のモデルを選択する。説明木生成部30は、選択した複数のモデルそれぞれを葉とし、入力データセット11に含まれるデータを根から葉に至る間で分類する論理それぞれを節とする決定木を作成する。また、説明木生成部30は、作成した決定木の葉に属するデータのばらつきに基づいて、決定木の剪定する枝を特定する。また、説明木生成部30は、特定した枝を剪定した決定木に対応するデータセットに基づいて決定木を再作成する。出力部40は、再作成した決定木の各節に対応する論理それぞれを、予測モデル12の説明結果として出力する。
【0050】
入力データセット11を用いた決定木手法による予測モデル12の説明では、入力データセット11の中に解釈困難なデータが含まれる場合があり、このような解釈困難なデータが信頼度の高い決定木の作成に妨げとなることがある。情報処理装置1では、解釈困難なデータに対応する決定木の枝を剪定してデータの枝刈りを行った上で再作成した決定木の各節に対応する論理それぞれを予測モデル12の説明結果として出力するので、予測モデル12を精度よく説明することができる。
【0051】
また、説明木生成部30は、決定木の葉に属するデータにばらつきのある枝について剪定した場合のコストを計算し、計算したコストを最小とする枝を剪定する枝として特定する。これにより、情報処理装置1では、剪定した場合のコストが最小となるようにデータの枝刈りを行うことができ、剪定により解釈困難なデータ以外に与える影響をより小さくすることができる。
【0052】
また、説明木生成部30は、今回再作成した決定木について計算したコストと、前回再作成した決定木について計算したコストとの差が所定値未満となるまで、剪定する枝を特定し、特定した枝を剪定した決定木を再作成する処理を繰り返す。このように、情報処理装置1では、剪定した場合のコストの変化が十分に小さくなるまで剪定・枝刈りを繰り返すことで、決定木における解釈性を向上させることができる。
【0053】
また、入力データセット11は、予測結果が正解として付与された予測モデル12の生成に用いられるデータセットとしてもよい。モデル生成部20は、このデータセットと、データセットに付与された予測結果とに基づいてデータセットに含まれるデータを線形分離可能な複数のモデルを選択する。このように、情報処理装置1では、予測モデル12の生成に用いられるデータセット、すなわち教師データより線形分離可能な複数のモデルを求めてもよい。これにより、情報処理装置1は、教師データにより生成された予測モデル12に関する説明結果を得ることができる。
【0054】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、モデル生成部20と説明木生成部30とを統合してもよい。また、図示した各処理は、上記の順番に限定されるものでなく、処理内容を矛盾させない範囲において、同時に実施してもよく、順序を入れ替えて実施してもよい。
【0055】
さらに、各装置で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。
【0056】
ところで、上記の各実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の各実施形態と同様の機能を有する予測モデル説明プログラムを実行するコンピュータの一例を説明する。図9は、予測モデル説明プログラムを実行するコンピュータの一例を示すブロック図である。
【0057】
図9に示すように、コンピュータ100は、各種演算処理を実行するCPU101と、データ入力を受け付ける入力装置102と、モニタ103とを有する。また、コンピュータ100は、記憶媒体からプログラム等を読み取る媒体読取装置104と、各種装置と接続するためのインタフェース装置105と、他の情報処理装置等と有線または無線により接続するための通信装置106とを有する。また、コンピュータ100は、各種情報を一時記憶するRAM107と、ハードディスク装置108とを有する。また、各装置101~108は、バス109に接続される。
【0058】
ハードディスク装置108には、図1に示した入力部10、モデル生成部20、説明木生成部30および出力部40の各処理部と同様の機能を有する予測モデル説明プログラム108Aが記憶される。また、ハードディスク装置108には、入力部10、モデル生成部20、説明木生成部30および出力部40を実現するための各種データが記憶される。入力装置102は、例えば、コンピュータ100の利用者から操作情報等の各種情報の入力を受け付ける。モニタ103は、例えば、コンピュータ100の利用者に対して表示画面等の各種画面を表示する。インタフェース装置105は、例えば印刷装置等が接続される。通信装置106は、図示しないネットワークと接続され、他の情報処理装置と各種情報をやりとりする。
【0059】
CPU101は、ハードディスク装置108に記憶された予測モデル説明プログラム108Aを読み出して、RAM107に展開して実行することで、各種の処理を行う。また、これらのプログラムは、コンピュータ100を図1に示した入力部10、モデル生成部20、説明木生成部30および出力部40として機能させることができる。
【0060】
なお、上記の予測モデル説明プログラム108Aは、ハードディスク装置108に記憶されていなくてもよい。例えば、コンピュータ100が読み取り可能な記憶媒体に記憶された予測モデル説明プログラム108Aを、コンピュータ100が読み出して実行するようにしてもよい。コンピュータ100が読み取り可能な記憶媒体は、例えば、CD-ROMやDVD(Digital Versatile Disc)、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN等に接続された装置に予測モデル説明プログラム108Aを記憶させておき、コンピュータ100がこれらから予測モデル説明プログラム108Aを読み出して実行するようにしてもよい。
【0061】
以上の実施形態に関し、さらに以下の付記を開示する。
【0062】
(付記1)予測モデルに入力されたデータセットと、当該データセットに対する前記予測モデルの予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択し、
選択した前記複数のモデルそれぞれを葉とし、前記データセットに含まれるデータを根から前記葉に至る間で分類する論理それぞれを節とする決定木を作成し、
作成した前記決定木の葉に属するデータのばらつきに基づいて、前記決定木の剪定する枝を特定し、
特定した前記枝を剪定した決定木に対応するデータセットに基づいて前記決定木を再作成し、
再作成した前記決定木の各節に対応する論理それぞれを、前記予測モデルの説明結果として出力する、
処理をコンピュータが実行することを特徴とする予測モデル説明方法。
【0063】
(付記2)前記特定する処理は、前記決定木の葉に属するデータにばらつきのある枝について剪定した場合のコストを計算し、計算した前記コストを最小とする枝を剪定する枝として特定する、
ことを特徴とする付記1に記載の予測モデル説明方法。
【0064】
(付記3)今回再作成した決定木について計算した前記コストと、前回再作成した決定木について計算した前記コストとの差が所定値未満となるまで前記特定する処理と、前記再作成する処理とを繰り返す、
ことを特徴とする付記2に記載の予測モデル説明方法。
【0065】
(付記4)前記データセットは、前記予測結果が正解として付与された前記予測モデルの生成に用いられるデータセットであり、
前記選択する処理は、前記データセットと、当該データセットに付与された前記予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択する、
ことを特徴とする付記1乃至3のいずれか一に記載の予測モデル説明方法。
【0066】
(付記5)予測モデルに入力されたデータセットと、当該データセットに対する前記予測モデルの予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択し、
選択した前記複数のモデルそれぞれを葉とし、前記データセットに含まれるデータを根から前記葉に至る間で分類する論理それぞれを節とする決定木を作成し、
作成した前記決定木の葉に属するデータのばらつきに基づいて、決定木の剪定する枝を特定し、
特定した前記枝を剪定した決定木に対応するデータセットに基づいて前記決定木を再作成し、
再作成した前記決定木の各節に対応する論理それぞれを、前記予測モデルの説明結果として出力する、
処理をコンピュータに実行させることを特徴とする予測モデル説明プログラム。
【0067】
(付記6)前記特定する処理は、前記決定木の葉に属するデータにばらつきのある枝について剪定した場合のコストを計算し、計算した前記コストを最小とする枝を剪定する枝として特定する、
ことを特徴とする付記5に記載の予測モデル説明プログラム。
【0068】
(付記7)今回再作成した決定木について計算した前記コストと、前回再作成した決定木について計算した前記コストとの差が所定値未満となるまで前記特定する処理と、前記再作成する処理とを繰り返す、
ことを特徴とする付記6に記載の予測モデル説明プログラム。
【0069】
(付記8)前記データセットは、前記予測結果が正解として付与された前記予測モデルの生成に用いられるデータセットであり、
前記選択する処理は、前記データセットと、当該データセットに付与された前記予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択する、
ことを特徴とする付記5乃至7のいずれか一に記載の予測モデル説明プログラム。
【0070】
(付記9)予測モデルに入力されたデータセットと、当該データセットに対する前記予測モデルの予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択する選択部と、
選択した前記複数のモデルそれぞれを葉とし、前記データセットに含まれるデータを根から前記葉に至る間で分類する論理それぞれを節とする決定木を作成し、作成した前記決定木の葉に属するデータのばらつきに基づいて、決定木の剪定する枝を特定し、特定した前記枝を剪定した決定木に対応するデータセットに基づいて前記決定木を再作成して前記予測モデルの説明木を生成する生成部と、
生成した前記説明木の各節に対応する論理それぞれを、前記予測モデルの説明結果として出力する出力部と、
を有することを特徴とする予測モデル説明装置。
【0071】
(付記10)前記生成部は、前記決定木の葉に属するデータにばらつきのある枝について剪定した場合のコストを計算し、計算した前記コストを最小とする枝を剪定する枝として特定する、
ことを特徴とする付記9に記載の予測モデル説明装置。
【0072】
(付記11)前記生成部は、今回再作成した決定木について計算した前記コストと、前回再作成した決定木について計算した前記コストとの差が所定値未満となるまで特定する処理と、再作成する処理とを繰り返す、
ことを特徴とする付記10に記載の予測モデル説明装置。
【0073】
(付記12)前記データセットは、前記予測結果が正解として付与された前記予測モデルの生成に用いられるデータセットであり、
前記選択部は、前記データセットと、当該データセットに付与された前記予測結果とに基づいて前記データセットに含まれるデータを線形分離可能な複数のモデルを選択する、
ことを特徴とする付記9乃至11のいずれか一に記載の予測モデル説明装置。
【符号の説明】
【0074】
1…情報処理装置
10…入力部
11…入力データセット
12…予測モデル
13…予測結果
13A、13B…ラベル
20…モデル生成部
21…解釈可能モデル作成部
22…モデル選択部
30…説明木生成部
31…決定木生成部
32…評価部
33…データセット修正部
40…出力部
41…出力結果画面
100…コンピュータ
101…CPU
102…入力装置
103…モニタ
104…媒体読取装置
105…インタフェース装置
106…通信装置
107…RAM
108…ハードディスク装置
108A…予測モデル説明プログラム
109…バス
C1、C2…ケース
M、M1~M6…解釈可能モデル
n0~n4…ノード
L1~L6…葉
図1
図2
図3
図4
図5
図6
図7
図8
図9