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

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

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

特許7583276情報処理装置、情報処理方法およびプログラム
<>
  • 特許-情報処理装置、情報処理方法およびプログラム 図1
  • 特許-情報処理装置、情報処理方法およびプログラム 図2
  • 特許-情報処理装置、情報処理方法およびプログラム 図3
  • 特許-情報処理装置、情報処理方法およびプログラム 図4
  • 特許-情報処理装置、情報処理方法およびプログラム 図5
  • 特許-情報処理装置、情報処理方法およびプログラム 図6
  • 特許-情報処理装置、情報処理方法およびプログラム 図7
  • 特許-情報処理装置、情報処理方法およびプログラム 図8
  • 特許-情報処理装置、情報処理方法およびプログラム 図9
  • 特許-情報処理装置、情報処理方法およびプログラム 図10
  • 特許-情報処理装置、情報処理方法およびプログラム 図11
  • 特許-情報処理装置、情報処理方法およびプログラム 図12
  • 特許-情報処理装置、情報処理方法およびプログラム 図13
  • 特許-情報処理装置、情報処理方法およびプログラム 図14
  • 特許-情報処理装置、情報処理方法およびプログラム 図15
  • 特許-情報処理装置、情報処理方法およびプログラム 図16
  • 特許-情報処理装置、情報処理方法およびプログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-06
(45)【発行日】2024-11-14
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
   G06N 5/04 20230101AFI20241107BHJP
   G06N 20/00 20190101ALI20241107BHJP
   G06Q 10/0633 20230101ALI20241107BHJP
