(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-13
(45)【発行日】2024-12-23
(54)【発明の名称】生成支援装置、生成支援方法、及び生成支援プログラム
(51)【国際特許分類】
G06F 8/70 20180101AFI20241216BHJP
G06N 20/00 20190101ALI20241216BHJP
【FI】
G06F8/70
G06N20/00
(21)【出願番号】P 2021120632
(22)【出願日】2021-07-21
【審査請求日】2024-02-07
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】高重 聡一
【審査官】児玉 崇晶
(56)【参考文献】
【文献】特開2007-047971(JP,A)
【文献】特開2020-004055(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/70
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
機械学習モデルを構成するための構成情報を生成する生成支援装置であって、
機械学習モデルについての複数の構成要素のグループである構成要素グループのそれぞれについての変更履歴を格納する複数の構成要素情報と、機械学習モデルを構成する複数の構成要素グループについての版を格納する構成要素管理情報とを記憶する記憶部と、
更新された第1機械学習モデルについての構成情報を入力し、構成情報に基づいて、前記構成要素情報に変更履歴を追加するとともに、前記構成要素管理情報に前記更新された前記第1機械学習モデルの構成要素グループの版を記録する記録部と、
前記第1機械学習モデルの更新前の構成要素グループと同一の版の構成要素グループを含む第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された構成要素グループの版に対応する構成要素を含む構成情報を生成する構成情報生成部と、
を有する生成支援装置。
【請求項2】
前記記憶部は、前記機械学習モデルの学習に使用する学習要素の変更履歴を格納する学習要素情報を更に格納し、
前記構成要素管理情報は、前記機械学習モデルの学習要素の版を更に格納し、
前記記録部は、更に、更新された前記第1機械学習モデルの学習に使用する学習要素を入力し、前記学習要素に基づいて、前記学習要素情報に変更履歴を追加するとともに、前記構成要素管理情報に前記更新された前記第1機械学習モデルの学習要素の版を記録し、
前記構成情報生成部は、前記第1機械学習モデルの更新前の構成要素グループと同一の版の学習要素を使用する第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された学習要素の版を特定し、前記構成情報に前特定した前記版の学習要素を含める
請求項1に記載の生成支援装置。
【請求項3】
複数の前記構成要素グループは、機械学習モデルの開発段階で決定される傾向の高い構成要素を含む第1グループと、前記開発段階の後の機械学習モデルを適用対象に合わせて個別化する個別化段階で決定される可能性のある構成要素を含む第2グループとを含む
請求項1に記載の生成支援装置。
【請求項4】
前記第1グループは、前記機械学習モデルの学習アルゴリズムを識別する情報と、前記学習アルゴリズムの前処理に使用するロジックを識別する情報と、前記学習アルゴリズムの後処理に使用するロジックを識別する情報と、前記機械学習モデルで使用するパラメータとを含み、
前記第2グループは、前記学習アルゴリズムの前処理に使用するロジックを識別する情報と、前記学習アルゴリズムの後処理に使用するロジックを識別する情報と、前記機械学習モデルで使用するパラメータと、前記機械学習モデルの適用対象を識別する情報とを含む
請求項3に記載の生成支援装置。
【請求項5】
前記構成情報生成部は、前記第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された構成要素グループの版に対応する構成要素を含む構成情報に基づいて、機械学習モデルを生成する
請求項1に記載の生成支援装置。
【請求項6】
前記構成情報生成部は、前記第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された構成要素グループの版に対応する構成要素を含む構成情報に基づいて、機械学習モデルを生成し、生成した前記機械学習モデルに対して前記学習要素を使用して学習を行う
請求項2に記載の生成支援装置。
【請求項7】
複数の前記構成要素グループには、同一の構成要素が含まれており、
前記記憶部は、
前記機械学習モデルの適用状態を管理する状態管理情報を更に記憶し、
前記記録部は、前記状態管理情報から前記第1機械学習モデルの適用状態を特定し、前記適用状態に基づいて、第1機械学習モデルについての更新された構成情報に含まれる構成要素を記憶させる構成要素情報を決定する
請求項1に記載の生成支援装置。
【請求項8】
機械学習モデルを構成するための構成情報を生成する生成支援装置による生成支援方法であって、
機械学習モデルについての複数の構成要素のグループである構成要素グループのそれぞれについての変更履歴を格納する複数の構成要素情報と、機械学習モデルを構成する複数の構成要素グループについての版を格納する構成要素管理情報とを記憶し、
更新された第1機械学習モデルについての構成を含む構成情報を入力し、構成情報に基づいて、前記構成要素情報に変更履歴を追加するとともに、構成要素管理情報に前記更新された前記第1機械学習モデルの構成要素グループの版を記録し、
前記第1機械学習モデルの更新前の構成要素グループと同一の版の構成要素グループを含む第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された構成要素グループの版に対応する構成要素を含む構成情報を生成する
生成支援方法。
【請求項9】
機械学習モデルを構成するための構成情報を生成する処理をコンピュータに実行させる生成支援プログラムであって、
前記コンピュータに、
機械学習モデルについての複数の構成要素のグループである構成要素グループのそれぞれについての変更履歴を格納する複数の構成要素情報と、機械学習モデルを構成する複数の構成要素グループについての版を格納する構成要素管理情報とを記憶させ、
更新された第1機械学習モデルについての構成を含む構成情報を入力させ、構成情報に基づいて、前記構成要素情報に変更履歴を追加させるとともに、構成要素管理テーブルに前記更新された前記第1機械学習モデルの構成要素グループの版を記録させ、
前記第1機械学習モデルの更新前の構成要素グループと同一の版の構成要素グループを含む第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された構成要素グループの版に対応する構成要素を含む構成情報を生成させる
生成支援プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械学習モデルを変更した場合において関連する機械学習モデルを生成する支援を行う技術に関する。
【背景技術】
【0002】
工場や電力設備等における複数の機器の異常を監視するために機械学習モデルが利用されている。複数の機器の異常を監視するためには、機器ごとにチューニングされた機械学習モデルが必要となる。
【0003】
例えば、或るアルゴリズムを変更した場合には、各機器のために個別に機械学習モデルのパラメータをチューニングしたり、学習したりする必要が生じる。
【0004】
例えば、このような機械学習モデルについての変更点(データ、パラメータ、特徴量の変化)等の履歴を記録して管理する技術が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記したように、複数の機器の異常を監視するためには、機器ごとにチューニングされた機械学習モデルが必要となるが、そのアルゴリズムの大部分は、複数の機器間で共通に使用できる場合が多い。
【0007】
このような場合に、或る機器の機械学習モデルのアルゴリズムを変更した場合に、関連する機械学習モデルを特定し、それらの機械学習モデルを生成できるようにすることが好ましい。
【0008】
例えば、特許文献1に開示された技術においては、或る機械学習モデルの履歴から過去の機械学習モデルについて把握することができるが、関連する機械学習モデルを特定等することは困難である。
【0009】
本発明は、上記事情に鑑みなされたものであり、その目的は、或る機械学習モデルを変更した場合に、関連する機械学習モデルを作成する支援を行うことのできる技術を提供することにある。
【課題を解決するための手段】
【0010】
上記目的を達成するため、一観点に係る生成支援装置は、機械学習モデルを構成するための構成情報を生成する生成支援装置であって、機械学習モデルについての複数の構成要素のグループである構成要素グループのそれぞれについての変更履歴を格納する複数の構成要素情報と、機械学習モデルを構成する複数の構成要素グループについての版を格納する構成要素管理情報とを記憶する記憶部と、更新された第1機械学習モデルについての構成情報を入力し、構成情報に基づいて、前記構成要素情報に変更履歴を追加するとともに、前記構成要素管理情報に前記更新された前記第1機械学習モデルの構成要素グループの版を記録する記録部と、前記第1機械学習モデルの更新前の構成要素グループと同一の版の構成要素グループを含む第2機械学習モデルについて、更新後の前記第1機械学習モデルの更新された構成要素グループの版に対応する構成要素を含む構成情報を生成する構成情報生成部と、を有する。
【発明の効果】
【0011】
本発明によれば、或る機械学習モデルを変更した場合に、関連する機械学習モデルを作成する支援を行うことができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、一実施形態に係る生成支援装置の全体構成図である。
【
図2】
図2は、一実施形態に係る生成支援装置のハードウェア構成図である。
【
図3】
図3は、一実施形態に係る機械学習モデル生成支援処理のフローチャートである。
【
図4】
図4は、一実施形態に係る構成要素更新処理のフローチャートである。
【
図5】
図5は、一実施形態に係る派生モデルパラメータ合成処理のフローチャートである。
【
図6】
図6は、機械学習モデルの生成の一例及び一実施形態における機械学習モデル生成支援処理の具体例を説明する図である。
【発明を実施するための形態】
【0013】
実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0014】
以下の説明では、「AAAテーブル」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「AAAテーブル」を「AAA情報」と呼ぶことができる。
【0015】
図1は、一実施形態に係る生成支援装置の全体構成図である。
【0016】
生成支援装置1は、記録部の一例としてのモデル変更記録部10と、構成情報生成部の一例としての派生モデルパラメータ合成部20と、分類確認受付部30と、記憶元機械学習学習条件40と、状態管理情報の一例としてのモデル状態管理テーブル50と、構成要素管理情報の一例としてのモデル構成要素管理テーブル60と、構成要素情報の一例としての共通構成要素テーブル(TB)61と、構成要素情報の一例としての個別化構成要素テーブル(TB)62と、学習要素情報の一例としての運用変更要素テーブル(TB)63と、派生機械学習モデル70とを有する。
【0017】
モデル変更記録部10は、記録元機械学習条件40の各項目(各要素)の値を、モデル構成要素管理テーブル60、共通構成要素テーブル61、個別化構成要素テーブル62、及び運用変更要素テーブル63に記録する処理を実行する。
【0018】
派生モデルパラメータ合成部20は、モデル構成要素管理テーブル60、共通構成要素テーブル61、個別化構成要素テーブル62、及び運用変更要素テーブル63を用いて、新たに変更されて記録された機械学習モデル(第1機械学習モデル)と、共通する共通構成要素、個別化構成要素、又は運用変更要素に対応する機械学習モデル(第2機械学習モデル)について、変更された要素を反映させた機械学習モデルの構成情報(モデルパラメータ)を作成し、構成情報に基づいて機械学習モデルを作成する。なお、派生モデルパラメータ合成部20は、機械学習モデルを作成する適用対象の指定を受け付けて、指定を受け付けた適用対象についての機械学習モデルのみの構成情報を作成し、その構成情報に基づいて機械学習モデルを作成するようにしてもよい。
【0019】
分類確認受付部30は、モデル変更記録部10により、モデル構成要素管理テーブル60、共通構成要素テーブル61、個別化構成要素テーブル62、及び運用変更要素テーブル63に記録させた内容を表示させ、記録元機械学習学習条件40の各項目の値の記録先のテーブルの確認や、記録先のテーブルの変更等についてのユーザからの指示を受け付け、指示に基づいて記録先の確定や、記録先の変更等の処理を行う。なお、ユーザからの指定を受け付けない場合には、分類確認受付部30を備えなくてもよい。
【0020】
記憶元機械学習学習条件40は、記録元となる更新された機械学習モデルの構成情報及び学習に用いたデータセット等の学習条件を含み、具体的には、共通構成要素テーブル61、個別化構成要素テーブル62、及び運用変更要素テーブル63に管理される各項目の情報を含む。記録元機械学習学習条件40は、例えば、機械学習モデルの編集履歴等を管理するシステム等から取得するようにしてもよい。
【0021】
モデル状態管理テーブル50は、各機械学習モデルに対応するレコードを格納する。モデル状態管理テーブル50のレコードは、モデル識別子と、適用対象と、モデル状態との項目を格納する。モデル識別子の項目には、レコードに対応する機械学習モデルを識別する識別子(モデル識別子)が格納される。適用対象の項目には、レコードに対応する機械学習モデルの適用対象、例えば、機械学習モデルにより異常検出を行う対象の設備等の識別子が格納される。モデル状態の項目には、レコードに対応する機械学習モデルについての適用状態が格納される。適用状態としては、例えば、後述する
図6に示すように、データサイエンティスト(DS)によって機械学習モデルの共通となる構成が開発されている状態(開発状態)と、機械学習モデルが個別の設備等に合わせてチューニングがされている状態(個別化状態)と、機械学習モデルがデプロイされて実際に運用されている状態(運用状態)とがある。
【0022】
モデル構成要素管理テーブル60は、機械学習モデルに対応するレコードを格納する。なお、モデル構成要素管理テーブル60には、同一の機械学習モデルに対して、複数のレコードが格納されていてもよい。モデル構成要素管理テーブル60のレコードは、登録日時と、モデル識別子と、共通化要素Verと、個別化要素Verと、運用変更要素Verとの項目を含む。登録日時の項目には、レコードを格納した日時が格納される。モデル識別子の項目には、レコードに対応する機械学習モデルのモデル識別子が格納される。共通化Verの項目には、レコードに対応する機械学習モデルを構成する共通構成要素(共通構成要素グループ:構成要素グループ)のバージョン(版)が格納される。個別化要素Verの項目には、レコードに対応する機械学習モデルを構成する個別化構成要素(個別化構成要素グループ:構成要素グループ)についてのバージョン(版)が格納される。運用変更要素Verの項目には、レコードに対応する機械学習モデルの運用で変更する要素(学習要素:運用変更要素グループ)についてのバージョン(版)が格納される。
【0023】
共通構成要素テーブル61は、機械学習モデルを構成する共通構成要素の変更履歴を管理するテーブルであり、共通構成要素のバージョンごとに対応するレコードを格納する。共通構成要素は、機械学習モデルの開発段階で決定される傾向の高い構成要素を含む。共通構成要素テーブル61のレコードは、共通化要素Verと、前処理ロジックIDと、学習アルゴリズムIDと、後処理ロジックIDと、モデル学習パラメータとの項目を含む。
【0024】
共通化要素Verの項目は、レコードに対応する共通構成要素のバージョンが格納される。前処理ロジックIDの項目には、レコードに対応するバージョンの共通構成要素を構成する前処理ロジックの識別子(前処理ロジックID)が格納される。学習アルゴリズムIDの項目には、レコードに対応するバージョンの共通構成要素を構成する学習アルゴリズムの識別子(学習アルゴリズムID)が格納される。後処理ロジックIDの項目には、レコードに対応するバージョンの共通構成要素を構成する後処理ロジックの識別子(後処理ロジックID)が格納される。モデル学習パラメータの項目には、レコードに対応するバージョンの共通構成要素を構成するモデル学習パラメータが格納される。
【0025】
個別化構成要素テーブル62は、機械学習モデルを構成する個別化構成要素の履歴を管理するテーブルであり、個別化構成要素のバージョンごとに対応するレコードを格納する。個別化構成要素は、機械学習モデルを適用対象に合わせて個別化する段階で決定される可能性のある構成要素を含む。なお、共通構成要素と、個別化構成要素との間で同一の構成要素が含まれていてもよい。個別化構成要素テーブル62のレコードは、個別化要素Verと、モデル学習パラメータと、前処理ロジックIDと、後処理ロジックIDと、適用対象と、参照先との項目を含む。
【0026】
個別化要素Verの項目には、レコードに対応する個別化構成要素のバージョンが格納される。モデル学習パラメータの項目には、レコードに対応するバージョンの個別化構成要素を構成するモデル学習パラメータが格納される。前処理ロジックIDの項目には、レコードに対応するバージョンの個別化構成要素を構成する前処理ロジックの前処理ロジックIDが格納される。後処理ロジックIDの項目には、レコードに対応するバージョンの個別化構成要素を構成する後処理ロジックの後処理ロジックIDが格納される。適用対象の項目には、レコードに対応する個別化構成要素により構成される機械学習モデルの適用対象の識別子が格納される。参照先の項目には、レコードに対応するバージョンの個別化構成要素の値として参照する他のレコードを示す情報が格納される。なお、参照先の項目に参照先のレコードの設定がある場合には、レコードにおける値が設定されていない項目の値は、参照先のレコードの対応する項目の値、又は、さらに参照先を介して繋がっている参照先のレコードの対応する項目の値となる。この参照先の項目によると、関連する一群の適用対象について、特定のレコードの項目の値を共通して利用することができる。
【0027】
運用変更要素テーブル63は、機械学習モデルの学習に関する運用変更要素の履歴を管理するテーブルであり、運用変更要素のバージョンごとに対応するレコードを格納する。運用変更要素は、機械学習モデルの運用段階において使用される可能性のある要素(学習要素)を含む。運用変更要素テーブル63のレコードは、運用変更要素Verと、利用データセットIDと、学習結果と、適用対象との項目を含む。
【0028】
運用変更要素Verの項目には、レコードに対応する運用変更要素のバージョンが格納される。利用データセットIDの項目には、レコードに対応するバージョンの運用変更要素を構成する利用データセットの識別子(利用データセットID)が格納される。利用データセットは、機械学習モデルの学習に利用されるデータセットである。学習結果の項目には、機械学習モデルに対してレコードに対応する利用データセットを利用して学習した際の学習結果が格納される。適用対象の項目には、レコードに対応する運用変更要素を適用する適用対象の識別子が格納される。
【0029】
派生機械学習モデル70は、作成された機械学習モデル(派生機械学習モデル)と、派生機械学習モデルについての構成及び学習に関する情報(モデルパラメータ)と、を含む。モデルパラメータは、モデル識別子と、前処理ロジックIDと、学習アルゴリズムIDと、後処理ロジックIDと、モデル学習パラメータと、学習結果とを含む。
【0030】
モデル識別子は、派生機械学習モデルを識別するモデル識別子である。前処理ロジックIDは、派生機械学習モデルを構成する前処理ロジックの前処理ロジックIDである。学習アルゴリズムIDは、派生機械学習モデルを構成する学習アルゴリズムの学習アルゴリズムIDである。後処理ロジックIDは、派生機械学習モデルを構成する後処理ロジックの後処理ロジックIDである。モデル学習パラメータは、派生機械学習モデルで使用するモデル学習パラメータである。学習結果は、派生機械学習モデルに対して、対応する利用データセットを用いて学習を行った結果である。
【0031】
図2は、一実施形態に係る生成支援装置のハードウェア構成図である。
【0032】
生成支援装置1は、例えば、PC(Personal Computer)、サーバ等のコンピュータによって構成されている。生成支援装置1は、通信インターフェース(I/F)101と、CPU(Central Processing Unit)102と、入力装置103と、記憶部の一例としての記憶デバイス104と、メモリ105と、表示装置106と、を備えている。
【0033】
通信インターフェース101は、例えば、有線LANカードや無線LANカードなどのインターフェースであり、ネットワークを介して他の装置と通信する。
【0034】
CPU102は、メモリ105及び/又は記憶デバイス104に格納されているプログラムに従って各種処理を実行する。本実施形態では、CPU102が後述する生成支援プログラムを実行することにより、モデル変更記録部10、派生モデルパラメータ合成部20、及び分類確認受付部30が構成される。
【0035】
メモリ105は、例えば、RAM(RANDOM ACCESS MEMORY)であり、CPU102で実行されるプログラムや、必要な情報を記憶する。
【0036】
記憶デバイス104は、例えば、ハードディスクやフラッシュメモリなどであり、CPU102で実行されるプログラム(例えば、生成支援プログラム)や、機械学習モデルを構成する各種ロジック、CPU102に利用されるデータ(例えば、機械学習モデルの学習に利用する利用データセット)等を記憶する。本実施形態では、記憶デバイス104は、記憶元機械学習学習条件40と、モデル状態管理テーブル50と、モデル構成要素管理テーブル60と、共通構成要素テーブル61と、個別化構成要素テーブル62と、運用変更要素テーブル63と、派生機械学習モデル70とを記憶する。
【0037】
入力装置103は、例えば、マウス、キーボード等であり、生成支援装置1のユーザによる情報の入力を受け付ける。表示装置106は、例えば、ディスプレイであり、各種情報を表示出力する。
【0038】
次に、機械学習モデル生成支援処理について説明する。
【0039】
図3は、一実施形態に係る機械学習モデル生成支援処理のフローチャートである。
【0040】
モデル変更記録部10は、記録元機械学習学習条件40を入力し(ステップS1)、構成要素更新処理を実行する(ステップS2)。
【0041】
構成要素更新処理では、モデル変更記録部10は、記録元機械学習学習条件40に対応する機械学習モデルのモデル識別子(対象モデル識別子)を用いて、モデル状態管理テーブル50のレコードを参照し、そのレコードの内容に基づいて、記録元機械学習学習条件40の各項目を記録する対象となる要素テーブルを特定し、変更がある場合に、特定した要素テーブルに対して新しいレコードを追加し、そのレコードに新しいバージョンの情報と、記録元機械学習学習条件40の項目の内容とを記録する。なお、構成要素更新処理のより詳細な説明については、
図4を参照して後述する。
【0042】
次いで、モデル変更記録部10は、モデル構成要素管理テーブル60から対象モデル識別子と同じモデル識別子に対応する最新のレコードを取得し、記録元機械学習学習条件40の項目と比較することにより変更点を抽出し、最新のレコードを複製し、このレコードの変更した要素テーブルのバージョンの情報を変更後のバージョンの情報に更新する(ステップS3)。
【0043】
次いで、派生モデルパラメータ合成部20は、派生モデルパラメータ合成処理を実行する(ステップS4)。
【0044】
派生モデルパラメータ合成処理では、派生モデルパラメータ合成部20は、モデル構成要素管理テーブル60から、変更された機械学習モデルの変更前の共通構成要素、個別化構成要素、及び運用変更要素のバージョンを含むレコードを抽出し、変更されたバージョンの共通構成要素、個別化構成要素、及び運用変更要素の内容と、抽出されたレコードが参照する要素の内容とに基づいて、派生機械学習モデルのモデルパラメータ(構成情報)を合成する。さらに、派生モデルパラメータ合成部20は、モデルパラメータに基づいて、派生機械学習モデルを生成し、生成した派生機械学習モデルの学習を行う。
【0045】
次に、構成要素更新処理(ステップS2)の詳細について説明する。
【0046】
図4は、一実施形態に係る構成要素更新処理のフローチャートである。
【0047】
構成要素更新処理において、モデル変更記録部10は、記録元機械学習学習条件40(単に学習条件ともいう)から各項目の値を抽出する(ステップS11)。
【0048】
次いで、モデル変更記録部10は、学習条件の各項目について、処理対象としてループ1の処理(ステップS12~S20)を行う。ここで、処理対象の項目を対象項目ということとする。
【0049】
まず、モデル変更記録部10は、対象項目が、いずれかの要素テーブル(共通構成要素テーブル60、個別化構成要素テーブル61、運用変更要素テーブル62)に固有の項目であるか否かを判定する(ステップS12)。
【0050】
この結果、対象項目が要素テーブルに固有の項目でない場合(ステップS12:No)には、モデル変更記録部10は、モデル状態管理テーブル50の学習条件に対応する機械学習モデルのモデル識別子に対応するレコードを参照し、このレコードのモデル状態の項目の値を取得し、そのモデル状態の項目の値に対応する要素テーブルを格納先として決定し(ステップS13)、処理をステップS15に進める。
【0051】
一方、対象項目が要素テーブルに固有の項目である場合(ステップS12:Yes)には、モデル変更記録部10は、対象項目が固有の項目である要素テーブルを格納先として決定し(ステップS14)、処理をステップS15に進める。
【0052】
ステップS15では、モデル変更記録部10は、対象項目の格納先が個別化構成要素テーブル62であり、学習条件の適用対象に対応する最新のバージョンのレコードに参照先の指定があるか否かを判定する。
【0053】
この結果、参照先の指定がない場合(ステップS15:No)には、モデル変更記録部10は、処理をステップS18に進める。
【0054】
一方、参照先の指定がある場合(ステップS15:No)には、モデル変更記録部10は、参照元のレコードの内容を変更するか、又は参照先のレコードの内容を変更するかの指定をユーザから受け付ける(ステップS16)。なお、参照先のレコードに項目の値が設定されていない場合には、項目の値が設定されているレコードに到達するまで各レコードの参照先を順に辿ることにより、項目が設定されているレコードを特定する。また、ステップS16においては、ユーザの指定ではなく、予め決められた処理に従っていずれのレコードの内容を変更するかを決定するようにしてもよい。
【0055】
次いで、モデル変更記録部10は、ユーザの指定に従って、対象項目の格納先を決定し(ステップS17)、処理をステップS18に進める。
【0056】
ステップS18では、モデル変更記録部10は、格納先の要素テーブルの最新の要素のバージョンを取得する。
【0057】
次いで、モデル変更記録部10は、学習条件の項目が、格納先の要素テーブルの最新バージョンに対応するレコードの内容から変更されているか否かを判定し(ステップS19)、変更されていない場合(ステップS19:No)には、対象項目に対する処理を終了する一方、変更されている場合(ステップS19:Yes)には、最新バージョンに対応するレコードの内容に、対象項目の変更内容をマージするとともに、バージョンを最新のバージョンとした新規のレコードを作成し、このレコードを格納先の要素テーブルに追加し(ステップS20)、対象項目に対する処理を終了する。
【0058】
次いで、モデル変更記録部10は、各項目を処理対象としてループ1の処理(ステップS12~S20)を行い、全ての項目を処理対象としてループ1の処理を終了した場合に、構成要素更新処理を終了する。
【0059】
次に、派生モデルパラメータ合成処理(ステップS4)の詳細について説明する。
【0060】
図5は、一実施形態に係る派生モデルパラメータ合成処理のフローチャートである。
【0061】
派生モデルパラメータ合成処理において、派生モデルパラメータ合成部20は、構成要素更新処理において、どの要素テーブルに追記したかを判定する(ステップS41)。この結果、派生モデルパラメータ合成部20は、共通構成要素テーブル61に追記した場合(ステップS41:共通構成要素TB)には、ステップS42~S47の処理を実行し、個別化構成要素テーブル62に追記した場合(ステップS41:個別化構成要素TB)には、ステップS48~S54の処理を実行し、運用変更要素テーブル63に追記した場合(ステップS41:運用変更要素TB)には、ステップS55~S59の処理を実行する。なお、複数の要素テーブルに追記した場合には、追記した複数の要素テーブルに対して、共通構成要素テーブル61、個別化構成要素テーブル62、運用要素テーブル63の順に対応する処理を実行する。
【0062】
共通構成要素テーブル61に追記した場合(ステップS41:共通構成要素TB)には、派生モデルパラメータ合成部20は、モデル構成要素管理テーブル60から、変更前の共通構成要素のバージョンを参照しているレコードを抽出する(ステップS42)。
【0063】
次いで、派生モデルパラメータ合成部20は、抽出した各レコードを処理対象として、ループ2の処理(ステップS43~S47)を実行する。ここで、このループの処理の説明において、処理対象のレコードを対象レコードということとする。
【0064】
まず、派生モデルパラメータ合成部20は、対象レコードの個別化構成要素のバージョンを特定し、個別化構成要素テーブル62の対応するバージョンのレコード(個別化構成要素レコード)を抽出する(ステップS43)。
【0065】
次いで、派生モデルパラメータ合成部20は、機械学習モデルの設定(構成情報:モデルパラメータ)に、共通構成要素テーブル61の変更後のレコードの各項目の値を追加し、それらの項目の中で、個別化構成要素レコードと共通する項目については個別化構成要素レコードの値で上書きする(ステップS44)。
【0066】
次いで、派生モデルパラメータ合成部20は、対象レコードの運用変更要素のバージョンを特定し、運用変更要素テーブル63の対応するバージョンのレコード(運用変更要素レコード)を参照し、このレコードの値を機械学習モデルのモデルパラメータに追加し、その際、共通する項目については運用変更要素レコードの値で上書きする(ステップS45)。
【0067】
次いで、派生モデルパラメータ合成部20は、機械学習モデルのモデルパラメータに従って機械学習モデル(派生機械学習モデル)を作成し、また、作成した機械学習モデルに対して、設定された利用データセットにより機械学習を行ってその学習結果を機械学習モデルのモデルパラメータに追加する(ステップS46)。
【0068】
次いで、派生モデルパラメータ合成部20は、変更後の共通構成要素のバージョンと、抽出された個別化構成要素レコードのバージョンと、抽出された運用変更要素のレコードのバージョンと、の組のレコードをモデル構成要素管理テーブル60に追加する(ステップS47)。
【0069】
次いで、モデル変更記録部10は、各レコードを処理対象としてループ2の処理(ステップS43~S47)を行い、全てのレコードを処理対象としてループ2の処理を終了した場合に、派生モデルパラメータ合成処理を終了する。
【0070】
個別化構成要素テーブル62に追記した場合(ステップS41:個別化構成要素TB)には、派生モデルパラメータ合成部20は、モデル構成要素管理テーブル60から、変更前の個別化構成要素バージョンを参照しているレコードを抽出する(ステップS48)。
【0071】
次いで、派生モデルパラメータ合成部20は、抽出した各レコードを処理対象として、ループ3の処理(ステップS49~S54)を実行する。ここで、このループの処理の説明において、処理対象のレコードを対象レコードということとする。
【0072】
まず、派生モデルパラメータ合成部20は、対象レコードの共通構成要素のバージョン及び運用変更要素のバージョンを特定し、共通構成要素テーブル61の対応するバージョンのレコード(共通構成要素レコード)と、運用変更要素テーブル63の対応するバージョンのレコード(運用変更要素レコード)を抽出する(ステップS49)。
【0073】
次いで、派生モデルパラメータ合成部20は、抽出した個別化構成要素レコードが参照している個別化構成要素レコードと、変更前の個別化構成要素のバージョンを参照する個別化構成要素レコードとを全て抽出する(ステップS50)。
【0074】
次いで、派生モデルパラメータ合成部20は、機械学習モデルの設定(モデルパラメータ)に、共通構成要素テーブルのレコードの各項目の値を追加し、更に、抽出した個別化構成要素レコードと、変更後の個別化構成要素レコードとを参照先が優先となる順序で並べ、それぞれの個別化構成要素レコードに含まれる項目の値を、共通構成要素レコードと共通する項目に対して上書きする(ステップS51)。
【0075】
次いで、派生モデルパラメータ合成部20は、機械学習モデルのモデルパラメータと共通する項目について運用変更要素レコードの値で上書きする(ステップS52)。
【0076】
次いで、派生モデルパラメータ合成部20は、機械学習モデルのモデルパラメータに従って機械学習モデルを作成し、また、作成した機械学習モデルに対して、設定された利用データセットにより機械学習を行ってその学習結果を機械学習モデルのモデルパラメータに追加する(ステップS53)。
【0077】
次いで、派生モデルパラメータ合成部20は、変更後の個別化構成要素バージョンと、抽出された共通構成要素のレコードのバージョンと、抽出された運用変更要素のレコードのバージョンと、の組のレコードをモデル構成要素管理テーブル60に追加する(ステップS54)。
【0078】
次いで、モデル変更記録部10は、各レコードを処理対象としてループ3の処理(ステップS49~S54)を行い、全てのレコードを処理対象としてループ3の処理を終了した場合に、派生モデルパラメータ合成処理を終了する。
【0079】
運用変更要素テーブル63に追記した場合(ステップS41:運用変更要素TB)には、派生モデルパラメータ合成部20は、モデル構成要素管理テーブル60から、変更前の運用変更要素バージョンを参照しているレコードを抽出し、抽出したレコードに含まれるバージョンの共通構成要素レコード及び個別化構成要素レコードを抽出し、共通構成要素レコード及び個別化構成要素レコードから必要な項目を抽出する(ステップS55)。
【0080】
次いで、派生モデルパラメータ合成部20は、機械学習モデルの設定(モデルパラメータ)に、共通構成要素テーブルのレコードの各項目の値を追加し、それらの項目の中で、個別化構成要素レコードと共通する項目については個別化構成要素レコードの値で上書きする(ステップS56)。
【0081】
次いで、派生モデルパラメータ合成部20は、機械学習モデルのモデルパラメータと共通する項目について運用変更要素レコードの値で上書きする(ステップS57)。
【0082】
次いで、派生モデルパラメータ合成部20は、機械学習モデルのモデルパラメータに従って機械学習モデルを作成し、また、作成した機械学習モデルに対して、設定された利用データセットにより機械学習を行ってその学習結果を機械学習モデルのモデルパラメータに追加する(ステップS58)。
【0083】
次いで、派生モデルパラメータ合成部20は、変更後の運用変更要素バージョンと、抽出された共通構成要素レコードのバージョンと、抽出された個別化構成要素レコードのバージョンと、の組のレコードをモデル構成要素管理テーブル60に追加し(ステップS59)、派生モデルパラメータ合成処理を終了する。
【0084】
上記した機械学習モデル生成支援処理によると、変更された要素に対応する変更前の要素を使用していた機械学習モデルについて、変更前の要素を変更後の要素に変えた機械学習モデルを作成することができる。
【0085】
図6は、機械学習モデルの生成の一例及び一実施形態における機械学習モデル生成支援処理の具体例を説明する図である。
図6は、或る工場の設備1~3の異常を検出するための機械学習モデルを生成する場合の例を示している。
【0086】
機械学習モデルの開発から運用までにおける機械学習モデルの適用状態としては、機械学習モデルの適用対象の設備によらず共通な構成要素を設計する開発段階と、開発段階で設計された機械学習モデルを適用対象の個々の設備に合わせて変更する個別化段階と、個別化段階で生成された機械学習モデルを運用する際に運用状況等に合わせて変更するデプロイ・運用段階(単に、運用段階という)とがある。
【0087】
まず、開発段階においては、データサイエンティスト(DS)が、適用対象の設備1~3で共通する機械学習モデルを設計する。この開発段階では、機械学習モデルにおける前処理ロジック、学習アルゴリズム、後処理ロジック等が開発される。この開発段階で決定される要素が共通構成要素である。この結果、V1の機械学習モデルが作成される。
【0088】
次いで、個別化段階においては、開発者が、適用対象の設備が存在する現場において、各設備に適した機械学習モデルに更新する処理を行う。この個別化段階においては、各設備に応じて、開発段階で決定された前処理ロジック、後処理ロジック等の変更や修正、モデル学習パラメータにおけるパラメータの変更等が行われる。この個別化段階において、変更等される可能性のある構成要素が個別化構成要素である。この個別化段階において、設備1に対応する個別化構成要素が適用されたV1.1の機械学習モデルと、設備2に対応する個別化構成要素が適用されたV1.0の機械学習モデルと、設備3に対応する個別化構成要素が適用されたV1.2の機械学習モデルとが作成される。
【0089】
次いで、運用段階においては、開発者が、適用対象の設備が存在する現場において、各設備の運用に応じた機械学習モデルに更新する処理を行う。この運用段階においては、各設備の運用に応じて、機械学習モデルを学習するためのデータセット(利用データセット)を作成し、その利用データセットを使用して機械学習モデルの学習を行い、その学習に対する結果(学習結果)が得られる。この運用段階において、変更等される可能性のある要素が運用変更要素である。この運用段階において、設備1の運用変更要素が利用されたV1.1.1の機械学習モデルと、設備2に対応する運用変更要素が利用されたV1.0.1の機械学習モデルと、設備3に対応する運用変更要素が利用されたV1.2.1の機械学習モデルと、が作成される。この後、設備3に対応する運用変更要素が変更されると、変更後の運用変更要素が利用されたV1.2.2の機械学習モデルが作成される。
【0090】
このように機械学習モデルが作成されている状態において、共通構成要素(v1)に対して新たな共通構成要素(v2)が開発された場合には、上記した派生モデルパラメータ合成処理を実行することにより、共通構成要素(v1)を利用していた機械学習モデルについて、更新後の共通構成要素(v2)を利用する機械学習モデルのモデルパラメータが作成され、対応する機械学習モデルが生成される。具体的には、設備1に対する機械学習モデルとして、共通構成要素(v2)と、共通構成要素(v1)に対して使用していた個別化構成要素及び運用変更要素と、に基づいて、V2.1.1の機械学習モデルが生成され、同様に、設備2に対する機械学習モデルとして、共通構成要素(v2)と、共通構成要素(v1)に対して使用していた個別化構成要素及び運用変更要素と、に基づいて、V2.0.1の機械学習モデルが生成され、設備3に対する機械学習モデルとして、共通構成要素(v2)と、共通構成要素(v1)に対して使用していた個別化構成要素及び運用変更要素と、に基づいて、V2.2.2の機械学習モデルが生成される。なお、運用変更要素については、適用対象に対する最新の運用変更要素を用いて機械学習モデルが生成される。
【0091】
このように、上記した派生モデルパラメータ合成処理によると、共通構成要素が更新された場合には、変更された共通構成要素を使用して生成された複数の機械学習モデルを対象として、共通構成要素を変更後の共通構成要素を使用するようにした機械学習モデルを生成することができる。なお、派生モデルパラメータ合成処理では、個別化構成要素が更新された場合には、変更前の個別化構成要素を使用していた機械学習モデルを対象として、変更後の個別化構成要素を使用する機械学習モデルを生成することができる。また、派生モデルパラメータ合成処理では、運用変更要素が更新された場合には、変更前の運用変更要素を使用していた機械学習モデルを対象として、変更後の運用変更要素を使用した機械学習モデルを生成することができる。
【0092】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で、適宜変形して実施することが可能である。
【0093】
例えば、上記実施形態では、機械学習モデルの構成要素について、共通構成要素と、個別化構成要素との2つのグループとしていたが、本発明はこれに限られず、3以上の構成要素のグループとしてもよい。
【0094】
また、上記実施形態において、CPUが行っていた処理の一部又は全部を、ハードウェア回路で行うようにしてもよい。また、上記実施形態におけるプログラムは、プログラムソースからインストールされてよい。プログラムソースは、プログラム配布サーバ又は記録メディア(例えば可搬型の記録メディア)であってもよい。
【符号の説明】
【0095】
1…生成支援装置、10…モデル変更記録部、20…派生モデルパラメータ合成部、30…分類確認受付部、40…記録元機械学習学習条件、50…モデル状態管理テーブル、60…モデル構成要素管理テーブル、61…共通構成要素テーブル、62…個別化構成要素テーブル、63…運用変更要素テーブル、70…派生機械学習モデル、101…通信I/F、102…CPU、103…入力装置、104…記憶デバイス、105…メモリ、106…表示装置