(57)【特許請求の範囲】
【請求項１】
制御システムで使用される制御対象機器に対して制御装置が行った処理の結果を含む入力データが蓄積された入力データベースより、予め設定された学習期間で読み出した前記入力データに基づいて学習されるブラックボックス化された機械学習モデルであって、前記入力データから前記処理の結果を予測値として出力可能な前記ブラックボックス化された機械学習モデルの作成に合わせて、前記ブラックボックス化された機械学習モデルの作成に用いられた前記入力データを説明変数とし、前記ブラックボックス化された機械学習モデルが出力する予測値を目的変数としてホワイトボックスモデルを作成するホワイトボックスモデル作成部と、
前記ブラックボックス化された機械学習モデルの予測値の精度が判定される判定期間に、前記ブラックボックス化された機械学習モデルから出力される前記予測値の精度が変化したことが判定されると、前記判定期間に蓄積された前記入力データを前記ホワイトボックスモデルに入力して、前記予測値の精度が変化した要因を特定する要因特定部と、を備える
機械学習モデル精度分析システム。
【請求項２】
前記判定期間に、前記ブラックボックス化された機械学習モデルから出力される前記予測値の精度が閾値よりも変化した場合に、前記予測値の精度が悪化したと判定する精度判定部を備え、
前記要因特定部は、前記精度判定部により前記予測値の精度が悪化したと判定された場合に、前記予測値の精度が変化した要因を特定する
請求項１に記載の機械学習モデル精度分析システム。
【請求項３】
前記要因特定部により前記予測値の精度が変化した要因が特定されると、前記ブラックボックス化された機械学習モデルの再モデリング方法を提案する提案部を備える
請求項２に記載の機械学習モデル精度分析システム。
【請求項４】
前記提案部は、前記要因特定部により特定された前記予測値の精度が変化した要因を示し、前記ブラックボックス化された機械学習モデルに入力され、再モデリングで用いられる前記入力データの条件の変更を提案する
請求項３に記載の機械学習モデル精度分析システム。
【請求項５】
前記提案部は、前記ブラックボックス化された機械学習モデルの学習時に用いられた前記入力データが入力された前記ホワイトボックスモデルの出力結果と、前記ブラックボックス化された機械学習モデルの前記予測値の精度が変化した時点を含む前記判定期間の前記入力データが作成された前記ホワイトボックスモデルの出力結果とを示す
請求項４に記載の機械学習モデル精度分析システム。
【請求項６】
前記提案部により指示された、前記ブラックボックス化された機械学習モデルの再モデリング方法に基づいて前記入力データベースから抽出した前記入力データを、前記ブラックボックス化された機械学習モデルを作成するブラックボックス化された機械学習モデルの作成装置に出力する抽出部を備える
請求項３に記載の機械学習モデル精度分析システム。
【請求項７】
前記ホワイトボックスモデルは、所定の発生率で前記制御対象機器に出現する事象を所定の条件で分岐する決定木により前記事象を特定する決定木モデルで表され、
前記要因特定部は、前記判定期間に蓄積された前記入力データを前記決定木モデルに入力して、前記決定木の分岐ごとに前記事象の発生率を算出し、
前記学習期間に算出される前記事象の発生率と、前記判定期間に算出される前記事象の発生率との変化量が、閾値よりも大きくなった場合に、前記決定木の分岐条件を前記予測値の精度が変化した要因として特定する
請求項１〜６のいずれか一項に記載の機械学習モデル精度分析システム。
【請求項８】
前記提案部は、前記ブラックボックス化された機械学習モデルの前記予測値の精度が変化した時点を示し、再モデリングで用いられる前記入力データの条件として、前記再モデリングで用いられる前記入力データを取得する期間を提案する
請求項７に記載の機械学習モデル精度分析システム。
【請求項９】
前記提案部は、前記要因特定部により特定された前記要因により、前記発生率の変化が前記閾値より大きくなった分岐条件の削除を提案する
請求項７に記載の機械学習モデル精度分析システム。
【請求項１０】
前記ホワイトボックスモデルは、前記制御対象機器に出現する事象を、同じ特徴を持つ部分集合に分割したクラスタごとに分類するクラスタリングモデルで表され、
前記要因特定部は、前記判定期間に蓄積された前記入力データを前記クラスタリングモデルに入力して、前記クラスタごとに前記事象の発生率を算出し、
前記学習期間に算出される前記事象の発生率と、前記判定期間に算出される前記事象の発生率との変化量が、閾値よりも大きくなった場合に、前記変化量が大きくなった前記クラスタについて、距離が最も近いクラスタとの中心間の距離を算出し、
前記距離における距離成分が最も大きい説明変数を前記予測値の精度が変化した要因として特定する
請求項１〜６のいずれか一項に記載の機械学習モデル精度分析システム。
【請求項１１】
前記制御装置が前記制御対象機器に行った処理は、前記制御対象機器が加工した加工物を計測する処理を含む
請求項１に記載の機械学習モデル精度分析システム。
【請求項１２】
制御システムで使用される制御対象機器に対して制御装置が行った処理の結果が蓄積された入力データベースより、予め設定された学習期間で読み出した入力データに基づいて学習されるブラックボックス化された機械学習モデルであって、前記入力データから前記処理の結果を予測値として出力可能な前記ブラックボックス化された機械学習モデルの作成に合わせて、前記ブラックボックス化された機械学習モデルの作成に用いられた前記入力データを説明変数とし、前記ブラックボックス化された機械学習モデルが出力する予測値を目的変数としたホワイトボックスモデルを作成するステップと、
前記ブラックボックス化された機械学習モデルの予測値の精度が判定される判定期間に、前記ブラックボックス化された機械学習モデルから出力される前記予測値の精度が変化したことが判定されると、前記判定期間に蓄積された前記入力データを前記ホワイトボックスモデルに入力して、前記予測値の精度が変化した要因を特定するステップと、を含む
機械学習モデル精度分析方法。
【請求項１３】
制御システムで使用される制御対象機器に対して制御装置が行った処理の結果が蓄積された入力データベースより、予め設定された学習期間で読み出した入力データに基づいて学習されるブラックボックス化された機械学習モデルであって、前記入力データから前記処理の結果を予測値として出力可能な前記ブラックボックス化された機械学習モデルの作成に合わせて、前記ブラックボックス化された機械学習モデルの作成に用いられた前記入力データを説明変数とし、前記ブラックボックス化された機械学習モデルが出力する予測値を目的変数としたホワイトボックスモデルを作成する手順と、
前記ブラックボックス化された機械学習モデルの予測値の精度が判定される判定期間に、前記ブラックボックス化された機械学習モデルから出力される前記予測値の精度が変化したことが判定されると、前記判定期間に蓄積された前記入力データを前記ホワイトボックスモデルに入力して、前記予測値の精度が変化した要因を特定する手順と、を
コンピューターに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械学習モデル精度分析システム、機械学習モデル精度分析方法及びプログラムに関する。
【背景技術】
【０００２】
近年、人工知能技術（以下、ＡＩ（Artificial Intelligence）と記載）の発展が目覚ましい。ＡＩのプログラム自身が機械学習を行うことで、所定の学習期間に取得する入力データの特徴を見つけて、予測値を出力する機械学習モデルを作成することが可能となる。
【０００３】
機械学習モデルが出力する予測値が、実際に運用される制御システムで実測される実測値を精度よく表したものであれば、機械学習モデルの予測値に基づいて制御システムの動作を予測することが可能となる。しかし、長期間にわたって運用される制御システムは、様々な要因により学習時の状態から変化する。このため、機械学習モデルが出力する予測値が徐々に実測値から乖離し、予測精度が変化することがあった。
【０００４】
一般的に機械学習モデルの構成はブラックボックス化されており、外部から機械学習モデルの処理内容を把握することは難しい。このため、機械学習モデルの予測精度が変化したことを説明することが困難であった。なお、以下の説明では、ブラックボックス化された機械学習モデルを「ブラックボックスモデル」と呼ぶ。
【０００５】
このような課題に対して、ＡＩ（例えば、機械学習モデル）が予測値を予測した根拠を説明可能なＸＡＩ（Explainable AI）と呼ばれる技術が開発されつつある。従来のＸＡＩとして、機械学習モデルの構築時に使用された学習データを用いて、機械学習モデルから出力される出力データが算出された要因を特定する技術が提供されていた。
【０００６】
例えば、従来のＸＡＩを表す技術として、特許文献１及び２に開示された技術が知られている。特許文献１には、「データベースに格納されているデータに基づいてディープラーニングモデルを用いて予測処理を実行するディープラーニング予測手段と、ディープラーニング予測手段による予測結果を目的変数とし、データベースに格納されているデータを説明変数として重回帰分析を行い、重回帰分析の結果に基づいて、ディープラーニングモデルの予測結果を説明するための変数を決定する」と記載されている。
【０００７】
また、特許文献２には、「分析者がモデル実行装置のモデル（説明変数データ）を決定し、適宜モデルを機械学習により再構築（リモデル）することを、有益な情報の画面表示により支援する」と記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】国際公開第２０１８／１４２７５３号
【特許文献２】特許第６６２５１８３号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、特許文献１に開示された技術では、ディープラーニングモデルの予測結果を説明するための変数が、ディープラーニングモデルでどのように使われているかを外部から知ることができなかった。
【００１０】
また、特許文献２に開示された技術においても単に演算モデルの再構築が促されるに過ぎず、演算モデルの精度が悪化した要因を把握できなかった。このように従来の技術では、ブラックボックス化された機械学習モデルの予測精度が変化した要因を説明するには不十分であった。
【００１１】
本発明はこのような状況に鑑みて成されたものであり、ブラックボックス化された機械学習モデルが出力する予測値の予測精度が変化した要因を特定することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る機械学習モデル精度分析システムは、制御システムで使用される制御対象機器に対して制御装置が行った処理の結果を含む入力データが蓄積された入力データベースより、予め設定された学習期間で読み出した入力データに基づいて学習されるブラックボックス化された機械学習モデルであって、入力データから処理の結果を予測値として出力可能なブラックボックス化された機械学習モデルの作成に合わせて、ブラックボックス化された機械学習モデルの作成に用いられた入力データを説明変数とし、ブラックボックス化された機械学習モデルが出力する予測値を目的変数としてホワイトボックスモデルを作成するホワイトボックスモデル作成部と、ブラックボックス化された機械学習モデルの予測値の精度が判定される判定期間に、ブラックボックス化された機械学習モデルから出力される予測値の精度が変化したことが判定されると、判定期間に蓄積された入力データをホワイトボックスモデルに入力して、予測値の精度が変化した要因を特定する要因特定部と、を備える。
【発明の効果】
【００１３】
本発明によれば、判定期間に蓄積された入力データをホワイトボックスモデルに入力して、ブラックボックス化された機械学習モデルから出力される予測値の精度が変化した要因を特定することが可能となる。
上記した以外の課題、構成及び効果は、以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態に係る制御システム及び分析システムの全体構成例を示すブロック図である。
【図２】本発明の第１の実施の形態に係る制御システム及び分析システムで用いられる様々なデータの流れの例を示す図である。
【図３】本発明の第１の実施の形態に係る決定木モデルの構成例を示す図である。
【図４】本発明の第１の実施の形態に係るクラスタリングモデルの構成例を示す図である。
【図５】本発明の第１の実施の形態に係る計算機のハードウェア構成例を示すブロック図である。
【図６】本発明の第１の実施の形態に係る分析システム全体の処理の例を示すフローチャートである。
【図７】本発明の第１の実施の形態に係るホワイトボックスモデル作成部が、ホワイトボックスモデルを作成する処理の例を示すフローチャートである。
【図８】本発明の第１の実施の形態に係る精度悪化要因特定部が、ブラックボックスモデルの予測値の精度悪化要因を特定する処理の例を示すフローチャートである。
【図９】本発明の第１の実施の形態に係る再モデリング方法提案部が、ブラックボックスモデルの再モデリング方法を提案する処理の例を示すフローチャートである。
【図１０】本発明の第１の実施の形態に係る再モデリング方法の提案画面の例を示す図である。
【図１１】本発明の第２の実施の形態に係る再モデリング方法提案部が、ブラックボックスモデルの再モデリング方法を提案する処理の例を示すフローチャートである。
【図１２】本発明の第２の実施の形態に係る再モデリング方法の提案画面の例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態について、添付図面を参照して説明する。本明細書及び図面において、実質的に同一の機能又は構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。
【００１６】
［第１の実施の形態］
＜分析システムの構成例＞
始めに、本発明の第１の実施の形態に係るブラックボックス化された機械学習モデルの精度を分析する機械学習モデル精度分析システムについて説明する。
図１は、制御システム１及び分析システム２の構成例を示すブロック図である。
【００１７】
図１には、顧客で使用される制御システム１と、顧客に所定のサービスを提供するサービス提供者が制御システム１の動作を分析するために使用する分析システム２（機械学習モデル精度分析システムの一例）とが示されている。制御システム１は、例えば、計測装置１１、機器１２、入力データベース１３、ブラックボックスモデル作成装置１４、ブラックボックスモデル１５及び精度データ蓄積データベース１６を備える。
【００１８】
（制御システム）
始めに、制御システム１の内部構成例について説明する。
計測装置１１（制御装置の一例）は、顧客で使用される機器１２（制御対象機器の一例）の温度等を計測する。計測装置１１が機器１２を計測して得たデジタル又はアナログの実測値は、入力データとして入力データベース１３（図では、「入力ＤＢ」と記載）に格納される。
【００１９】
入力データベース１３は、例えば、ＨＤＤ（Hard Disk Drive）等の大容量の不揮発性ストレージ６７（後述する図５を参照）で構成されており、大量の入力データを格納する。入力データベース１３には、制御システム１で使用される機器１２に対して計測装置１１が行った処理の結果が入力データとして蓄積される。この入力データは、計測装置１１が実際に機器１２を計測して得た実測値を含む。なお、計測装置１１が機器１２に行った処理は、機器１２が加工した加工物を計測する処理を含むものとする。
【００２０】
入力データベース１３に保存される入力データは、ブラックボックスモデル作成装置１４がブラックボックスモデル１５を構築する学習時に用いられる。学習時に用いられる入力データを「学習データ」とも呼ぶ。また、入力データベース１３に保存される入力データは、制御システム１の運用開始後に、検証部２２がブラックボックスモデル１５の予測値を評価する時にも用いられる。
【００２１】
ブラックボックスモデル作成装置１４は、学習時に入力データベース１３から学習期間の入力データを読み出す。上述したようにブラックボックスモデル作成装置１４に入力される入力データは、いずれも実測値である。そして、ブラックボックスモデル作成装置１４は、予め設定された学習期間で読み出した入力データに基づいて入力データの特徴を学習し、ブラックボックスモデル１５を作成する。図中の左側には、学習時に構築されたブラックボックスモデル１５の例が示される。このブラックボックスモデル１５は、入力データベース１３から入力された実測値の入力データを説明変数及び目的変数として構築される、ブラックボックス化された機械学習モデルの一例であり、顧客以外に内部構成が公開されていない。
【００２２】
制御システム１が運用開始されると、ブラックボックスモデル１５が稼働する。計測装置１１及び機器１２を管理する顧客は、ブラックボックスモデル１５が出力する予測値に基づいて、機器１２の状態を監視し、機器１２の動作を予測する。制御システム１の運用時に稼働するブラックボックスモデル１５は、図中の右側に配置されており、このブラックボックスモデル１５を用いて予測処理が行われることが示される。
【００２３】
ブラックボックスモデル１５には、入力データベース１３から読み出された、実測値である入力データが説明変数として入力される。そして、ブラックボックスモデル１５は、実測値に対する予測値を目的変数として出力し、精度データ蓄積データベース１６（図では、「精度データ蓄積ＤＢ」と記載）に精度データとして蓄積する。
【００２４】
精度データ蓄積データベース１６には、入力データベース１３から読み出された実測値の入力データが目的変数として蓄積される。また、精度データ蓄積データベース１６には、上述したブラックボックスモデル１５から出力された予測値が目的変数として蓄積される。つまり、精度データ蓄積データベース１６に蓄積される精度データには、計測装置１１が機器１２を計測して取得する実測値と、ブラックボックスモデル１５が予測した予測値とが含まれる。
【００２５】
（分析システム）
次に、分析システム２の内部構成例について説明する。
分析システム２は、ブラックボックスモデル１５の予測値の予測精度を分析する。ブラックボックスモデル１５は、ブラックボックス化された機械学習モデルの一例である。ブラックボックスモデル１５の内部処理は、サービス提供者が把握できない。この分析システム２は、ブラックボックスモデル１５の予測精度が悪化した要因（以下、「精度悪化要因」と呼ぶ）を特定するサービスの提供者によって使用される。この分析システム２は、既存の制御システム１に後付けすることが可能である。この分析システム２は、精度判定部２１、検証部２２及び提案学習データ抽出部２７を備える。
【００２６】
精度判定部２１は、ブラックボックスモデル１５の予測値の精度が判定される精度判定期間（「計測時」とも呼ぶ）にブラックボックスモデル１５から出力される予測値の精度が、サービス提供者により予め設定された閾値（精度閾値）よりも変化した場合に、予測値の精度が悪化したと判定する。ここで、「予測値の精度」とは、実測値に対してブラックボックスモデル１５から出力される予測値が合致している割合のことをいう。そして、学習時に判定される予測値の精度に対して、計測時に判定される予測値の精度が閾値よりも低くなることを、「予測値の精度が悪化した」と言う。例えば、閾値を７０％と設定した場合に、計測時における実測値に対する予測値の精度が６５％であると、予測値が閾値よりも低くなるので、精度判定部２１は、予測値の精度が悪化したと判定する。７０％と設定された閾値は、学習時における実測値に対する予測値の精度を基に決定される。
【００２７】
そこで、精度判定部２１は、ブラックボックスモデル１５が作成されたタイミングで精度データ蓄積データベース１６から読み出した精度データを入力として、実測値に対する予測値の予測精度の良否を判定する。例えば、判定期間における予測値の精度が、学習期間における予測値の精度と同等であれば、ブラックボックスモデル１５の動作に問題はない。一方、判定期間における予測値の精度が、学習期間における予測値の精度から乖離してくれば、制御システム１は、ブラックボックスモデル１５が出力したデータを予測値として用いることができない。そこで、精度判定部２１は、予測精度の判定結果を検証部２２に出力する。
【００２８】
（精度悪化要因の特定）
ここで、検証部２２の内部構成例及び動作例について説明する。
検証部２２は、ブラックボックスモデル１５が出力した予測値を検証し、精度悪化要因を特定すると、顧客にブラックボックスモデル１５の再モデリング方法を提案する。この検証部２２は、顧客が作成した既存のブラックボックスモデル１５の性能を評価し、精度悪化要因を特定するために用いられる。そこで、分析システム２と同様に、検証部２２だけを既存の制御システム１に後付けすることも可能である。この検証部２２は、ホワイトボックスモデル作成部２３、ホワイトボックスモデル２４、精度悪化要因特定部２５、及び再モデリング方法提案部２６を備える。
【００２９】
ホワイトボックスモデル作成部２３は、入力データベース１３から読み出した入力データから、計測装置１１による処理の結果を予測値として出力可能なブラックボックスモデル１５の作成に合わせて、サービス提供者が内部処理を把握可能なホワイトボックスモデル２４を作成する。ホワイトボックスモデル２４の作成処理では、まず、図中の左側に配置されたブラックボックスモデル１５が予測した予測値と、入力データベース１３から読み出した実測値とを含む入力データがホワイトボックスモデル作成部２３に入力される。そして、ホワイトボックスモデル作成部２３は、ブラックボックスモデル１５の作成に用いられた入力データを説明変数とし、ブラックボックスモデル１５が出力する予測値を目的変数としてホワイトボックスモデル２４を作成することができる。後述するようにブラックボックスモデル１５の再モデリング（再学習）の際にもホワイトボックスモデル作成部２３が稼働する。
【００３０】
このホワイトボックスモデル２４は、ブラックボックスモデル１５の処理を模したものである。サービス提供者は、ホワイトボックスモデル２４を通じて、処理の分岐、判断の内容等を確認することができ、ホワイトボックスモデル２４の内部構造を把握することが可能である。図中の左側には、ブラックボックスモデル１５と共に作成されたホワイトボックスモデル２４の例が示される。ホワイトボックスモデル２４は、例えば、検証部２２が備える不揮発性ストレージ６７（後述する図５を参照）に保存されるとよい。
【００３１】
そして、検証部２２が、予測値の精度悪化要因を特定する際には、図中の右側に配置されたホワイトボックスモデル２４が稼働する。このホワイトボックスモデル２４には、入力データベース１３から読み出された実測値の入力データが、説明変数及び目的変数として入力される。ホワイトボックスモデル２４に実測値の説明変数及び目的変数が入力されるのは、精度悪化要因特定部２５が、ホワイトボックスモデル２４内の分岐で、正しい分岐、及び間違っている分岐を判別するためである。精度悪化要因特定部２５は、分岐の正誤を判別することで、ブラックボックスモデル１５の間違っているところを把握する、すなわち精度悪化要因の特定を行うことが可能となる。
【００３２】
そこで、精度悪化要因特定部２５（要因特定部の一例）は、精度判定部２１から入力された精度判定結果が、予測値の精度が悪化したことを示す結果である場合に、予測値の精度が悪化した要因を特定するために、図１の右側に配置されるホワイトボックスモデル２４を稼働させる。この際、精度悪化要因特定部２５は、ブラックボックスモデル１５の予測値の精度が判定される判定期間に、ブラックボックスモデル１５から出力される予測値の精度が変化したことが判定されると、判定期間に入力データベース１３へ蓄積された入力データをホワイトボックスモデル２４に入力して、予測値の精度が変化した要因を特定する。
【００３３】
この際、精度悪化要因特定部２５は、ホワイトボックスモデル２４から出力される予測値と、ホワイトボックスモデル２４自体の内部構造に基づいて、精度悪化要因を特定する処理を行う。そして、精度悪化要因特定部２５は、特定した精度悪化要因を再モデリング方法提案部２６に出力する。
【００３４】
再モデリング方法提案部２６（提案部の一例）は、精度悪化要因特定部２５により予測値の精度が変化した要因が特定されると、ブラックボックスモデル１５の再モデリング（「再学習」とも呼ぶ）の方法を提案する。提案される再モデリング方法には、例えば、ブラックボックスモデル１５の予測値の精度が悪化した期間以降の入力データ（後述する図１０に示す２０２０年０２月以降のデータ）を用いて、ブラックボックスモデル１５の再学習を提案する等の具体的な方法が含まれる。
【００３５】
再モデリング方法提案部２６は、サービス提供者に再モデリング方法を提案する。このため再モデリング方法提案部２６は、ホワイトボックスモデル２４から精度悪化要因として特定された処理の一部、又はどのような再モデリング方法でブラックボックスモデル１５を再モデリングすれば予測値の精度を高められるかといった情報を表示装置６５（後述する図５を参照）に出力する。
【００３６】
再モデリング方法提案部２６により提案された再モデリング方法は、サービス提供者のみならず顧客にも提供される。そして、分析システム２では、再モデリング方法提案部２６が、提案学習データ抽出部２７に対して、ブラックボックスモデル１５の再モデリング方法に基づくデータ抽出の指示を出力する。このため、顧客の了承の下、分析システム２がブラックボックスモデル１５の再モデリングに必要なデータを改めて入力データベース１３から抽出し、制御システム１に抽出したデータを提供する。制御システム１は、提供されたデータを用いてブラックボックスモデル１５の再モデリングを行う。
【００３７】
（再モデリング）
次に、ブラックボックスモデル１５の再モデリングの処理について説明する。
図１の左上にある提案学習データ抽出部２７（抽出部の一例）は、再モデリング方法提案部２６から出力された指示に基づいて、入力データベース１３から入力データを抽出する処理を開始する。再モデリング方法提案部２６から出力された指示は、例えば、再モデリング方法提案部２６がサービス提供者に提案し、了承を得た再モデリング方法の実行指示である。再モデリング方法提案部２６は、例えば、複数の再モデリング方法を提案すると、サービス提供者により、一つの再モデリング方法が選択される。そして、サービス提供者が選択した再モデリング方法の実行指示が行われることで、提案学習データ抽出部２７が始動する。そして、提案学習データ抽出部２７は、再モデリング方法提案部２６により指示された再モデリング方法に基づいて入力データベース１３から抽出した入力データを、ブラックボックスモデル１５を作成するブラックボックスモデル作成装置１４に出力する。
【００３８】
提案学習データ抽出部２７が入力データベース１３から抽出する入力データは、ブラックボックスモデル１５の再モデリングに必要となる提案学習データとして用いられる。例えば、入力データベース１３からは、精度判定部２１によりブラックボックスモデル１５の予測値の精度が悪化したと判定された時点以降に蓄積された入力データが提案学習データとして抽出される。提案学習データ抽出部２７が抽出した提案学習データは、ブラックボックスモデル作成装置１４に出力される。
【００３９】
なお、提案学習データ抽出部２７は、再モデリング方法提案部２６が提案した再モデリング方法に対して修正があった場合（例えば、入力データの抽出期間の変更）、この修正した方法に従って再モデリング方法提案部２６から再モデリング方法に基づくデータ抽出の指示が出力される。この場合においても、提案学習データ抽出部２７は、データ抽出の指示に従って、入力データベース１３から入力データ（提案学習データ）を抽出することができる。
【００４０】
ブラックボックスモデル作成装置１４は、提案学習データ抽出部２７から入力される提案学習データを再学習用データとして用いて、ブラックボックスモデル１５を再作成する。ブラックボックスモデル１５の再作成は、提案学習データ抽出部２７から再学習用データとして入力される実測値の提案学習データを説明変数及び目的変数として用いて、ブラックボックスモデル１５を再作成する処理である。この処理の後、制御システム１では、再作成されたブラックボックスモデル１５を用いて、実測値に対する予測値を出力する処理が行われる。
【００４１】
また、ブラックボックスモデル１５が再作成されると、ホワイトボックスモデル作成部２３は、ホワイトボックスモデル２４を再作成する。この際、ホワイトボックスモデル作成部２３には、ブラックボックスモデル１５の再作成時にブラックボックスモデル作成装置１４に入力された提案学習データが、再学習用データとして入力される。そして、ホワイトボックスモデル作成部２３は、提案学習データ抽出部２７から入力される実測値の再学習用データを説明変数及び目的変数として用いて、ホワイトボックスモデル２４を再作成する。このようなブラックボックスモデル１５の予測値の精度判定、精度悪化要因の特定、ブラックボックスモデル１５及びホワイトボックスモデル２４の再作成が繰り返し行われる。
【００４２】
＜データの流れ＞
次に、各システムで用いられるデータの流れについて説明する。
図２は、制御システム１及び分析システム２で用いられる様々なデータの流れの例を示す図である。図２では、データの流れに注目するため、ブラックボックスモデル作成装置１４、精度判定部２１及びホワイトボックスモデル作成部２３の記載を省略する。
【００４３】
図１に示した入力データベース１３には、多数の入力データが格納される。上述したようにブラックボックスモデル作成装置１４は、入力データを入力としてブラックボックスモデル１５を作成する。ホワイトボックスモデル作成部２３は、入力データと、ブラックボックスモデル１５が出力するデータとを用いてホワイトボックスモデル２４を作成する。
【００４４】
制御システム１の運用開始後に、ブラックボックスモデル１５は、運用開始後の実測値である入力データを入力として、予測値を出力する。しかし、制御システム１の運用期間が長くなると、ブラックボックスモデル１５が作成された時点よりも予測値の予測精度が変化する。そこで、図１に示した精度判定部２１が算出した予測精度が、予め定めた閾値より悪化すると、ブラックボックスモデル１５の予測精度が悪化した要因を特定する処理が行われる。例えば、精度判定部２１が算出した予測精度が、８０％から７０％未満（閾値１０％以上の変化）に変化すると、予測精度が悪化したと判定される。
【００４５】
ただし、サービス提供者は、ブラックボックスモデル１５の外部から、その処理の内容を知ることができない。そこで、ホワイトボックスモデル作成部２３は、ブラックボックスモデル１５の処理を可視化したホワイトボックスモデル２４を作成しておく。この際、ホワイトボックスモデル作成部２３は、入力データベース１３から読み出した入力データ（実測値）を説明変数とし、ブラックボックスモデル１５の出力データ（予測値）を目的変数としてホワイトボックスモデル２４を作成する。図中には、ホワイトボックスモデル２４として、例えば、決定木モデル２４ａ及びクラスタリングモデル２４ｂが作成されたことが示される。
【００４６】
＜ホワイトボックスモデルの例＞
ここで、ホワイトボックスモデル２４の一例として用いられる、決定木モデル２４ａ及びクラスタリングモデル２４ｂの構成例について、図３と図４を参照して説明する。
【００４７】
（決定木モデル）
図３は、決定木モデル２４ａの構成例を示す図である。決定木モデルは、最上位にあるルートと、ルートに接続されたノード、子がないノードであるリーフによって構成される木構造を用いて、事象を分類する手法である。ここでは、ホワイトボックスモデル２４が、決定木モデル２４ａで表されたとする。決定木モデル２４ａは、所定の発生率で機器１２に出現する事象を所定の条件で分岐する決定木で構成され、この決定木により事象が特定される。決定木モデル２４ａは、ルート３１、ノード３３、リーフ３２，３４，３５によって構成される。
【００４８】
（学習時）
始めに、ブラックボックスモデル作成装置１４がブラックボックスモデル１５を作成した学習時に、決定木モデル２４ａがどのような構成であったかを説明する。決定木モデル２４ａでは、ルート３１にて、発生率が１５％の事象（例えば、計測対象である機器１２の水分値、機器１２の不良等）が分類対象とされる。ここで、学習時には、１０００個以上の事象がブラックボックスモデル１５及びホワイトボックスモデル２４の作成に用いられたとする。そして、学習時には、後述する図１０の決定木モデル表示部Ｗ１ａに示すように、板厚が２０以上である分岐条件に対して、決定木モデル２４ａのノード３３で表される事象の発生率が３０％であり、加熱温度が２００℃未満であるリーフ３４で表される事象の発生率が５０％であったとする。ここで、学習時に算出された事象の発生率をノード３３、リーフ３４，３５の近傍に括弧書きで併記する。
【００４９】
（計測時）
次に、制御システム１の運用開始後、すなわち計測装置１１による機器１２の計測時において、ブラックボックスモデル１５の予測精度が変化（悪化）した時点で、決定木モデル２４ａがどのような構成に変化するかを説明する。決定木モデル２４ａが、ルート３１にて、発生率が１５％の事象を分類対象とすることは、学習時と同様である。そして、計測時には、５００個の事象がホワイトボックスモデル２４の作成に用いられたとする。
【００５０】
しかし、計測時には、ノード３３で表される事象の発生率が３０％から２５％に低下し、さらに、リーフ３４で表される事象の発生率が５０％から３０％に低下したとする。つまり、リーフ３４で表される事象の発生率は、学習時に５０％であったのが、計測時に２０％低下して３０％になったことから、分岐３６における精度が著しく悪化している。このように精度悪化要因特定部２５は、判定期間に蓄積された入力データを決定木モデル２４ａに入力し、決定木の分岐ごとに事象の発生率を算出する。
【００５１】
そして、精度悪化要因特定部２５は、学習期間に算出される事象の発生率と、判定期間に算出される事象の発生率との変化量が、閾値よりも大きくなった場合に、決定木の分岐条件を予測値の精度が変化した要因として特定する。特定された精度悪化要因は、再モデリング方法提案部２６により表示装置６５に表示される。このように、ホワイトボックスモデル２４として決定木モデル２４ａが用いられると、サービス提供者は、ブラックボックスモデル１５の予測値の精度悪化要因を把握しやすくなる。
【００５２】
（クラスタリングモデル）
図４は、クラスタリングモデル２４ｂの構成例を示す図である。ホワイトボックスモデル２４は、クラスタリング手法を用いて説明変数(実測値)について同種の特徴を持つ部分集合に分割したクラスタリングモデル２４ｂを生成する。通常、説明変数(実測値)は複数用いられるが、ここでは分かり易く説明するために２つの説明変数を用いて説明する。例えば、「板厚」と「加熱温度」の説明変数から成る同種の特徴を持つ部分集合として、クラスタ４１、４２、４３という３つのクラスタで構成される。このため、ホワイトボックスモデル２４は、機器１２に出現する事象を、同じ特徴を持つ部分集合に分割したクラスタ４１，４２，４３ごとに分類するクラスタリングモデル２４ｂで表される。
【００５３】
（学習時）
始めに、ブラックボックスモデル作成装置１４がブラックボックスモデル１５を作成した学習時に、クラスタリングモデル２４ｂがどのような構成であったかを説明する。クラスタリングモデル２４ｂでは、板厚が２０以上、かつ加熱温度が２００℃未満であるクラスタ４３で表される事象の発生率が５０％であったとする。ここで、学習時に算出された事象の発生率をクラスタ４１、４２、４３の近傍に括弧書きで併記する。
【００５４】
（計測時）
次に、制御システム１の運用開始後、すなわち計測装置１１による機器１２の計測時において、ブラックボックスモデル１５の予測精度が変化（悪化）した時点で、クラスタリングモデル２４ｂがどのような構成に変化するかを説明する。
【００５５】
計測時には、クラスタ４３で表される事象の発生率が５０％から３０％に低下したとする。つまり、クラスタ４３で表される事象の発生率は、学習時に５０％であったのが、計測時に２０％低下して３０％になったことから、クラスタ４３における精度が著しく悪化している。このように精度悪化要因特定部２５は、判定期間に蓄積された入力データをクラスタリングモデル２４ｂに入力し、クラスタごとに事象の発生率を算出する。
【００５６】
そして、精度悪化要因特定部２５は、学習期間に算出される事象の発生率と、判定期間に算出される事象の発生率との変化量が、閾値よりも大きくなった場合に、変化量が大きくなったクラスタの特徴を予測値の精度が変化した要因として特定する。精度悪化要因特定部２５により特定された精度悪化要因は、再モデリング方法提案部２６により表示装置６５に表示される。このように、ホワイトボックスモデル２４としてクラスタリングモデル２４ｂが用いられると、サービス提供者は、ブラックボックスモデル１５の予測値の精度悪化要因を把握しやすくなる。
【００５７】
ここで、精度悪化要因特定部２５は、変化量が大きくなったクラスタ４３について、クラスタ４３からの距離が最も近いクラスタ４１と、クラスタ４３との中心間の距離４４を算出する。これは、最も近いクラスタに対して、どの説明変数の値が大きく異なるクラスタなのかを知ることで、そのクラスタの特徴を抽出するためである。距離４４は、ユークリッド距離を前提とするが、その他の任意の距離（マハラノビス距離、チェビシェフ距離、ミンコフスキー距離等）であってもよい。さらに、距離４４に対する説明変数毎の距離成分を抽出する。距離４４の距離成分については、例えば、板厚で「１０」、加熱温度で「５」のように抽出される。このとき、「板厚」の距離成分が「加熱温度」の距離成分より大きいため、「板厚」が予測値の精度を変化させた要因であると特定する。
【００５８】
（分析システムの処理）
以上の説明により、計測時にブラックボックスモデル１５から出力される予測値の精度が悪化したのは、図３に示した分岐条件、又は図４に示したクラスタ間の距離における距離成分が最も大きい説明変数が要因であることが示された。このため、精度悪化要因特定部２５は、ホワイトボックスモデル２４を用いて精度悪化の要因を特定することが可能となる。
【００５９】
＜計算機のハードウェア構成例＞
次に、制御システム１及び分析システム２のそれぞれのシステムで構成される計算機６０のハードウェア構成を説明する。
図５は、計算機６０のハードウェア構成例を示すブロック図である。計算機６０は、制御システム１及び分析システム２の各機能を実現するコンピューターとして用いられるハードウェアの一例である。
【００６０】
計算機６０は、バス６４にそれぞれ接続されたＣＰＵ（Central Processing Unit）６１、ＲＯＭ（Read Only Memory）６２、及びＲＡＭ（Random Access Memory）６３、表示装置６５、入力装置６６、不揮発性ストレージ６７及びネットワークインターフェイス６８を備える。
【００６１】
ＣＰＵ６１は、本実施の形態に係る各機能を実現するソフトウェアのプログラムコードをＲＯＭ６２から読み出してＲＡＭ６３にロードし、実行する。ＲＡＭ６３には、ＣＰＵ６１の演算処理の途中で発生した変数やパラメーター等が一時的に書き込まれ、これらの変数やパラメーター等がＣＰＵ６１によって適宜読み出される。ただし、ＣＰＵ６１に代えてＭＰＵ（Micro Processing Unit）を用いてもよい。
【００６２】
表示装置６５は、例えば、液晶ディスプレイモニターであり、計算機６０で行われる処理の結果等を、各システムを使用するユーザーに表示する。入力装置６６には、例えば、キーボード、マウス等が用いられ、ユーザーが所定の操作入力、指示を行うことが可能である。
【００６３】
不揮発性ストレージ６７としては、例えば、ＨＤＤ、ＳＳＤ（Solid State Drive）、フレキシブルディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ又は不揮発性のメモリ等が用いられる。この不揮発性ストレージ６７には、ＯＳ（Operating System）、各種のパラメーターの他に、計算機６０を機能させるためのプログラムが記録されている。ＲＯＭ６２及び不揮発性ストレージ６７は、ＣＰＵ６１が動作するために必要なプログラムやデータ等を記録しており、計算機６０によって実行されるプログラムを格納したコンピューター読取可能な非一過性の記憶媒体の一例として用いられる。
【００６４】
ネットワークインターフェイス６８には、例えば、ＮＩＣ（Network Interface Card）等が用いられ、ＮＩＣの端子に接続されたＬＡＮ（Local Area Network）、専用線等を介して各種のデータを装置間で送受信することが可能である。例えば、ネットワークインターフェイス６８を介して、制御システム１と分析システム２がデータを送受信することができる。
【００６５】
＜制御システム及び分析システムの処理＞
次に、制御システム１及び分析システム２全体の処理について、図６〜図９を参照して説明する。
図６は、制御システム１及び分析システム２全体の処理の例を示すフローチャートである。なお、図６に破線で示す処理は、制御システム１で行われる処理を表し、図６に実線で示す処理は、分析システム２で行われる処理（機械学習モデル精度分析方法の一例）を表す。
【００６６】
始めに、ブラックボックスモデル作成装置１４は、入力データベース１３から読み出した学習データを用いて、ブラックボックスモデル１５を作成する（Ｓ１）。
【００６７】
次に、ホワイトボックスモデル作成部２３は、入力データベース１３から読み出した学習データを用いて、ホワイトボックスモデル２４を作成する（Ｓ２）。ここで、図７を参照して、ステップＳ２のホワイトボックスモデル２４の作成処理について説明する。
【００６８】
＜ホワイトボックスモデル作成処理＞
図７は、ホワイトボックスモデル２４の作成処理の例を示すフローチャートである。
始めに、ホワイトボックスモデル作成部２３は、学習データが入力されたブラックボックスモデル１５から出力される予測値を用意する（Ｓ１１）。
【００６９】
次に、ホワイトボックスモデル作成部２３は、ブラックボックスモデル１５から出力された予測値を目的変数とし、ブラックボックスモデル１５に入力されたものと同じ学習データを説明変数として、決定木モデル２４ａ（ホワイトボックスモデル２４）を作成する（Ｓ１２）。以下の説明では、このホワイトボックスモデル２４が、図３に示した決定木モデル２４ａで表されるものとする。
【００７０】
次に、ホワイトボックスモデル作成部２３は、決定木モデル２４ａ（ホワイトボックスモデル２４）の分岐ごとの精度を計算しておく（Ｓ１３）。そして、ホワイトボックスモデル作成部２３は、図６に処理を戻す。
【００７１】
再び図６の説明を続ける。
図６のステップＳ２でホワイトボックスモデル２４が作成された後、制御システム１の運用が開始される。入力データベース１３には、制御システム１で用いられた実測値の入力データが蓄積され、精度データ蓄積データベース１６には、入力データベース１３から読み出された、制御システム１の運用開始後の入力データが蓄積される。
【００７２】
次に、精度判定部２１は、入力データが入力されたブラックボックスモデル１５から出力される予測値の精度をモニタリングする（Ｓ３）。この際、精度判定部２１は、精度データ蓄積データベース１６に蓄積された実測値と、ブラックボックスモデル１５から出力される予測値とを比較して、予測値の精度を算出する。
【００７３】
次に、精度判定部２１は、ブラックボックスモデル１５の予測値の精度、すなわちブラックボックスモデル１５から出力される予測値の精度が悪いか否かを判定する（Ｓ４）。精度判定部２１は、ブラックボックスモデル１５の予測値の精度が悪くないと判定した場合（Ｓ４のＮＯ）、再びステップＳ３に戻って、モニタリングを続ける。
【００７４】
一方、精度判定部２１が、ブラックボックスモデル１５の予測値の精度が悪いと判定した場合（Ｓ４のＹＥＳ）、精度悪化要因特定部２５は、精度悪化要因を特定する処理を行う（Ｓ５）。ここで、図８を参照して、精度悪化要因特定部２５により行われる、ステップＳ５に示した精度悪化要因を特定する処理について説明する。
【００７５】
＜精度悪化要因の特定処理＞
図８は、分析システム２が、ブラックボックスモデル１５の予測値の精度悪化要因を特定する処理の例を示すフローチャートである。
【００７６】
始めに、精度悪化要因特定部２５は、精度判定部２１により、新しい入力データに対して適用されるブラックボックスモデル１５の精度が悪くなったと判定された場合、ブラックボックスモデル１５に入力されたものと同じ入力データを入力データベース１３から読み出し、この入力データを決定木モデル２４ａ（ホワイトボックスモデル２４）に適用する（Ｓ２１）。
【００７７】
次に、精度悪化要因特定部２５は、ステップＳ２１で適用された今回の入力データに対して、決定木モデル２４ａの分岐ごとの精度を算出する（Ｓ２２）。
【００７８】
次に、精度悪化要因特定部２５は、決定木モデル２４ａの分岐ごとの精度を、ホワイトボックスモデル２４に学習データを入力した時（図では「学習データ時」と記載）と、今回の入力データを入力した時（図では「入力データ時」と記載）とで比較する。そして、精度悪化要因特定部２５は、精度の差が大きい箇所（例えば、図３の分岐３６）を、精度悪化要因の分岐と特定する（Ｓ２３）。ステップＳ２３の後、精度悪化要因特定部２５は、図６に処理を戻す。
【００７９】
ステップＳ５の後、再モデリング方法提案部２６は、ブラックボックスモデル１５の再モデリング方法を提案する（Ｓ６）。ここで、図９を参照して、ステップＳ６に示したブラックボックスモデル１５の再モデリング方法を提案する処理について説明する。
【００８０】
＜再モデリング方法の提案処理＞
図９は、再モデリング方法提案部２６が、ブラックボックスモデル１５の再モデリング方法を提案する処理の例を示すフローチャートである。
【００８１】
始めに、再モデリング方法提案部２６は、精度悪化要因特定部２５が精度の悪化要因を特定するために用いた、新しい入力データに関して、悪化要因が特定された分岐に注目し、この分岐の期間ごとの精度を計算する。この入力データは、精度悪化要因特定部２５により入力データベース１３から判定期間で読み出されたものである。そして、再モデリング方法提案部２６は、悪化要因が特定された分岐の精度が変化した時点を表す精度の変化点を抽出する（Ｓ３１）。
【００８２】
次に、再モデリング方法提案部２６は、抽出した精度の変化点以降で取得可能な入力データを新しい学習データとしてブラックボックスモデル１５を再モデリングする提案を行う（Ｓ３２）。この提案として、例えば、後述する図１０に示す再モデリング方法の提案画面を表示する処理が行われる。
【００８３】
再モデリング方法の提案処理においては、後述する図１０に示すような、サービス提供者が確認可能な提案画面Ｗ１が表示される。この提案画面Ｗ１は、サービス提供者が、機械学習で既に作成されているホワイトボックスモデル２４に対して、判定期間の入力データを入力した際に現れる決定木モデルの分岐の発生率がどのように変化するかを確認するために用いられる。また、この提案画面Ｗ１には、サービス提供者及び顧客への再モデリング方法が提案される。ステップＳ３２の後、図６に処理が戻り、顧客が再モデリング方法の提案を了承すると、図６のステップＳ１に戻ってブラックボックスモデル１５の再作成が行われる。
【００８４】
ブラックボックスモデル１５の再作成の処理では、図６のステップＳ１で、提案学習データ抽出部２７が入力データベース１３から抽出した、精度悪化要因特定部２５により悪化要因が特定された分岐精度の変化点以降の入力データが再学習用データとして用いられる。そして、ブラックボックスモデル作成装置１４がブラックボックスモデル１５を再作成する。その後、計測時には、再作成されたブラックボックスモデル１５が用いられる。
【００８５】
＜再モデリング方法の提案画面＞
図１０は、再モデリング方法の提案画面Ｗ１の表示例を示す図である。この提案画面Ｗ１は、例えば、図５に示した表示装置６５に表示される。
【００８６】
提案画面Ｗ１は、決定木モデル表示部Ｗ１ａ，Ｗ１ｂ、グラフ表示部Ｗ１ｃを備える。再モデリング方法提案部２６は、ブラックボックスモデル１５の学習時に用いられた入力データが入力されたホワイトボックスモデル２４の出力結果と、ブラックボックスモデル１５の予測値の精度が変化した時点を含む判定期間の入力データが入力されたホワイトボックスモデル２４の出力結果とを提案画面Ｗ１に示す。
【００８７】
例えば、決定木モデル表示部Ｗ１ａには、ブラックボックスモデル１５が作成された学習時に、ホワイトボックスモデル作成部２３が作成したホワイトボックスモデル２４が、決定木モデル２４ａとして表示される。決定木モデル表示部Ｗ１ａに示される決定木モデル２４ａには、例えば、２０１９年８月〜１２月の学習期間で入力データベース１３から取得した１０００件の入力データを用いて決定木モデル２４ａの分岐ごとに算出された事象ごとの件数及び発生率が表示される。
【００８８】
また、決定木モデル表示部Ｗ１ｂには、ブラックボックスモデル１５の予測値の精度が悪化したことで、精度悪化要因特定部２５がホワイトボックスモデル２４を通じて精度悪化要因を特定した時点におけるホワイトボックスモデル２４が、決定木モデル２４ａとして表示される。決定木モデル表示部Ｗ１ｂに示される決定木モデル２４ａには、例えば、２０２０年１月〜３月の評価期間で入力データベース１３から取得した５００件の入力データを用いて決定木モデル２４ａの分岐ごとに算出された事象ごとの件数及び発生率が表示される。そして、決定木モデル表示部Ｗ１ｂには、決定木モデル２４ａの分岐３６にて、リーフ３４の発生率が２０％低下したことがコメント７１と共に表示されている。なお、リーフ３５についても、発生率が学習時の１０％から計測時の２０％に上昇しており、何らかの異常がある。
【００８９】
このように決定木モデル２４ａで示される事象で発生率の予測精度が変わった場合、この事象に至る経路の分岐（例えば、分岐３６）では何らかの状態変化が発生していることが推測される。
【００９０】
グラフ表示部Ｗ１ｃには、発生率が低下した分岐３６における発生率の推移を表すグラフが表示される。図中のグラフの横軸は日にち、縦軸は発生率を表す。そして、図１に示したブラックボックスモデル作成装置１４がブラックボックスモデル１５を作成するために入力データベース１３から入力データを読み出した学習期間は、グラフ表示部Ｗ１ｃの左側の２０１９年０８月〜１２月の間である。一方、制御システム１が本番運用され、ブラックボックスモデル１５の予測値の精度が判定される判定期間は、２０２０年０１月〜０３月の間である。
【００９１】
ここで、学習時におけるリーフ３４の発生率の平均が５０％であるのに対して、計測時におけるリーフ３４の発生率の平均が３０％であることが表示される。特に、計測時の２０２０年２月からリーフ３４の発生率が低下しており、ブラックボックスモデル１５の予測値が変化している。
【００９２】
そこで、グラフ表示部Ｗ１ｃの下部には、ホワイトボックスモデル２４が合わなくなっている個所（例えば、２０２０年２月）以降のデータで再学習することを提案するコメント７２が表示される。このように再モデリング方法提案部２６は、精度悪化要因特定部２５により特定された予測値の精度が変化した要因を示し、再モデリングで用いられる入力データの条件の変更を提案する。この際、再モデリング方法提案部２６は、分岐３６の発生率が低下した時点をブラックボックスモデル１５の予測値の精度が低下した時点として示し、再モデリングで用いられる入力データの条件として、再モデリングで用いられる入力データを取得する期間を提案することができる。なお、ブラックボックスモデル１５の再作成に必要な再学習用データのデータ数が少ない場合には、再学習用データを閾値まで蓄積することを促す提案がされてもよい。
【００９３】
以上説明した第１の実施の形態に係る分析システム２では、制御システム１で使用されるブラックボックスモデル１５を模して作成されたホワイトボックスモデル２４を用いて、正常状態のブラックボックスモデル１５から出力される予測値との差異を抽出する。そして、分析システム２は、精度悪化要因の特定、及び、予測値の精度を改善するためのブラックボックスモデル１５の再モデリング方法をサービス提供者に提供することができる。このため、サービス提供者は、精度悪化要因、及び再モデリング方法を顧客に通知することで、顧客にブラックボックスモデル１５の再作成を促すことができる。
【００９４】
ここで、ホワイトボックスモデル２４として、例えば、制御システム１の実行環境で使用される入力データが入力され、分岐ごとの発生率が算出される決定木モデル２４ａ、入力データで表される事象がクラスタリングされたクラスタリングモデル２４ｂなどが用いられる。このようにホワイトボックスモデル２４により、ブラックボックスモデル１５の処理が可視化される。このため、ブラックボックスモデル１５の予測値の精度が変化した箇所や、計測時に入力された入力データがどのように学習時と異なるかをサービス提供者が把握することができる。
【００９５】
また、図１０に示したように、どの時点からの入力データを使って再モデリングすればよいかをサービス提供者が把握することができる。このため、サービス提供者は、顧客がブラックボックスモデル１５を再作成するために必要な情報を提供することができる。そして、顧客は、通知された再モデリング方法を用いて、予測値の精度が改善したブラックボックスモデル１５を再び作成し、再作成したブラックボックスモデル１５を制御システム１で使用することができる。
【００９６】
［第２の実施の形態］
次に、本発明の第２の実施の形態に係るブラックボックス化された機械学習モデルの機械学習モデル精度分析システムについて説明する。本実施の形態に係る機械学習モデル精度分析システムでは、学習データの取得時と、計測時の入力データの取得時とで、特定の事象の発生率が大きく変化した場合に、発生率の変化が大きい分岐条件を削除してブラックボックスモデルの再学習（再モデリング方法）を提案するものである。第２の実施の形態に係る機械学習モデル精度分析システムの一例として、上述した第１の実施の形態に係る分析システム２が用いられる。ここでは、ブラックボックスモデル１５の再モデリング方法を提案する処理、及び再モデリング方法の提案画面について説明する。
【００９７】
図１１は、第２の実施の形態に係る再モデリング方法提案部２６が、ブラックボックスモデル１５の再モデリング方法を提案する処理の例を示すフローチャートである。図１１に示す処理は、図６を参照して既に説明した、精度悪化要因特定処理（Ｓ５）の後に行われる。
【００９８】
始めに、再モデリング方法提案部２６は、精度悪化要因特定部２５が精度の悪化要因を特定するために用いた新しい入力データに関して、悪化要因が特定された分岐に注目し、この分岐の期間ごとの精度を計算する。この入力データは、精度悪化要因特定部２５により入力データベース１３から判定期間で読み出されたものである。そして、再モデリング方法提案部２６は、決定木モデルの分岐ごとの精度を学習時と今回の入力データの入力時とで比較し、精度の差の平均が大きい項目（本実施形態では分岐条件）を抽出する（Ｓ４１）。
【００９９】
次に、再モデリング方法提案部２６は、抽出した項目を除外したデータを新しい学習データとして、ブラックボックスモデル１５を再モデリングする提案を行う（Ｓ４２）。この提案として、例えば、後述する図１２に示す再モデリング方法の提案画面を表示する処理が行われる。その後、図６に処理が戻り、顧客が再モデリング方法の提案を了承すると、図６のステップＳ１に戻ってブラックボックスモデル１５の再作成が行われる。
【０１００】
＜再モデリング方法の提案画面＞
図１２は、再モデリング方法の提案画面Ｗ２の表示例を示す図である。この提案画面Ｗ２は、例えば、図５に示した表示装置６５に表示される。
【０１０１】
提案画面Ｗ２は、図１０に示した提案画面Ｗ１と同様に決定木モデル表示部Ｗ１ａ，Ｗ１ｂを備える。再モデリング方法提案部２６は、ブラックボックスモデル１５の学習時に用いられた入力データが入力されたホワイトボックスモデル２４の出力結果と、ブラックボックスモデル１５の予測値の精度が大きく変化した時点を含む判定期間の入力データが入力されたホワイトボックスモデル２４の出力結果とを提案画面Ｗ２に示す。
【０１０２】
例えば、決定木モデル表示部Ｗ１ａには、ブラックボックスモデル１５が作成された学習時に、ホワイトボックスモデル作成部２３が作成したホワイトボックスモデル２４が、決定木モデル２４ａとして表示される。学習時に作成された決定木モデル２４ａのノード８１で表される事象の発生率が５０％であり、回転数が２０回未満であるリーフ８２で表される事象の発生率が６５％であり、回転数が２０回以上であるリーフ８３で表される事象の発生率が３５％であったとする。同様に、決定木モデル２４ａのノード８４で表される事象の発生率が２０％であり、回転数が１０回未満であるリーフ８５で表される事象の発生率が４０％であり、回転数が１０回以上であるリーフ８６で表される事象の発生率が７％であったとする。
【０１０３】
決定木モデル表示部Ｗ１ｂには、ブラックボックスモデル１５の予測値の精度が悪化したことで、精度悪化要因特定部２５がホワイトボックスモデル２４を通じて精度悪化要因を特定した時点におけるホワイトボックスモデル２４が、決定木モデル２４ａとして表示される。決定木モデル２４ａで示される事象で発生率の予測精度が変わった場合、この事象に至る経路の分岐（例えば、分岐８７，８８）では何らかの状態変化が発生していることが推測される。分岐８７では、項目「回転数」の発生率が、分岐８７の左側で３５％低下し、分岐８７の右側で１５％上昇したことが、コメント９１に示されている。そして、分岐８７では、項目「回転数」の発生率の変化の平均は、２５％（＝（３５％＋１５％）／２）と計算される。
【０１０４】
同様に、分岐８８では、項目「回転数」の発生率が、分岐８８の左側で２５％低下し、分岐８８の右側で２３％上昇したことが、コメント９２に示されている。そして、分岐８８では、項目「回転数」の発生率の変化の平均は、２４％（＝（２５％＋２３％）／２）と計算される。このため、分岐８７，８８の項目「回転数」の発生率の変化の全体平均は、２４．５％（＝（２５％＋２４％）／２）と計算される。このように項目「回転数」の発生率の変化の全体平均が、閾値（例えば、１５％）以上であれば、項目「回転数」は、決定木モデル２４ａの構成とするにはふさわしくない。そこで、提案画面Ｗ２の下部には、「発生率の変化の平均が２４．５％である項目「回転数」は除外して、再学習をおすすめします。」というコメント９３が表示される。このように再モデリング方法提案部２６は、精度悪化要因特定部２５により特定された要因により、発生率の変化が閾値より大きくなった分岐条件の削除を提案する。そして、サービス提供者は、顧客に対して、項目「回転数」を除外して、ブラックボックスモデル１５の再学習を勧めることができる。
【０１０５】
ここで、再モデリング方法提案部２６により提案される項目「回転数」の除外とは、２０回で区切った分岐８７、１０回で区切った分岐８８のいずれをも除外して、決定木モデルを再構成することである。ただし、既に構築されている決定木の構成は特段意識されず、単に項目「回転数」を説明変数に加えずに決定木を作り直す処理が、ブラックボックスモデル作成装置１４及びホワイトボックスモデル作成部２３によって行われることとなる。
【０１０６】
ブラックボックスモデル１５の再作成の処理では、図６のステップＳ１で、提案学習データ抽出部２７が入力データベース１３から抽出した、精度悪化要因特定部２５により悪化要因が特定された分岐精度の変化点以降の入力データが再学習用データとして用いられる。そして、ブラックボックスモデル作成装置１４は、事象の発生率の変化が大きい分岐条件を削除、つまり項目「回転数」を除外して、ブラックボックスモデル１５を再作成する。また、ホワイトボックスモデル作成部２３についても、事象の発生率の変化が大きい分岐条件を削除して、ホワイトボックスモデル２４を再作成する。その後の計測時には、制御システム１において、再作成されたブラックボックスモデル１５が用いられる。
【０１０７】
以上説明した第２の実施の形態に係る分析システム２では、学習時に比べて計測時における分岐の項目の発生率が大きく変化したことにより、ブラックボックスモデル１５の予測値の精度が悪化したことが判明した場合、この分岐条件を削除して、ブラックボックスモデル１５を再学習（再モデリング方法）することが提案される。このため、顧客は、サービス提供者から通知された再モデリング方法を用いて、予測値の精度が改善したブラックボックスモデル１５を再び作成し、再作成したブラックボックスモデル１５を制御システム１で使用することができる。また、サービス提供者においても、ブラックボックスモデル１５の予測値の精度が悪化したことに起因する分岐条件を削除して、ホワイトボックスモデル２４を再作成し、制御システム１の処理を可視化することができる。
【０１０８】
また、再モデリング方法提案部２６は、図１０の決定木モデル表示部Ｗ１ａに示したグラフ表示部Ｗ１ｃを、図１２の決定木モデル表示部Ｗ１ｂに付して表示してもよい。グラフ表示部Ｗ１ｃが表示されることで、サービス提供者は、どの時点からの入力データを使って再モデリングすればよいかを把握しやすくなる。
【０１０９】
［変形例］
なお、上述した実施の形態では、分析システム２が精度判定部２１及び提案学習データ抽出部２７を含む構成としたが、制御システム１が精度判定部２１及び提案学習データ抽出部２７のうち、少なくとも一つを含む構成としてもよい。このような構成とした場合、分析システム２は、制御システム１で稼働する精度判定部２１が不良の精度判定結果を出力したタイミングで、精度悪化要因特定部２５及び再モデリング方法提案部２６の処理を行ってもよい。
【０１１０】
また、分析システム２がブラックボックスモデル作成装置１４を備える構成として、分析システム２内でブラックボックスモデル１５を有してもよい。そして、サービス提供者は、顧客にブラックボックスモデル１５を提供するサービスを提供してもよい。
【０１１１】
また、上述した実施の形態では、ブラックボックスモデル１５及びホワイトボックスモデル２４の作成に際して用いられる入力データが学習期間で読み出され、その後、ブラックボックスモデル１５から出力される予測値の精度が変化したことは判定期間で読み出された入力データが用いられることとした。しかし、学習期間と判定期間とは重なっていてもよい。
【０１１２】
なお、本発明は上述した実施の形態に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。
例えば、上述した実施の形態は本発明を分かりやすく説明するためにシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また、本実施の形態の構成の一部について、他の構成の追加、削除、置換をすることも可能である。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１１３】
１…制御システム、２…分析システム、１３…入力データベース、１４…ブラックボックスモデル作成装置、１５…ブラックボックスモデル、１６…精度データ蓄積データベース、２１…精度判定部、２２…検証部、２３…ホワイトボックスモデル作成部、２４…ホワイトボックスモデル、２５…精度悪化要因特定部、２６…再モデリング方法提案部、２７…提案学習データ抽出部
【要約】
【課題】ブラックボックス化された機械学習モデルが出力する予測値の予測精度が悪化した要因を特定することが可能な機械学習モデル精度分析システムを提供する。
【解決手段】分析システム２が備えるホワイトボックスモデル作成部２３は、ブラックボックスモデル１５の作成に合わせて、ブラックボックスモデル１５の作成に用いられた入力データを説明変数とし、ブラックボックスモデル１５が出力する予測値を目的変数としてホワイトボックスモデル２４を作成する。精度悪化要因特定部２５は、ブラックボックスモデル１５の予測値の精度が判定される判定期間に、ブラックボックスモデル１５から出力される予測値の精度が変化したことが判定されると、判定期間に蓄積された入力データをホワイトボックスモデル２４に入力して、予測値の精度が変化した要因を特定する。
【選択図】図１【図１】
0006899475.tif 000002
【図２】
0006899475.tif 000003
【図３】
0006899475.tif 000004
【図４】
0006899475.tif 000005
【図５】
0006899475.tif 000006
【図６】
0006899475.tif 000007
【図７】
0006899475.tif 000008
【図８】
0006899475.tif 000009
【図９】
0006899475.tif 000010
【図１０】
0006899475.tif 000011
【図１１】
0006899475.tif 000012
【図１２】
0006899475.tif 000013