【FI】
G06N5/04
G06N20/00 130
G06Q10/0633
【請求項の数】 8
(21)【出願番号】P 2021064001
(22)【出願日】2021-04-05
(65)【公開番号】P2022159660
(43)【公開日】2022-10-18
【審査請求日】2024-01-11
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002918
【氏名又は名称】弁理士法人扶桑国際特許事務所
(72)【発明者】
【氏名】鈴木 利光
(72)【発明者】
【氏名】猪又 明大
(72)【発明者】
【氏名】粂 照宜
(72)【発明者】
【氏名】ムノス マニュエル
【審査官】北川 純次
(56)【参考文献】
【文献】特開2016-192007(JP,A)
【文献】特開2021-018466(JP,A)
【文献】米国特許出願公開第2019/0324893(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00 - 99/00
G06Q 10/06
(57)【特許請求の範囲】
【請求項1】
パラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得る判断フローの情報を記憶する記憶部と、
複数のパラメータに対する前記判断結果を表す教師データを用いた機械学習に基づいて、前記機械学習により生成される判断モデルに関連する複数の第2判断ステップを取得し、前記複数の第2判断ステップの各々と関連する前記パラメータを特定し、前記判断モデルへの前記パラメータの影響に応じて、前記複数のパラメータから前記パラメータの組を抽出し、抽出した前記パラメータの組に基づいて、前記判断フローに含まれる前記複数の第1判断ステップの一部を変更する処理部と、
を有する情報処理装置。
【請求項2】
前記記憶部は、特定のパラメータを示す情報を記憶し、
前記処理部は、前記教師データに含まれるパラメータ群のうち、前記特定のパラメータを前記機械学習に用いないと決定する、
請求項1記載の情報処理装置。
【請求項3】
前記パラメータの組は、前記判断フローに含まれる第1パラメータと、前記判断フローに含まれない第2パラメータとを含み、
前記処理部は、
前記第1パラメータに対応する第1判断ステップを前記複数の第1判断ステップから特定し、
特定した前記第1判断ステップに対して、前記第2パラメータに関する判断条件を追加する、
請求項1記載の情報処理装置。
【請求項4】
前記処理部は、
前記判断フローに含まれる第3パラメータに対する新たな判断条件を前記複数の第2判断ステップから抽出し、
前記判断フローに含まれる、前記第3パラメータに対する判断条件を、抽出した新たな判断条件に置換する、
請求項1記載の情報処理装置。
【請求項5】
前記処理部は、
前記判断フローに含まれない第4パラメータに対する判断条件を前記複数の第2判断ステップから抽出し、
前記判断フローに対して、前記第4パラメータに対する判断条件を示す判断ステップを追加する、
請求項1記載の情報処理装置。
【請求項6】
前記処理部は、
前記複数の第1判断ステップの一部を変更した変更後の前記判断フローに含まれる各判断ステップを示すルール情報であって、変更後の前記判断フローで用いられる前記パラメータに対する判断条件が記述された前記ルール情報を生成し、
前記ルール情報に基づいて変更後の前記判断フローを実行することで、新たな入力データに対する新たな前記判断結果を取得する、
請求項1記載の情報処理装置。
【請求項7】
コンピュータが、
パラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得る判断フローの情報を取得し、
複数のパラメータに対する前記判断結果を表す教師データを用いた機械学習に基づいて、前記機械学習により生成される判断モデルに関連する複数の第2判断ステップを取得し、
前記複数の第2判断ステップの各々と関連する前記パラメータを特定し、
前記判断モデルへの前記パラメータの影響に応じて、前記複数のパラメータから前記パラメータの組を抽出し、
抽出した前記パラメータの組に基づいて、前記判断フローに含まれる前記複数の第1判断ステップの一部を変更する、
情報処理方法。
【請求項8】
コンピュータに、
パラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得る判断フローの情報を取得し、
複数のパラメータに対する前記判断結果を表す教師データを用いた機械学習に基づいて、前記機械学習により生成される判断モデルに関連する複数の第2判断ステップを取得し、
前記複数の第2判断ステップの各々と関連する前記パラメータを特定し、
前記判断モデルへの前記パラメータの影響に応じて、前記複数のパラメータから前記パラメータの組を抽出し、
抽出した前記パラメータの組に基づいて、前記判断フローに含まれる前記複数の第1判断ステップの一部を変更する、
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
ガイドラインなどの文書に記載された判断手順に従って判断結果を得る作業が人手により行われることがある。判断手順は、判断手順に含まれる一連の判断ステップを順に繋いだワークフローにより表すことができる。ワークフローはデータ化することが可能であり、情報処理装置によりワークフローに応じた判断処理を実行することができる。
【0003】
例えば、ワークフローを生成するワークフロー生成サーバの提案がある。提案のワークフロー生成サーバは、データベースに対するデータ操作の履歴間の関係性を定量化した値を用いて複数のデータ操作からなるワークフローを生成する。
【0004】
また、ユーザごとの作業が記録されたログデータから、業務の単位となる一案件で、任意のユーザが行う一連の作業間の相関関係を特定し、当該相関関係を基に作業の集合グループを特定することで業務フローの再生、可視化の支援を可能にする装置の提案もある。
【0005】
更に、作業者による実際の作業結果に基づいて業務遂行モデルを繰り返し柔軟に修正して、業務遂行モデルを最適化する業務遂行モデル適正化装置の提案もある。
なお、収集されたセンサデータを学習データとして機械学習に採用するか否かをユーザが決定するためのユーザインタフェースを制御する情報処理装置の提案がある。また、事例データのクラスへの分類において、計算機が自動的に分類できない事例データだけを人間に提示し、人間によるクラスの正解値の入力を受け付ける事例データベースの構築方法の提案がある。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2014-48673号公報
【文献】特開2017-45080号公報
【文献】特開2011-81620号公報
【文献】国際公開第2020/170986号
【文献】特開2005-352997号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記のように、ガイドラインなどの記載内容を基に、ある判断結果を得るためのワークフローである判断フローが作成され得る。ところが、作成された判断フローに含まれる判断条件が適切でない場合、判断フローによる判断結果の精度が低くなるという問題がある。
【0008】
1つの側面では、本発明は、判断処理に影響のあるパラメータに関する条件を判断フローに反映できる情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
1つの態様では、情報処理装置が提供される。この情報処理装置は、記憶部と処理部とを有する。記憶部は、パラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得る判断フローの情報を記憶する。処理部は、複数のパラメータに対する判断結果を表す教師データを用いた機械学習に基づいて、機械学習により生成される判断モデルに関連する複数の第2判断ステップを取得し、複数の第2判断ステップの各々と関連するパラメータを特定し、判断モデルへのパラメータの影響に応じて、複数のパラメータからパラメータの組を抽出し、抽出したパラメータの組に基づいて、判断フローに含まれる複数の第1判断ステップの一部を変更する。
【発明の効果】
【0010】
1つの側面では、判断処理に影響のあるパラメータに関する条件を判断フローに反映できる。
【図面の簡単な説明】
【0011】
図1】第1の実施の形態の情報処理装置を説明する図である。
図2】第2の実施の形態の情報処理装置のハードウェア例を示す図である。
図3】情報処理装置の機能例(その1)を示す図である。
図4】情報処理装置の機能例(その2)を示す図である。
図5】情報処理装置の機能例(その3)を示す図である。
図6】元ルール記憶部に記憶される情報の例を示す図である。
図7】抽出ルール記憶部に記憶される情報の例(その1)を示す図である。
図8】抽出ルール記憶部に記憶される情報の例(その2)を示す図である。
図9】ルール合成の第1の例を示す図である。
図10】ルール合成に応じたワークフローの第1の変更例を示す図である。
図11】ルール合成の第2の例を示す図である。
図12】ルール合成に応じたワークフローの第2の変更例を示す図である。
図13】情報処理装置の全体処理の例を示すフローチャートである。
図14】判断項目削除の例を示すフローチャートである。
図15】第2抽出ルール群取得の例を示すフローチャートである。
図16】ルール合成の例を示すフローチャートである。
図17】類似データ登録の例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
【0013】
図1は、第1の実施の形態の情報処理装置を説明する図である。情報処理装置10は、記憶部11および処理部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置でもよい。処理部12は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。処理部12はプログラムを実行するプロセッサでもよい。「プロセッサ」には、複数のプロセッサの集合(マルチプロセッサ)が含まれ得る。
【0014】
記憶部11は、判断フロー20の情報を記憶する。判断フロー20は、各々がパラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得るワークフローである。例えば、判断フロー20は、判断ステップ21,22,…を有する。判断ステップ21における判断条件は、パラメータXの条件であり、例えば、パラメータXの値が条件値よりも大きい、あるいは、小さいといった条件である。判断ステップ22における判断条件は、パラメータAの条件であり、例えば、パラメータAの値が条件値よりも大きい、あるいは、小さいといった条件である。判断ステップ21,22,…の各々は、判断条件が真または偽であるかに応じた次の判断ステップを示す情報を含む。例えば、判断ステップ21は、パラメータXの条件が真の場合、次の判断ステップが判断ステップ22であることを示す情報を含む。
【0015】
処理部12は、複数のパラメータに対する判断結果を表す教師データを用いた機械学習に基づいて、機械学習により生成される判断モデルに関連する複数の第2判断ステップを取得する。複数のパラメータは、判断フロー20の判断条件に用いられるパラメータ、および、判断フロー20の判断条件に用いられないパラメータを含む。
【0016】
判断モデルは、機械学習による学習済モデルであり、要因となるパラメータ(説明変数や独立変数とも呼ばれる)と、判断結果(目的変数や従属変数とも呼ばれる)との間の関係を一般化したモデルである。処理部12は、判断モデルを用いた人工知能(AI:Artificial Intelligence)技術に基づく推論処理によって、入力された新たなパラメータに対する未知の判断結果を得ることができる。機械学習に用いられるモデルには、例えば深層ニューラルネットワーク(DNN:Deep Neural Network)が挙げられる。
【0017】
一例では、処理部12は、機械学習結果として、複数の第2判断ステップを示す判断ステップ情報30を得る。処理部12は、判断ステップ情報30を既存の技術を用いて取得することができる。判断ステップ情報30は、複数の第2判断ステップの各々について、当該第2判断ステップで用いられるパラメータと、当該パラメータに対する判断条件と、当該パラメータが連携する他のパラメータとを示す情報を含む。図中、当該パラメータが連携する他のパラメータを表す項目は「連携」と略記されている。
【0018】
例えば、判断ステップ情報30は、1つの第2判断ステップで用いられるパラメータ「A」に対する「判断条件R1」と、連携する他のパラメータなし(「-」)という情報を含む。また、判断ステップ情報30は、別の第2判断ステップで用いられるパラメータ「B」に対する「判断条件R2」と、連携する他のパラメータ「A」という情報を含む。ここで、パラメータBは、判断フロー20では用いられないパラメータである。
【0019】
判断ステップ情報30は、例えばパラメータXに関する第2判断ステップの情報など、他の第2判断ステップの情報を含むが、図示を省略している。また、判断ステップ情報30には、複数の第2判断ステップの順序を表す情報は含まれなくてよい。複数の第2判断ステップは、判断モデルに関連する情報であり、複数の第2判断ステップの順序は得られないためである。
【0020】
処理部12は、複数の第2判断ステップの各々と関連するパラメータを特定する。例えば、処理部12は、上記の判断ステップ情報30に基づいて、複数の第2判断ステップの各々と関連するパラメータを特定する。
【0021】
処理部12は、判断モデルへのパラメータの影響に応じて、複数のパラメータからパラメータの組を抽出する。例えば、処理部12は、判断フロー20に含まれないパラメータBに関して、判断結果が既知である複数の入力に対し、パラメータBを用いる判断モデルによる判断結果と、パラメータBを用いない判断モデルによる判断結果とを比較する。そして、処理部12はパラメータBを用いる判断モデルによる判断結果の精度が、パラメータBを用いない判断モデルによる判断結果の精度よりも改善される場合に、判断モデルへのパラメータBの影響があると判断する。例えば、処理部12は、パラメータBを用いる方が、パラメータBを用いないよりも、既知の判断結果に対する正解数が高い場合に、パラメータBを用いる方が判断結果の精度が改善されると判断する。
【0022】
判断ステップ情報30によれば、パラメータBは、パラメータAと関連する。よって、処理部12は、判断モデルへのパラメータBの影響があると判断された場合、判断ステップ情報30に基づいてパラメータA,Bの組を抽出する。
【0023】
処理部12は、抽出したパラメータの組に基づいて、判断フロー20に含まれる複数の第1判断ステップの一部を変更する。例えば、判断フロー20のうちの判断ステップ22は、パラメータAに関する条件判断である。したがって、処理部12は、抽出したパラメータA,Bの組に対して、判断ステップ22を特定する。処理部12は、判断ステップ情報30から、パラメータAに対する判断条件R1と、パラメータBに対する判断条件R2とを取得し、判断ステップ22の判断条件を、判断条件R1,R2を合成した判断条件に変更する。判断条件R1,R2を合成した判断条件は、例えば、判断条件R1,判断条件R2の両方が真であるか否かを判定する条件となる。なお、判断条件R1は、パラメータAに対する判断ステップ22の判断条件と同じでもよいし、異なってもよい。
【0024】
こうして、処理部12は、判断フロー20に含まれる複数の第1判断ステップの一部を変更することで、変更後判断フロー40を生成する。変更後判断フロー40は、判断ステップ41,42,…を有する。例えば、判断ステップ41は、判断ステップ21に相当する。判断ステップ42は、パラメータAに対する判断ステップ22の判断条件が、パラメータA,Bに対する判断条件R1,R2に変更されたものである。より具体的には、判断フロー20の「判断ステップ22が真である」という判断は、変更後判断フロー40の「判断ステップ42が真である」という判断に置換される。また、判断フロー20の「判断ステップ22が偽である」という判断は、変更後判断フロー40の「判断ステップ42が偽である」という判断に置換される。上記の例で言えば、判断条件R1,R2の両方が真のとき判断ステップ42は真となり、判断条件R1,R2の少なくとも一方が偽のとき判断ステップ42は偽となる。
【0025】
なお、変更後判断フロー40の例では、判断ステップ22を判断ステップ42に変更するものとしたが、処理部12は、判断ステップ42におけるパラメータA,Bの判断条件R1,R2を、連続した個別の判断ステップとして、変更後判断フローを生成してもよい。例えば、判断ステップ42は、判断条件R1が真または偽であるかを判定する1つ目の判断ステップと、判断条件R1が真の時に実行される、判断条件R2が真または偽であるかを判定する2つ目の判断ステップに分けて表すこともできる。このように、処理部12は、判断条件R1,R2を1つの判断ステップ42としてもよいし、個別の判断ステップとしてもよい。何れの場合も、実質的には同じ判断フローが表される。
【0026】
情報処理装置10によれば、パラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得る判断フロー20の情報が取得される。複数のパラメータに対する当該判断結果を表す教師データを用いた機械学習に基づいて、機械学習により生成される判断モデルに関連する複数の第2判断ステップが取得される。複数の第2判断ステップの各々と関連するパラメータが特定される。判断モデルへのパラメータの影響に応じて、複数のパラメータからパラメータの組が抽出される。抽出されたパラメータの組に基づいて、判断フロー20に含まれる複数の第1判断ステップの一部が変更される。
【0027】
これにより、情報処理装置10は、判断処理に影響のあるパラメータに関する条件を判断フロー20に反映できる。また、情報処理装置10は、判断フローを適切に改善できる。その結果、既存の判断フロー20を精緻化した変更後判断フロー40が得られる。処理部12は、変更後判断フロー40を判断処理に用いることで、判断フロー20を用いるよりも、新たな入力に対して得られる判断結果の精度を高めることができる。
【0028】
また、変更後判断フロー40は、各判断ステップの判断内容が人にも分かり易いルールベースの情報によりデータ化される。処理部12は、ルールベースで表されるデータを所定のルールエンジンにより実行することで、変更後判断フロー40に基づく判断結果を得ることができる。
【0029】
ここで、AI技術を用いて、モデルベースの推論処理によって判断結果を得る場合、判断過程がブラックボックス化され、判断結果に至った理由の説明が困難になる。一方、情報処理装置10によれば、ルールベースで表される変更後判断フロー40に基づいて判断結果を得るので、判断結果に至った理由を説明可能となり、当該理由をユーザが理解し易くなるという利点がある。
【0030】
以下では、情報処理装置10の機能を更に具体的に説明する。
[第2の実施の形態]
次に、第2の実施の形態を説明する。
【0031】
図2は、第2の実施の形態の情報処理装置のハードウェア例を示す図である。情報処理装置100は、ある情報に基づく判断結果の取得を支援する。情報処理装置100は、サーバなどのコンピュータにより実現され得る。一例では、情報処理装置100は、複数の会社それぞれの経営状態の良否判断を支援する。この場合、情報処理装置100には、評価対象の会社に関する経営状態を表す種々の指標がパラメータとして入力される。情報処理装置100は、入力されたパラメータに基づいて、該当の会社の経営状態の良否判断の結果を出力する。情報処理装置100は、ある判断結果を得るためのベースとなる判断手順(基本ワークフロー)に対して、当該判断手順を改善する機能を提供する。
【0032】
情報処理装置100は、CPU101、RAM102、HDD103、GPU(Graphics Processing Unit)104、入力インタフェース105、媒体リーダ106およびNIC(Network Interface Card)107を有する。なお、CPU101は、第1の実施の形態の処理部12の一例である。RAM102またはHDD103は、第1の実施の形態の記憶部11の一例である。
【0033】
CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。なお、CPU101は複数のプロセッサコアを含んでもよい。また、情報処理装置100は複数のプロセッサを有してもよい。以下で説明する処理は複数のプロセッサまたはプロセッサコアを用いて並列に実行されてもよい。また、複数のプロセッサの集合は「マルチプロセッサ」または単に「プロセッサ」と呼ばれることがある。
【0034】
RAM102は、CPU101が実行するプログラムやCPU101が演算に用いるデータを一時的に記憶する揮発性の半導体メモリである。なお、情報処理装置100は、RAM以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。
【0035】
HDD103は、OS(Operating System)やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性の記憶装置である。なお、情報処理装置100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。
【0036】
GPU104は、CPU101からの命令に従って、情報処理装置100に接続されたディスプレイ51に画像を出力する。ディスプレイ51としては、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、プラズマディスプレイ、有機EL(OEL:Organic Electro-Luminescence)ディスプレイなど、任意の種類のディスプレイが用いられる。
【0037】
入力インタフェース105は、情報処理装置100に接続された入力デバイス52から入力信号を取得し、CPU101に出力する。入力デバイス52としては、マウス・タッチパネル・タッチパッド・トラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどが用いられる。また、情報処理装置100に、複数の種類の入力デバイスが接続されていてもよい。
【0038】
媒体リーダ106は、記録媒体53に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体53として、例えば、磁気ディスク、光ディスク、光磁気ディスク(MO:Magneto-Optical disk)、半導体メモリなどが使用される。磁気ディスクには、フレキシブルディスク(FD:Flexible Disk)やHDDが含まれる。光ディスクには、CD(Compact Disc)やDVD(Digital Versatile Disc)が含まれる。
【0039】
媒体リーダ106は、例えば、記録媒体53から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体53は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体53やHDD103は、コンピュータ読み取り可能な記録媒体と呼ばれることがある。
【0040】
NIC107は、ネットワーク50に接続され、ネットワーク50を介して他のコンピュータと通信を行うインタフェースである。NIC107は、例えば、スイッチやルータなどの通信装置とケーブルで接続される。
【0041】
図3は、情報処理装置の機能例(その1)を示す図である。情報処理装置100は、機械学習機構110、元ルール記憶部120、抽出ルール記憶部130、改正ルール記憶部140、新規データ記憶部150、判断結果記憶部160、ルール作成部170、合成部180、ルール実行部190を有する。機械学習機構110は、過去データ記憶部111、判断モデル記憶部112、判断根拠記憶部113、AI判断結果記憶部114、学習部115およびAI判断部116を有する。
【0042】
過去データ記憶部111、判断モデル記憶部112、判断根拠記憶部113、AI判断結果記憶部114、元ルール記憶部120、抽出ルール記憶部130、改正ルール記憶部140、新規データ記憶部150および判断結果記憶部160には、RAM102やHDD103の記憶領域が用いられる。学習部115、AI判断部116、ルール作成部170、合成部180およびルール実行部190は、RAM102に記憶されたプログラムをCPU101が実行することで実現される。ただし、これらの機能の一部が、GPUやFPGAなどの電子回路により実現されてもよい。
【0043】
機械学習機構110は、AI技術に基づく機械学習や、学習済モデルに基づく推論処理を行う。機械学習機構110には、既存の技術が用いられる。機械学習機構110で使用されるモデルには、例えば、DNNが用いられる。
【0044】
過去データ記憶部111は、学習部115およびAI判断部116により処理される過去データを記憶する。過去データ記憶部111に記憶される過去データは、過去に人手などで行われた、判断対象のパラメータと当該パラメータに対する多数の判断結果に関するデータである。過去データは、学習部115の機械学習における教師データとして用いられる。また、過去データは、AI判断部116によるAI判断結果の判断精度の評価にも用いられる。ここで、以下では、判断結果を得るための判断対象のパラメータを、判断項目と言う。
【0045】
判断モデル記憶部112は、学習部115により出力される学習済モデルを記憶する。当該学習済モデルを、以下では判断モデルと言う。判断モデルとして、例えば、ある会社の経営状態が悪いか否かを判断するためのモデルが挙げられる。
【0046】
判断根拠記憶部113は、学習部115により出力される判断根拠の情報を記憶する。判断根拠は、学習部115が判断モデルの生成に用いた各判断項目に対する判断条件や当該判断項目の重要度を表す。例えば、経営状態が悪いと判断される会社において、ある判断項目の値が特定の範囲である頻度が高いほど、経営状態が悪いという判断結果に対して、当該判断項目の値が当該特定の範囲を取るという判断条件の重要度が高くなる。
【0047】
AI判断結果記憶部114は、AI判断部116による出力結果を記憶する。AI判断部116による出力結果は、AI判断部116のAI判断による結果となる。
学習部115は、過去データ記憶部111に記憶された過去データに基づいて機械学習を行い、判断モデルおよび判断根拠の情報を生成し、それぞれ判断モデル記憶部112および判断根拠記憶部113に格納する。例えば、判断根拠は、判断項目「利益率」に対して、判断条件「利益率>10%」などの情報を含み得る。
【0048】
AI判断部116は、過去データ記憶部111に記憶された過去データおよび判断モデル記憶部112に記憶された判断モデルに基づく推論処理、すなわち、AI判断を行う。AI判断部116は、AI判断結果をAI判断結果記憶部114に格納する。
【0049】
元ルール記憶部120は、元ルールを記憶する。元ルールは、ガイドライン(例えば、会社の経営判断の指針を示すガイドライン)などの文書に基づいて作成された、ある判断を行うための判断ステップである。例えば、元ルールは、当該文書からユーザによって抽出され、抽出された内容を示す情報が、元ルール記憶部120に予め登録される。当該文書を基に作成された一連の元ルールにより、ある判断を行うための判断手順が得られる。当該判断手順は、情報処理装置100による改善の対象となるワークフロー、すなわち、基本ワークフローにより表される。基本ワークフローは、第1の実施の形態の判断フロー20の一例である。
【0050】
抽出ルール記憶部130は、抽出ルールを記憶する。抽出ルールは、判断根拠記憶部113に記憶された判断根拠の情報に基づいて、ルール作成部170により生成される。抽出ルールは、機械学習の結果を基に抽出される、判断結果を得るためのルールであると言える。
【0051】
改正ルール記憶部140は、改正ルールを記憶する。改正ルールは、合成部180により、元ルールと抽出ルールとが合成されることで生成される。一連の改正ルール(元ルールを含み得る)により、ある判断を行うための、改善された判断手順が得られる。当該判断手順は、基本ワークフローを改善したワークフロー、すなわち、変更後ワークフローにより表される。変更後ワークフローは、第1の実施の形態の変更後判断フロー40の一例である。
【0052】
新規データ記憶部150は、新規データを記憶する。新規データは、新たな判断対象に関する各種パラメータを表す情報である。新規データに含まれるパラメータには、改正ルールによる判断項目が含まれる。新規データは、ルール実行部190による判断処理に用いられる。
【0053】
判断結果記憶部160は、ルール実行部190による判断結果の情報を記憶する。判断結果記憶部160に記憶される判断結果は、AI判断部116によるモデルベースの判断結果とは異なり、ルール実行部190によるルールベースの判断結果となる。
【0054】
ルール作成部170は、判断根拠記憶部113に記憶された判断根拠の情報に基づいて、抽出ルールの情報を生成し、抽出ルール記憶部130に格納する。抽出ルールは、学習部115による機械学習の結果から得られた、判断モデルに関連する判断項目、当該判断項目に対する判断条件および当該判断項目のAI判断結果に対する重要度などの情報を含む。
【0055】
1つの抽出ルールにおける判断項目は、独立している場合もあるし、他の抽出ルールの判断項目と関連付けされている場合もある。当該判断項目間の関連付けを示す情報は、機械学習機構110が出力する判断根拠の情報に含まれる。例えば、独立した1つの判断項目「利益率」に対して、判断条件「利益率>10%」という抽出ルールが得られることがある。あるいは、判断項目「利益率」に対する判断条件「利益率>10%」の抽出ルールと、判断項目「利益率」に関連する他の判断項目「当期純利益」に対する判断条件「当期純利益>xxx」の抽出ルールとが得られることもある。
【0056】
後述されるように、抽出ルールは、機械学習機構110を繰り返し使用し、AI判断結果を評価することで、徐々に改善される。ルール作成部170は、当該改善により最終的に得られた抽出ルールを抽出ルール記憶部130に格納する。
【0057】
合成部180は、元ルール記憶部120に記憶された元ルールと、抽出ルール記憶部130に記憶された抽出ルールとを合成することで改正ルールを生成し、改正ルール記憶部140に格納する。合成部180による合成では、元ルールに対して抽出ルールが追加される。例えば、合成部180は、元ルールに存在する特定の判断項目に関する判断条件に対して、抽出ルールにおける他の判断項目に関する他の判断条件を追加する。あるいは、合成部180は、元ルールに存在する特定の判断項目に関する判断条件を、抽出ルールにおける同じ判断項目に関する他の判断条件に置き換えることもある。
【0058】
ルール実行部190は、ルールベースの処理を実行するルールエンジンである。ルール実行部190は、改正ルール記憶部140に記憶された改正ルールの情報に基づいて、新規データ記憶部150に記憶された新規データに対する変更後ワークフローの手順を実行し、当該手順に基づく判断結果を得る。ルール実行部190は、取得した判断結果を、判断結果記憶部160に格納する。
【0059】
また、情報処理装置100は、次に示す抽出ルールの改善機能を有する。
図4は、情報処理装置の機能例(その2)を示す図である。まず、学習部115は、過去データ記憶部111に記憶された過去データ111aにおいて、目的とする判断処理に使用され得る全ての判断項目を入力として機械学習を行い、当該機械学習の結果として、判断モデル112aおよび判断根拠113aを出力する。
【0060】
ルール作成部170は、判断根拠113aに基づいて、第1抽出ルール群131を生成する。第1抽出ルール群131は、基本ワークフローへの追加候補となる全ての抽出ルールを含む。第1抽出ルール群131は、抽出ルール記憶部130に格納される。
【0061】
ここで、情報処理装置100は、図3で例示した機能に加えて、絞込部171、項目追加部172、精度判定部173、追加項目選択部174および情報判断部175を有する。絞込部171、項目追加部172、精度判定部173、追加項目選択部174および情報判断部175は、CPU101がRAM102に記憶されたプログラムを実行することで実現される。
【0062】
絞込部171は、過去データ記憶部111に記憶された過去データ111aに対して判断項目を絞り込み、判断項目を絞り込んだ後の過去データ111bを生成する。第1抽出ルール群131を取得した後の最初の段階では、絞込部171は、元ルール記憶部120に記憶された元ルール群121に基づいて、必要最低限度の判断項目に絞り込む。必要最適限度の判断項目は、元ルール群121の判断処理に用いられる全ての判断項目でもよい。例えば、会社の経営判断を行う場合、必要最低限度の判断項目には、「売上」、「収益」、「経常利益」および「経費」などが含まれ得る。
【0063】
項目追加部172は、過去データ111bに対して判断項目の追加を行うことで、判断項目の追加後の過去データ111cを生成する。追加候補となる判断項目は、元ルール群121には含まれない判断項目である。過去データ111cは、追加された判断項目の分だけ、過去データ111bよりも情報量が多いことになる。なお、追加する判断項目は、追加項目選択部174により選択される。例えば、会社の経営判断を行う場合、追加候補の判断項目としては、「当期純利益」、「発行株式数」、「1株当たりキャッシュフロー」、「資産合計」および「流動負債」などが考えられる。
【0064】
学習部115は、過去データ111bを用いた機械学習により、判断モデル112bおよび、図示を省略している判断根拠の情報を生成する。また、学習部115は、過去データ111cを用いた機械学習により、判断モデル112cおよび判断根拠113bの情報を生成する。
【0065】
AI判断部116は、判断モデル112bに基づいて、過去データ111aを入力としたAI判断を行い、AI判断結果114aを生成する。また、AI判断部116は、判断モデル112cに基づいて、過去データ111aを入力としたAI判断を行い、AI判断結果114bを生成する。
【0066】
AI判断結果114a,114bそれぞれには、過去データ111aに含まれる判断対象の複数のサンプル(例えば会社)に対して、判断モデル112b,112cによる判断結果が含まれる。過去データ111aに含まれる判断対象のサンプルは、判断結果が既知である。
【0067】
精度判定部173は、AI判断結果114a,114bを比較して、AI判断結果114bの方が判断結果の精度が高いか否かを判定する。具体的には、精度判定部173は、AI判断結果114aよりも、AI判断結果114bの方が既知の判断結果と一致するサンプルの数が多い場合に、AI判断結果114bの方が判断結果の精度が高いと判定する。精度判定部173は、AI判断結果114aよりも、AI判断結果114bの方が既知の判断結果と一致するサンプルの数が少ない場合に、AI判断結果114bの方が判断結果の精度が高いと判定しない。
【0068】
精度判定部173は、AI判断結果114bの方が判断結果の精度が高い場合に、過去データ111cの生成に追加された判断項目を、基本ワークフローに対する追加対象として決定し、当該判断項目をルール作成部170に通知する。また、精度判定部173は、次の追加項目の選択を行うように、追加項目選択部174に指示する。
【0069】
なお、次の段階では、今回の過去データ111cが次回の過去データ111bとして用いられ、今回の過去データ111cに対して項目追加部172により判断項目が追加された結果が、次回の過去データ111cとして用いられる。こうして、AI判断結果114a,114bに対して判断結果の精度が同等であると判定されるまで、項目追加部172による項目追加が行われる。
【0070】
追加項目選択部174は、第1抽出ルール群131に基づいて、追加する判断項目を選択し、選択した判断項目を項目追加部172に通知する。追加項目選択部174は、第1抽出ルール群131の中から、重要度の高い判断項目を選択する。ここで、第1抽出ルール群に含まれる判断項目の一部は、情報判断部175によって削除され得る。
【0071】
情報判断部175は、第1抽出ルール群131に含まれる判断項目のうち、ユーザによって事前に指定される類似データと一致する判断項目を削除する。例えば、類似データとして、会社の経営判断に対して不要な判断項目あるいは判断項目の組など、目的とする判断内容に応じた不要な判断項目が予め登録される。
【0072】
ルール作成部170は、最終的に作成された判断モデル112cに対する判断根拠113bに基づいて、上記の必要最低限の判断項目、および、精度判定部173により通知された追加対象の判断項目に対する第2抽出ルール群132を生成する。なお、ルール作成部170は、各判断項目を追加した段階で精度判定部173から追加対象の判断項目が通知されるたびに、当該段階における判断根拠113bを基に、当該追加対象の判断項目に対する抽出ルールを生成して第2抽出ルール群132に含めてもよい。第2抽出ルール群132は、抽出ルール記憶部130に格納される。なお、第2抽出ルール群132には、最初に元ルール群121から抽出された必要最低限度の判断項目に関する情報も含まれる。
【0073】
合成部180は、こうして生成された第2抽出ルール群132に含まれる抽出ルールと、元ルール群121に含まれる元ルールとの合成を行うことで、改正ルール群141を生成する。改正ルール群141は、改正ルール記憶部140に格納される。
【0074】
ルール実行部190は、改正ルール群141に基づいて、新規データ151に対する変更後ワークフローの手順を実行し、当該手順に基づく判断結果161を得る。ルール実行部190は、判断結果161を出力する。
【0075】
ここで、情報判断部175は、次の機能を有する。
図5は、情報処理装置の機能例(その3)を示す図である。情報判断部175は、類似データ記憶部175a、登録部175b、比較部175cおよび削除部175dを有する。類似データ記憶部175aには、RAM102やHDD103の記憶領域が用いられる。登録部175b、比較部175cおよび削除部175dは、RAM102に記憶されたプログラムをCPU101が実行することで実現される。
【0076】
類似データ記憶部175aは、類似データを記憶する。類似データは、目的の判断内容(例えば、会社の経営状態の判断)に対して、ユーザにより不要と判断された判断項目である。
【0077】
登録部175bは、ユーザによる類似データの入力を受け付け、受け付けた類似データを類似データ記憶部175aに登録する。
比較部175cは、抽出ルール記憶部130に記憶された第1抽出ルール群131と、類似データ記憶部175aに記憶された類似データとを比較し、第1抽出ルール群131から、類似データと一致する判断項目を特定し、削除部175dに通知する。
【0078】
削除部175dは、比較部175cから通知された判断項目を第1抽出ルール群131から削除し、当該判断項目の削除後の第1抽出ルール群131aを生成する。第1抽出ルール群131aも、抽出ルール記憶部130に格納される。
【0079】
情報処理装置100は、情報判断部175の機能により、類似データとして登録された判断項目を学習に用いないように制御でき、第2抽出ルールを得るために要する時間を短縮できる。
【0080】
図6は、元ルール記憶部に記憶される情報の例を示す図である。元ルール記憶部120は、元ルール群121を記憶する。元ルール群121は、基本ワークフロー200を表す。基本ワークフロー200は、ある判断結果を得るための複数のステップを含む。当該複数のステップを、ステップ1,2,…と表す。当該ステップは、第1の実施の形態の「判断ステップ」に相当する。基本ワークフロー200により得られる判断結果は、複数でもよい。例えば、基本ワークフロー200は、判断結果α,βを得る。前述の会社の経営状態の判断の例で言えば、判断結果αが「経営状態が悪い」であり、判断結果βが「経営状態が良い」である例が考えられる。
【0081】
元ルール群121は、基本ワークフローの複数のステップの各々を表す元ルール情報を含む。1つの元ルール情報が1つのステップに相当する。例えば、元ルール群121は、基本ワークフロー200のステップ3を表す元ルール情報121e1を含む。元ルール群121では、他のステップも元ルール情報121e1と同様のデータ構造により表される。
【0082】
元ルール情報121e1は、元ルールを示す情報であり、前ステップ、判断項目、条件値および次ステップの情報を含む。前ステップは、該当のステップの直前のステップであり、ステップ3に対しては、例えば、ステップ2である。判断項目は、判断処理に用いられる判断項目の名称である。条件値は、判断項目の値と比較される条件値である。次ステップは、該当のステップの次のステップである。判断項目に対する条件判定に応じた分岐がある場合、条件判定の結果に応じた分岐先が次ステップに登録される。なお、元ルール情報121e1には、条件値を用いた条件判断の内容を示す条件式など、他の情報も含まれる。
【0083】
なお、改正ルール群141も元ルール群121と同様のデータ構造を有する改正ルールの情報(改正ルール情報)により表される。
図7は、抽出ルール記憶部に記憶される情報の例(その1)を示す図である。抽出ルール記憶部130は、第1抽出ルール群131を記憶する。第1抽出ルール群131は、学習部115の学習結果に基づく複数のステップの各々を表す抽出ルール情報を含む。抽出ルール情報は、抽出ルールを示す情報である。第1抽出ルール群131により表される複数のステップを、ステップA,B,…と表す。当該複数のステップには、基本ワークフロー200のステップ1,2,…と同じ判断項目に対するステップ(ステップ1,2,…と表記する)が含まれる。例えば、第1抽出ルール群131は、ステップBを表す抽出ルール情報131e1を含む。第1抽出ルール群131では、他のステップも抽出ルール情報131e1と同様のデータ構造により表される。
【0084】
抽出ルール情報131e1は、判断項目、条件値、連携情報および重要度の情報を含む。判断項目は、判断処理に用いられる判断項目の名称である。条件値は、判断項目の値と比較される条件値である。連携情報は、該当の判断項目と関連する他の判断項目の名称である。該当の判断項目と関連する他の判断項目を、関連判断項目と言う。重要度は、該当の判断項目の重要度である。なお、抽出ルール情報131e1には、条件値を用いた条件判断の内容を示す条件式など、他の情報も含まれる。また、抽出ルール情報131e1は、元ルール情報121e1と異なり、前ステップや次ステップの情報を含まなくてよい。
【0085】
なお、第2抽出ルール群132も、第1抽出ルール群131と同様のデータ構造により実現される。
図8は、抽出ルール記憶部に記憶される情報の例(その2)を示す図である。重要度情報133は、抽出ルール記憶部130に記憶される。重要度情報133は、ルール作成部170により、判断根拠記憶部113に記憶された判断根拠の情報に基づいて生成され、抽出ルール記憶部130に格納される。重要度情報133は、第1抽出ルール群131における各判断項目に対する正規化後の重要度を保持する。重要度情報133は、判断項目および重要度の項目を含む。
【0086】
判断項目の項目には、判断項目名が登録される。判断項目として、複数の判断項目名の組が登録されることもある。重要度の項目には、該当の判断項目に対する正規化された重要度が登録される。正規化により、第1抽出ルール群131に含まれる重要度の値が判断内容に応じて調整される。例えば、会社の経営状態の判断を行う例において、正規化により、重要度は-1より大きく+1より小さい値として表わされる。ルール作成部170は、重要度が大きい程、経営判断が悪いという評価に対する重みが大きく、重要度が小さい程、経営判断が悪いという評価に対する重みが小さくなるように重要度を調整してもよい。
【0087】
例えば、ルール作成部170は、第1抽出ルール群131において、連携する複数の判断項目の組に対し、当該組に対応する重要度の平均値などを、正規化された重要度として求めてもよい。これにより、比較的大きな重要度をもつ判断項目と関連する他の判断項目の重要度を引き上げることができ、当該判断項目の組が判断モデルに反映され易くなる。
【0088】
例えば、重要度情報133には、判断項目「項目A」に対して、重要度「0.7」というレコードが登録されている。このレコードは、判断項目「項目A」の重要度が「0.7」であることを示す。なお、判断項目「項目A」は、ステップAにおける判断項目である。
【0089】
また、重要度情報133には、判断項目「項目C,項目3」の組に対して、重要度「0.5」というレコードが登録されている。このレコードは、判断項目「項目C,項目3」の組の重要度が「0.5」であることを示す。なお、判断項目「項目C」は、ステップCにおける判断項目である。判断項目「項目3」は、ステップ3における判断項目である。
【0090】
次に、合成部180によるルール合成の例を説明する。ルール合成では、元ルール群121に含まれる元ルール情報および第2抽出ルール群132に含まれる抽出ルール情報に基づく合成処理が行われる。当該合成処理は、基本ワークフロー200を変更後ワークフローに変更する処理に相当する。
【0091】
図9は、ルール合成の第1の例を示す図である。図9の例では、元ルール群121において判断項目「A1」に関する元ルール情報121e1が含まれ、第2抽出ルール群132において判断項目「A1」に関する抽出ルール情報132e1が含まれている。元ルール情報121e1は、基本ワークフロー200のステップ3に相当する。抽出ルール情報132e1は、機械学習結果により得られたステップBに相当する。
【0092】
この場合、合成部180は、ステップ3をステップBに置き換える。すなわち、合成部180は、抽出ルール情報132e1から判断項目「A1」に対する条件値「X2」を取得する。そして、合成部180は、元ルール群121において、ステップ3の判断項目「A1」に関する条件式に含まれる条件値を「X1」から「X2」に変更する。なお、ステップBにおける条件式自体がステップ3と異なる場合、合成部180は、ステップ3の条件式をステップBの条件式に変更してもよい。
【0093】
こうして、例えば、合成部180は、基本ワークフロー200のステップ3をステップBに置き換えた変更後ワークフローを示す改正ルール群141を生成してもよい。
図10は、ルール合成に応じたワークフローの第1の変更例を示す図である。変更後ワークフロー300は、改正ルール群141により表されるワークフローである。例えば、基本ワークフロー200は、ステップ3を含む。ステップ3は、判断項目「A1」に関し、条件値「X1」を用いた「A1>X1」の条件式で表される判断条件である。これに対して、変更後ワークフロー300では、ステップ3がステップBに変更される。ステップBは、判断項目「A1」に関し、条件値「X2」を用いた「A1>X2」の条件式で表される判断条件である。ステップBの判定結果に応じた次のステップは、基本ワークフロー200におけるステップ3の判定結果に応じた次のステップと同じになる。改正ルール群141の改正ルール情報には、変更後ワークフロー300における該当のステップの前ステップおよび次ステップの関係が登録される。
【0094】
図11は、ルール合成の第2の例を示す図である。図11の例では、元ルール群121において判断項目「A1」に関する元ルール情報121e1が含まれ、第2抽出ルール群132において判断項目「K1」に関する抽出ルール情報132e2が含まれている。抽出ルール情報132e2では、判断項目「K1」に対する連携情報(関連判断項目)として「A1」が含まれている。元ルール情報121e1は、基本ワークフロー200のステップ3に相当する。抽出ルール情報132e2は、機械学習結果により得られたステップBに相当する。
【0095】
この場合、合成部180は、ステップ3に対してステップBを追加する。すなわち、合成部180は、抽出ルール情報132e2から判断項目「K1」に対する条件値「P1」を取得し、判断項目「K1」の関連判断項目「A1」を取得する。そして、合成部180は、関連判断項目「A1」を基に、元ルール群121に含まれるステップ3の元ルール情報を取得し、当該元ルール情報に対して、ステップBの判断項目「K1」の判断条件を追加する。
【0096】
こうして、例えば、合成部180は、基本ワークフロー200のステップ3に対してステップBを追加した変更後ワークフローを示す改正ルール群142を生成してもよい。変更例として、元ルールでは「収益」に関する判断条件のステップが、改正ルールでは「収益」および「当期純利益」に関する判断条件のステップというように、判断ステップが修正される例が考えられる。
【0097】
図12は、ルール合成に応じたワークフローの第2の変更例を示す図である。変更後ワークフロー300aは、改正ルール群142により表されるワークフローである。例えば、基本ワークフロー200は、ステップ3を含む。ステップ3は、判断項目「A1」に関する条件値「X1」を用いた条件式で表される判断条件である。これに対して、変更後ワークフロー300aでは、ステップ3に対してステップBが追加される。ステップBは、判断項目「A1」に関し、条件値「P1」を用いた「K1<P1」の条件式で表される判断条件である。
【0098】
これにより、基本ワークフロー200で、ステップ3が真のときに次の第1候補ステップに進むという手順が、変更後ワークフロー300aでは、ステップ3およびステップBの両方が真のときに当該第1候補ステップに進むという手順に変更される。また、基本ワークフロー200で、ステップ3が偽のときに次の第2候補ステップに進むという手順が、変更後ワークフロー300aでは、ステップ3およびステップBの少なくとも一方が偽のときに当該第2候補ステップに進むという手順に変更される。改正ルール群142のルール情報には、変更後ワークフロー300aにおける該当のステップの前ステップおよび次ステップの関係が登録される。
【0099】
なお、第1の実施の形態でも例示したように、ステップ3およびステップBの両方に対する判断条件は、変更後ワークフロー300aにおいて1つのステップとして表されてもよいし、2つの連続するステップとして表されてもよい。
【0100】
情報処理装置100は、次の処理手順を実行する。
図13は、情報処理装置の全体処理の例を示すフローチャートである。
(S1)ルール作成部170は、第1抽出ルール群131を取得する。前述のように、ルール作成部170は、例えば過去データ111aに含まれる全ての判断項目を用いた学習部115による機械学習の結果として出力された判断根拠113aに基づいて、第1抽出ルール群131を生成し、抽出ルール記憶部130に格納する。また、ルール作成部170は、第1抽出ルール群131とともに、重要度情報133を生成し、抽出ルール記憶部130に格納する。
【0101】
(S2)情報判断部175は、第1抽出ルール群131に対する判断項目削除を実行する。判断項目削除の処理の詳細は後述される。
(S3)ルール作成部170は、第2抽出ルール群132を取得する。第2抽出ルール群132の取得の処理の詳細は後述される。
【0102】
(S4)合成部180は、元ルール群121に対して第2抽出ルール群132を合成するルール合成を行う。ルール合成の処理の詳細は後述される。
図14は、判断項目削除の例を示すフローチャートである。
【0103】
判断項目削除は、ステップS2に相当する。
(S10)比較部175cは、第1抽出ルール群131の全判断項目から1つを取得する。
【0104】
(S11)比較部175cは、ステップS10で取得した判断項目が、類似データ記憶部175aに記憶されている類似データの判断項目と一致するか否かを判定する。一致する場合、ステップS12に処理が進む。一致しない場合、ステップS13に処理が進む。
【0105】
(S12)削除部175dは、類似データの判断項目に一致する判断項目を、第1抽出ルール群131から削除する。判断項目の削除は、第1抽出ルール群131から該当の判断項目の抽出ルール情報を削除することに相当する。そして、ステップS14に処理が進む。
【0106】
(S13)削除部175dは、類似データの判断項目に一致しない判断項目を、第1抽出ルール群から削除せずに残す。そして、ステップS14に処理が進む。
(S14)比較部175cは、第1抽出ルール群131に含まれる全ての判断項目を処理済であるか否かを判定する。第1抽出ルール群131に含まれる全ての判断項目を処理済の場合、判断項目削除が終了する。第1抽出ルール群131に含まれる全ての判断項目を処理済でない場合、ステップS10に処理が進む。
【0107】
こうして、第1抽出ルール群131から不要な判断項目が削除される。以下では、第1抽出ルール群131は、判断項目削除の処理により判断項目の削除が行われた結果であるとする。
【0108】
図15は、第2抽出ルール群取得の例を示すフローチャートである。
第2抽出ルール群取得は、ステップS3に相当する。
(S20)追加項目選択部174は、重要度情報133に含まれる判断項目ごとの重要度に応じて、第1抽出ルール群131の中から機械学習用に追加する判断項目を選択する。例えば、追加項目選択部174は、会社の経営状態が悪いという判断に対して重要度の高い判断項目を優先的に選択する。追加項目選択部174は、選択した判断項目を項目追加部172に通知する。
【0109】
(S21)AI判断部116は、現判断項目群を用いた学習で得られた現判断モデル(判断モデル112b)によるAI判断結果114aを取得する。最初の段階では、ステップS21の現判断モデルの作成に用いられる現判断項目群は、過去データ111aのうちの必要最低限度の判断項目のみとなる。必要最低限度の判断項目は、例えば元ルール群121に含まれる全ての判断項目でもよい。
【0110】
(S22)AI判断部116は、現判断項目群に、ステップS20の判断項目を追加した判断項目群を用いた学習で得られた新判断モデル(判断モデル112c)によるAI判断結果114bを取得する。現判断項目群に対する判断項目の追加は、項目追加部172により行われる。
【0111】
(S23)精度判定部173は、AI判断結果114a,114bを比較し、判断項目追加により判断精度が向上したか否かを判定する。判断精度が向上した場合、ステップS24に処理が進む。判断精度が向上しなかった場合、ステップS25に処理が進む。前述のように、精度判定部173は、判断結果が既知である複数のサンプルを含む過去データ111aに対して、判断結果が正解した数によりAI判断結果114a,114bの判断精度を評価することができる。AI判断結果114aよりもAI判断結果114bの方が、正解数が多い場合に、該当の判断項目の追加により判断精度が向上したことになり、それ以外の場合に、該当の判断項目を追加しても判断精度が向上しなかったことになる。
【0112】
(S24)精度判定部173は、機械学習用に追加した判断項目を第2抽出ルール群132への追加対象に決定し、ルール作成部170に当該判断項目を通知する。そして、ステップS26に処理が進む。
【0113】
(S25)精度判定部173は、両AI判断結果、すなわち、AI判断結果114a,114bの判断精度は同等であるか否かを判定する。同等である場合、ステップS27に処理が進む。同等でない場合、ステップS26に処理が進む。同等であるとは、ステップS23で説明した判断結果の正解数が同じであることを意味する。
【0114】
(S26)追加項目選択部174は、第1抽出ルール群131において追加候補の判断項目が残っているか否かを判定する。追加候補の判断項目が残っている場合、ステップS20に処理が進む。追加候補の判断項目が残っていない場合、ステップS27に処理が進む。なお、次回にステップS21が実行される際は今回の判断モデル112cが次回の判断モデル112bとして扱われる。また、次回にステップS22が実行される際は今回の判断モデル112cに新たな判断項目の追加が行われた結果が、次回の判断モデル112cとして扱われる。
【0115】
(S27)ルール作成部170は、学習部115による最終的な学習結果から第2抽出ルール群132を取得する。すなわち、ルール作成部170は、学習部115により最終的に作成された判断モデル112cとともに出力された判断根拠113bの情報に基づいて、第2抽出ルール群132を生成する。このとき、ルール作成部170は、元ルール群121に含まれる判断項目に関する抽出ルール情報に加えて、精度判定部173により通知された追加の判断項目に関する抽出ルール情報を生成する。そして、第2抽出ルール群取得の処理が終了する。
【0116】
なお、上記の手順では、ルール作成部170は、最終的な学習結果から第2抽出ルール群132における抽出ルール情報を生成するものとしたが、ステップS24における通知を受けるたびに、該当の判断項目に関する抽出ルール情報を生成してもよい。
【0117】
図16は、ルール合成の例を示すフローチャートである。
ルール合成は、ステップS4に相当する。
(S30)合成部180は、第2抽出ルール群132の判断項目を選択し、元ルール群121(基本ワークフロー200)から該当の判断項目を検索する。
【0118】
(S31)合成部180は、ステップS30の検索の結果、第2抽出ルール群132から選択した判断項目と同じ判断項目が元ルール群121にあるか否かを判定する。第2抽出ルール群132から選択した判断項目と同じ判断項目が元ルール群121にある場合、ステップS32に処理が進む。第2抽出ルール群132から選択した判断項目と同じ判断項目が元ルール群121にない場合、ステップS33に処理が進む。
【0119】
(S32)合成部180は、元ルール群121の該当ステップの条件判断を、第2抽出ルール群132から選択した判断項目の条件判断で置換する。これにより、図9,10で例示したように、元ルール群121の該当のステップの条件判断が、機械学習を基に抽出された条件判断に変更され、当該変更が反映された改正ルール情報が生成される。そして、ステップS36に処理が進む。
【0120】
(S33)合成部180は、ステップS30で選択した判断項目の抽出ルール情報に登録された関連判断項目が、元ルール群121に含まれるか否かを判定する。当該関連判断項目が元ルール群121に含まれる場合、ステップS34に処理が進む。当該関連判断項目が元ルール群121に含まれない場合、ステップS35に処理が進む。
【0121】
(S34)合成部180は、元ルール群121の該当の関連判断項目のステップに対して、ステップS30で選択した判断項目に関する条件判断を追加する。これにより、図11,12で例示したように、元ルール群121の該当のステップの条件判断に対して、機械学習を基に抽出された新たな条件判断が追加され、当該追加が反映された改正ルール情報が生成される。そして、ステップS36に処理が進む。
【0122】
(S35)合成部180は、元ルール群121の所定位置に、ステップS30で選択した判断項目に関する条件判断を追加する。ここで、所定位置とは、元ルール群121により表される基本ワークフロー200の最初のステップの直前、または、最後のステップの直後などが考えられる。これにより、当該条件判断の追加が反映された改正ルール情報が生成される。そして、ステップS36に処理が進む。
【0123】
(S36)合成部180は、第2抽出ルール群132の全判断項目を処理済であるか否かを判定する。第2抽出ルール群132の全判断項目を処理済の場合、ルール合成の処理が終了する。第2抽出ルール群132の全判断項目を処理済でない場合、ステップS30に処理が進む。
【0124】
こうして、情報処理装置100は、例えば、元ルール群121から改正ルール群141または改正ルール群142を生成する。言い換えれば、情報処理装置100は、例えば、基本ワークフロー200から、変更後ワークフロー300または変更後ワークフロー300aを生成する。これにより、情報処理装置100は、基本ワークフロー200に含まれる一連の手順を精緻化することができる。情報処理装置100は、精緻化後の変更後ワークフロー300や変更後ワークフロー300aを用いて判断処理を行うことで、判断結果の精度を向上させることができる。また、情報処理装置100は、基本ワークフロー200の修正や改善を支援することができる。
【0125】
改正ルール群141,142は、元ルール群121における元ルール情報と同様に、変更後ワークフロー300,300aを表すルールベースの情報である。ルール実行部190は、改正ルール群141,142に基づいて、ルールベースで表される一連の手順を実行することで、変更後ワークフロー300,300aで表される手順に基づく判断結果を得ることができる。一方、判断モデルを用いたモデルベースでの判断では、判断過程がブラックボックス化されてしまい、AI判断結果が得られた理由の説明が困難になる。これに対して、情報処理装置100によれば、ルールベースで表される手順で判断結果を得られるため、モデルベースでのAI判断を行う場合よりも、ユーザにとって判断結果の理由が分かり易くなる。
【0126】
ここで、類似データ登録の際、情報処理装置100は次の手順を実行する。例えば、類位データは、情報判断部175の登録部175bにより、次のようにして類似データ記憶部175aに、事前に登録されてもよい。
【0127】
図17は、類似データ登録の例を示すフローチャートである。
(S40)登録部175bは、判断項目の過去の抽出結果を分析する。過去の抽出結果は、例えば、多数の会社に対する経営状態の判断などの過去の判断結果と、当該過去の判断結果が得られたときの多数の判断項目の値とを表す情報である。例えば、登録部175bは、過去データ111aよりも情報量の大きなビックデータに基づいて、当該多数の判断項目の各々による過去の判断結果に対する影響の有無を分析することが考えられる。なお、ステップS40の分析は、ユーザによって行われてもよい。
【0128】
(S41)登録部175bは、ステップS40の分析結果により、各判断項目が過去の判断結果の理由を説明できるか否かを判定する。該当の判断項目が過去の判断結果の理由を説明できる場合、該当の判断項目を類似データとして登録せずに、当該判断項目に対する処理を終了する。該当の判断項目が過去の判断結果の理由を説明できない場合、ステップS42に処理が進む。
【0129】
例えば、登録部175bは、該当の判断項目が過去の判断結果に全く影響しないと推定される場合、当該判断項目が過去の判断結果の理由を説明できないと判定する。また、登録部175bは、該当の判断項目が過去の判断結果への影響が多少なりともあると推定される場合、当該判断項目が過去の判断結果の理由を説明できると判定する。なお、ステップS41は、ユーザによる判定の結果を、登録部175bが受け付けることで実行されてもよい。
【0130】
(S42)登録部175bは、過去の判断結果の理由を説明できると判定された判断項目を、類似データとして、類似データ記憶部175aに保存する。そして、当該判断項目に対する処理が終了する。
【0131】
このように、情報判断部175は、会社の経営状態の判断など、目的とする判断内容に明らかに関係しない判断項目を、類似データとして事前に取得しておき、第1抽出ルール群131から類似データに含まれる判断項目を除去する。これにより、追加項目選択部174により不要な判断項目が選択されずに済み、第2抽出ルール群132の作成のための処理量が削減されるとともに、第2抽出ルール群132の作成精度が一層高まる。
【0132】
なお、情報処理装置100により扱われる判断処理の一例には、上記のように会社などの法人の経営状態の監査が考えられる。当該監査では、判断ステップを記載した監査ガイドラインは存在しても、判断の基準となる項目が全て記載されていなかったり、判断の基準となる基準値が業界水準の値であったりする。このため、監査ガイドラインだけでは、経営状態の良否を適切に判断するには不十分であることがある。そこで、情報処理装置100により、当該監査における判断ステップを精緻化し、判断精度を高めることができる。
【0133】
あるいは、他の例としては、投資先や取引先の経営状態の判断が考えられる。当該判断では、財務諸表などの書類を確認して判断することがあるが、当該書類に一般的な判断項目があっても、当該判断項目に対する値が一般的な数字となっており、具体的な値が提示されていないことがある。そこで、情報処理装置100により、当該監査における判断ステップを精緻化し、判断精度を高めることができる。
【0134】
このように、ある判断プロセスで行う作業や判断が、ガイドライン(文書)で作成されており、当該文書の記載内容をワークフローの形で書き下す際に、情報処理装置100により当該ワークフローを修正することができる。前述のように、ワークフローはルールベースの情報で記述され、ユーザにとって判断内容が分かり易いため、ワークフローからガイドラインを精緻化することも可能になる。
【0135】
また、ガイドラインをワークフローの形にした後、ワークフローが緻密化されることにより、当該ワークフローに基づく情報処理装置100の判断結果の精度が上がる。その結果、監査などの判断結果の精度や、判断要因の抽出精度の向上を図れる。
【0136】
更に、基本となるルールや規定を変更しなければいけない場合に、過去データが含む多種類のパラメータのいずれが判断処理の影響度が大きいかが分からないことがある。また、判断処理のパラメータに精通した人が当該影響度を検討する必要がある。このため、過去データに基づいて判断フローを変更する際に改善影響の大きいパラメータを適切に選択できないことがある。
【0137】
これに対し、情報処理装置100は、基本となるルールや規定を変更しなければいけない場合に、ユーザによる変更作業を支援することができる。情報処理装置100は、機械学習を使って判断処理への影響度が大きいパラメータに関する新たなルールを発見・抽出することにより、基本となるルールの適切な変更を支援できる。
【0138】
以上で説明したように、情報処理装置100は、例えば次の処理を実行する。
元ルール記憶部120は、各々がパラメータに対する判断条件を示す複数の第1判断ステップにより判断結果を得る判断フローの情報を記憶する。ルール作成部170は、複数のパラメータに対する判断結果を表す教師データを用いた機械学習に基づいて、機械学習により生成される判断モデルに関連する複数の第2判断ステップを取得する。ルール作成部170は、複数の第2判断ステップの各々と関連するパラメータを特定し、判断モデルへのパラメータの影響に応じて、複数のパラメータからパラメータの組を抽出する。合成部180は、抽出したパラメータの組に基づいて、判断フローに含まれる複数の第1判断ステップの一部を変更する。
【0139】
これにより、情報処理装置100は、判断処理に影響のあるパラメータに関する条件を判断フローに反映できる。また、情報処理装置100は、判断フローを適切に改善できる。なお、判断項目は、パラメータの一例である。基本ワークフロー200は、判断フローの一例である。過去データ111a,111b,111cは、教師データの一例である。元ルール群121により表されるステップ1,2,…は、複数の第1判断ステップの一例である。第1抽出ルール群131や第2抽出ルール群132おけるステップA,B,…は、複数の第2判断ステップの一例である。
【0140】
判断モデルへのパラメータの影響は、例えば、判断結果が既知の入力を用いて、該当のパラメータがない場合の判断モデルでの判断結果に対し、該当のパラメータがある場合の判断モデルでの判断結果の精度が改善されるかにより判断される。該当のパラメータがある場合の判断モデルでの判断結果の精度が、当該パラメータがない場合に比べて改善される場合、判断モデルへの当該パラメータの影響があることになる。一方、該当のパラメータがある場合の判断モデルでの判断結果の精度が、当該パラメータがない場合に比べて改善されない場合、判断モデルへの当該パラメータの影響がないことになる。
【0141】
また、類似データ記憶部175aは、特定のパラメータを示す情報を記憶する。情報判断部175は、教師データに含まれるパラメータ群のうち、当該特定のパラメータを機械学習に用いないと決定する。
【0142】
これにより、情報処理装置100は、第2抽出ルール群132の作成に要する処理量を減らせる。また、判断処理に明らかに不要なパラメータを特定のパラメータとして登録しておくことで、第2抽出ルール群132の作成精度を向上できる。その結果、情報処理装置100は、判断フローの改善の精度を高めることができる。
【0143】
また、ルール作成部170が抽出するパラメータの組は、判断フローに含まれる第1パラメータと、判断フローに含まれない第2パラメータとを含む。合成部180は、第1パラメータに対応する第1判断ステップを複数の第1判断ステップから特定し、特定した第1判断ステップに対して、第2パラメータに関する判断条件を追加する。
【0144】
これにより、情報処理装置100は、判断フローに含まれる判断条件を、機械学習結果に基づいて精緻化することができる。その結果、情報処理装置100は、判断フローに基づく判断結果の精度を向上できる。
【0145】
また、合成部180は、判断フローに含まれる第3パラメータに対する新たな判断条件を複数の第2判断ステップから抽出する。合成部180は、判断フローに含まれる、第3パラメータに対する判断条件を、抽出した新たな判断条件に置換する。
【0146】
これにより、情報処理装置100は、判断フローに含まれる判断条件を、機械学習結果に基づいて精緻化することができる。その結果、情報処理装置100は、判断フローに基づく判断結果の精度を向上できる。
【0147】
また、合成部180は、判断フローに含まれない第4パラメータに対する判断条件を複数の第2判断ステップから抽出する。合成部180は、判断フローに対して、第4パラメータに対する判断条件を示す判断ステップを追加する。
【0148】
これにより、情報処理装置100は、判断フローに含まれる判断条件を、機械学習結果に基づいて精緻化することができる。その結果、情報処理装置100は、判断フローに基づく判断結果の精度を向上できる。
【0149】
更に、合成部180は、複数の第1判断ステップの一部を変更した変更後の判断フローに含まれる各判断ステップを示すルール情報であって、変更後の判断フローで用いられるパラメータに対する判断条件が記述されたルール情報を生成する。ルール実行部190は、ルール情報に基づいて変更後の判断フローを実行することで、新たな入力データに対する新たな判断結果を取得する。
【0150】
このように、パラメータに対する判断条件が記述されたルールベースの情報に基づいて変更後の判断フローを実行して判断結果を得ることで、モデルベースでAI判断結果を得るよりも、判断結果が得られる理由をユーザが理解し易くなる。ここで、変更後ワークフロー300,300aは、変更後の判断フローの一例である。改正ルール群141,142または改正ルール群141,142に含まれる改正ルール情報は、変更後の判断フローを示すルール情報の一例である。新規データ151は、新たな入力データの一例である。判断結果161は、新たな判断結果の一例である。
【0151】
なお、第1の実施の形態の情報処理は、処理部12にプログラムを実行させることで実現できる。また、第2の実施の形態の情報処理は、CPU101にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体53に記録される。
【0152】
例えば、プログラムを記録した記録媒体53が配布されることで、プログラムが流通される。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体53に記録されたプログラムまたは他のコンピュータから受信したプログラムを、RAM102やHDD103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。
【0153】
なお、パラメータはワークフローに出てくる言葉、あるいは、元ルール群に入っているものに限定するものではない。例えば、学習するデータには、文字情報以外のデータ、例えば画像が含まれている場合もある。画像に右向きの顔画像がある場合、且つワークフローには「右向き」という文言がある場合、画像を前処理して、「右向き」という情報を抽出して、対応をとる方法もある。また、ワークフローに「右向き」という情報がない場合もある。その場合は、「右」という言葉で一致する内容を探して関連する部分を特定する。該当するものが無い場合は、ワークフローの任意の位置に新規パラメータを追加したり、ワークフローに追加する新たなパラメータの候補としてユーザに提示し、選択、追加させる方法もある。
【符号の説明】
【0154】
10 情報処理装置
11 記憶部
12 処理部
20 判断フロー
30 判断ステップ情報
40 変更後判断フロー
21,22,41,42 判断ステップ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17