以下、図面を参照して、本発明の幾つかの実施例を説明する。但し、それらの実施例は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
図面等において示す各構成の位置、大きさ、形状、及び範囲等は、発明の理解を容易にするため、実際の位置、大きさ、形状、及び範囲等を表していない場合がある。したがって、本発明では、図面等に開示された位置、大きさ、形状、及び範囲等に限定されない。
図1は、実施例1の計算機システムの構成例を示す図である。
計算機システムは、複数の計算機100-1、100-2、100-3、及び端末101から構成される。複数の計算機100-1、100-2、100-3、及び端末101は、ネットワーク102を介して互いに接続される。ネットワーク102は、例えば、WAN(Wide Area Network)及びLAN(Local Area Network)である。ネットワーク102の接続方式は有線及び無線のいずれでもよい。
以下の説明では、計算機100-1、100-2、100-3を区別しない場合、計算機100と記載する。
端末101は、ユーザが操作する計算機である。端末101は、例えば、パーソナルコンピュータ、スマートフォン、及びタブレット端末等である。端末101は、ユーザの操作に基づいて、AIによる対象の事象の予測に必要な入力データ等を入力する。入力データは複数の特徴量の値から構成される。本明細書の評価対象データ300(図3を参照)、中間データ1100(図11を参照)、及び生成用データ1500(図15を参照)は、入力データの一例である。
なお、端末101は、プロセッサ、メモリ、ネットワークインタフェース、入力装置、及び出力装置を備える。入力装置は、キーボード、マウス、及びタッチパネル等の装置であり、出力装置は、タッチパネル及びディスプレイ等の装置である。
計算機100-1は、対象の事象を予測するためのモデル(アルゴリズム)に基づいて、入力データに対する処理を実行し、予測値(予測結果)を出力する。出力される予測値は、例えば、入力データの分類結果及び任意のリスクの発生確率等である。計算機100-1は予測器110を備える。
予測器110は、モデルを定義するモデル情報に基づいて入力データに対する処理を実行し、予測値を出力する。モデル情報は、学習データを用いた機械学習等によって生成される。モデル情報には、ニューラルネットワーク又は決定木等に関する情報が格納される。
計算機100-2は、入力データに含まれる各特徴量の値について、特徴量の値の予測値への寄与の大きさ(影響の大きさ)を表す寄与値(第一評価値)を算出する。計算機100-2は、寄与値算出部120及び比較対象データ選択部121を備え、また、比較対象データ管理情報122を保持する。
比較対象データ管理情報122は、比較対象データ400(図4参照)を管理するための情報である。ここで、比較対象データ400は、評価対象データ300の各特徴量の寄与値を算出する場合に、評価対象データ300を特徴付けるための基準となるデータである。学習データを比較対象データ400として設定してもよいし、学習データの最頻値及び平均値等を用いて人為的に生成された比較対象データ400を設定してもよい。
なお、比較対象データ400を用いずに評価対象データ300に含まれる特徴量の寄与値を算出する場合、計算機100-2は、比較対象データ管理情報122を保持していなくてもよい。
寄与値算出部120は、評価対象データ300が比較対象データ400に比してこのような特徴量の値を持つことが予測値にどのくらい寄与しているかという値を、寄与値として算出する。
比較対象データ選択部121は、比較対象データ管理情報122から評価対象データ300に含まれる特徴量の寄与値の算出に用いる比較対象データ400を選択する。
計算機100-3は、評価対象データ300の予測値が出力された根拠を解釈するための情報を出力する。計算機100-3は、解釈要因選択部130及び結果出力部131を備え、また、解釈要因変換情報132を保持する。
解釈要因変換情報132は、評価対象データ300に含まれる特徴量の値及び寄与値により定まる、解釈要因を管理するための情報である。後述するように、計算機100-3は、ユーザに対して提示する情報として、解釈要因及びスコアから構成される情報を出力する。ここで、解釈要因は、対象又は対象の事象に則した具体的な要因である。本実施例では、ユーザが理解できる自然言語の情報が解釈要因として設定される。スコアは解釈要因の妥当性を評価するための値である。
解釈要因選択部130は、特徴量の値及び寄与値に基づいて解釈要因変換情報132を参照することによって該当する解釈要因を特定し、また、解釈要因のスコアを算出する。
結果出力部131は、評価対象データ300の予測値及び解釈要因に関する情報等をユーザに提示するための表示情報を生成し、当該表示情報を端末101に送信する。
なお、計算機100-1、100-2、100-3のいずれかは、端末101からの要求及びデータ等を受け付けるためのAPI(Application Programming Interface)を提供する操作受付部を有する。
ここで、計算機100のハードウェア構成について説明する。図2は、実施例1の計算機100のハードウェア構成の一例を示す図である。
計算機100は、プロセッサ201、主記憶装置202、副記憶装置203、ネットワークインタフェース204、入力装置205、及び出力装置206を有する。各ハードウェアは内部バスを介して互いに接続される。なお、計算機100は、副記憶装置203、入力装置205、及び出力装置206のいずれかを有していなくてもよい。
プロセッサ201は、主記憶装置202に格納されるプログラムを実行する。プロセッサ201がプログラムにしたがって処理を実行することによって、寄与値算出部120等、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、プロセッサ201が当該機能部を実現するプログラムを実行していることを示す。
主記憶装置202は、プロセッサ201が実行するプログラム及び当該プログラムが使用する情報を格納する。また、主記憶装置202は、プログラムが一時的に使用するワークエリアを含む。
計算機100-1の主記憶装置202には、予測器110を実現するためのプログラム及びモデル情報が格納される。計算機100-2の主記憶装置202には、寄与値算出部120及び比較対象データ選択部121を実現するためのプログラムが格納される。計算機100-3の主記憶装置202には解釈要因選択部130及び結果出力部131を実現するためのプログラムが格納される。また、いずれかの計算機100-1、100-2、100-3の主記憶装置202には、操作受付部を実現するためのプログラムが格納される。
副記憶装置203は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等、データを永続的に格納する。
計算機100-2の副記憶装置203は、比較対象データ管理情報122を格納する。計算機100-3の副記憶装置203は、解釈要因変換情報132を格納する。
なお、各計算機100が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。また、各機能部は、一つ計算機100に集約してもよい。
図3は、実施例1の評価対象データ及び出力データのデータ構造の一例を示す図である。
予測器110は、モデル情報に基づいて、ID301及び特徴量302から構成される評価対象データ300を処理し、予測結果として、ID311及び出力値312から構成される出力データ310を出力する。
図3に示す例では、評価対象データ300-1から出力データ310-1が出力され、評価対象データ300-2から出力データ310-2が出力され、評価対象データ300-Mから出力データ310-Mが出力される。
ID301は、評価対象データ300の識別情報を格納するフィールドである。実施例1のID301には番号が格納される。
特徴量302は、評価対象データ300に含まれる特徴量の値を格納するフィールド群である。特徴量は、例えば、性別、年齢、年収、及び預金額等である。性別に対応する特徴量のフィールドには「男」及び「女」のいずれかが格納され、年齢に対応する特徴量のフィールドには数値が格納される。
ID311は、出力データ310の識別情報を格納するフィールドである。なお、ID311にはID301と同一の値が設定されるものとする。出力値312は、予測器110が出力した予測値を格納するフィールドである。
図4は、実施例1の比較対象データ管理情報122のデータ構造の一例を示す図である。
比較対象データ管理情報122は、ID401及び特徴量402から構成されるエントリ400を格納する。一つのエントリ400が一つの比較対象データに対応する。以下の説明では、エントリ400を比較対象データ400とも記載する。
ID401は、比較対象データ400の識別情報を格納するフィールドである。実施例1のID401には番号が格納される。ID401に格納される番号は、ID301及びID311に格納される番号とは関連がない。
特徴量402は、比較対象データ400に含まれる特徴量の値を格納するフィールド群である。特徴量402に含まれる特徴量は、特徴量302に含まれる特徴量と同一である。
図5は、実施例1の解釈要因変換情報132のデータ構造の一例を示す図である。
解釈要因変換情報132は、入力データに含まれる特徴量の値及び寄与値の組を要素とする集合と、解釈要因とを対応づけた情報である。実施例1の解釈要因変換情報132は各特徴量の識別情報と対応づけた変換表500を格納する。
変換表500は、特徴量の値の領域を行成分とし、また、特徴量の寄与値の領域を列成分とする行列形式のデータである。変換表500は、一つの組を要素とする集合を検索キーとして、解釈要因を特定するための情報である。
変換表500の少なくとも一つのセルには、解釈要因データ510が格納される。なお、セルには二つ以上の解釈要因データ510が格納されてもよい。解釈要因データ510は、解釈要因511及び重み512から構成される。
解釈要因511は、自然言語の情報である。複数の変換表500に同一の解釈要因511を含む解釈要因データ510を設定することによって、各特徴量の値及び寄与値により定まる評価対象データ300が一般的にどのような意味を持つかという、解釈上の抽象化が可能となる。
重み512は、解釈要因に該当する妥当性の強さを表す値である。後述するように、重み512を用いて解釈要因のスコアが算出される。なお、全ての変換表500の全ての重み512を同一の設定することによって、重み(スコア)を考慮しない構成としてもよい。
なお、解釈要因変換情報132は、特徴量の値及び寄与値に基づいて、解釈要因を特定できる情報であればよい。例えば、変換表500の代わりに、複数の組を要素とする集合と、解釈要因とを対応づけたデータが格納されるテーブル形式のデータもよい。
なお、実施例1では、解釈要因変換情報132は予め設定されているものとする。解釈要因変換情報132の生成方法については実施例2で説明する。
図6は、実施例1の計算機システムの処理の流れを示す図である。図中の矢印はデータの流れを示す。図7は、実施例1の寄与値データ600のデータ構造の一例を示す図である。図8は、実施例1の解釈情報610のデータ構造の一例を示す図である。図9A及び図9Bは、実施例1の端末101に表示される入力画面900の一例を示す図である。
まず、計算機システムが実行する処理において扱われるデータ及び情報のデータ構造について説明する。
寄与値データ600は、ID701及び寄与値702から構成される。
ID701は、寄与値データ600の識別情報を格納するフィールドである。ID701には、評価対象データ300のID301と同一の値が設定される。
寄与値702は、評価対象データ300に含まれる複数の特徴量の各々の寄与値を格納するフィールド群である。後述するように、公知の算出方法を用いて寄与値が算出される。なお、本発明は寄与値の算出方法に限定されない。
解釈情報610は、解釈要因801及びスコア802から構成されるエントリを含む。一つのエントリは一つの解釈要因に対応する。
解釈要因801は、解釈要因変換情報132に基づいて特定された解釈要因を格納するフィールドである。スコア802は、スコアを格納するフィールドである。
次に、計算機システムの処理の流れについて説明する。まず、操作受付部は、端末101に入力画面900を提示する。ここで、入力画面900について説明する。
入力画面900は、操作受付部によって提示される画面であり、端末101に表示される。入力画面900は、評価対象データ設定欄901、比較対象データ設定欄902、解釈要因情報設定欄903、確認ボタン904、及び実行ボタン905を含む。
評価対象データ設定欄901は、評価対象データ300を指定するための欄である。比較対象データ設定欄902は、比較対象データ400を指定する欄である。解釈要因情報設定欄903は、解釈要因変換情報132を指定する欄である。
確認ボタン904は、解釈要因情報設定欄903で指定された解釈要因変換情報132に格納される変換表500を確認するための操作ボタンである。確認ボタン904が操作された場合、入力画面900には変換表確認欄906が表示される。変換表確認欄906は、特徴量選択欄907を含む。
特徴量選択欄907は、特徴量を選択するための欄である。変換表確認欄906には、特徴量選択欄907に設定された特徴量に対応する変換表500が表示される。
なお、変換表確認欄906には、解釈要因データ510が格納されるセルのみが表示されるようにしてもよい。なお、変換表確認欄906に、全ての変換表500を表示する構成でもよい。この場合、変換表確認欄906には特徴量選択欄907は含まれない。
実行ボタン905は、評価対象データ300の解釈情報610の生成を指示するためのボタンである。実行ボタン905が操作された場合、端末101は、ユーザによって指定された評価対象データ300、比較対象データ400、及び解釈要因変換情報132に関する情報を含む解釈情報出力要求を送信する。
なお、比較対象データ400が、過去に入力された評価対象データ300の平均値及び最頻値等の統計量から生成される場合、又は、ランダムに生成される場合、入力画面900は、比較対象データ設定欄902を含まなくてもよい。
以上が、入力画面900の説明である。図6の説明に戻る。
操作受付部は、解釈情報出力要求を受け付けた場合、計算機100-1に予測値の算出指示を出力し、計算機100-2に評価対象データ300の寄与値の算出指示を出力する。予測値の算出指示には評価対象データ300の指定情報が含まれ、寄与値の算出指示には比較対象データ400の指定情報が含まれる。また、操作受付部は、計算機100-3に解釈情報610の生成指示を出力する。解釈情報610の生成指示には評価対象データ300の指定情報が含まれる。
計算機100-1の予測器110は、モデル情報に基づいて評価対象データ300を処理することによって、出力データ310を生成する。予測器110は、出力データ310を計算機100-3に出力する。
計算機100-2の寄与値算出部120は、比較対象データ選択部121に比較対象データ400の選択指示を送信する。比較対象データ400の選択指示には、比較対象データ400の指定情報が含まれる。計算機100-2の比較対象データ選択部121は、比較対象データ400の選択指示を受信した場合、比較対象データ400の指定情報に基づいて、比較対象データ管理情報122から使用する比較対象データ400を取得する。また、比較対象データ選択部121は、寄与値算出部120に取得した比較対象データ400を出力する。
寄与値算出部120は、比較対象データ400を受信した場合、評価対象データ300及び比較対象データ400に基づいて、評価対象データ300の各特徴量の寄与値を算出し、寄与値データ600を生成する。寄与値算出部120は、寄与値データ600を計算機100-3に出力する。
計算機100-3の解釈要因選択部130は、出力データ310及び寄与値データ600と、解釈情報610の生成指示とを受信した場合、評価対象データ300及び寄与値データ600に基づいて解釈要因変換情報132に格納された変換表500を参照することによって、解釈情報610を生成する。解釈要因選択部130は、評価対象データ300、出力データ310、寄与値データ600、及び解釈情報610等を結果出力部131に出力する。
計算機100-3の結果出力部131は、評価対象データ300、出力データ310、寄与値データ600、及び解釈情報610等をユーザに提示するための表示情報620を生成する。結果出力部131は、当該表示情報620を操作受付部に出力する。操作受付部は、表示情報620を端末101に送信する。
図6では、予測値及び解釈情報610の提示が一連の処理で行われる。しかし、予測値の提示及び解釈情報610の提示を別々の処理として行ってもよい。この場合、入力画面900は、評価対象データ設定欄901、比較対象データ設定欄902、及び予測実行ボタンから構成される欄と、解釈要因情報設定欄903、確認ボタン904、及び解釈実行ボタンから構成される欄とに分ければよい。
次に、計算機システムにおいて実行される処理の詳細について説明する。まず、寄与値データ600の生成処理について説明する。
実施例1では、非特許文献1に記載の算出方法を用いて寄与値が算出される。ここで、寄与値の算出方法の概要について説明する。図10は、実施例1の寄与値算出部120が実行する寄与値データ生成処理の一例を説明するフローチャートである。図11A、図11B、図11C、図11D、及び図11Eは、実施例1の中間データ1100のデータ構造の一例を示す図である。
寄与値算出部120は、特徴量の部分集合を生成する(ステップS101)。なお、特徴量の部分集合には空集合も含まれる。
次に、寄与値算出部120は、特徴量の部分集合のループ処理を開始する(ステップS102)。
具体的には、寄与値算出部120は、未処理の部分集合の中から一つの部分集合を選択する。なお、寄与値算出部120は初期値として空集合を選択する。
次に、寄与値算出部120は、評価対象データ300、比較対象データ400、及び部分集合Kに基づいて中間データ1100を生成し、生成された中間データ1100を予測器110に出力する(ステップS103)。寄与値算出部120は、予測器110から出力データ310が出力されるまで待ち状態に移行する。
具体的には、寄与値算出部120は、部分集合に含まれる特徴量には評価対象データ300の特徴量の値を設定し、部分集合に含まれない特徴量には比較対象データ400の特徴量の値を設定することによって、中間データ1100を生成する。
例えば、評価対象データ300-1及びID401が「1」の比較対象データ400を用いた場合、図11A、図11B、図11C、図11D、及び図11Eに示すような中間データ1100が生成される。
空集合が選択された場合、図11Aに示す中間データ1100-1が生成される。「性別」を要素とする部分集合が選択された場合、図11Bに示す中間データ1100-2が生成される。「年齢」を要素とする部分集合が選択された場合、図11Cに示す中間データ1100-3が生成される。「性別」及び「年齢」を要素とする部分集合が選択された場合、図11Dに示す中間データ1100-4が生成される。全ての特徴量を要素とする部分集合が選択された場合、図11Eに示す中間データ1100-5が生成される。
予測器110は、中間データ1100を受け付けた場合、モデル情報に基づいて中間データ1100を処理することによって、出力データ310を生成する。予測器110は、出力データ310を寄与値算出部120に出力する。
寄与値算出部120は、予測器110から出力された出力データ310を中間出力データとして取得し(ステップS104)、部分集合、中間データ1100、及び中間出力データの組をワークエリアに格納する(ステップS105)。
次に、寄与値算出部120は、全ての部分集合について処理が完了したか否かを判定する(ステップS106)。
全ての部分集合について処理が完了していないと判定された場合、寄与値算出部120は、ステップS102に戻り、新たな部分集合を選択する。
全ての部分集合について処理が完了したと判定された場合、寄与値算出部120は、中間出力データを用いて評価対象データ300の各特徴量の寄与値を算出し、算出された寄与値から寄与値データ600を生成する(ステップS107)。その後、寄与値算出部120は寄与値データ生成処理を終了する。具体的には、以下のような処理が実行される。
(処理A1)寄与値算出部120は、評価対象データ300に含まれる特徴量の中からターゲット特徴量を選択する。
(処理A2)寄与値算出部120は、ターゲット特徴量を要素として含む部分集合に対応する中間出力データと、ターゲット特徴量を要素として含まない部分集合に対応する中間出力データとの差を、ターゲット特徴量以外の特徴量の集合の組合せについて任意の重みを乗算し、足し合わせる。
例えば、部分集合の要素数及び全特徴量の数の差を重みとして用いることができる。部分集合の要素数から1を減算した値の階乗と、全特徴量の数及び部分集合の要素数の差の階乗とを乗じた値を、全特徴量の数の階乗で除算した値を重みとして用いることができる。
図12は、実施例1の解釈要因選択部130が実行する解釈情報生成処理の一例を説明するフローチャートである。
解釈要因選択部130は、解釈要因変換情報132を参照し、解釈要因変換情報132に設定される解釈要因のリストを生成する(ステップS201)。
具体的には、解釈要因選択部130は、解釈要因及びスコアから構成されるエントリを含むリストを生成する。全ての解釈要因のスコアの初期値には「0」が設定される。
次に、解釈要因選択部130は、特徴量のループ処理を開始する(ステップS202)。
具体的には、解釈要因選択部130は、未処理の特徴量の中から一つの特徴量を、ターゲット特徴量として選択する。
次に、解釈要因選択部130は、解釈要因変換情報132からターゲット特徴量の変換表500を取得する(ステップS203)。
次に、解釈要因選択部130は、評価対象データ300に含まれるターゲット特徴量の値及び寄与値に基づいて、変換表500のセルを特定する(ステップS204)。
具体的には、解釈要因選択部130は、ターゲット特徴量の値が含まれる領域に対応する列を特定し、ターゲット特徴量の寄与値が含まれる領域に対応する行を特定する。
次に、解釈要因選択部130は、特定されたセルに解釈要因データ510が存在するか否かを判定する(ステップS205)。
特定されたセルに解釈要因データ510が存在しないと判定された場合、解釈要因選択部130はステップS207に進む。
特定されたセルに解釈要因データ510が存在すると判定された場合、解釈要因選択部130は、解釈要因データ510に対応する解釈要因のスコアを更新する(ステップS206)。その後、解釈要因選択部130はステップS207に進む。
具体的には、解釈要因選択部130は、リストを参照して、解釈要因データ510の解釈要因511に対応するエントリ検索し、検索されたエントリのスコアに重み512の値を加算する。
ステップS207では、解釈要因選択部130は、全ての特徴量について処理が完了したか否かを判定する(ステップS207)。
全ての特徴量について処理が完了していないと判定された場合、解釈要因選択部130は、ステップS202に戻り、新たな特徴量を選択する。
全ての特徴量について処理が完了したと判定された場合、解釈要因選択部130は、リストに基づいて解釈情報610を生成する(ステップS208)。その後、解釈要因選択部130は解釈情報生成処理を終了する。
例えば、解釈要因選択部130は、リストをそのまま解釈情報610として生成する。また、解釈要因選択部130は、スコアが閾値より大きいエントリのみを選択し、選択されたエントリから解釈情報610を生成してもよい。また、解釈要因選択部130は、スコアが大きい順に任意の数のエントリを選択し、選択されたエントリから解釈情報610を生成してもよい。
図13は、実施例1の端末101に表示される結果出力画面1300の一例を示す図である。
操作受付部は、表示情報620に基づいて、端末101に結果出力画面1300を提示する。結果出力画面1300は、予測値表示欄1301及び解釈要因表示欄1302を含む。
予測値表示欄1301は、評価対象データ300の予測値を表示する欄である。解釈要因表示欄1302は、解釈要因を表示する欄である。解釈要因表示欄1302には、解釈情報610の各エントリの解釈要因801に対応するスコア802が棒グラフとして表示される。
結果出力部131は、スコア802の値が閾値より大きいエントリを解釈要因表示欄1302に表示するための表示情報620を生成してもよい。また、結果出力部131は、スコア802の値が大きい順に任意の数のエントリを選択し、選択されたエントリを解釈要因表示欄1302に表示するための表示情報620を生成してもよい。
以上で説明したように、実施例1によれば、計算機システムは、評価対象データ300の予測値(予測結果)とともに、予測値の根拠を理解するために有用な情報として解釈要因をユーザに提示することができる。また、計算機システムは、解釈要因とともにスコアを提示できる。
評価対象データ300がどのような特性及び意味を持つかという解釈上の抽象化が行われることによって、ユーザは、一定の納得感を持って予測根拠を解釈できる。また、ユーザは、解釈要因毎の妥当性を定量的に評価することができる。
実施例2では、変換表500の生成方法について説明する。以下、実施例1との差異を中心に実施例2について説明する。
図14は、実施例2の計算機システムの構成例を示す図である。
実施例2の計算機システムの構成は実施例1と同一である。実施例2の計算機100のハードウェア構成は実施例1と同一である。実施例2の計算機100-1、100-3のソフトウェア構成は実施例1と同一である。実施例2では、計算機100-2のソフトウェア構成が異なる。
計算機100-2は、新たに、変換情報生成部1400を備え、また、中間計算データ管理情報1410を保持する。変換情報生成部1400は、候補解釈要因生成部1401及び変換表生成部1402を含む。
図15は、実施例2の計算機システムの処理の流れを示す図である。図中の矢印はデータの流れを示す。図16は、実施例2の生成用データ1500のデータ構造の一例を示す図である。図17は、実施例2の中間計算データ1510のデータ構造の一例を示す図である。図18は、実施例2の領域分割情報1520のデータ構造の一例を示す図である。図19は、実施例2の候補解釈要因情報1530のデータ構造の一例を示す図である。図20は、実施例2の候補変換表1540のデータ構造の一例を示す図である。図21は、実施例2の端末101に表示される設定画面2100の一例を示す図である。図22は、実施例2の端末101に表示される分割条件詳細設定画面2200の一例を示す図である。図23は、実施例2の端末101に表示される確認画面2300の一例を示す図である。
まず、計算機システムが実行する処理において扱われるデータ及び情報のデータ構造について説明する。
生成用データ1500は、評価対象データ300と同一のデータ構造であり、ID1601及び特徴量1602から構成される。ID1601は、生成用データ1500の識別情報を格納するフィールドである。実施例2のID1601には番号が格納される。特徴量1602は特徴量302と同一のフィールドである。
中間計算データ1510は、ID1701、参照ID1702、部分集合1703、特徴量1704、及び出力値1705から構成される。
ID1701は、中間計算データ1510の識別情報を格納するフィールドである。なお、ID1701には中間データ1100と同一の識別情報が設定されるものとする。本実施例では、生成用データ1500及び比較対象データ400に基づいて、中間データ1100が生成される。
参照ID1702は、中間データ1100の生成時に用いた生成用データ1500の識別情報を格納するフィールドである。参照ID1702にはID1601と同一の値が格納される。
部分集合1703は、中間データ1100の生成時に、生成用データ1500の特徴量の値が設定された特徴量の組合せを格納するフィールドである。部分集合1703が空集合の場合、中間データ1100は比較対象データ400に一致する。一方、部分集合1703に全ての特徴量が設定されている場合、中間データ1100は生成用データ1500に一致する。
特徴量1704は、中間データ1100を構成する特徴量の値を格納するフィールド群である。出力値1705は、中間データ1100を入力した予測器110が出力した値を格納するフィールドである。
領域分割情報1520は、特徴量1801、分割領域(値)1802、及び分割領域(寄与値)1803から構成されるエントリを格納する。一つのエントリが一つの特徴量に対応する。
特徴量1801は、特徴量の識別情報を格納するフィールドである。特徴量1801は、エントリの識別情報としても用いられる。
分割領域(値)1802は、特徴量の値の値域を分割することによって生成された領域に関する情報を格納するフィールドである。分割領域(値)1802には、領域の識別情報と、値の範囲又は値の種別とが対応づけられたデータが、領域の数だけ格納される。
分割領域(寄与値)1803は、特徴量の寄与値の値域を分割することによって生成された領域に関する情報を格納するフィールドである。分割領域(寄与値)1803には、領域の識別情報と、寄与値の範囲とが対応づけられたデータが、領域の数だけ格納される。
候補解釈要因情報1530は、ID1901、特徴量1902、領域(値)1903、領域(寄与値)1904、重み1905、第一データ数1906、第二データ数1907、交互作用値1908、及び解釈要因1909から構成されるエントリを格納する。一つのエントリが一つの候補解釈要因に対応する。
ID1901は、候補解釈要因の識別情報を格納するフィールドである。ID1901は解釈要因ID2001に対応する。
特徴量1902、領域(値)1903、及び領域(寄与値)1904は、候補解釈要因の分類基準を示す情報を格納するフィールドである。
特徴量1902は、候補解釈要因の分類基準となる特徴量の識別情報を格納するフィールドである。一つのエントリには一つ以上の特徴量が設定される。
領域(値)1903は、特徴量1902に対応する特徴量の値の領域を格納するフィールドである。領域(寄与値)1904は、特徴量1902に対応する特徴量の寄与値の領域を格納するフィールドである。
特徴量1902に対応する特徴量の値が領域(値)1903に含まれ、かつ、特徴量1902に対応する特徴量の寄与値が領域(寄与値)1904に含まれる生成用データ1500は、エントリに対応する候補解釈要因に該当するデータとして分類される。
重み1905は、候補解釈要因に該当する妥当性の強さを表す値である重みを格納するフィールドである。なお、重みを考慮しない場合、重み1905は含まれなくてもよい。
第一データ数1906は、エントリに設定された分類基準を満たす生成用データ1500の数、すなわち、エントリに対応する候補解釈要因に該当する生成用データ1500の数を格納するフィールドである。なお、第一データ数1906には、生成用データ1500の総数に対する、候補解釈要因に該当する生成用データ1500の数の比が格納されてもよい。
第二データ数1907は、エントリに対応する候補解釈要因にのみ該当する生成用データ1500の数を格納するフィールドである。なお、第二データ数1907には、生成用データ1500の総数に対する、候補解釈要因にのみ該当する生成用データ1500の数の比が格納されてもよい。
交互作用値1908は、候補解釈要因に該当する生成用データ1500における特徴量1902の集合の交互作用値を格納するフィールドである。交互作用値1908には、生成用データ1500の識別情報及び交互作用値の組が第一データ数1906の数だけ格納される。
ここで、交互作用値(第二評価値)は、生成用データ1500の出力値に対応する、特徴量の値の集合の寄与の大きさを表す値である。交互作用値は、非特許文献2及び非特許文献3に記載の方法を用いることによって算出できる。生成用データ1500が比較対象データ400に比してどのような特徴量の組の値を有しており、そのことが出力値にどのくらい寄与しているかという値が、交互作用値として算出される。
解釈要因1909は、候補解釈要因に対して設定された解釈要因(自然言語の情報)を格納するフィールドである。候補解釈要因情報1530が生成された時点では、各エントリの解釈要因1909は空欄である。解釈要因1909への値の設定はユーザによって行われる。
候補変換表1540は、変換表500と同一のデータ形式である。候補変換表1540の少なくとも一つのセルには、候補解釈要因データ2000が格納される。なお、セルには二つ以上の候補解釈要因データ2000が格納されてもよい。
候補解釈要因データ2000は、解釈要因ID2001及び重み2002から構成される。解釈要因ID2001は、候補解釈要因の識別情報である。重み2002は重み512と同一のものである。
次に、計算機システムの処理の流れについて説明する。まず、操作受付部は、端末101に設定画面2100を提示する。ここで、設定画面2100及び分割条件詳細設定画面2200について説明する。
設定画面2100は、操作受付部によって提示される画面であり、端末101に表示される。設定画面2100は、データセット設定欄2101、生成条件設定欄2102、採用条件設定欄2103、分割条件設定欄2104、及び実行ボタン2105を含む。
データセット設定欄2101は、処理に用いるデータを指定するための欄である。データセット設定欄2101に設定された値はデータセット情報として出力される。データセット設定欄2101は、生成用データ設定欄2111及び比較対象データ設定欄2112を含む。
生成用データ設定欄2111は、使用する生成用データ1500を指定する欄である。比較対象データ設定欄2112は、比較対象データ400を指定する欄である。
なお、比較対象データ400が、過去に入力された評価対象データ300の平均値及び最頻値等の統計量から生成される場合、又は、ランダムに生成される場合、比較対象データ設定欄1612は含まれなくてもよい。
生成条件設定欄2102は、候補解釈要因の生成に関する制約を定義する生成条件を設定するための欄である。生成条件設定欄2102に設定された値は生成条件情報として出力される。生成条件設定欄2102は、ラジオボタン2121及びチェック欄2122、2123、2124、2125、2126を含む。
ラジオボタン2121は、生成条件を設定しない場合に選択されるボタンである。この場合、チェック欄2122、2123、2124、2125、2126への入力は無効化される。
チェック欄2122は、候補解釈要因の数の上限値を設定する場合に操作する欄である。ユーザは、チェック欄2122が操作し、1以上の値を設定する。
チェック欄2123は、変換表500を生成する処理の計算時間の上限値を設定する場合に操作する欄である。ユーザは、チェック欄2123を操作し、0以上の値を設定する。なお、特定の処理に対して計算時間の上限値を設定できるように構成されてもよい。
チェック欄2124は、一つの解釈要因の分類基準として含める特徴量の数の上限値を設定する場合に操作する欄である。ユーザは、チェック欄2124を操作し、1以上の値を設定する。
チェック欄2125は、一つの解釈要因の分類基準として含める特徴量の数の下限値を設定する場合に操作する欄である。ユーザは、チェック欄2125を操作し、1以上の値を設定する。
チェック欄2126は、候補解釈要因に該当する生成用データ1500の数の下限値を設定する場合に操作する欄である。ユーザは、チェック欄2126を操作し、1以上の値を設定する。
採用条件設定欄2103は、交互作用値に基づく解釈要因の採用条件を設定するための欄である。採用条件設定欄2103に設定された値は採用条件情報として出力される。採用条件設定欄2103は、ラジオボタン2131、2132、2133を含む。
ラジオボタン2131は、予め設定された採用条件を使用する場合に操作するラジオボタンである。本実施例では、生成条件を満たす範囲内で交互作用値が大きい順に候補解釈要因が決定される。
ラジオボタン2132は、交互作用値及び予測値の比に基づく採用条件を使用する場合に操作するラジオボタンである。ユーザは、ラジオボタン2132を操作し、0以上の値を設定する。
ラジオボタン2133は、有意水準に基づく採用条件を使用する場合に操作するラジオボタンである。ユーザは、ラジオボタン2132を操作し、0より大きく1より小さい値を設定する。なお、ラジオボタン2133には、p値等の他の仮説検定の方法で用いられる値が設定されてもよい。
分割条件設定欄2104は、特徴量の値及び寄与値の値域の分割条件を設定するための欄である。分割条件設定欄2104に設定された値は分割条件情報として出力される。分割条件設定欄2104は、値分割条件欄2140、寄与値分割条件欄2150、及び詳細設定ボタン2160を含む。
値分割条件欄2140は、特徴量の値の値域の分割条件を設定するための欄であり、ラジオボタン2141、2142、2143を含む。
ラジオボタン2141は、値の値域を等分する場合に操作するラジオボタンである。ユーザは、ラジオボタン2141を操作し、1以上の値を分割数として設定する。
ラジオボタン2142は、中央値、平均値、及び最頻値等の統計量を基準に値の値域を2等分する場合に操作するラジオボタンである。ユーザは、ラジオボタン2142を操作し、基準となる統計量を設定する。なお、特徴量が量的変数又はカテゴリカル変数の違いによって、異なる値を設定できるようにしてもよい。
ラジオボタン2143は、領域に含まれる生成用データ1500の数を基準に値の値域を等分する場合に操作するラジオボタンである。ユーザは、ラジオボタン2143を操作し、1以上の値を分割数として設定する。
寄与値分割条件欄2150は、特徴量の寄与値の値域の分割条件を設定するための欄であり、ラジオボタン2151、2152、2153を含む。ラジオボタン2151、2152、2153は、ラジオボタン2141、2142、2143と同様のものである。
詳細設定ボタン2160は、特徴量毎に分割条件を設定する場合に操作するボタンである。ユーザが詳細設定ボタン2160を操作した場合、分割条件詳細設定画面2200が表示される。分割条件詳細設定画面2200の詳細は後述する。
なお、予め分割条件情報が設定されている場合、設定画面2100には分割条件設定欄2104が含まれていなくてよい。また、値分割条件欄2140は、いずれかのラジオボタン2141、2142、2143に対応する分割条件を自動的に設定するためのラジオボタンを設けてもよい。
実行ボタン2105は、変換表500の生成を指示するためのボタンである。実行ボタン2105が操作された場合、端末101は、データセット情報、生成条件情報、採用条件情報、及び分割条件情報を含む変換表500の生成要求を送信する。
なお、設定画面2100は、各欄の値を初期条件情報として計算機100-2に登録するための操作ボタンを含んでもよい。また、設定画面2100は、各欄の値を初期化するための操作ボタンを含んでもよい。
以上が、設定画面2100の説明である。次に、分割条件詳細設定画面2200について説明する。
分割条件詳細設定画面2200は、特徴量確認欄2201、分割条件設定欄2202、戻るボタン2203、量的変数反映ボタン2204、及び反映ボタン2205を含む。
特徴量確認欄2201は、生成用データ1500の特徴量に関する情報を表示する欄である。特徴量確認欄2201には、表示欄2210及び選択ボタン2211を含む。
表示欄2210は、任意の特徴量に関する生成用データ1500の分布に関する情報を表示する欄である。本実施例の表示欄2210には分布グラフ2220が表示される。
分布グラフ2220は、特徴量の値及び寄与値を軸とする生成用データ1500の分布を示す散布図又はヒートマップ等のグラフである。
値ヒストグラム2221は、特徴量の値の区分に分類される生成用データ1500の数を示すヒストグラムである。区分は任意の幅で設定される。寄与値ヒストグラム2222は、特徴量の寄与値の区分に属する生成用データ1500の数を示すヒストグラムである。区分は任意の幅で設定される。
ユーザは、表示欄2210の情報を参照することによって、特徴量の値及び寄与値の値域の分割条件を設定することができる。
選択ボタン2211は、表示欄2110に表示する特徴量を変更するための操作ボタンである。選択ボタン2211-1が操作された場合、一つ前の特徴量に関する情報が表示欄2210に表示され、選択ボタン2211-2が操作された場合、一つ後の特徴量に関する情報が表示欄2210に表示される。
なお、特徴量確認欄2201は、選択ボタン2211の代わりに、特徴量を直接指定する欄を含んでもよい。特徴量確認欄2201は、選択ボタン2211の代わりに、特徴量の値に基づいて前後関係にある特徴量を選択する欄を含んでもよい。また、特徴量確認欄2201に、全ての特徴量の情報を表示できる場合、特徴量確認欄2201には選択ボタン2211が含まれなくてもよい。
分割条件設定欄2202は、特徴量の値及び寄与値の値域の分割条件を設定するための欄である。分割条件設定欄2202は、値分割条件欄2230及び寄与値分割条件欄2240を含む。
値分割条件欄2230は、特徴量の値の値域の分割条件を設定するための欄であり、ラジオボタン2231、2232、2233を含む。ラジオボタン2231、2232、2233は、ラジオボタン2141、2142、2143と同一のものである。
寄与値分割条件欄2240は、特徴量の寄与値の値域の分割条件を設定するための欄であり、ラジオボタン2241、2242、2243を含む。ラジオボタン2241、2242、2243は、ラジオボタン2151、2152、2153と同一のものである。
戻るボタン2203は、分割条件詳細設定画面2200から設定画面2100へ表示を切り替えるための操作ボタンである。戻るボタン2203が操作された場合、分割条件詳細設定画面2200を用いて設定された値が分割条件情報として出力される。
量的変数反映ボタン2204は、分割条件設定欄2202に設定された値を、量的変数に対応する全ての特徴量の分割条件として設定するための操作ボタンである。なお、分割条件詳細設定画面2200は、量的変数反映ボタン2204の代わりに、カテゴリカル変数反映ボタンを含んでもよい。
反映ボタン2205は、分割条件設定欄2202に設定された値を、全ての特徴量の分割条件として設定するための操作ボタンである。
なお、分割条件詳細設定画面2200は、分割条件詳細設定画面2200を介して設定された分割条件情報を計算機100-2に保存するための操作ボタン、及び、分割条件情報の破棄又は初期化を指示するための操作ボタンを含んでもよい。図15の説明に戻る。
操作受付部は、変換表500の生成要求を受け付けた場合、計算機100-1に予測値の算出指示を出力し、また、計算機100-2に変換表500の生成要求を出力する。予測値の算出指示には、生成用データ1500の指定情報が含まれる。
計算機100-1の予測器110は、モデル情報に基づいて、生成用データ1500を処理することによって、出力データ310を生成する。予測器110は、出力データ310を計算機100-2に出力する。
計算機100-2の寄与値算出部120は、変換表500の生成要求を受信した場合、比較対象データ選択部121に比較対象データ400の選択指示を送信する。比較対象データ400の選択指示には、比較対象データ400の指定情報が含まれる。比較対象データ選択部121は、比較対象データ400の選択指示を受信した場合、比較対象データ400の指定情報に基づいて、比較対象データ管理情報122から使用する比較対象データ400を取得する。また、比較対象データ選択部121は、寄与値算出部120に取得した比較対象データ400を出力する。
寄与値算出部120は、比較対象データ400を受信した場合、生成用データ1500及び比較対象データ400に基づいて、寄与値データ600を生成する。一つの生成用データ1500に対して一つの寄与値データ600が生成される。なお、寄与値データ600の生成方法は実施例1と同一であるため説明を省略する。
また、寄与値算出部120は、生成用データ1500の寄与値データ600の算出時に生成された中間データ1100、生成用データ1500の識別情報、部分集合、及び中間出力データから構成される中間計算データ1510を中間計算データ管理情報1410に格納する。
寄与値算出部120は、生成用データ1500の出力データ310を受信した場合、変換情報生成部1400に、変換表500の生成指示を出力する。当該生成指示には、出力データ310、寄与値データ600、生成条件情報、採用条件情報、及び分割条件情報が含まれる。
変換情報生成部1400の候補解釈要因生成部1401は、出力データ310、寄与値データ600、中間計算データ1510、生成条件情報、採用条件情報、及び分割条件情報に基づいて、領域分割情報1520及び候補解釈要因情報1530を生成する。候補解釈要因生成部1401は、変換表生成部1402に選択指示を出力する。
変換情報生成部1400の変換表生成部1402は、選択指示受信した場合、領域分割情報1520及び候補解釈要因情報1530に基づいて候補変換表1540を生成し、候補変換表1540等を提示するための表示情報を生成し、当該表示情報を操作受付部に出力する。操作受付部は、表示情報を端末101に送信する。
端末101は、変換表生成部1402によって生成された表示情報に基づいて確認画面2300を表示する。ここで、確認画面2300について説明する。
確認画面2300は、操作受付部によって提示される画面であり、端末101に表示される。確認画面2300は、解釈要因情報表示欄2301、変換表表示欄2302、候補解釈要因表示欄2303、及び出力ボタン2304を含む。
解釈要因情報表示欄2301は、候補解釈要因の概要を表示する欄であり、生成用データ表示欄2311、候補解釈要因数2312、及び未分類データ数2313を含む。
生成用データ表示欄2311は、使用された生成用データ1500を格納するファイル等を表示する欄である。候補解釈要因数2312は、生成された候補解釈要因の数を表示する欄である。未分類データ数2313は、生成された候補解釈要因のいずれにも分類されない生成用データ1500の数を表示する欄である。
変換表表示欄2302は、候補変換表1540を表示する欄であり、特徴量選択欄2321及び候補変換表表示欄2322を含む。
特徴量選択欄2321は、特徴量を選択するための欄である。候補変換表表示欄2322は、特徴量選択欄2321に設定された特徴量に対応する候補変換表1540を表示する欄である。
変換表表示欄2302は、特徴量選択欄2321の代わりに、選択ボタン2211のような操作ボタンを含んでもよい。また、変換表表示欄2302に、全ての候補変換表1540を表示できる場合、特徴量確認欄2201には特徴量選択欄2321が含まれなくてもよい。
候補解釈要因表示欄2303は、候補解釈要因の詳細な情報を表示する欄であり、ID選択欄2331、第一該当データ数2332、第二該当データ数2333、分類条件確認欄2334、解釈要因設定欄2335、設定ボタン2336、及び破棄ボタン2337を含む。
ID選択欄2331は、候補解釈要因を選択するための欄である。後述するように、候補解釈要因にはID1901に対応する値が表示される。
第一該当データ数2332、第二該当データ数2333、及び分類条件確認欄2334には、ID選択欄2331に対応する候補解釈要因情報1530のエントリの情報が表示される。
第一該当データ数2332は、第一データ数1906に格納される値を表示する欄である。第二該当データ数2333は、第二データ数1907に格納される値を表示する欄である。
分類条件確認欄2334は、候補解釈要因の分類条件である特徴量の情報を表示する欄であり、特徴量情報2341、削除ボタン2342、及び修正ボタン2343を含む。
特徴量情報2341は、特徴量、値の領域、寄与値の領域、及び重みの四つのフィールドから構成されるエントリが列方向に並べられたテーブル形式のデータである。一つの列が、候補解釈要因情報1530のエントリに含まれる特徴量の行に対応する。
特徴量のフィールドにはラジオボタンが含まれる。また、重みのフィールドにはユーザが任意の値を設定できる。
候補解釈要因表示欄2303は、ID選択欄2331の代わりに、選択ボタン2211のような操作ボタンを含んでもよい。また、候補解釈要因表示欄2303に、全ての候補解釈要因の情報を表示できる場合、候補解釈要因表示欄2303にはID選択欄2331が含まれなくてもよい。
削除ボタン2342は、特徴量のフィールドのラジオボタンが操作されたエントリを削除するための操作ボタンである。削除ボタン2342が操作された場合、端末101は、ユーザによって指定された候補解釈要因の識別情報及び特徴量の識別情報を含む削除要求を送信する。この場合、変換表生成部1402は、候補解釈要因情報1530のエントリから選択された特徴量の行を削除する。
修正ボタン2343は、ユーザ入力を反映させるための操作ボタンである。修正ボタン2343が操作された場合、端末101は、ユーザによって指定された候補解釈要因の識別情報、特徴量の識別情報、及び重みの値を含む修正要求を送信する。この場合、変換表生成部1402は、修正内容に基づいて、候補解釈要因情報1530の重み1905の値を更新する。
解釈要因設定欄2335は、候補解釈要因に自然言語の情報である解釈要因を設定するための欄である。操作受付部は、インターネット検索及び文章検索等の既存の技術を用いて、解釈要因を設定するための補助情報として、予測器110の出力及び評価対象データ300に対するユーザの評価に影響を与える一般名称等を提示してもよい。
設定ボタン2336は、解釈要因設定欄2335に設定した解釈要因を設定するための操作ボタンである。設定ボタン2336が操作された場合、端末101は、ユーザによって指定された候補解釈要因の識別情報及び解釈要因を含む設定要求を送信する。この場合、変換表生成部1402は、候補解釈要因情報1530のエントリの解釈要因1909に、設定要求に含まれる解釈要因を設定する。
破棄ボタン2337は、候補解釈要因を破棄するための操作ボタンである。破棄ボタン2337が操作された場合、端末101は、ユーザによって指定された候補解釈要因の識別情報を含む破棄要求を送信する。この場合、変換表生成部1402は、候補解釈要因情報1530のエントリを削除する。また、変換表生成部1402は、エントリの削除に伴って、候補解釈要因数2312及び未分類データ数2313の値を更新する。
出力ボタン2304は、変換表500の生成を指示するための操作ボタンである。出力ボタン2304が操作された場合、端末101は、操作受付部に変換表出力要求を送信する。
以下の説明では、削除要求、修正要求、設定要求、及び破棄要求を区別しない場合、情報更新要求とも記載する。以上が、確認画面2300の説明である。図15の説明に戻る。
変換表生成部1402は、変換表出力要求を受け付けた場合、ユーザの入力に基づいて更新された領域分割情報1520及び候補解釈要因情報1530に基づいて変換表500を生成し、変換表500を解釈要因変換情報132に格納する。
次に、計算機システムにおいて実行される処理の詳細について説明する。まず、候補解釈要因生成部1401が実行する処理について説明する。
図24A及び図24Bは、実施例2の候補解釈要因生成部1401が実行する処理の一例を説明するフローチャートである。図25は、実施例2の交互作用値リスト2500のデータ構造の一例を示す図である。
候補解釈要因生成部1401は、分割条件情報、生成用データ1500、及び寄与値データ600に基づいて、領域分割情報1520を生成する(ステップS301)。具体的には、以下のような処理が実行される。
(処理B1)候補解釈要因生成部1401は、生成用データ1500に含まれる特徴量の中からターゲット特徴量を選択する。
(処理B2)候補解釈要因生成部1401は、生成用データ1500及び寄与値データ600に基づいて、ターゲット特徴量の値の値域及び寄与値の値域を特定する。
(処理B3)候補解釈要因生成部1401は、分割条件情報に基づいて、ターゲット特徴量の値の値域を複数の領域に分割し、また、ターゲット特徴量の寄与値の値域を複数の領域に分割する。例えば、以下のような処理が実行される。
ラジオボタン2141が操作されている場合、候補解釈要因生成部1401は、ターゲット特徴量の値の値域を指定された数に等分する。ラジオボタン2142が操作されている場合、候補解釈要因生成部1401は、ターゲット特徴量の値の統計量を算出し、当該統計量を基準に値の値域を2等分する。ラジオボタン2143が操作されている場合、候補解釈要因生成部1401は、各領域に含まれる生成用データ1500の数が同一又は差なくなるように、ターゲット特徴量の値の地域を指定された数だけ分割する。
(処理B4)候補解釈要因生成部1401は、領域分割情報1520にエントリを追加し、追加されたエントリの特徴量1801にターゲット特徴量の識別情報を設定する。また、候補解釈要因生成部1401は、追加されたエントリの分割領域(値)1802及び分割領域(寄与値)1803のそれぞれに分割結果を設定する。
(処理B5)全ての特徴量について処理が完了していない場合、候補解釈要因生成部1401は(処理B1)に戻る。全ての特徴量について処理が完了した場合、候補解釈要因生成部1401はステップS301の処理を終了する。
なお、候補解釈要因生成部1401は、必要に応じて中間計算データ1510の出力値1705等の値に基づいて、領域の分割を行ってもよい。以上がステップS301の処理の説明である。
次に、候補解釈要因生成部1401は、生成用データ1500のループ処理を開始する(ステップS302)。
具体的には、候補解釈要因生成部1401は、未処理の生成用データ1500の中から一つの生成用データ1500を、ターゲット生成用データ1500として選択する。
次に、候補解釈要因生成部1401は、特徴量の数のループ処理を開始する(ステップS303)。
具体的には、候補解釈要因生成部1401は、チェック欄2125に設定された値を変数nに初期値として設定する。また、候補解釈要因生成部1401は、交互作用値リスト2500を初期化する。なお、チェック欄2125が操作されていない場合、予め設定された値、例えば、「2」が設定される。
交互作用値リスト2500は、ID2501、中間計算データID2502、部分集合2503、及び交互作用値2504から構成されるエントリを含む。一つのエントリが交互作用値データに対応する。
ID2501は、交互作用値データの識別情報を格納するフィールドである。中間計算データID2502は、交互作用値を算出する場合に用いた中間計算データ1510の識別情報を格納するフィールドである。中間計算データID2502には、ID1701と同一の識別情報が格納される。部分集合2503は、交互作用値の算出対象となる特徴量の部分集合を格納するフィールドである。交互作用値2504は、交互作用値を格納するフィールドである。
ステップS303では、交互作用値リスト2500の全てのエントリが削除される。以上がステップS303の処理の説明である。
次に、候補解釈要因生成部1401は、n個の特徴量から構成される部分集合の交互作用値を算出する(ステップS304)。具体的には、以下のような処理が実行される。
(処理C1)候補解釈要因生成部1401は、n個の特徴量から構成される部分集合を生成する。
(処理C2)候補解釈要因生成部1401は、生成された部分集合の中からターゲット部分集合を選択する。
(処理C3)候補解釈要因生成部1401は、ターゲット部分集合の交互作用値を算出する。交互作用値の算出方法は、非特許文献2及び非特許文献3に記載されているため、詳細な説明は省略するが、以下のようにして算出される。
候補解釈要因生成部1401は、部分集合1703が、ターゲット部分集合の補集合にかかる部分集合Mとターゲット部分集合の部分集合Lとの和集合に対応する中間計算データ1510を検索する。候補解釈要因生成部1401は、検索された中間計算データ1510の出力値1705の重みづけ平均を、交互作用値として算出する。
重みは以下のように算出されたものを用いることができる。(1)生成用データに含まれる特徴量の総数Nから、部分集合Mの要素数及びターゲット部分集合の要素数の合計値を減算した値の階乗と、部分集合Mの要素数の階乗とを乗算する。(2)Nからターゲット部分集合の要素数を減算した値に1を加算した値の階乗で、(1)の値を除算する。(3)部分集合Lの補集合の要素数が奇数の場合、(2)の値に-1を乗算する。
(処理C4)候補解釈要因生成部1401は、交互作用値リスト2500にエントリを追加し、追加されたエントリのID2501に交互作用値データの識別情報を設定する。候補解釈要因生成部1401は、追加されたエントリの中間計算データID2502に中間計算データ1510の識別情報を設定する。候補解釈要因生成部1401は、追加されたエントリの部分集合2503にターゲット部分集合を設定し、交互作用値2504に算出された交互作用値を設定する。
(処理C5)全ての部分集合について処理が完了していない場合、候補解釈要因生成部1401は(処理C2)に戻る。全ての部分集合について処理が完了した場合、候補解釈要因生成部1401はステップS304の処理を終了する。以上がステップS304の処理の説明である。
次に、候補解釈要因生成部1401は、採用条件を満たす部分集合が存在するか否かを判定する(ステップS305)。本実施例では、交互作用値に基づいてステップS305の判定が行われる。例えば、本実施例では以下のような判定が行われる。
ラジオボタン2131が操作されている場合、候補解釈要因生成部1401は採用条件を満たすと判定する。この場合、交互作用値2504の値が大きいものを所定の数だけ選択する。
ラジオボタン2132が操作されている場合、候補解釈要因生成部1401は、交互作用値2504及びターゲット生成用データ1500の予測値の比を算出する。比が閾値より大きいエントリが存在する場合、候補解釈要因生成部1401は採用条件を満たす部分集合が存在すると判定する。
ラジオボタン2133が操作されている場合には以下のような判定を行う。ある部分集合に対応する交互作用値2504が、当該部分集合と同じ要素数の他の部分集合に対応する交互作用値2504に比して、交互作用値2504が特定値を有意水準として有意に大きい場合、候補解釈要因生成部1401は採用条件を満たす部分集合が存在すると判定する。
採用条件を満たす部分集合が存在しないと判定された場合、候補解釈要因生成部1401はステップS309に進む。
採用条件を満たす部分集合が存在すると判定された場合、候補解釈要因生成部1401は、当該部分集合に対応する候補解釈要因が候補解釈要因情報1530に登録されているか否かを判定する(ステップS306)。
具体的には、候補解釈要因生成部1401は、領域(値)1903及び領域(寄与値)1904を参照し、採用条件を満たす部分集合を構成する特徴量の値が属する領域の組合せ及び採用条件を満たす部分集合を構成する特徴量の寄与値が属する領域の組合せと一致するエントリが存在するか否かを判定する。前述の条件を満たすエントリが存在する場合、候補解釈要因生成部1401は、採用条件を満たす部分集合に対応する候補解釈要因が候補解釈要因情報1530に登録されていると判定する。
採用条件を満たす部分集合に対応する候補解釈要因が候補解釈要因情報1530に登録されていると判定された場合、候補解釈要因生成部1401は、当該候補解釈要因に対応するエントリを更新し(ステップS307)、その後、ステップS309に進む。
具体的には、候補解釈要因生成部1401は、候補解釈要因に対応するエントリの交互作用値1908に、ステップS302で選択されたターゲット生成用データ1500の識別情報及び交互作用値の組を追加する。また、候補解釈要因生成部1401は、当該エントリの第一データ数1906に1を加算する。
採用条件を満たす部分集合に対応する候補解釈要因が候補解釈要因情報1530に登録されていないと判定された場合、候補解釈要因生成部1401は、当該候補解釈要因に対応するエントリを候補解釈要因情報1530に追加し(ステップS308)、その後、ステップS309に進む。具体的には、以下のような処理が実行される。
(処理D1)候補解釈要因生成部1401は、候補解釈要因情報1530にエントリを追加する。候補解釈要因生成部1401は、追加されたエントリのID1901に識別情報を設定し、第一データ数1906に「1」を設定し、また、第二データ数1907に「0」を設定する。また、候補解釈要因生成部1401は、追加されたエントリの交互作用値1908に、ステップS302で選択されたターゲット生成用データ1500の識別情報及び交互作用値の組を設定する。
(処理D2)候補解釈要因生成部1401は、追加されたエントリの特徴量1902、領域(値)1903、領域(寄与値)1904、及び重み1905に、ターゲット部分集合の要素数と同数の行を生成する。また、候補解釈要因生成部1401は、追加されたエントリの特徴量1902に、ターゲット部分集合の要素である特徴量の識別情報を設定する。
(処理D3)候補解釈要因生成部1401は、ターゲット部分集合を構成する特徴量の中からターゲット特徴量を選択する。また、候補解釈要因生成部1401は、領域分割情報1520を参照し、特徴量1801がターゲット特徴量に対応するエントリを検索する。
(処理D4)候補解釈要因生成部1401は、検索されたエントリの分割領域(値)1802を参照し、ステップS302で選択されたターゲット生成用データ1500のターゲット特徴量の値が含まれる領域を特定する。候補解釈要因生成部1401は、追加されたエントリのターゲット特徴量に対応する行の領域(値)1903に特定された領域を設定する。
(処理D5)候補解釈要因生成部1401は、検索されたエントリの分割領域(寄与値)1803を参照し、ステップS302で選択されたターゲット生成用データ1500のターゲット特徴量の寄与値が含まれる領域を特定する。候補解釈要因生成部1401は、追加されたエントリのターゲット特徴量に対応する行の領域(寄与値)1904に特定された領域を設定する。
(処理D6)ターゲット部分集合を構成する全ての特徴量について処理が完了していない場合、候補解釈要因生成部1401は(処理D3)に戻る。ターゲット部分集合を構成する全ての特徴量について処理が完了した場合、候補解釈要因生成部1401はステップS308の処理を終了する。以上がステップS308の処理の説明である。
ステップS309では、候補解釈要因生成部1401は終了条件を満たすか否かを判定する(ステップS309)。例えば、本実施例では以下のような判定が行われる。
チェック欄2122が操作されている場合、候補解釈要因生成部1401は、候補解釈要因情報1530のエントリの数(候補解釈要因の数)が上限値と一致するか否かを判定する。候補解釈要因情報1530のエントリの数が上限値と一致する場合、候補解釈要因生成部1401は終了条件を満たすと判定する。
チェック欄2123が操作されている場合、候補解釈要因生成部1401は、計算時間が閾値以上であるか否かを判定する。計算時間が閾値以上である場合、候補解釈要因生成部1401は終了条件を満たすと判定する。
終了条件を満たすと判定された場合、候補解釈要因生成部1401はループ処理を中断し、ステップS312に進む。このとき、ターゲット生成用データ1500から生成された候補解釈要因が存在しない場合、候補解釈要因生成部1401は、ターゲット生成用データ1500の識別情報と未分類のフラグとの組をワークエリアに保存する。
終了条件を満たさないと判定された場合、候補解釈要因生成部1401は、特徴量の数が上限値に一致するか否かを判定する(ステップS310)。チェック欄2124が操作されている場合、上限値はチェック欄2124に設定された値となる。チェック欄2124が操作されていない場合、上限値は生成用データ1500の特徴量の総数となる。
特徴量の数が上限値に一致しないと判定された場合、候補解釈要因生成部1401は、ステップS303に戻り、変数nの値に1を加算する。
特徴量の数が上限値に一致すると判定された場合、候補解釈要因生成部1401は、全ての生成用データ1500について処理が完了したか否かを判定する(ステップS311)。このとき、ターゲット生成用データ1500から生成された候補解釈要因が存在しない場合、候補解釈要因生成部1401は、ターゲット生成用データ1500の識別情報と未分類のフラグとの組をワークエリアに保存する。
全ての生成用データ1500について処理が完了していないと判定された場合、候補解釈要因生成部1401は、ステップS302に戻り、新たな生成用データ1500を選択する。
全ての生成用データ1500について処理が完了したと判定された場合、候補解釈要因生成部1401は各候補解釈要因の重みを設定する(ステップS312)。例えば、以下のような設定方法が考えられる。
(設定方法1)候補解釈要因生成部1401は、候補解釈要因の重みを全て「1」に設定する。この場合、各エントリの重み1905の行には「1」が設定される。
(設定方法2)候補解釈要因生成部1401は、ユーザの入力に基づいて、候補解釈要因の重みを設定する。この場合、各エントリの重み1905の行にはユーザが入力した値が設定される。
(設定方法3)候補解釈要因生成部1401は、候補解釈要因に対応するエントリの交互作用値1908に格納される組の交互作用値に基づいて候補解釈要因の重みを算出し、当該重みを設定する。この場合、各エントリの重み1905の行には、各エントリの交互作用値1908に基づいて算出された値が設定される。
なお、本発明は重みの設定方法に限定されない。
次に、候補解釈要因生成部1401は、各候補解釈要因の第二データ数を算出する(ステップS313)。その後、候補解釈要因生成部1401は一連の処理を終了する。具体的には、以下のような処理が実行される。
(処理E1)候補解釈要因生成部1401は、生成用データ1500のループ処理において処理されていない生成用データ1500が存在するか否かを判定する。
(処理E2)生成用データ1500のループ処理において処理されていない生成用データ1500が存在する場合、候補解釈要因生成部1401は、未処理の生成用データ1500の各特徴量の値及び寄与値に基づいて、該当する候補解釈要因を特定する。候補解釈要因生成部1401は、生成用データ1500の識別情報と特定された候補解釈要因の識別情報(ID1901)との組をワークエリアに保存する。また、候補解釈要因生成部1401は、候補解釈要因情報1530の各エントリの第一データ数1906を更新する。
なお、該当する候補解釈要因が存在しない場合、候補解釈要因生成部1401は、生成用データ1500の識別情報と未分類のフラグとの組をワークエリアに保存する。
(処理E3)生成用データ1500のループ処理において処理されていない生成用データ1500が存在しない場合、又は(処理E2)の処理が実行された後、候補解釈要因生成部1401は、候補解釈要因情報1530を参照し、各生成用データ1500の解釈要因を特定する。候補解釈要因生成部1401は、生成用データ1500の識別情報と特定された候補解釈要因の識別情報(ID1901)との組をワークエリアに保存する。
(処理E4)候補解釈要因生成部1401は、未分類のフラグを含む組の数を、未分類データ数としてワークエリアに保存する。
(処理E5)候補解釈要因生成部1401は、候補解釈要因を一つだけ含む組を特定する。候補解釈要因生成部1401は、特定された組を、候補解釈要因の種別毎にグループを生成する。候補解釈要因生成部1401は、候補解釈要因情報1530を参照し、各グループに対応するエントリの第二データ数1907に、グループに含まれる組の数を設定する。
なお、候補解釈要因生成部1401は、チェック欄2126が操作されている場合、(処理E3)が実行される前に、第一データ数1906の値が閾値より小さいエントリを削除し、再度、(処理E2)の処理を実行する。
なお、候補解釈要因生成部1401は、必要に応じて中間計算データ1510の出力値1705等の値に基づいて、第二データ数1907を算出してもよい。以上がステップS313の処理の説明である。
図26は、実施例2の変換表生成部1402が実行する処理を説明する処理である。
変換表生成部1402は、領域分割情報1520及び候補解釈要因情報1530に基づいて候補変換表1540を生成する(ステップS401)。具体的には以下のような処理が実行される。
(処理F1)変換表生成部1402は、領域分割情報1520に基づいて、各特徴量について、特徴量の値の領域を列成分とし、特徴量の寄与値の領域を行成分とする行列形式の候補変換表1540を生成する。この時点では、いずれの候補変換表1540にも候補解釈要因データ2000は存在しない。
(処理F2)変換表生成部1402は、候補解釈要因情報1530からターゲットエントリを選択する。
(処理F3)変換表生成部1402は、ターゲットエントリに含まれる特徴量の中からターゲット特徴量を選択する。
(処理F4)変換表生成部1402は、ターゲット特徴量に対応する行の領域(値)1903及び領域(寄与値)1904に基づいて、ターゲット特徴量に対応する候補変換表1540のセルを特定する。変換表生成部1402は、特定されたセルに候補解釈要因の識別情報及びターゲット特徴量に対応する行の重み1905の値から構成される候補解釈要因データ2000を設定する。
(処理F5)ターゲットエントリに含まれる全ての特徴量について処理が完了していない場合、変換表生成部1402は(処理F3)に戻る。ターゲットエントリに含まれる全ての特徴量について処理が完了している場合、変換表生成部1402は、候補解釈要因情報1530の全てのエントリについて処理が完了したか否かを判定する。
(処理F6)候補解釈要因情報1530の全てのエントリについて処理が完了していない場合、変換表生成部1402は(処理F2)に戻る。候補解釈要因情報1530の全てのエントリについて処理が完了している場合、変換表生成部1402はステップS401の処理を終了する。以上がステップS401の処理の説明である。
次に、変換表生成部1402は、候補変換表1540及び候補解釈要因情報1530等を表示するための表示情報を生成し、当該表示情報を操作受付部に出力する(ステップS402)。これによって、端末101に確認画面2300が表示される。その後、変換表生成部1402は待ち状態に移行する。
変換表生成部1402は、確認画面2300を介した要求を受信した場合、受信した要求が情報更新要求であるか否かを判定する(ステップS403)。
受信した要求が情報更新要求であると判定された場合、変換表生成部1402は、情報更新要求の内容にしたがって、候補解釈要因情報1530を更新する(ステップS404)。その後、変換表生成部1402はステップS403に戻る。ステップS404では、例えば、以下のような処理が実行される。
情報更新要求が削除要求である場合、変換表生成部1402は、候補解釈要因情報1530から、削除要求に含まれる候補解釈要因の識別情報に対応するエントリを検索し、検索されたエントリから、削除要求に含まれる特徴量の識別情報に対応する行を削除する。
情報更新要求が修正要求である場合、変換表生成部1402は、候補解釈要因情報1530から、修正要求に含まれる候補解釈要因の識別情報に対応するエントリを検索し、検索されたエントリの修正要求に含まれる特徴量の識別情報に対応する行の重み1905を更新する。
情報更新要求が設定要求である場合、変換表生成部1402は、候補解釈要因情報1530から、設定要求に含まれる候補解釈要因の識別情報に対応するエントリを検索し、検索されたエントリの設定要求に含まれる特徴量の識別情報に対応する行の解釈要因1909に解釈要因を設定する。
情報更新要求が破棄要求である場合、変換表生成部1402は、候補解釈要因情報1530から、破棄要求に含まれる候補解釈要因の識別情報に対応するエントリを検索し、当該エントリを削除する。
なお、変換表生成部1402は、情報更新要求に基づいて候補変換表1540を更新してもよい。
情報更新要求が削除要求である場合、変換表生成部1402は、削除要求に含まれる特徴量の識別情報に対応する候補変換表1540から、削除要求に含まれる候補解釈要因の識別情報に対応する候補解釈要因データ2000を削除する。
情報更新要求が修正要求である場合、変換表生成部1402は、修正要求に含まれる特徴量の識別情報に対応する候補変換表1540から、修正要求に含まれる候補解釈要因の識別情報に対応する候補解釈要因データ2000を検索する。変換表生成部1402は、検索された候補解釈要因データ2000の重み2002の値を更新する。
情報更新要求が設定要求である場合、変換表生成部1402は、修正要求に含まれる特徴量の識別情報に対応する候補変換表1540から、修正要求に含まれる候補解釈要因の識別情報に対応する候補解釈要因データ2000を検索する。変換表生成部1402は、検索された候補解釈要因データ2000の解釈要因ID2001を解釈要因に置き換える。
情報更新要求が破棄要求である場合、変換表生成部1402は、各候補変換表1540から、破棄要求に含まれる候補解釈要因の識別情報に対応する候補解釈要因データ2000を削除する。以上がステップS404の処理の説明である。
受信した要求が情報更新要求でないと判定された場合、すなわち、受信した要求が変換表出力要求であると判定された場合、変換表生成部1402は、領域分割情報1520及び候補解釈要因情報1530に基づいて変換表500を生成し、解釈要因変換情報132に生成された変換表500を格納する(ステップS405)。その後、変換表生成部1402は処理を終了する。
変換表500の生成方法は、候補変換表1540と同様の処理である。ただし、(処理F4)では、変換表生成部1402は、特定されたセルに、ターゲットエントリの解釈要因1909の値及びターゲット特徴量に対応する行の重み1905の値から構成される解釈要因データ510を設定する。
なお、ステップS404において、情報更新要求に基づいて候補変換表1540が更新されている場合、解釈要因変換情報132は、候補変換表1540を変換表500として出力してもよい。
変換表生成部1402は、変換表500が生成された後、変換表500を含む格納要求を計算機100-3に送信する。計算機100-3の解釈要因選択部130又は結果出力部131は、変換表500を解釈要因変換情報132に格納する。
実施例2によれば、計算機システムは、客観的な基準に基づいて、生成用データ1500から各特徴量の変換表500を漏れなく生成することができる。このように生成された変換表500に基づいて生成される解釈情報610は、客観的かつ漏れのない、評価対象データ300の予測値の根拠を示す情報として有用である。
実施例3は、候補解釈要因の生成方法が一部異なる。具体的には、類似する候補解釈要因が統合される。以下、実施例2との差異を中心に実施例3について説明する。
実施例3の計算機システムの構成、計算機100のハードウェア構成及びソフトウェア構成、並びに計算機システムの処理の流れは、実施例2と同一であるため、説明を省略する。
実施例3では、候補解釈要因情報1530のデータ構造が異なる。図27は、実施例3の候補解釈要因情報1530のデータ構造の一例を示す図である。
なお、説明の簡単のため、領域(値)1903、領域(寄与値)1904、重み1905、第一データ数1906、第二データ数1907、交互作用値1908、及び解釈要因1909は省略している。
実施例3の候補解釈要因情報1530に格納されるエントリは、統合ID1910及び統合種別1911を含む。統合ID1910は、統合された候補解釈要因に設定される識別情報を格納するフィールドである。統合種別1911は、統合された条件の種別を格納するフィールドである。統合ID1910に識別情報が設定されるエントリの統合種別1911には「通常」又は「特殊」のいずれかが格納される。
図28A及び図28Bは、実施例3の候補解釈要因生成部1401が実行する処理の一例を説明するフローチャートである。図29は、実施例3の端末101に表示される統合条件設定画面2900の一例を示す図である。図30は、実施例3の端末101に表示される統合確認画面3000の一例を示す図である。
ステップS301からステップS313までの処理は、実施例2で説明した処理と同一である。実施例3では、候補解釈要因生成部1401は、ステップS313の処理が実行された後、統合条件の設定を受け付ける(ステップS351)。
具体的には、候補解釈要因生成部1401は、統合条件設定画面2900を表示するための表示情報を生成し、操作受付部に出力する。操作受付部は、当該表示情報を端末101に送信する。ここで、統合条件設定画面2900について説明する。
統合条件設定画面2900は、操作受付部によって提示される画面であり、端末101に表示される。統合条件設定画面2900は、統合可否選択欄2901、統合条件設定欄2902、特殊統合条件設定欄2903、及び設定ボタン2904を含む。
統合可否選択欄2901は、候補解釈要因の統合を行うか否かを選択するための欄である。統合可否選択欄2901の値は統合可否情報として出力される。統合可否選択欄2901は、ラジオボタン2911、2912を含む。
ラジオボタン2911は、候補解釈要因の統合を行う場合に操作するラジオボタンである。ユーザは、ラジオボタン2911を操作し、統合条件設定欄2902及び特殊統合条件設定欄2903への入力を行う。ラジオボタン2912は、候補解釈要因の統合を行わない場合に操作するラジオボタンである。ラジオボタン2912が操作された場合、統合条件設定欄2902及び特殊統合条件設定欄2903への入力が無効化される。
統合条件設定欄2902は、候補解釈要因の統合条件を設定するための欄である。統合条件設定欄2902の値は統合条件設定情報として出力される。統合条件設定欄2902は、ラジオボタン2921、2922、2923を含む。
ラジオボタン2921は、予め定義された統合条件を設定する場合に操作するラジオボタンである。
ラジオボタン2922は、第一データ数及び第二データ数を基準に候補解釈要因を統合する場合に操作するラジオボタンである。ユーザは、ラジオボタン2922を操作し、第一データ数、又は、第一データ数及び第二データ数の比を設定する。
ラジオボタン2923は、分散表現空間における候補解釈要因間の類似度を基準に候補解釈要因を統合する場合に操作するラジオボタンである。ユーザは、ラジオボタン2923を操作し、類似度の閾値及び分散表現空間の次元を設定する。本実施例では、候補解釈要因生成部1401は、分散空間の次元に基づいて生成用データ1500を潜在表現化することによって生成用データ1500の分散表現を生成し、これを用いて、各候補解釈要因を構成する特徴量の集合間の類似度(候補解釈要因間の類似度)を算出する。なお、分散表現空間の次元ではなく、他の潜在表現化に用いるパラメータを入力するようにしてもよい。
特殊統合条件設定欄2903は、統合条件設定欄2902とは異なる統合条件を設定するための欄である。特殊統合条件設定欄2903の値は特殊統合条件設定情報として出力される。特殊統合条件設定欄2903はラジオボタン2931を含む。
ラジオボタン2931は、ラジオボタン2923に対応する統合条件において、類似度が低い又は類似度が負値の候補解釈要因を統合する場合に操作するラジオボタンである。特殊統合条件情報を満たす候補解釈要因は、反対の意味を持つ候補解釈要因として統合される。
設定ボタン2904は、統合可否選択欄2901、統合条件設定欄2902、特殊統合条件設定欄2903に設定した値を設定するための操作ボタンである。設定ボタン2904が操作された場合、端末101は、統合可否情報、統合条件設定情報、及び特殊統合条件設定情報を含む設定要求を送信する。
統合条件設定画面2900は、統合条件設定画面2900を介して設定された統合可否情報、統合条件設定情報、及び特殊統合条件設定情報を計算機100-2に保存するための操作ボタン、及び、当該情報の破棄又は初期化を指示するための操作ボタンを含んでもよい。
以上が、統合条件設定画面2900の説明である。図28Bの説明に戻る。
候補解釈要因生成部1401は、操作受付部から設定要求を受信した場合、設定要求に含まれる統合可否情報、統合条件設定情報、及び特殊統合条件設定情報に基づいて、統合処理を実行する(ステップS352)。その後、候補解釈要因生成部1401は処理を終了する。具体的には、以下のような処理が実行される。
(処理G1)候補解釈要因生成部1401は、統合可否情報にラジオボタン2912に対応する値が含まれるか否かを判定する。統合可否情報にラジオボタン2912に対応する値が含まれる場合、候補解釈要因生成部1401は候補解釈要因の統合を行うことなく統合処理を終了する。
(処理G2)統合可否情報にラジオボタン2911に対応する値が含まれる場合、候補解釈要因生成部1401は、統合条件設定情報に基づいて、候補解釈要因を統合する場合に使用する指標を算出する。
統合条件設定情報にラジオボタン2922に対応する値が含まれる場合、候補解釈要因生成部1401は、各候補解釈要因の第一データ数、又は、第一データ数及び第二データ数の比を算出する。統合条件設定情報にラジオボタン2923に対応する値が含まれる場合、候補解釈要因生成部1401は、候補解釈要因間の類似度を算出する。
(処理G3)候補解釈要因生成部1401は、算出された指標と閾値との比較結果に基づいて、統合可能な候補解釈要因の組を特定する。また、候補解釈要因生成部1401は、算出された指標及び特殊統合条件設定情報に基づいて、統合可能な候補解釈要因の組を特定する。候補解釈要因生成部1401は、特定された解釈要因の組の情報をワークエリアに格納する。
(処理G4)候補解釈要因生成部1401は、特定された候補解釈要因の組を提示するための表示情報を生成し、操作受付部に出力する。これによって、端末101に統合確認画面3000が表示される。候補解釈要因生成部1401は、統合確認画面3000を介した操作に基づいて候補解釈要因の組を統合する。ここで、統合確認画面3000について説明する。
統合確認画面3000は、操作受付部によって提示される画面であり、端末101に表示される。統合確認画面3000は、統合対象表示欄3001、候補解釈要因詳細表示欄3002、統合ボタン3003、破棄ボタン3004、次へボタン3005、及び完了ボタン3006を含む。
統合対象表示欄3001は、特定された候補解釈要因に関する情報及び判定根拠を表示する欄である。統合対象表示欄3001は、候補解釈要因表示欄3011及び指標表示欄3012を含む。
候補解釈要因表示欄3011は、特定された候補解釈要因の識別情報を表示する欄である。指標表示欄3012は、判定時に使用した指標を表示する欄である。
候補解釈要因詳細表示欄3002は、特定された候補解釈要因の詳細なデータを表示する欄である。
統合ボタン3003は、統合確認画面3000に表示された候補解釈要因の組を統合する場合に操作するボタンである。統合ボタン3003が操作された場合、端末101は、候補解釈要因の組の情報を含む統合要求を送信する。
候補解釈要因生成部1401は、統合要求を受信した場合、統合要求に含まれる候補解釈要因の組の情報に基づいて、候補解釈要因情報1530から統合するエントリ群を特定する。候補解釈要因生成部1401は、特定されたエントリ群の統合ID1910に同一の識別情報を設定し、また、統合種別1911に「通常」又は「特殊」のいずれかを設定する。統合条件設定情報に基づいて統合された場合、統合種別1911には「通常」が設定され、特殊統合条件設定情報に基づいて統合された場合、統合種別1911には「特殊」が設定される。
破棄ボタン3004は、統合確認画面3000に表示された候補解釈要因の組を統合しない場合に操作するボタンである。破棄ボタン3004が操作された場合、端末101は、候補解釈要因の組の情報を含む破棄要求を送信する。
候補解釈要因生成部1401は、破棄要求を受信した場合、破棄要求に含まれる候補解釈要因の組の情報をワークエリアから削除する。
次へボタン3005は、次の解釈要因の組の情報を表示する場合に操作するボタンである。
完了ボタン3006は、統合確認画面3000を介した操作を終了する場合に操作するボタンである。完了ボタン3006が操作された場合、端末101は完了通知を送信する。
以上が、統合確認画面3000の説明である。統合処理の説明に戻る。
(処理G5)候補解釈要因生成部1401は、完了通知を受信した場合、統合処理を終了する。以上がステップS352の処理の説明である。
なお、候補解釈要因生成部1401は、統合確認画面3000を表示することなく、自動的に、特定された候補解釈要因の組を統合してもよい。
変換表500を生成する処理(図26)では、変換表生成部1402は、統合された候補解釈要因に対応する候補解釈要因データ2000の解釈要因ID2001に、統合ID1910に設定された値を設定する。また、変換表生成部1402は、統合ID1910に識別情報が設定された候補解釈要因に対して同一の解釈要因を設定する。
実施例3によれば、計算機システムは、複数の候補解釈要因を統合することによって、重複又は類似する解釈要因の生成等を回避することができる。また、計算効率を向上させることができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。