(57)【要約】 【課題】学習モデルの運用中に学習モデルの精度を評価することができる機械学習モデル構築装置および機械学習モデル構築方法を提供するものである。【解決手段】本実施形態による機械学習モデル構築装置は、第１入力データと第１出力データとの対応関係に基づいて、機械学習モデルを生成する学習部と、機械学習モデルの生成に用いられていない第２入力データを機械学習モデルに入力することにより、対応する出力データを推定する推定部と、第１出力データの第１入力データによる影響度を算出する影響度算出部と、影響度、第１入力データの分布情報および第２入力データの分布情報に基づいて、機械学習モデルを更新するか否かを判定する学習モデル更新判定部とを備える。【選択図】図１
2020086778.tif 000002
【特許請求の範囲】
【請求項１】
第１入力データと第１出力データとの対応関係に基づいて、機械学習モデルを生成する学習部と、
前記機械学習モデルの生成に用いられていない第２入力データを前記機械学習モデルに入力することにより、対応する出力データを推定する推定部と、
前記第１出力データの前記第１入力データによる影響度を算出する影響度算出部と、
前記影響度、前記第１入力データの分布情報および前記第２入力データの分布情報に基づいて、前記機械学習モデルを更新するか否かを判定する学習モデル更新判定部とを備える機械学習モデル構築装置。
【請求項２】
前記機械学習モデルは、前記第１入力データを変数とする所定の関数式で前記第１出力データを求めるものであり、
前記影響度算出部は、前記関数式を前記第１入力データで微分した値により前記影響度を算出する、請求項１に記載の機械学習モデル構築装置。
【請求項３】
前記影響度と、前記第１入力データの分布情報と、前記第２入力データの分布情報とに基づいて、前記機械学習モデルを更新するか否かを判定する指標となる指標値を算出する指標値算出部をさらに備え、
前記学習モデル更新判定部は、前記指標値と所定の閾値との大小関係により、前記機械学習モデルを更新するか否かを判定する、請求項１または２に記載の機械学習モデル構築装置。
【請求項４】
前記第１入力データの分布の平均値および分散を分布情報として算出する第１入力データ分布生成部と、
前記第２入力データの分布の平均値および分散を分布情報として算出する第２入力データ分布生成部と、を備え、
前記指標値算出部は、前記第１入力データ分布生成部で算出された前記第１入力データの分布の平均値および分散と、前記第２入力データ分布生成部で算出された前記第２入力データの分布の平均値および分散と、に基づいて、前記指標値を算出する、請求項３に記載の機械学習モデル構築装置。
【請求項５】
前記第１入力データ分布生成部は、前記第１入力データの取り得る範囲を複数の区間に分割し、区間毎に前記第１入力データを分類した頻度分布に基づいて、前記第１入力データの平均値および分散を算出し、
前記第２入力データ分布生成部は、前記第２入力データの取り得る範囲を複数の区間に分割し、区間毎に前記第２入力データを分類した頻度分布に基づいて、前記第２入力データの平均値および分散を算出する、請求項４に記載の機械学習モデル構築装置。
【請求項６】
前記指標値算出部は、前記第１入力データ分布生成部で算出された前記第１入力データの分布の平均値と前記第２入力データ分布生成部で算出された前記第２入力データの分布の平均値との差分を重み付けた値と、前記第１入力データ分布生成部で算出された前記第１入力データの分布の分散と前記第２入力データ分布生成部で算出された前記第２入力データの分布の分散との差分を重み付けた値と、に基づいて、前記指標値を算出する、請求項４または５に記載の機械学習モデル構築装置。
【請求項７】
前記指標値算出部は、前記第１入力データの分布範囲に包含されていない前記第２入力データの分布範囲の平均値および分散に基づいて、前記指標値を算出する、請求項４から請求項６のいずれか一項に記載の機械学習モデル構築装置。
【請求項８】
前記第１入力データの取り得る範囲を複数の区間に分割し、区間毎に前記第１入力データを分類した頻度分布を分布情報として求める第１入力データ分布生成部と、
前記第２入力データの取り得る範囲を複数の区間に分割し、区間毎に前記第２入力データを分類した頻度分布を分布情報として求める第２入力データ分布生成部と、を備え、
前記指標値算出部は、前記第１入力データの頻度分布および前記第２入力データの頻度分布に基づいてカルバック・ライブラーダイバージェンスを算出し、前記カルバック・ライブラーダイバージェンスを前記影響度により重み付けして、前記指標値を算出する、請求項３に記載の機械学習モデル構築装置。
【請求項９】
前記学習部は、前記学習モデル更新判定部が前記機械学習モデルを更新すると判定した場合、前記機械学習モデルを生成するのに用いた前記第１入力データと前記第１出力データとの対応関係に加えて、前記第２入力データと第２出力データとの対応関係に基づいて、前記機械学習モデルを再生成する、請求項１から請求項８のいずれか一項に記載の機械学習モデル構築装置。
【請求項１０】
前記影響度算出部は、前記第１出力データの前記第１入力データによる影響度と、前記第２出力データの前記第２入力データによる影響度とを算出し、
前記学習部は、前記影響度が所定値以下になる前記第１入力データと、前記第２入力データと、を前記機械学習モデルの再生成の対象から除外する、請求項９に記載の機械学習モデル構築装置。
【請求項１１】
前記影響度、前記第１入力データの分布情報および前記第２入力データの分布情報を表示部に表示する制御を行う表示制御部をさらに備える、請求項１から請求項１０のいずれか一項に記載の機械学習モデル構築装置。
【請求項１２】
第１入力データと第１出力データの対応関係に基づいて、機械学習モデルを生成する学習部と、前記機械学習モデルの生成に用いられていない第２入力データを前記機械学習モデルに入力することにより、対応する出力データを推定する推定部と、前記第１出力データの前記第１入力データによる影響度を算出する影響度算出部と、前記機械学習モデルを更新するか否かを判定する学習モデル更新判定部とを備えた機械学習モデル構築装置における機械学習モデル構築方法であって、
前記学習モデル更新判定部は、前記影響度、前記第１入力データの分布情報および前記第２入力データの分布情報に基づいて、前記機械学習モデルを更新するか否かを判定することを具備する機械学習モデル構築方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明による実施形態は、機械学習モデル構築装置および機械学習モデル構築方法に関する。
【背景技術】
【０００２】
近年、推定モデルの構築方法として機械学習が注目されている。特に、機械学習の１つであり、脳神経系の仕組みを模したニューラルネットワークは、非線形のモデル化が可能であり、入力データと入力データに対応する出力データの対応関係を正確に学習できるため、推定精度の高いモデル化が期待できる。
【０００３】
推定精度は学習時に使用したデータに依存しており、環境や状態の変化により学習時には存在しなかった新たな入出力関係が発生した場合などに、推定精度が悪化するおそれがある。
【０００４】
このような場合、新たな入出力関係を学習し、学習モデルを更新することが考えられる。しかし、学習モデルによって推定された推定値と実測値との差が大きくなったとしても、その現象が一時的なものであれば、学習モデルの精度が劣化したとは言えないことから、学習モデルを更新しない方がよい場合もある。
【０００５】
一方、学習モデルの精度を適切に推定できる精度推定システムが考案されている。この精度推定システムは、時間経過とともに環境の変化などの要因で所定時間後の将来の値の推定精度が劣化することに対して、学習モデルの精度を推定する仕組みを提供している（特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１６／１５２０５３号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１の精度推定システムは、学習モデルによる推定時点よりも後の将来に得られる実測値から学習モデルの精度を推定することを念頭に置いている。従って、学習モデルによる推定時点での学習モデルの精度を推定できず、学習モデルによる推定精度をリアルタイムに評価できない。
【０００８】
本発明の実施形態は、学習モデルの運用中に学習モデルの精度を評価することができる機械学習モデル構築装置および機械学習モデル構築方法を提供するものである。
【課題を解決するための手段】
【０００９】
本実施形態による機械学習モデル構築装置は、第１入力データと第１出力データとの対応関係に基づいて、機械学習モデルを生成する学習部と、機械学習モデルの生成に用いられていない第２入力データを機械学習モデルに入力することにより、対応する出力データを推定する推定部と、第１出力データの第１入力データによる影響度を算出する影響度算出部と、影響度、第１入力データの分布情報および第２入力データの分布情報に基づいて、機械学習モデルを更新するか否かを判定する学習モデル更新判定部とを備える。
【図面の簡単な説明】
【００１０】
【図１】一実施形態による機械学習モデル構築装置の構成の一例を示すブロック図。
【図２】一実施形態による影響度算出部の影響度算出の一例を示す図。
【図３】学習データの取り得る範囲の複数の区間の一例を示す図。
【図４】学習データの分布を生成する処理の一例を示す図。
【図５】一実施形態による機械学習モデル構築装置の処理動作を示すフロー図。
【図６】一実施形態による表示部の表示例を示す図。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。
【００１２】
図面は模式的または概念的なものであり、各部分の比率などは、必ずしも現実のものと同一とは限らない。明細書と図面において、既出の図面に関して前述したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
【００１３】
図１は、一実施形態による機械学習モデル構築装置１の構成の一例を示すブロック図である。図１の機械学習モデル構築装置１は、データ収集部２０およびデータ記憶部３０を介して機器１０と接続されている。図１の機械学習モデル構築装置１は、機器１０からの入力データと出力データを用いて、機械学習モデルを構築するものである。尚、本明細書では、機械学習モデルを単に学習モデルと表記する場合がある。
【００１４】
機器１０は、入力データおよび出力データを生成する設備または機器の集合体である。入力データと出力データは、学習モデルによる推定に用いられる。機器１０は、例えば、鉄道、電力系統、水道設備などの信頼性や安全性が要求されるものが一例として挙げられるが、具体的な装置の種類は問わない。
【００１５】
データ収集部２０は、機器１０の設備または機器への入力データ、およびその出力結果である出力データを、予め設定された時間間隔毎、あるいは不定期に収集し、データ記憶部３０に記憶させる。
【００１６】
データ記憶部３０は、予め設定された時間間隔毎、あるいは不定期に、入力データおよび出力データを対応付けて記憶する。また、データ記憶部３０は、後述する機械学習で使用する入力データ（以下、学習データと称する。）および学習データに対応する出力データ（以下、教師データと称する）を対応付けて記憶している。
【００１７】
機械学習モデル構築装置１は、データ記憶部３０に記憶されたデータを用いて、学習データと教師データとの関連性を機械学習により学習し、学習モデルを生成する。この学習モデルに従って目的とする項目を推定する。推定項目は、例えば、機器１０の設備または機器が所定時間後に出力する予測値や、機器の稼働状態が定常状態かどうかの推定が挙げられる。機械学習モデル構築装置１は、単一のコンピュータまたはネットワーク接続された複数のコンピュータおよび表示装置で構成可能である。この場合、機械学習モデル構築装置１は、機械学習モデルの構築に用いられるプログラムおよびデータベースをＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等に記憶しており、ＲＡＭ（Random Access Memory）に適宜展開し、コンピュータのＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）（以下、ＣＰＵと略記する）などで、上記のプログラムを実行して、後述する学習モデルの生成や学習モデル更新判定の情報の生成などの必要な演算を行ってもよい。あるいは、機械学習モデル構築装置１は、専用のハードウェア機器で構成されていてもよい。
【００１８】
本実施形態による機械学習モデル構築装置１は、学習部５２と、推定部１０２と、影響度算出部５３と、学習モデル更新判定部８０とを備えている。
【００１９】
学習部５２は、第１入力データ（学習データ）と第１出力データ（教師データ）との対応関係に基づいて、機械学習モデルを生成する。学習データと教師データは、例えばデータ記憶部３０から読み出されるデータであり、元々は機器１０から提供されたデータである。
【００２０】
推定部１０２は、機械学習モデルの生成に用いられていない第２入力データ（推定用データ）を、学習部５２にて生成された機械学習モデルに入力することにより、対応する出力データを推定する。推定用データも、例えばデータ記憶部３０から読み出されるデータであり、元々は機器１０から提供されたデータである。
【００２１】
影響度算出部５３は、教師データの学習データによる影響度を算出する。影響度については後述するが、学習データの変化が教師データの変化にどの程度の影響を与えるかを示す指標である。
【００２２】
学習モデル更新判定部８０は、影響度算出部５３で算出された影響度、学習データの分布情報、および推定用データの分布情報に基づいて、機械学習モデルを更新するか否かを判定する。
【００２３】
この他、本実施形態による機械学習モデル構築装置１は、学習用データ入力部４０と、学習用データ前処理部５１と、学習データ分布生成部５４とを備えていてもよい。
【００２４】
学習用データ入力部４０は、データ記憶部３０から学習データと学習データに対応する教師データとを取得して、両データを対応づけて記憶する。学習データおよび教師データの次元数は１次元以上であり、学習に使用するデータのレコード数は、取得済みのレコード数や推定項目によって任意に設定してもよい。
【００２５】
以下では、学習用データ前処理部５１、学習部５２、影響度算出部５３および学習データ分布生成部５４を総称して学習装置５０と呼ぶ。学習装置５０は、学習用データ入力部４０から取得した学習データおよび教師データの対応関係に基づいて、機械学習により学習モデルを生成する。機械学習には、ニューラルネットワーク、強化学習、決定木、ランダムフォーレストなど様々な方式を用いることができる。
【００２６】
学習用データ前処理部５１は、学習データまたは教師データに欠損などの異常が含まれているか否かを検査する。学習用データ前処理部５１は、異常を検出した場合、異常が検出された学習データまたは教師データのレコードを学習対象から除外し、または、前値保持や線形補間などの処理を行う。また、学習用データ前処理部５１は、学習モデルを効率的に生成するため、学習データと教師データとを、例えば、平均値０、分散１に規格化するなどの処理を行っても良い。
【００２７】
学習部５２は、学習用データ前処理部５１から得た前処理済み学習データおよび前処理済み教師データに基づいて、機械学習により学習モデルを生成してもよい。機械学習では、学習モデルの出力（以降、推定値とも称する）と教師データとの誤差が最小となるように、学習モデルを生成するための各種パラメータが調整される。学習部５２は、学習モデルによる推定値と教師データとの平均誤差や２乗誤差等が予め設定した基準値以下となった場合や、学習の繰り返し数が所定回数に達した場合、学習を終了してもよい。学習部５２は、生成した学習モデルを学習モデル格納部７０に出力してもよい。また、学習部５２は、学習モデルと学習データと教師データとを影響度算出部５３に出力する。また、学習部５２は、学習データと教師データとを学習データ分布生成部５４に出力してもよい。
【００２８】
学習部５２は、学習モデル更新判定部８０が機械学習モデルを更新すると判定した場合、機械学習モデルを生成するのに用いた学習データと教師データとの対応関係に加えて、推定用データと再学習教師データ（第２出力データ）との対応関係に基づいて、機械学習モデルを再生成してもよい。推定用データとは、学習モデルによる推定に必要となる入力データである。再学習教師データとは、学習モデルの再生成において、入力データとして用いられる推定用データに対応する出力データである。また、学習部５２は、影響度が所定値以下になる学習データと、推定用データと、を機械学習モデルの再生成の対象から除外してよい。尚、学習モデルの再生成の詳細については、後で説明する。
【００２９】
本実施形態における機械学習モデルは、学習データを変数とする所定の関数式で教師データを求めるものである。影響度算出部５３は、関数式を学習データで微分した値により影響度を算出してもよい。関数式は、機械学習のアルゴリズムを数式化したものである。尚、学習データおよび教師データが多次元の要素からなる場合、それぞれの要素について影響度が算出される。
【００３０】
影響度算出部５３は、教師データの学習データによる影響度と、再学習教師データの推定用データによる影響度とを算出してもよい。すなわち、学習モデルの再生成において、影響度算出部５３は、推定用データも含めた学習データを用いて、影響度を算出してもよい。尚、影響度の算出の詳細については、図２を参照して、後で説明する。
【００３１】
学習データ分布生成部（第１入力データ分布生成部）５４は、学習データの分布の平均値および分散を分布情報として算出する。より詳細には、学習データ分布生成部５４は、学習データの取り得る範囲を複数の区間に分割し、区間毎に学習データを分類した頻度分布に基づいて、学習データの平均値および分散を算出する。学習データ分布生成部５４は、例えば、学習データの取り得る範囲を有限個に分割し、それぞれの範囲に収まる学習データの発生頻度数を記憶してもよい。尚、データの分布の生成の詳細については、図３および図４を参照して、後で説明する。
【００３２】
推定用データ入力部９０は、データ記憶部３０から予め設定した時間間隔、または不定期に推定用データを取得し、記憶する。推定用データ入力部９０は、記憶した推定用データを推定装置１００に出力する。
【００３３】
以下では、推定用データ前処理部１０１、推定部１０２および推定データ分布生成部１０３を総称して推定装置１００と呼ぶ。推定装置１００は、推定用データと推定モデル（学習モデル）とを用いて出力結果を推定する。すなわち、推定装置１００は、推定に使用する学習モデルを学習モデル格納部７０から取得する。推定装置１００は、学習モデルに推定用データを入力し、推定用データに対応する出力値である推定値を出力する。
【００３４】
推定用データ前処理部１０１は、推定用データについて欠損などの異常の有無を検査する。推定用データ前処理部１０１は、異常を検出した場合、推定部１０２が推定した推定値で置き換えるなどの処理により、異常が検出された推定用データを用いて推定値を求めるのを回避する。また、学習用データ前処理部５１にて規格化などの前処理を行った場合は、同様の前処理を推定用データ前処理部１０１にて行ってもよい。例えば、学習時に平均値０、分散１の規格化処理が学習データに行われていた場合、推定用データ前処理部１０１でも、学習データの平均値０、分散１を用いて推定用データを規格化してもよい。
【００３５】
推定部１０２は、学習モデル格納部７０から学習モデルを取得し、推定用データ前処理部１０１から出力された前処理済みの推定用データを学習モデルに入力して、その推定結果を推定値として機器１０およびユーザインタフェース部６０に出力してもよい。機器１０は、推定値に基づいてあらかじめ設定された処理を行う。また、推定部１０２は、推定用データを推定データ分布生成部１０３に出力する。
【００３６】
推定データ分布生成部（第２入力データ分布生成部）１０３は、推定用データの分布の平均値および分散を分布情報として算出する。より詳細には、推定データ分布生成部１０３は、推定用データの取り得る範囲を複数の区間に分割し、区間毎に推定用データを分類した頻度分布に基づいて、推定用データの平均値および分散を算出する。推定データ分布生成部１０３は、例えば、推定用データの取り得る範囲を有限個に分割し、それぞれの範囲に収まる推定用データの発生頻度数を記憶してもよい。
【００３７】
指標値算出部７５は、影響度と、学習データの分布情報と、推定用データの分布情報とに基づいて、機械学習モデルを更新するか否かを判定する指標となる指標値を算出する。分布情報は、例えば、分布の平均値および分散である。従って、指標値算出部７５は、学習データ分布生成部５４で算出された学習データの分布の平均値および分散と、推定データ分布生成部１０３で算出された推定用データの分布の平均値および分散と、に基づいて、指標値Ｕを算出する。指標値Ｕは、例えば、学習データおよび推定用データのそれぞれのデータ分布の平均値、分散もしくは標準偏差を影響度で重み付けした値である。この場合、指標値算出部７５は、学習データ分布生成部５４で算出された学習データの分布の平均値と推定データ分布生成部１０３で算出された推定用データの分布の平均値との差分を重み付けた値と、学習データ分布生成部５４で算出された学習データの分布の分散と推定データ分布生成部１０３で算出された推定用データの分布の分散との差分を重み付けた値と、に基づいて、指標値Ｕを算出する。
【００３８】
また、指標値算出部７５は、学習データの分布範囲に包含されていない推定用データの分布範囲の平均値および分散に基づいて、指標値Ｕを算出してもよい。すなわち、学習データの分布範囲に包含されている推定用データは、指標値Ｕの算出の対象から除外してもよい。
【００３９】
学習モデル更新判定部８０は、指標値Ｕと所定の閾値との大小関係により、機械学習モデルを更新するか否かを判定する。指標値Ｕは、上述したように、影響度、学習データおよび推定用データを用いて、学習モデルの運用中に算出される。よって、学習モデル更新判定部８０は、学習モデルの運用中に学習モデルの更新の判定をすることができる。尚、指標値Ｕおよび学習モデル更新判定の詳細については、後で説明する。
【００４０】
機械学習モデル構築装置１は、ユーザインタフェース部６０をさらに備えていてもよい。この場合、表示制御部としてのユーザインタフェース部６０は、影響度、学習データの分布情報および推定用データの分布情報を表示部６１に表示する制御を行う。ユーザインタフェース部６０は、表示部６１を有する。表示部６１は、推定値、学習データ、推定用データ、教師データに関するあらかじめ設定された内容に基づいた情報を表示する。尚、表示部６１が表示する内容の詳細については、図６を参照して、後で説明する。
【００４１】
次に、図２（Ａ）および図２（Ｂ）を参照して、影響度の算出について説明する。
【００４２】
図２（Ａ）および図２（Ｂ）は、一実施形態による影響度算出部５３の影響度算出の一例を示す図である。
【００４３】
図２（Ａ）は、機械学習の一例であるニューラルネットワークを示す図である。ニューラルネットワークにｘｉが入力され、ｙｊが出力される。ｉおよびｊは、自然数であり、それぞれ入力および出力のデータの次元数に対応する。ニューラルネットワークの学習モデルでは、入力ｘｉの影響を受けて出力ｙｊが出力される。影響度算出部５３は、学習モデルにおける出力ｙｊ（教師データ）の入力ｘｉ（学習データ）による影響度をｓｉｊとして、式１により影響度ｓｉｊを算出する。
【数１】
2020086778.tif 000003
尚、学習データおよび教師データが複数のデータを有する場合、影響度算出部５３は、式１により複数のデータの影響度の平均値を算出し、影響度とすればよい。
【００４４】
図２（Ｂ）は、入力ｘｉ、出力ｙｊおよび影響度ｓｉｊの一例を示す表である。ｉおよびｊの範囲は、それぞれ１〜４である。影響度算出部５３は、図２（Ｂ）に示すように、各出力ｙｊについて、入力ｘｉによる影響度ｓｉｊを算出する。図２（Ｂ）に示す例では、出力ｙ２の入力ｘ２による影響度ｓ２２の絶対値は、２．４５であり、出力ｙ２の影響度のうち最も高い。一方、出力ｙ２の入力ｘ１による影響度ｓ１２の絶対値は、０．０４であり、出力ｙ２の影響度のうち最も低い。従って、入力ｘ２が変化すると出力ｙ２は大きく変化する。しかし、入力ｘ１が変化しても出力ｙ２はほとんど変化しない。
【００４５】
次に、図３および図４を参照して、学習データや推定用データの分布を生成する例について説明する。以下では、学習データ分布生成部５４が学習データの分布を生成する場合について説明する。しかし、推定データ分布生成部１０３が推定用データの分布を生成する場合も同様の手順で行われる。
【００４６】
図３は、学習データの取り得る範囲の複数の区間の一例を示す図である。学習データ分布生成部５４は、図３に示すように、学習データの取り得る範囲を区間に分割し、区間毎に学習データの値の頻度分布を生成する。学習データ（入力ｘ１〜ｘ４）毎に取り得る範囲が異なるため、学習データ分布生成部５４は、それぞれ適切に範囲を分割する。図３において、ｘ１の範囲は０〜１２９では１０刻みに分割されており、０未満および１３０以上の範囲はそれぞれ一つの区分として表されている。
【００４７】
図４は、学習データの分布を生成する処理の一例を示す図である。図４に示すように、学習データｘ１の値が７１であった場合、ｘ１が該当する区分の範囲は７０≦ｘ１＜８０である。従って、７０≦ｘ１＜８０の区分の累計数がＡであった場合、学習データ分布生成部５４は、累計数をＡ＋１に更新する。すなわち、各区間のマス目には、学習データを区分分割した値の累計数が書き込まれる。このように、学習データ分布生成部５４は、累積情報の更新を学習データ分繰り返し、学習データの分布を生成する。データの分布は、例えば、ヒストグラムである（図６を参照）。
【００４８】
また、学習データ分布生成部５４は、学習データの分布に基づいて、例えば、学習データの分布の平均値および分散を、分布の特徴を表す分布情報として算出する。
【００４９】
次に、指標値Ｕおよび学習モデルの更新判定の方法について説明する。
【００５０】
指標値算出部７５は、影響度と、学習データの分布情報と、推定用データの分布情報と、に基づいて、指標値Ｕを算出する。例えば、学習データ分布生成部５４が算出した学習データｘｉの平均値をＡ（ｘｉ）、分散をσ（ｘｉ）（ｉ＝１，２，３,．．．．,Ｎ）、推定データ分布生成部１０３が算出した推定用データｘ’ｉの平均値をＡ（ｘ’ｉ）、分散をσ（ｘ’ｉ）（ｉ＝１，２，３,．．．．,Ｎ）、影響度算出部５３で算出した出力ｙｊ（ｊ＝１，２，３,…,Ｍ）の各学習データｘｉによる影響度の平均値をＥｉｊとしたとき、指標値算出部７５は、式２により指標値Ｕを算出する。
【数２】
2020086778.tif 000004
尚、ＮおよびＭは、それぞれ、入力次元数および出力次元数を表す。また、式２の右辺の第１項は、学習データの分散と推定用データの分散との差分を示し、式２の右辺の第２項は、学習データの平均値と推定用データの平均値との差分を示す。αｉおよびβｉはそれぞれ各学習データの値の範囲に対する補正項である。これは、学習データや推定用データの値の取り得る範囲や影響度Ｅｉｊの大小関係によっては、右辺の第１項と第２項との間で値が大きく異なり、指標値Ｕを適切に算出することができない場合があるためである。
【００５１】
学習モデル更新判定部８０は、指標値Ｕと所定の閾値との大小関係に基づいて、学習モデルを更新するか否かを判定する。学習モデル更新判定部８０は、例えば、指標値Ｕが所定の閾値以上になった場合、学習モデルを更新すると判定する。
【００５２】
尚、推定用データの分布が学習データの分布に包含される場合、式２に示される指標値Ｕの一部の計算項が省略されてもよい。例えば、平均値Ａ（ｘｉ），Ａ（ｘ’ｉ）および分散σ（ｘｉ），σ（ｘ’ｉ）が式３を満たす場合、式３を満たす推定用データｘ’ｉは指標値Ｕの算出対象から除外してもよい。
【数３】
2020086778.tif 000005
除外される推定用データｘ’ｉは、学習モデルの生成時から環境や状況の変化が小さく、式２の指標値Ｕに大きく影響しないためである。この結果、指標値Ｕの計算時間を短くすることができる。
【００５３】
次に、学習モデルの再生成について説明する。
【００５４】
学習部５２は、学習モデル更新判定部８０が学習モデルを更新すると判定した場合、学習モデルの再生成を行う。学習部５２は、既に学習モデルの生成に用いた学習データに加えて推定用データを学習データとして、学習モデルを再生成する。これにより、過去の学習内容を保持しつつ、環境変化に対応させて現在の環境に適した学習モデルを再生成することができる。尚、再学習時において、データ記憶部３０は、学習データ、教師データおよび推定用データと同様に再学習教師データを格納している。
【００５５】
影響度算出部５３は、推定用データを含む学習データを用いて、再び影響度を算出する。学習部５２は、学習モデルの再生成の際に、影響度が所定値以下になる学習データを学習モデルの再生成の対象から外してもよい。これにより、学習モデルの容量を圧縮することができる。
【００５６】
次に、図５（Ａ）および図５（Ｂ）を参照して、機械学習モデル構築方法について説明する。
【００５７】
図５（Ａ）および図５（Ｂ）は、一実施形態による機械学習モデル構築装置１の処理動作を示すフロー図である。図５（Ａ）は、学習装置５０による学習処理のフローを示す。図５（Ｂ）は、推定装置１００、指標値算出部７５、学習モデル更新判定部８０による推定処理のフローを示す。尚、図５（Ｂ）の推定処理には、図５（Ａ）の学習処理が含まれている。
【００５８】
図５（Ａ）に示す学習処理において、まず、学習用データ前処理部５１は、学習データおよび教師データを生成する（Ｓ１１０）。
【００５９】
次に、学習データ分布生成部５４は、学習データの分布を生成する（Ｓ１２０）。学習データの分布は、例えば、ヒストグラムである。
【００６０】
次に、学習データ分布生成部５４は、学習データの分布に基づいて、学習データの分布情報を算出する（Ｓ１３０）。分布情報は、例えば、平均値および分散である。
【００６１】
次に、学習部５２は、学習データと教師データとの対応関係に基づいて、学習モデルを生成する（Ｓ１４０）。
【００６２】
次に、影響度算出部５３は、生成された学習モデルにおける教師データの学習データによる影響度を算出する（Ｓ１５０）。
【００６３】
次に、学習部５２は、学習を終了する（Ｓ１６０）。学習部５２は、生成した機械学習モデルを学習モデル格納部７０に出力する。
【００６４】
図５（Ｂ）に示す推定処理では、まず、推定用データ前処理部１０１は、推定用データを生成する（Ｓ２１０）。
【００６５】
次に、推定データ分布生成部１０３は、推定用データの分布を生成する（Ｓ２２０）。
【００６６】
次に、推定データ分布生成部１０３は、推定用データの分布に基づいて、推定用データの分布情報を算出する（Ｓ２３０）。
【００６７】
次に、指標値算出部７５は、指標値Ｕを算出する（Ｓ２４０）。指標値算出部７５は、ステップＳ１５０において算出された影響度、ステップＳ１３０において算出された学習データの分布情報およびステップＳ２２０において算出された推定用データの分布情報に基づいて、指標値Ｕを算出する。
【００６８】
次に、学習モデル更新判定部８０は、指標値Ｕが所定の閾値以上であるか否かを判定する（Ｓ２５０）。所定の閾値は、例えば、ユーザにより予め設定される。指標値Ｕが所定の閾値未満である場合（Ｓ２５０のＮＯ）、学習モデル更新判定部８０は、学習モデルの更新は不要と判断する。その後、ステップＳ２１０〜Ｓ２５０が再び実行される。尚、学習モデルの運用中であるため、ステップＳ２１０において新たな推定用データが生成される。
【００６９】
一方、指標値Ｕが所定の閾値以上である場合（Ｓ２５０のＹＥＳ）、学習モデル更新判定部８０は、学習モデルの更新が必要と判断する。この場合、学習モデル更新判定部８０は、学習モデルの推定精度が悪化していると判断する。その後、学習装置５０は、再び学習処理を実行して（Ｓ２６０）、学習モデルを再生成する。
【００７０】
ステップＳ２６０の学習処理において、学習装置５０は、学習処理のステップＳ１１０〜Ｓ１６０と同様の処理を実行する。しかし、学習装置５０は、既に学習モデルの生成に用いられた学習データに加えて、ステップＳ２１０で生成された推定用データを学習データとして、ステップＳ１１０〜Ｓ１５０の処理を実行する。
【００７１】
学習部５２は、学習モデルを更新する（Ｓ２７０）。この場合、学習部５２は、再生成した学習モデルを学習モデル格納部７０に出力して、ステップＳ２１０以降の処理を繰り返す。従って、再生成された学習モデルを用いて、推定処理が再び実行される。機械学習モデル構築装置１は、起動している間は継続してステップＳ２１０〜Ｓ２７０の推定処理を繰り返す。
【００７２】
尚、学習処理におけるステップＳ１２０〜Ｓ１５０の処理順序は、図５（Ａ）に示す順序に限られない。また、学習データ分布生成部５４（ステップＳ１２０，Ｓ１３０）、学習部５２（ステップＳ１４０）および影響度算出部５３（ステップＳ１５０）の処理が並行して行われてもよい。
【００７３】
また、ユーザインタフェース部６０は、ステップＳ１１０〜Ｓ１６０およびステップＳ２１０〜Ｓ２７０の実行過程を表示部６１に表示してもよい。
【００７４】
図６は、一実施形態による表示部６１の表示例を示す図である。表示部６１は、例えば、図５（Ａ）および図５（Ｂ）に相当する処理フロー６１１を示し、機械学習モデル構築装置１の実行過程を表示する。表示部６１は、実行過程が一目で把握できるように、実行中の処理内容を色分け等により表示してもよい。図６は、学習モデルの生成（Ｓ１４０）が実行中の例を示している。また、ユーザインタフェース部６０は、表示部６１に、例えば、学習に使用している学習データのヒストグラム６１２を表示してもよい。また、ユーザインタフェース部６０は、表示部６１に、例えば、全学習回数や現在の学習実施済み回数など学習モデルの生成に関する情報６１３を表示してもよい。情報６１３には、例えば、ＲＭＳＥ（Root Mean Square Error）などにより算出された、推定値と教師データとの誤差が含まれていてもよい。
【００７５】
以上のように、本実施形態によれば、影響度算出部５３にて、教師データの学習データによる影響度を算出し、学習モデル更新判定部８０にて、影響度、学習データの分布情報および推定用データの分布情報に基づいて、機械学習モデルを更新するか否かを判定する。これにより、学習モデルの運用中に学習モデルの精度を評価することができる。精度を評価した結果、学習モデルの精度が悪化していると判断される場合、学習モデルの再生成および更新をする。このような学習モデルの更新は、学習モデルの運用中に繰り返し行われる。これにより、環境変化に追従して推定精度を保つ学習モデルを使用して推定することができる。
【００７６】
また、本実施形態では、実測値と推定値との比較をすることなく、学習モデルの生成に用いた学習データと、学習モデルの生成に用いなかった推定用データにより学習モデルの精度を評価することができる。従って、実測値を得ることが難しい学習モデルの運用条件においても、学習モデルの精度を評価することができる。また、学習モデルによる推定結果が実測値に作用するなど、真の実測値を得ることが難しい場合においても、学習モデルの推定精度を判定することができる。
【００７７】
また、学習モデル生成の際、網羅的にデータを収集し、学習モデルを生成することが困難である場合が多い。この場合でも、学習データおよび推定用データの分布情報と学習モデルの出力に対する影響度からデータ傾向の変化を把握し、的確に学習モデルを更新することができる。
【００７８】
（変形例）
上述した実施形態の一変形例による機械学習モデル構築装置１は、式２に代えて、カルバック・ライブラーダイバージェンスを用いて指標値Ｕを算出する点で、上述した実施形態による機械学習モデル構築装置１と異なる。
【００７９】
学習データ分布生成部５４は、学習データの取り得る範囲を複数の区間に分割し、区間毎に学習データを分類した頻度分布を分布情報として求める。
【００８０】
推定データ分布生成部１０３は、推定用データの取り得る範囲を複数の区間に分割し、区間毎に推定用データを分類した頻度分布を分布情報として求める。
【００８１】
指標値算出部７５は、学習データの頻度分布および推定用データの頻度分布に基づいてカルバック・ライブラーダイバージェンスを算出し、カルバック・ライブラーダイバージェンスを影響度により重み付けして、指標値Ｕを算出する。すなわち、指標値算出部７５は、式２に代えて、式４および式５に基づいて指標値Ｕを算出する。
【数４】
2020086778.tif 000006
式４および式５におけるＤＫＬ（ｉ）は、カルバック・ライブラーダイバージェンスと呼ばれ、２つの分布の異なり具合を算出する計算式である。式５におけるｋは、学習データの取り得る範囲を領域分割した場合の番号を示す。また、ｘｉ（ｋ）は学習データの発生頻度を示し、ｘ’ｉ（ｋ）は推定用データの発生頻度を示す。式４および式５によっても、学習データの分布と推定用データの分布との差異として指標値Ｕを算出することができる。
【００８２】
例えば、学習データの分布が推定用データの分布と一致する場合、学習データの頻度ｘｉ（ｋ）および推定用データのｘ’ｉ（ｋ）は、任意のｋに対してｘｉ（ｋ）＝ｘ’ｉ（ｋ）の関係を有する。従って、式５の右辺が０になり、ＤＫＬ（ｉ）および指標値Ｕは０になる。一方、両者の分布にずれが生じると、式５の右辺の対数が有限の値になる。さらに、両者の分布のずれが大きくなるほど、ＤＫＬ（ｉ）および指標値Ｕは大きくなる。
【００８３】
本変形例による機械学習モデル構築装置１のその他の構成は、上述した実施形態による機械学習モデル構築装置１の対応する構成と同様であるため、その詳細な説明を省略する。
【００８４】
本変形例による機械学習モデル構築装置は、上述した実施形態と同様の効果を得ることができる。
【００８５】
本実施形態による機械学習モデル構築装置および機械学習モデル構築方法の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、機械学習モデル構築装置および機械学習モデル構築方法の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。また、機械学習モデル構築装置および機械学習モデル構築方法の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００８６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００８７】
１  機械学習モデル構築装置、５２  学習部、  ５３  影響度算出部、５４  学習データ分布生成部、６０  ユーザインタフェース部、６１  表示部、７５  指標値算出部、８０  学習モデル更新判定部、１０２  推定部、１０３  推定データ分布生成部、Ｕ  指標値
【図１】
2020086778.tif 000007
【図２】
2020086778.tif 000008
【図３】
2020086778.tif 000009
【図４】
2020086778.tif 000010
【図５】
2020086778.tif 000011
【図６】
2020086778.tif 000012