(57)【特許請求の範囲】
【請求項１】
第１拠点及び複数の第２拠点からなる複数拠点で実施される工程をニューラルネットワークにより検査する学習モデル作成システムであって、
前記第１拠点における検査対象の状態をニューラルネットワークの第１のモデルを用いて診断する第１サーバと、
前記複数の第２拠点の各拠点における検査対象の状態をニューラルネットワークの第２のモデルを用いて診断する複数の第２サーバと、
を備え、
前記第１サーバは、
前記複数の第２サーバの各々から学習済みの前記第２のモデルの特徴量を受信し、
前記受信した複数の前記第２のモデルの特徴量と、学習済みの前記第１のモデルの特徴量とを融合し、
前記融合した特徴量に基づいて、前記第１のモデルを再構築し学習する
ことを特徴とする学習モデル作成システム。
【請求項２】
前記第１及び前記第２のモデルの特徴量は、当該モデルの階層構造のうち、当該モデルが運用される拠点または工程の特徴を表す階層の重みの組み合わせで表される
ことを特徴とする請求項１に記載の学習モデル作成システム。
【請求項３】
前記第１サーバは、初期モデルを構築し学習した後、学習済みの前記初期モデルを前記複数の第２サーバと共有し、
各前記第２サーバは、前記第１サーバから共有された前記初期モデルを基に、自拠点の特徴を取り込んで前記第２のモデルを構築し学習した後、学習済みの前記第２のモデルから前記特徴量を抽出して前記第１サーバに送信する
ことを特徴とする請求項１に記載の学習モデル作成システム。
【請求項４】
前記第１サーバは、前記再構築された前記第１のモデルの学習済みモデルである第３のモデルを、前記複数の第２サーバと共有し、
前記第１サーバ及び前記複数の第２サーバは、自拠点の検査対象を診断する前記ニューラルネットワークに、共通する前記第３のモデルを適用する
ことを特徴とする請求項１に記載の学習モデル作成システム。
【請求項５】
前記第１サーバが、前記第１拠点の検査対象を診断する前記ニューラルネットワークに前記第３のモデルを適用し、適用後の前記第３のモデルによる推理結果の精度が所定の精度基準を満たした場合に、前記第３のモデルを前記複数の第２サーバと共有し、
各前記第２サーバが、前記第２拠点の検査対象を診断する前記ニューラルネットワークに前記第３のモデルを適用する
ことを特徴とする請求項４に記載の学習モデル作成システム。
【請求項６】
前記第１サーバが、前記第３のモデルを前記複数の第２サーバと共有し、
各前記第２サーバが、前記第２拠点の検査対象を診断する前記ニューラルネットワークに前記第３のモデルを適用し、
各前記第２サーバにおいて適用後の前記第３のモデルによる推理結果の精度が所定の精度基準を満たした場合に、前記第１サーバが、前記第１拠点の検査対象を診断する前記ニューラルネットワークに前記第３のモデルを適用する
ことを特徴とする請求項４に記載の学習モデル作成システム。
【請求項７】
各前記第２サーバは、自拠点で収集した検査データから自拠点の特徴的な情報を抽出したサンプルデータを、学習済みの前記第２のモデルから抽出した前記特徴量とともに、前記第１サーバに送信し、
前記第１サーバは、前記受信した前記サンプルデータ、及び前記受信した複数の特徴量と学習済みの前記第１のモデルの特徴量とを融合した特徴量に基づいて、前記第１のモデルを再構築し学習する
ことを特徴とする請求項３に記載の学習モデル作成システム。
【請求項８】
前記第１拠点及び前記複数の第２拠点は、個々の工場、または各工場内に設けられた個々のラインを、拠点の単位とする
ことを特徴とする請求項１に記載の学習モデル作成システム。
【請求項９】
第１拠点及び複数の第２拠点からなる複数拠点で実施される工程をニューラルネットワークによって検査するシステムによる学習モデル作成方法であって、
前記システムは、前記第１拠点における検査対象の状態をニューラルネットワークの第１のモデルを用いて診断する第１サーバと、前記複数の第２拠点の各拠点における検査対象の状態をニューラルネットワークの第２のモデルを用いて診断する複数の第２サーバと、を有し、
前記第１サーバが、前記複数の第２サーバの各々から学習済みの前記第２のモデルの特徴量を受信する特徴量受信ステップと、
前記第１サーバが、前記特徴量受信ステップで受信した複数の前記第２のモデルの特徴量と、学習済みの前記第１のモデルの特徴量とを融合する特徴量融合ステップと、
前記第１サーバが、前記特徴量融合ステップで融合した特徴量に基づいて、前記第１のモデルを再構築し学習する共通モデル作成ステップと、
を備えることを特徴とする学習モデル作成方法。
【請求項１０】
前記第１及び前記第２のモデルの特徴量は、当該モデルの階層構造のうち、当該モデルが運用される拠点または工程の特徴を表す階層の重みの組み合わせで表される
ことを特徴とする請求項９に記載の学習モデル作成方法。
【請求項１１】
前記特徴量受信ステップの前に、
前記第１サーバが、初期モデルを構築し学習した後、学習済みの前記初期モデルを前記複数の第２サーバと共有する初期モデル共有ステップと、
各前記第２サーバが、前記初期モデル共有ステップで共有された前記初期モデルを基に、自拠点の特徴を取り込んで前記第２のモデルを構築し学習した後、学習済みの前記第２のモデルから前記特徴量を抽出して前記第１サーバに送信する特徴量送信ステップと、
をさらに備えることを特徴とする請求項９に記載の学習モデル作成方法。
【請求項１２】
前記共通モデル作成ステップの後に、
前記第１サーバが、前記共通モデル作成ステップで再構築された前記第１のモデルの学習済みモデルである第３のモデルを、前記複数の第２サーバと共有する共通モデル共有ステップと、
前記第１サーバ及び前記複数の第２サーバは、自拠点の検査対象を診断する前記ニューラルネットワークに、共通する前記第３のモデルを適用する共通モデル運用ステップと、
をさらに備えることを特徴とする請求項９に記載の学習モデル作成方法。
【請求項１３】
前記特徴量送信ステップにおいて、各前記第２サーバは、自拠点で収集した検査データから自拠点の特徴的な情報を抽出したサンプルデータを、学習済みの前記第２のモデルから抽出した前記特徴量とともに、前記第１サーバに送信し、
前記共通モデル作成ステップにおいて、前記第１サーバは、前記受信した前記サンプルデータ、及び前記特徴量融合ステップで融合された特徴量に基づいて、前記第１のモデルを再構築し学習する
ことを特徴とする請求項１１に記載の学習モデル作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習モデル作成システム及び学習モデル作成方法に関し、拠点で実施される工程を検査するために用いられるニューラルネットワークのモデルを作成する学習モデル作成システム及び学習モデル作成方法に適用して好適なものである。
【背景技術】
【０００２】
従来、工業製品の生産工程（例えば組立工程等）においては、部品（例えばコンプレッサ、モータ等）の初期不良や組立作業が起因となって、不良品（異常）が発生する可能性があった。この生産工程の異常発生に対して、製品品質の向上や手戻り作業によるリカバリの費用等を考慮すると、生産工程の早期段階で、例えば工程検査ごとに異常を検知できることが望まれる。そして、このような工程検査にニューラルネットワークを用いる技術が知られている。
【０００３】
例えば特許文献１には、監視対象の状態自体の変化に応じて、ニューラルネットワークのモデルを随時更新することで、誤報の少ない異常検知を行おうとする異常検知装置が開示されている。特許文献１の異常検知装置は、監視対象で検出されたデータによる入力ベクトルをニューラルネットワークの中間層として加えて、モデルを更新し、更新したモデルを用いて監視対象の状態を診断する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１６３５１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、近年では、生産拠点のグローバル化により、本国拠点にモデル工場としてのマザー工場（Mother Fab）を配し、主に海外拠点に量産工場としてのチャイルド工場（Child Fab）を配した形態が広がっている。このようにグローバル展開された生産拠点においてニューラルネットワークを用いて不良品等の検査を行おうとする場合、不良品の発生を抑制するためのノウハウや工程検査における検査条件といった情報（あるいは、これらの情報に基づいて構築されるモデル）を、Mother FabからChild Fabに速やかに技術移転する必要がある。さらに、各拠点で有効な共通モデルを構築するためには、Mother FabからChild Fabに情報を展開するだけでなく、Child FabからMother Fabにフィードバックしたり、Child Fab間で共有したりする等、複数拠点間での連携が重要となる。
【０００６】
しかし、上記のような複数拠点に適応する共通モデルを構築しようとするとき、特許文献１に開示された技術を利用すると、以下のような課題があった。
【０００７】
まず、特許文献１では、中間層が１層というネットワーク構造のニューラルネットワークを用いているため、モデル更新時に、監視対象で検出されたデータによる入力ベクトルを中間層として容易に入れ替えることができたが、複数層の中間層を有するニューラルネットワークの場合の適用手法が明確ではなかった。また、特許文献１では、モデル更新時に中間層を新たなデータに単純に入れ替えるため、従前のデータの特徴量が考慮されず、モデルの学習効果が限定的になるおそれがあった。
【０００８】
また、特許文献１では、モデルを利用する拠点が複数である場合について考慮されておらず、１つの拠点で検出されたデータを用いて更新したモデルを複数拠点に展開したとしても、複数拠点に適応する共通モデルにはなり難いという問題があった。一般に、周辺環境や加工条件等は各拠点で異なるものであり、１つの拠点の情報だけに基づいて構築されたモデルが、他の拠点においても好適なモデルとして通用することは考えにくい。すなわち、複数拠点に適応する共通モデルを構築するためには、各拠点における特徴量を鑑みて、各拠点の周辺環境や加工条件等に耐えられるロバストな共通モデルを構築することが必要となるが、特許文献１にはこのような観点に基づくモデルの構築方法が開示されていなかった。
【０００９】
本発明は以上の点を考慮してなされたもので、複数拠点で実施される工程をニューラルネットワークを用いて検査する環境において、各拠点に適応するロバストな共通モデルを構築することが可能な学習モデル作成システム及び学習モデル作成方法を提案しようとするものである。
【課題を解決するための手段】
【００１０】
かかる課題を解決するため本発明においては、第１拠点及び複数の第２拠点からなる複数拠点で実施される工程をニューラルネットワークにより検査する、以下の学習モデル作成システムが提供される。この学習モデル作成システムは、前記第１拠点における検査対象の状態をニューラルネットワークの第１のモデルを用いて診断する第１サーバと、前記複数の第２拠点の各拠点における検査対象の状態をニューラルネットワークの第２のモデルを用いて診断する複数の第２サーバと、を備え、前記第１サーバは、前記複数の第２サーバの各々から学習済みの前記第２のモデルの特徴量を受信し、前記受信した複数の前記第２のモデルの特徴量と、学習済みの前記第１のモデルの特徴量とを融合し、前記融合した特徴量に基づいて、前記第１のモデルを再構築し学習する。
【００１１】
また、かかる課題を解決するため本発明においては、第１拠点及び複数の第２拠点からなる複数拠点で実施される工程をニューラルネットワークによって検査するシステムによる学習モデル作成方法として、以下の学習モデル作成方法が提供される。ここで、前記システムは、前記第１拠点における検査対象の状態をニューラルネットワークの第１のモデルを用いて診断する第１サーバと、前記複数の第２拠点の各拠点における検査対象の状態をニューラルネットワークの第２のモデルを用いて診断する複数の第２サーバと、を有する。そして、上記学習モデル作成方法は、前記第１サーバが、前記複数の第２サーバの各々から学習済みの前記第２のモデルの特徴量を受信する特徴量受信ステップと、前記第１サーバが、前記特徴量受信ステップで受信した複数の前記第２のモデルの特徴量と、学習済みの前記第１のモデルの特徴量とを融合する特徴量融合ステップと、前記第１サーバが、前記特徴量融合ステップで融合した特徴量に基づいて、前記第１のモデルを再構築し学習する共通モデル作成ステップと、を備える。
【発明の効果】
【００１２】
本発明によれば、複数拠点で実施される工程をニューラルネットワークを用いて検査する環境において、各拠点に適応するロバストな共通モデルを構築することができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る学習モデル作成システムが適用される生産拠点の関係性を示す図である。
【図２】学習モデル作成システムの概略構成例を示すブロック図である。
【図３】マザーサーバのハードウェア構成例を示すブロック図である。
【図４】チャイルドサーバのハードウェア構成例を示すブロック図である。
【図５】マザーサーバの機能構成例を示すブロック図である。
【図６】チャイルドサーバの機能構成例を示すブロック図である。
【図７】マザーモデル管理テーブルの一例を示す図である。
【図８】チャイルドモデル管理テーブルの一例を示す図である。
【図９】特徴量管理テーブルの一例を示す図である。
【図１０】モデル運用管理テーブルの一例を示す図である。
【図１１】教師データ管理テーブルの一例を示す図である。
【図１２】主に初期モデルを構築するときの学習モデル作成システムによる処理手順例を示すフローチャートである。
【図１３】チャイルドサーバから特徴量及びデータが共有された後の学習モデル作成システムによる処理手順例を示すフローチャートである。
【図１４】特徴量の抽出からモデル再学習にかけての具体的手法の一例を説明する図である。
【図１５】特徴量の抽出からモデル再学習にかけての具体的手法の別例を説明する図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明の一実施形態を詳述する。
【００１５】
（１）構成
図１は、本実施形態に係る学習モデル作成システムが適用される生産拠点の関係性を示す図である。図１では、本実施形態に係る学習モデル作成システム１を適用可能な環境の一例として、工業製品の組立工程等の生産工程を行うために複数拠点に展開された生産拠点のイメージが示されており、１つのマザー工場（Mother Fab）１０と、４つのチャイルド工場（Child Fab）２０とが示されている。
【００１６】
マザー工場１０は、モデル工場として例えば本国に建設された生産拠点である。マザー工場１０は、具体的には、量産化に向けた研究開発が行われる拠点、初期段階で生産が行われる拠点、最新設備が導入されて生産のノウハウが確立される拠点、またはコア部品等を生産する拠点、等が相当する。
【００１７】
チャイルド工場２０は、量産工場として例えば海外に建設された生産拠点である。なお、マザー工場１０及びチャイルド工場２０は、同じ工業製品に関する生産拠点という点で共通するが、各拠点で実施する生産工程（例えば組み付ける部品）や製造環境（例えば使用する機械）等は、異なるものであってよい。
【００１８】
図１に示したように、マザー工場１０は、中心的な役割を有しており、複数のチャイルド工場２０から情報を収集するだけでなく、複数のチャイルド工場２０に情報を展開したり、指示を出したりする。また、原則として、チャイルド工場２０の間では直接に情報のやり取りを行わない。本実施形態では、このような上下関係を「Mother」と「Child」の語句を用いて表現する。
【００１９】
例えば、図１に示した「マザーモデル（Mother model）」は、Mother側の拠点に配置されたサーバ（マザーサーバ１００）におけるニューラルネットワークのモデルを表すものであり、「チャイルドモデル（Child(n) model）」、Child側の拠点に配置されたサーバ（チャイルドサーバ２００）におけるニューラルネットワークのモデルを表す。なお、「Child(n)」は個別のChildに対応した表現であって、図１のようにチャイルド工場２０が４つである場合、例えば「Child1」〜「Child4」と割り当てる。
【００２０】
なお、複数拠点に展開される本実施形態に係る学習モデル作成システム１は、上記の各工場（マザー工場１０、チャイルド工場２０）をそれぞれ１つの拠点として適用することができる他、各工場内に設けられた生産ラインも拠点の単位とすることもできる。具体的には、図１には、マザー工場１０内に３本の生産ライン（ライン１１〜１３）が示され、各チャイルド工場２０内にも３本の生産ライン（ライン２１〜２３）が示されている。各ラインは、例えば、実施される生産工程や製造環境、ラインの完成時期等が異なる場合に、別の生産ラインとして表すことができる。このとき、各ライン１１〜１３，２１〜２３がそれぞれ１拠点に相当すると考えてもよい。また、拠点の単位に工場及びラインを組み合わせてもよい。例えば、マザー工場１０を１つの拠点とし、チャイルド工場２０の各ライン２１〜２３を別の拠点とするとしてもよい。
【００２１】
さらに、工場を拠点の単位とするときと同様に、ラインを拠点の単位とするときも、複数拠点の間にMother−Childの関係が成立する。例えば、マザー工場１０に設けられたライン１１〜１３のうち、ライン１１が最初に設置された生産ラインであって、残りのライン１２，１３はライン１１で生産工程が確立された後に追加された生産ラインであるとすれば、ライン１１がMother側となり、ライン１２，１３はChild側となる。なお、チャイルド工場２０内の各ライン２１〜２３は何れもChild側である。
【００２２】
このように本実施形態では、工場または工場内のラインを拠点の単位とすることができ、複数拠点の間にMother−Childの関係が成立する。以降の説明では、Mother側の拠点をマザー拠点と称し、Child側の拠点をチャイルド拠点と称する。
【００２３】
図２は、学習モデル作成システムの概略構成例を示すブロック図である。図２には、各拠点に１つのサーバが配置される場合の、学習モデル作成システム１の構成例が示されている。
【００２４】
図２において、学習モデル作成システム１は、マザー拠点に配置されるマザーサーバ１００と、複数のチャイルド拠点にそれぞれ配置されるチャイルドサーバ２００と、を備えて構成される。各サーバは、ネットワーク３００を介して通信可能に接続されるが、少なくともマザーサーバ１００と各チャイルドサーバ２００とが通信可能であればよく、チャイルドサーバ２００同士の通信は制限されてもよい。詳細な構成は後述するが、学習モデル作成システム１が備える各拠点のサーバはそれぞれ、ニューラルネットワークを用いて、自拠点の生産工程における異常検知を行うことができる。具体的には、ニューラルネットワークのモデルは、生産工程のなかの工程検査において、自拠点で主に検査対象から取得された検査データを入力として、異常度を出力することにより、検査対象の状態を診断する。
【００２５】
なお、図２では、拠点ごとに１つのサーバが配置される場合の構成を示したが、学習モデル作成システム１が備えるサーバの構成はこれに限定されるものではなく、複数拠点の少なくとも一部について、２以上の拠点が１つのサーバで運用される構成であってもよい。具体的には例えば、生産ラインを拠点の単位とするときに、マザー工場１０において、マザー拠点であるライン１１とチャイルド拠点であるライン１２，１３を、１つのサーバで運用するようにしてもよい。但し、サーバの運用対象にマザー拠点が含まれる場合には、マザーサーバ１００に相当する機能が必要である。また、学習モデル作成システム１は、マザー拠点かチャイルド拠点かによって配置されるサーバを使い分けるのではなく、マザーサーバ１００が有する機能（図５参照）とチャイルドサーバ２００が有する機能（図６参照）とを併せ持ったサーバを、両拠点で使用するようにしてもよい。なお、簡便のため、以降の説明では、図２に示した構成を用いる。
【００２６】
図３は、マザーサーバのハードウェア構成例を示すブロック図である。マザーサーバ１００は、ニューラルネットワークを用いた学習を実行可能なＧＰＵサーバであり、図３に示したように、例えば、ＣＰＵ（Central Processing Unit）３１、ＲＯＭ（Read Only Memory）３２、ＲＡＭ（Random Access Memory）３３、補助記憶装置３４、通信装置３５、表示装置３６、入力装置３７、メディア取込装置３８、及びＧＰＵ（Graphics Processing Unit）３９を備える。各構成要素は一般に広く知られたデバイスであり、詳細な説明を省略する。
【００２７】
なお、図３に示すマザーサーバ１００のハードウェア構成は、ＧＰＵ３９を備えている点で、後述するチャイルドサーバ２００とは異なっている（図４参照）。ＧＰＵ３９は、ＣＰＵ３１よりも高い演算性能を有するプロセッサであり、例えば特徴量の融合（図１３のステップＳ１１２）やマザーモデルの学習（図１２のステップＳ１０５、図１３のステップＳ１１４）等、大規模な並列計算が必要となる所定の処理の実行時に使用される。
【００２８】
図４は、チャイルドサーバのハードウェア構成例を示すブロック図である。チャイルドサーバ２００は、ニューラルネットワークを用いた学習を実行可能な汎用サーバであり（ＧＰＵサーバでもよい）、図４に示したように、例えば、ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、補助記憶装置４４、通信装置４５、表示装置４６、入力装置４７、及びメディア取込装置４８を備える。各構成要素は一般に広く知られたデバイスであり、詳細な説明を省略する。
【００２９】
図５は、マザーサーバの機能構成例を示すブロック図である。図５に示したように、マザーサーバ１００は、外部システムインタフェース部１０１、データ取得部１０２、データ前処理部１０３、バージョン管理部１０４、モデル学習部１０５、モデル検証部１０６、モデル共有部１０７、特徴量取得部１０８、特徴量融合部１０９、モデル運用部１１０、検査データ保存部１２１、モデル保存部１２２、特徴量データ保存部１２３、及びモデル推理結果保存部１２４を備える。
【００３０】
このうち、外部システムインタフェース部１０１は、図３に示した通信装置３５またはメディア取込装置３８によって実現される。また、データを保存する機能を有する各機能部１２１〜１２４は、図３に示したＲＡＭ３３または補助記憶装置３４によって実現される。また、その他の機能部１０２〜１１０は、図３に示したＣＰＵ３１（またはＧＰＵ３９）が所定のプログラム処理を実行する等によって実現される。より具体的には、ＣＰＵ３１（またはＧＰＵ３９）が、ＲＯＭ３２または補助記憶装置３４に記憶されたプログラムをＲＡＭ３３に読み出して実行することによって、所定のプログラム処理が適宜にメモリやインタフェース等を参照しながら実行される。
【００３１】
外部システムインタフェース部１０１は、外部のシステム（例えばチャイルドサーバ２００や生産工程の監視システム等）に接続するための機能を有する。外部システムインタフェース部１０１は、マザーサーバ１００の他の機能部が外部のシステムとの間でデータを送受信するときに、当該システムと接続する、といった補助的な働きを行う。但し、簡略のため、以降では、外部システムインタフェース部１０１の記載を省略する。
【００３２】
データ取得部１０２は、各工程検査において、工程検査で指定された種別の検査データを取得する機能を有する。工程検査は、検査対象における不良品の発生等を早期に検知するために、生産工程の所定時期で実施するように設定され、どのような検査データを取得するかは、工程検査ごとに予め指定することができる。
【００３３】
データ前処理部１０３は、データ取得部１０２が取得した検査データに対して所定の加工処理を行う機能を有する。例えば、工程検査で測定された検査データが音響データ（波形データ）である場合に、波形データを画像に変換する処理（例えば、高速フーリエ変換（ＦＦＴ：Fast Fourier Transform））を実行して、音響データをスペクトラム画像に変換する処理等が、上記加工処理に相当する。
【００３４】
バージョン管理部１０４は、ニューラルネットワークのモデルのバージョンを管理する機能を有する。バージョン管理部１０４のバージョン管理に関連して、マザーモデルに関する情報はマザーモデル管理テーブル３１０としてモデル保存部１２２に保存され、各チャイルドモデルに関する情報は、チャイルドモデル管理テーブル３２０としてモデル保存部１２２に保存される。
【００３５】
モデル学習部１０５は、マザーサーバ１００のニューラルネットワークで用いるマザーモデルについて、ニューラルネットワークのモデル構築及びモデル学習を行う機能を有する。
【００３６】
モデル学習部１０５によるマザーモデルのモデル構築は、収集したデータを学習用の学習データセット（または訓練用の訓練データセット）と評価用の検証データセットとに分け、学習データセットに基づいて、深層ニューラルネットワークモデルを構築する処理である。詳しく説明すると、モデル構築は、以下の処理ステップから構成される。
【００３７】
まず、モデルのニューラルネットワーク構造（ネットワーク構造）が設計される。このとき、データ状況に応じて、畳み込みレイヤ、プーリングレイヤ、Recurrentレイヤ、活性化関数層、全統合レイヤ、Mergeレイヤ、Normalizationレイヤ（Batch Normalization等）などを最適に組み合わせて設計する。
【００３８】
次に、モデルの損失関数の選定及び設計が行われる。損失関数は、測定データ（true data）とモデル予測値（predict data）間での誤差を計算する関数であり、その選定候補として、例えばカテゴリクロスエントロピーや２値交差エントロピー等が挙げられる。
【００３９】
次に、モデルの最適化手法の選定及び設計が行われる。モデルの最適化手法は、ニューラルネットワークが学習するときに損失関数を最小にする、学習データ（または訓練データ）のパラメータ（重み）を見つけるための手法であり、その選定候補として、ミニバッチ勾配降下法、RMSprop、Adam等の勾配降下法（ＳＧＤ：Stochastic Gradient Descent）が挙げられる。
【００４０】
次に、モデルのハイパーパラメータが決定される。このとき、最適化手法で用いられるパラメータ（例えばＳＧＤの学習率や学習率減衰）を決定し、また、モデルの過学習を抑えるために、所定のアルゴリズムのパラメータ（例えば、学習早期終了手法のepochの最小数や、Dropout手法のdropout rate等）を決定する。
【００４１】
そして、最後に、モデル評価関数の選定及び設計が行われる。モデル評価関数は、モデルの性能を評価するために用いられる関数であり、精度を計算する関数が選定されることが多い。
【００４２】
モデル学習部１０５によるマザーモデルのモデル学習は、ＧＰＵ３９を備えたＧＰＵサーバ（マザーサーバ１００）の環境下で行われ、モデル構築の段階で決定したネットワーク構造、損失関数、最適化手法、ハイパーパラメータ等に基づいて、ＧＰＵ３９の計算リソースを利用して、実際にモデル学習を行う処理である。モデル学習終了後のマザーモデル（学習済みモデル）は、モデル保存部１２２に保存される。
【００４３】
モデル検証部１０６は、マザーモデルの学習済みモデルの精度検証を行う機能、及び、運用中のマザーモデルによる推理結果の精度検証を行う機能を有する。
【００４４】
マザーモデルの学習済みモデルの精度検証を行う場合、モデル検証部１０６は、モデル構築の段階で決定されたモデル評価関数に基づいて、モデル保存部１２２に保存した学習済みモデルを読み出して、検証データセットを入力データとして、学習済みモデルで推論結果（推理結果）を計算し、その検証精度を出力する。検証データセットには例えば教師データを利用することができる。さらにモデル検証部１０６は、出力された検証精度を、事前に決めた所定の精度基準（モデル採用の精度基準）と比較することにより、当該学習済みモデル（マザーモデル）の採用可否を判定する。なお、精度検証の過程で計算された推理結果は、モデル推理結果保存部１２４に保存され、精度検証に用いた検証データセット及び精度検証で出力された検証精度（正解率）は、マザーモデル管理テーブル３１０に登録される。
【００４５】
一方、運用中のマザーモデルによる推理結果の精度検証は、マザー拠点（マザーサーバ１００）の本稼働環境にマザーモデルがデプロイされた後の所定のタイミングで実行される処理であって、マザー拠点において、運用中のモデルが運用可能な所定の精度基準（モデル運用の精度基準）を満たしているか否かを判定する。この精度検証の詳細は、図１３のステップＳ１１９の処理で後述する。
【００４６】
モデル共有部１０７は、マザーモデルをチャイルドサーバ２００と共有する機能を有する。マザーモデルを共有する場合、モデル共有部１０７は、各チャイルドサーバ２００に、共有するモデルの設計情報（例えばネットワーク構造や特徴量等）を送信する。
【００４７】
特徴量取得部１０８は、チャイルドサーバ２００から受信したチャイルドモデルの特徴量及びデータ（小サンプル）を取得する機能を有する。詳細は後述するが、小サンプルは、各チャイルドサーバ２００において収集した検査データから、チャイルド拠点の特徴的な情報が部分的に抽出されたデータであって、学習済みのチャイルドモデルの特徴量とともに、特徴量共有部２０７によってマザーサーバ１００に共有されたとき、特徴量取得部１０８がこれを取得する。また、特徴量取得部１０８は、マザーサーバ１００においてマザーモデルの特徴量を取得する機能も有する。特徴量取得部１０８が取得した特徴量及びデータは、特徴量データ保存部１２３に保存される。
【００４８】
特徴量融合部１０９は、特徴量データ保存部１２３に保存された各モデルの特徴量を融合する機能を有する。特徴量融合部１０９による特徴量融合の具体的な手法例は、後で図１４及び図１５を参照しながら詳述する。特徴量融合部１０９によって融合された特徴量（融合特徴量）は、特徴量データ保存部１２３に保存される。
【００４９】
モデル運用部１１０は、所定の学習済みモデルをマザー拠点（マザーサーバ１００）の本稼働環境で運用する機能を有する。具体的には、モデル運用部１１０は、特徴量融合部１０９によって融合された融合特徴量を取り込んで構築されたマザーモデルがモデル採用の基準精度を達成した場合に、当該モデルをマザーサーバ１００の本稼働環境（生産工程）にデプロイし、運用中は当該モデルを用いて入力データから推理（識別）を行い、その推理結果に対して監視を行う。
【００５０】
検査データ保存部１２１は、データ取得部１０２が取得した検査データ、またはデータ前処理部１０３による加工処理が行われた後の検査データを保存する。
【００５１】
モデル保存部１２２は、マザーモデル自体を保存する他、マザーモデル管理テーブル３１０、チャイルドモデル管理テーブル３２０、モデル運用管理テーブル３４０、及び教師データ管理テーブル３５０を保存する。
【００５２】
特徴量データ保存部１２３は、マザーモデル及び各チャイルドモデルの特徴量、並びに、各チャイルド拠点の検査データから抽出されたデータ（小サンプル）を保存する。また、特徴量データ保存部１２３は、マザーモデル及び各チャイルドモデルの特徴量を融合した融合特徴量、及び、融合特徴量と融合特徴量を取り込んだマザーモデルとの対応を管理する特徴量管理テーブル３３０を保存する。
【００５３】
モデル推理結果保存部１２４は、マザーモデルによる推理結果を保存する。
【００５４】
なお、図５に示した各機能部１０１〜１２４は、機能に応じて分類したものであり、必ずしも独立したモジュールで実現される必要はなく、複数の機能部が統合されてもよい。
【００５５】
図６は、チャイルドサーバの機能構成例を示すブロック図である。図６に示したように、チャイルドサーバ２００は、外部システムインタフェース部２０１、データ取得部２０２、データ前処理部２０３、モデル学習部２０４、モデル検証部２０５、特徴量抽出部２０６、特徴量共有部２０７、モデル運用部２０８、検査データ保存部２２１、モデル保存部２２２、特徴量データ保存部２２３、及びモデル推理結果保存部２２４を備える。
【００５６】
このうち、外部システムインタフェース部２０１は、図４に示した通信装置４５またはメディア取込装置４８によって実現される。また、データを保存する機能を有する各機能部２２１〜２２４は、図４に示したＲＡＭ４３または補助記憶装置４４によって実現される。また、その他の機能部２０２〜２２４は、図４に示したＣＰＵ４１が所定のプログラム処理を実行する等によって実現される。より具体的には、ＣＰＵ４１が、ＲＯＭ４２または補助記憶装置４４に記憶されたプログラムをＲＡＭ４３に読み出して実行することによって、所定のプログラム処理が適宜にメモリやインタフェース等を参照しながら実行される。
【００５７】
以下、チャイルドサーバ２００の各機能部２０１〜２２４について説明するが、マザーサーバ１００の同名の機能部と同様の機能（マザーとチャイルドの語句を置き換えるだけのものを含む）を有するものについては、繰り返しの説明を省略する。
【００５８】
モデル学習部２０４は、チャイルドサーバ２００のニューラルネットワークで用いるチャイルドモデルについて、モデル構築及びモデル学習を行う機能を有する。
【００５９】
モデル学習部２０４によるチャイルドモデルのモデル構築では、マザーサーバ１００から共有されたマザーモデルの設計情報に基づいて、マザーモデルと同じネットワーク構造でチャイルドモデルが構築される。但し、精度向上のために、ハイパーパラメータ（例えば学習レートや学習回数等）は、チャイルド拠点に応じたチューニングが行われることが好ましい。その他のモデル構築の詳細は、マザーサーバ１００によるモデル学習部１０５の処理と同様と考えてよい。
【００６０】
また、モデル学習部２０４によるチャイルドモデルのモデル学習は、モデル構築の段階で決定したネットワーク構造、損失関数、最適化手法、ハイパーパラメータ等に基づいて、ＣＰＵ４１の計算リソースを利用して、能動学習（Active Learning）や転移学習（Transfer Learning）等を行う処理である。モデル学習終了後のチャイルドモデル（学習済みモデル）は、モデル保存部２２２に保存される。
【００６１】
モデル検証部２０５は、チャイルドモデルの学習済みモデルの精度検証を行う機能、及び、運用中のチャイルドモデルによる推理結果の精度検証を行う機能を有する。このうち、チャイルドモデルの学習済みモデルの精度検証を行う処理は、モデル検証部１０６がマザーモデルの学習済みモデルの精度検証を行う処理と同様である。一方、運用中のチャイルドモデルによる推理結果の精度検証は、マザーサーバ１００から共有されたマザーモデルがチャイルド拠点（チャイルドサーバ２００）の本稼働環境にデプロイされた後の所定のタイミングで実行される処理であって、チャイルド拠点において、運用中のモデル（共有されたマザーモデル）が運用可能な所定の精度基準（モデル運用の精度基準）を満たしているか否かを判定する。この精度検証の詳細は、図１３のステップＳ２１３の処理で後述する。
【００６２】
特徴量抽出部２０６は、チャイルドモデルの特徴量を抽出する機能、及び、チャイルド拠点で収集された検査データのうちから当該チャイルド拠点の特徴的なデータ（小サンプル）を抽出する機能を有する。特徴量抽出部２０６が抽出した特徴量及びデータ（小サンプル）は、特徴量データ保存部２２３に保存される。
【００６３】
本実施形態において、モデルの特徴量は、当該モデルが運用される拠点または工程の特徴を表す情報であって、ニューラルネットワークを構成している階層の重み（係数）を組み合わせて表すことができる。例えば、あるモデルの特徴量を抽出する場合、当該モデルにおける複数層の階層構造のうち、当該モデルが運用される拠点の特徴を表す階層を選択し、選択した階層の重みを組み合わせた行列（ベクトル）によって、当該モデルの特徴量が抽出される。また、特徴量は教師データを用いて評価することができるため、例えば特徴量抽出部２０６は、最も良い評価結果が出る特徴量（チャイルド拠点の特徴を最も表す特徴量）を、チャイルドモデルの特徴量として抽出する。
【００６４】
なお、モデルの特徴量を抽出する具体的な手法としては、例えば畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）の予測結果を視覚的に説明するＧｒａｄ−ＣＡＭ（Gradient-weighted Class Activation Mapping）という勾配手法を用いることができる。Ｇｒａｄ−ＣＡＭを用いる場合、予測への影響重要度から特徴部位をヒートマップで強調して、特定情報を含めた階層の特徴量を特定することができる。
【００６５】
また、本実施形態において小サンプルとは、チャイルドサーバ２００において収集した検査データから、自チャイルド拠点に独自の特徴的な情報を部分的に抽出したデータである。自チャイルド拠点の特徴的な情報とは、チャイルド拠点で認識が間違っているデータ（チャイルド拠点だけで異常となったデータ）や、チャイルド拠点の生産工程に関する特徴的事項を示すデータ等である。特徴量抽出部２０６は、具体的には例えば、チャイルド拠点に騒音環境がある場合、その騒音環境下で生成されたデータを小サンプルとして抽出し、チャイルド拠点で他の拠点とは異なる材料や機械が用いられる場合は、その材料変更や機械変更を示すデータを小サンプルとして抽出する。
【００６６】
なお、小サンプルの抽出件数は、抽出件数の範囲等を予め定めておいてもよいし（例えば数百件）、実際の生産状況に応じて抽出件数を変化させるようにしてもよいし、また、小サンプルの対象となるデータが非常に多い場合（例えば、誤認識となったデータが数千件に及ぶ等）には、対象となるデータからランダムに抽出するようにしてもよい。
【００６７】
特徴量共有部２０７は、特徴量抽出部２０６によって抽出された特徴量及びデータ（小サンプル）をマザーサーバ１００と共有する機能を有する。
【００６８】
モデル保存部２２２は、自チャイルド拠点で用いるチャイルドモデル及び検証データセット、さらに、自チャイルド拠点に関するモデル管理テーブルを保存する。
【００６９】
特徴量データ保存部２２３は、自チャイルド拠点で特徴量抽出部２０６が抽出した特徴量及びデータ（小サンプル）を保存する。特徴量データ保存部２２３に保存された特徴量及び小サンプルは、特徴量共有部２０７によってマザーサーバ１００と共有される。
【００７０】
（２）データ
本実施形態に係る学習モデル作成システム１で用いられるデータの一例を説明する。
【００７１】
なお、本例ではテーブルデータ形式によるデータ構成を説明するが、本実施形態においてデータ形式はこれに限定されず、任意のデータ形式を採用することができる。また、各データの構成は、例示された構成例に限定されるものではない。例えば、図７に例示するマザーモデル管理テーブル３１０や図８に例示するチャイルドモデル管理テーブル３２０等において、各モデルに付されたバージョンの情報をさらに保持する等としてもよい。
【００７２】
図７は、マザーモデル管理テーブルの一例を示す図である。マザーモデル管理テーブル３１０は、マザーサーバ１００で構築されたマザーモデルを管理するためのテーブルデータであって、モデル保存部１２２に保存される。
【００７３】
図７の場合、マザーモデル管理テーブル３１０は、対象モデル（マザーモデル）の識別子を示すモデルＩＤ３１１、対象モデルの学習期間の開始時期を示す学習開始期間３１２、対象モデルの学習期間の終了時期を示す学習終了期間３１３、対象モデルの精度検証を行う際に評価用に用いられたデータセット（検証データセット）を示す評価用データセット３１４、及び、精度検証において出力された検証精度を示す正解率３１５、等のデータ項目から構成される。
【００７４】
本例では、図７のモデルＩＤ３１１や図８の親モデルＩＤ３２２に示したように、マザーモデルの識別子は、「ＭＭ」から始まる文字列で表される。一方、図８のモデルＩＤ３２３に示したように、チャイルドモデルの識別子は、「Ｆａｂ００ｎ（チャイルド拠点の拠点ＩＤと同じ）」から始まる文字列で表される。拠点ＩＤについては、図８の拠点ＩＤ３２１に示したように、チャイルド拠点の拠点ＩＤを「Ｆａｂ００１」〜「Ｆａｂ００４」とし、マザー拠点の拠点ＩＤを「Ｆａｂ０００」としている（図１１の拠点ＩＤ３５１参照）。
【００７５】
図８は、チャイルドモデル管理テーブルの一例を示す図である。チャイルドモデル管理テーブル３２０は、マザーサーバ１００が各チャイルド拠点（チャイルドサーバ２００）で構築されたチャイルドモデルを管理するためのテーブルデータであって、モデル保存部１２２に保存される。
【００７６】
図８の場合、チャイルドモデル管理テーブル３２０は、対象モデル（チャイルドモデル）が構築されたチャイルド拠点の識別子を示す拠点ＩＤ３２１、対象モデルを構築する際に元となった親モデル（マザーモデル）の識別子を示す親モデルＩＤ３２２、対象モデルの識別子を示すモデルＩＤ３２３、対象モデルの学習期間の開始時期を示す学習開始期間３２４、対象モデルの学習期間の終了時期を示す学習終了期間３２５、対象モデルの精度検証を行う際に評価用に用いられたデータセット（検証データセット）を示す評価用データセット３２６、精度検証において出力された検証精度を示す正解率３２７、及び、対象モデルから抽出された特徴量を示す特徴量３２８、等のデータ項目から構成される。評価用データセット３２６で示される検証データセットの実データも、モデル保存部１２２に保存される。
【００７７】
なお、各チャイルドサーバ２００のモデル保存部２２２でも、図８のチャイルドモデル管理テーブル３２０と同様の構成を有するモデル管理テーブルが保存されるが、各チャイルドサーバ２００では、自拠点以外で構築されたチャイルドモデルは管理する必要がないため、モデル保存部２２２は、チャイルドモデル管理テーブル３２０に含まれる各レコードのうち、自チャイルド拠点に関するレコードだけで構成されたモデル管理テーブルを保存すればよい。そしてモデル保存部２２２は、自チャイルド拠点で用いるチャイルドモデル及びその検証データセットの実データも保存する。
【００７８】
図９は、特徴量管理テーブルの一例を示す図である。特徴量管理テーブル３３０は、マザーモデルを再構築した際に取り込んだ特徴量（融合特徴量）を管理するためのテーブルデータであって、特徴量データ保存部１２３に保存される。
【００７９】
図９の場合、特徴量管理テーブル３３０は、再構築されたマザーモデルの識別子を示す融合先モデルＩＤ３３１と、当該マザーモデルの再構築に用いられた特徴量３３２との組み合わせを保持する。図１３のステップＳ１１２〜Ｓ１１３で後述するように、マザーサーバ１００は、複数のチャイルドサーバ２００から共有された特徴量を融合し、この融合した特徴量を取り込んでマザーモデルを再構築する。
【００８０】
図１０は、モデル運用管理テーブルの一例を示す図である。モデル運用管理テーブル３４０は、マザーサーバ１００がモデルの運用及び監視に関する情報を管理するためのテーブルデータであって、モデル保存部１２２に保存される。
【００８１】
図１０の場合、モデル運用管理テーブル３４０は、モデルＩＤ３４１、拠点ＩＤ３４２、デプロイ日３４３、商品ＩＤ３４４、製品名３４５、製造番号３４６、予測確信度３４７、及び予測結果３４８、等のデータ項目から構成される。
【００８２】
モデルＩＤ３４１には、対象モデル（運用されたモデル）の識別子が示され、拠点ＩＤ３４２には、対象モデルが運用された拠点の識別子が示され、デプロイ日３４３には、対象モデルが適用された日付が示される。また、商品ＩＤ３４４、製品名３４５、製造番号３４６には、工程検査の対象製品に関する情報として、製品が組み込まれる商品の識別子（商品ＩＤ）、製品名、シリアル番号（製造番号）が記録される。また、予測結果３４８には、上記製品に対する対象モデルを用いた異常検知の結果が示され、予測確信度３４７には、その結果の確信度が示される。
【００８３】
なお、チャイルドサーバ２００のモデル保存部２２２には、自拠点におけるモデル（チャイルドモデル）の運用及び監視に関して、モデル運用管理テーブル３４０と同様に構成されたモデル運用管理テーブルが保存される。
【００８４】
図１１は、教師データ管理テーブルの一例を示す図である。教師データ管理テーブル３５０は、マザーサーバ１００によるマザーモデルのモデル更新判定時の精度検証（図１３のステップＳ１１９）に用いられる教師データを管理するためのテーブルデータであって、モデル保存部１２２に保存される。
【００８５】
図１１の場合、拠点ＩＤ３５１、商品ＩＤ３５２、製品名３５３、製造番号３５４、及び実績３５５等のデータ項目から構成される。拠点ＩＤ３５１の値は、図８の拠点ＩＤ３２１や図１０の拠点ＩＤ３４２の値に対応する。また、商品ＩＤ３５２、製品名３５３、製造番号３５４の各値は、図１０の商品ＩＤ３４４、製品名３４５、製造番号３４５の値に対応する。また、実績３５５の値は、図１０の予測結果３４８の値に対応する。
【００８６】
なお、教師データ管理テーブル３５０では、予め実績が明らかになっている教師データだけでなく、チャイルドサーバ２００で抽出されてマザーサーバ１００に共有された小サンプルのデータも、教師データとして管理することができる。このように小サンプルデータも教師データとすることにより、マザーサーバ１００は、再構築したマザーモデルに対して、高精度な検証基準を課すことができる。
【００８７】
（３）処理
図１２は、主に初期モデルを構築するときの学習モデル作成システムによる処理手順例を示すフローチャートである。図１２のフローチャートは、マザーサーバ１００側の処理とチャイルドサーバ２００側の処理とに分かれているが、チャイルドサーバ２００側の処理は、複数のチャイルド拠点のそれぞれで実行される。これは後述する図１３でも同様である。また、図１２に示した「Ａ」、「Ｂ」は、後述する図１３に示す「Ａ」、「Ｂ」と対応する。
【００８８】
図１２において、マザーサーバ１００側の処理は、マザー拠点の生産工程における工程検査のタイミングで開始される。工程検査は生産工程のなかに複数回の実施タイミングが用意されてよい。また、マザーサーバ１００側と同様に、チャイルドサーバ２００側の処理も、自チャイルド拠点の生産工程における工程検査のタイミングで開始されるが、ステップＳ２０３以降の処理は、マザーサーバ１００側のステップＳ１０８の処理が行われてから実行される。
【００８９】
マザーサーバ１００側の処理としては、まず、マザー拠点における工程検査のタイミングで、データ取得部１０２が、当該工程検査で指定された種別の検査データを収集し、収集した検査データを検査データ保存部１２１に保存する（ステップＳ１０１）。
【００９０】
次に、データ前処理部１０３が、ステップＳ１０１で収集された検査データに対し、所定の加工処理を行う（ステップＳ１０２）。
【００９１】
次に、バージョン管理部１０４が、モデル保存部１２２に格納されているマザーモデル管理テーブル３１０を参照して、初期モデルを構築する必要があるか否かを判定する（ステップＳ１０３）。初回処理時は、初期モデルとなるマザーモデル（Mother model v1.0）が構築されていないため、本ステップの判定結果はＹＥＳとなり、ステップＳ１０４に進む。一方、後述する図１３の処理を経て、「Ａ」からステップＳ１０１の処理が再度行われた場合には、初期モデルとしてのマザーモデルがモデル保存部１２２に保存されている（すなわち、マザーモデル管理テーブル３１０に当該マザーモデルの管理情報が記録されている）ため、ステップＳ１０３の判定結果はＮＯとなる。この場合、ステップＳ１０８の処理後に進み、ステップＳ２０７でチャイルドサーバ２００から特徴量及びデータが共有されるのを待ってから、再度、図１３の処理が行われる。
【００９２】
そして、ステップＳ１０３で「ＹＥＳ」（初期モデルを構築する必要がある）と判定された場合、モデル学習部１０５が、初期モデルとなるマザーモデルを構築し（ステップＳ１０４）、構築したマザーモデル（初期モデル）にステップＳ１０２で加工処理を行った検査データを読み込んで、実際にモデル学習を行う（ステップＳ１０５）。そして、モデル学習部１０５は、学習済みのマザーモデル（Mother model v1.0）をモデル保存部１２２に保存するとともに、当該モデルに関する情報をマザーモデル管理テーブル３１０に登録する。
【００９３】
次に、モデル検証部１０６が、ステップＳ１０５でモデル保存部１２２に保存した学習済みモデル（初期モデル）の精度検証を行う（ステップＳ１０６）。具体的には、モデル検証部１０６は、上記学習済みモデルを読み出して、所定の検証データセットを入力データとして当該モデルで推論結果（推理結果）を計算し、その検証精度を出力する。またこのとき、モデル検証部１０６は、精度検証に用いた検証データセットをマザーモデル管理テーブル３１０の評価用データセット３１４に登録するとともに、得られた検証精度を正解率３１５に登録する。
【００９４】
次いで、モデル検証部１０６は、ステップＳ１０６で得られた検証精度が、モデルを採用可能な所定の精度基準を達成しているか否かを判定する（ステップＳ１０７）。上記精度基準は事前に定められており、例えば「精度９０％」を基準値とする。この場合、モデル検証部１０６は、モデルの精度検証で得られた検証精度が９０％以上であれば、当該モデルを採用してよいと判定し（ステップＳ１０７のＹＥＳ）、ステップＳ１０８に進む。一方、モデルの精度検証で得られた検証精度が９０％未満であれば、モデル検証部１０６は、当該モデルを採用できないと判定し（ステップＳ１０７のＮＯ）、ステップＳ１０１に戻し、当該モデルを再学習させる処理に進む。なお、モデルを再学習させる場合には、モデルの検証精度を高めるために、ステップＳ１０１〜Ｓ１０５の処理内容を部分的に変更してもよく、例えば、ステップＳ１０１において収集する検査データを増やしたり、ステップＳ１０２において実施する加工処理を変更したり、ステップＳ１０６におけるモデル学習の学習方法を変更したりすることができる。
【００９５】
そして、ステップＳ１０８では、モデル共有部１０７が、ステップＳ１０７で基準を達成した学習済みモデル（すなわち、ステップＳ１０４で初期モデルとして構築されたマザーモデルの学習済みモデル）を、各チャイルド拠点のチャイルドサーバ２００と共有する。初期モデルの共有を行うとき、モデル共有部１０７は、各チャイルドサーバ２００に学習済みの初期モデル（Mother model v1.0）の設計情報（例えばネットワーク構造や特徴量等）を送信する。そして、チャイルドサーバ２００が、これら初期モデルの設計情報を受信して保存することにより、マザーサーバ１００とチャイルドサーバ２００との間で初期モデルが共有される。
【００９６】
なお、図１２において、チャイルドサーバ２００側では、自チャイルド拠点における工程検査のタイミングを契機として、データ取得部２０２が検査データを収集して検査データ保存部２２１に保存し（ステップＳ２０１）、さらにデータ前処理部２０３が検査データに対して所定の加工処理を行われている（ステップＳ２０２）。このステップＳ２０１〜Ｓ２０２の処理は、マザーサーバ１００側のステップＳ１０１〜Ｓ１０２の処理と同様である。
【００９７】
チャイルドサーバ２００側では、ステップＳ１０２の処理が終了した後は、マザーサーバ１００側でステップＳ１０８の処理が行われて初期モデルが共有されるまで、以降の処理を待機する。
【００９８】
そして、ステップＳ１０８で初期モデルが共有されると、チャイルドサーバ２００では、モデル学習部２０４が、マザーサーバ１００から受け取った初期モデルの設計情報（例えばネットワーク構造や特徴量等）に基づいて、チャイルドモデルを構築する（ステップＳ２０３）。このとき例えば、構築するチャイルドモデルのネットワーク構造は、初期モデル（マザーモデル）と同じにしてよいが、チャイルドモデルの検証精度向上のために、ハイパーパラメータ（例えば学習レートや学習回数等）は、チャイルド拠点に応じたチューニングが行われることが好ましい。このようなチューニングが施されることによって、初期モデルをベースとしながらも、チャイルド拠点の特徴を加味したチャイルドモデルを構築することができる。
【００９９】
次に、モデル学習部２０４が、ステップＳ２０３で構築したチャイルドモデルにステップＳ２０２で加工処理を行った検査データを読み込んで、モデル学習を行い、学習済みモデルをモデル保存部２２２に保存する（ステップＳ２０４）。ステップＳ２０４の学習では、具体的には例えば、能動学習（Active Learning）や転移学習（Transfer Learning）等を行う。また、モデル学習部２０４は、学習済みのチャイルドモデルについて、モデル保存部２２２に保存されているモデル管理テーブルを更新する。
【０１００】
次に、モデル検証部２０５が、ステップＳ２０４でモデル保存部２２２に保存した学習済みのチャイルドモデルの精度検証を行う（ステップＳ２０５）。具体的には、モデル検証部２０５は、学習済みモデルを読み出して、所定の検証データセットを入力データとして当該モデルで推論結果（推理結果）を計算し、その検証精度を出力する。またこのとき、モデル検証部２０５は、精度検証に用いた検証データセットをモデル管理テーブルの評価用データセットとして登録するとともに、得られた検証精度を正解率として登録する。
【０１０１】
次に、特徴量抽出部２０６が、学習済みのチャイルドモデルの特徴量を抽出する（ステップＳ２０６）。ステップＳ２０６の処理が行われることにより、特徴量抽出部２０６の説明で詳述したように、チャイルド拠点の特徴を最も良く表す階層の係数の組み合わせが特徴量として抽出される。抽出された特徴量は、特徴量データ保存部２２３に保存される。
【０１０２】
また、ステップＳ２０６において特徴量抽出部２０６は、チャイルドサーバ２００で収集された検査データ（データ取得部２０２が取得した検査データでもよいが、ステップＳ２０２で加工処理された後の検査データの方が好ましい）のうちから、自チャイルド拠点の特徴的な情報を小サンプルとして抽出する。抽出されたデータ（小サンプル）は、特徴量とともに特徴量データ保存部２２３に保存される。
【０１０３】
このように、特徴量抽出部２０６によって抽出される特徴量及び小サンプルは、各拠点における特徴を表すデータであり、チャイルドモデルの元になった初期モデル（マザーモデル）が共通であっても、各チャイルド拠点の生産工程や製造環境等が異なることから、チャイルド拠点（チャイルドサーバ２００）ごとに、異なる特徴量及び小サンプルが抽出されることになる。
【０１０４】
次に、特徴量共有部２０７が、ステップＳ２０６で抽出された特徴量及びデータ（小サンプル）をマザーサーバ１００と共有する（ステップＳ２０７）。
【０１０５】
特徴量共有部２０７は、特徴量及びデータを共有するとき、チャイルドサーバ２００からマザーサーバ１００に特徴量及びデータを送信する。その後、チャイルドサーバ２００は、後述する図１３のステップＳ１２０でマザーサーバ１００からモデルが共有されるまで、待機状態に移行する。
【０１０６】
一方、マザーサーバ１００は、ステップＳ１０８で初期モデルを共有した後は、各チャイルドサーバ２００でステップＳ２０７の処理が行われて、特徴量及びデータが共有されるまで待機し、その後、図１３のステップＳ１１１の処理が行われる。
【０１０７】
以上、図１２に示した一連の処理が行われることにより、マザー拠点（マザーサーバ１００）で学習された初期モデルがそれぞれのチャイルド拠点（チャイルドサーバ２００）で共有され、各チャイルド拠点においては、共有された初期モデルに基づいて構築されたチャイルドモデルの学習を経て、各チャイルド拠点の生産工程や製造環境等を反映した特徴量及び小サンプルが抽出される。さらに、各チャイルド拠点の特徴量及び小サンプルがマザー拠点（マザーサーバ１００）共有されることで、各チャイルド拠点の特徴を表す十分な情報をマザー拠点にフィードバックすることができる。
【０１０８】
図１３は、チャイルドサーバから特徴量及びデータが共有された後の学習モデル作成システムによる処理手順例を示すフローチャートである。
【０１０９】
図１３において、マザーサーバ１００側の処理は、図１２のステップＳ２０７において、チャイルドサーバ２００による特徴量及びデータの共有が行われた後の、任意のタイミングで開始される。具体的な開始タイミングとしては例えば、半年に１回のような定期的な実行としてもよいし、所定数（１や全てを含む）のチャイルド拠点（チャイルドサーバ２００）から特徴量及びデータの共有が行われたときに実行するとしてもよいし、特定のチャイルド拠点（チャイルドサーバ２００）から特徴量及びデータの共有が行われるまで待ってから実行する、等としてもよい。
【０１１０】
マザーサーバ１００側の処理としてはまず、図１２のステップＳ２０７の処理が行われたことを受けて、特徴量取得部１０８が、チャイルドサーバ２００から送信された特徴量及びデータ（小サンプル）を受信し、特徴量データ保存部１２３に保存する（ステップＳ１１１）。このチャイルドサーバ２００からの特徴量及びデータの共有は、複数展開されたチャイルド拠点のそれぞれのチャイルドサーバ２００から実施される。また、ステップＳ１１１において、特徴量取得部１０８は、マザーサーバ１００におけるマザーモデル（Mother model v1.0）の特徴量を取得し、チャイルドモデルの特徴量と同様に、特徴量データ保存部１２３に保存する。
【０１１１】
次に、特徴量融合部１０９が、ステップＳ１１１で取得した特徴量（マザーモデル及び各チャイルドモデルの特徴量）を融合する（ステップＳ１１２）。ここで、マザー拠点及び各チャイルド拠点において、初期モデルは共通であっても、各拠点で学習する特徴量は異なるものであり、ステップＳ１１２の処理では、これらの特徴量が融合される。
【０１１２】
次に、モデル学習部１０５が、ステップＳ１１２で融合された融合特徴量を取り込んで、マザーモデルを再構築する（ステップＳ１１３）。ステップＳ１１３でマザーモデルを再構築するときの手法は、図１２のステップＳ１０４で初期モデルを構築するときの手法と同様でよい。但し、ステップＳ１１３では、融合特徴量を取り込むために、例えば、従来のマザーモデル（Mother model v1.0）のネットワーク構造の一部階層の特徴量に対して融合特徴量によるフィードバックを掛けてから、マザーモデルを再構築する。また、ステップＳ１１１で取得した小サンプルに基づいて、再構築されるマザーモデルのハイパーパラメータの値を変更するようにしてもよい。
【０１１３】
次に、モデル学習部１０５は、ステップＳ１１３で再構築したマザーモデルに、検査データを読込んで実際にモデル学習を行う（ステップＳ１１４）。そしてモデル学習部１０５は、学習済みのマザーモデル（Mother model v1.1）の設計情報をモデル保存部１２２に保存するとともに、当該モデルに関する管理情報をマザーモデル管理テーブル３１０に登録する。また、モデル学習部１０５は、マザーモデルの識別子（融合先モデルＩＤ３３１）と、その再構築に用いた融合特徴量（特徴量３３２）とを紐付けて、特徴量管理テーブル３３０に登録する。
【０１１４】
ここで、図１４及び図１５に、上記したステップＳ１１１〜Ｓ１１４の具体的な処理イメージの一例を示す。図１４は、特徴量の抽出からモデル再学習にかけての具体的手法の一例を説明する図であり、図１５は、その別例を説明する図である。
【０１１５】
具体的には、図１４、図１５の何れの手法も、まず、総数ｎの拠点（マザー拠点及びチャイルド拠点）で用いられるｎ個のモデル（Mother model v1.0、Child1 model v1.0、…、Child(n-1) model v1.0）の中間層から、各モデルの特徴量をベクトルで抽出する（多次元特徴ベクトルの抽出）。抽出された特徴量は、「少量生産」、「ノイズが多い環境」、「電力不安定な環境」といったように、各拠点の特徴を表すものである。
【０１１６】
次に、図１４の手法では、抽出したｎ個ｍ次元特徴ベクトルをＮ×Ｍの行列に変換する（特徴量融合）。そして、畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）でモデルを再学習することにより、各拠点の特徴量がフィードバックされ学習済みマザーモデル（Mother model v1.1）を生成することができる。
【０１１７】
一方、図１５の手法では、抽出したｎ個の多次元特徴ベクトルを１つのベクトルに連結する（特徴量融合）。そして融合した特徴量を用いて、数回層の多層パーセプトロン（ＭＬＰ：Multilayer Perceptron）でモデルを再学習することにより、各拠点の特徴量がフィードバックされ学習済みマザーモデル（Mother model v1.1）が生成される。
【０１１８】
図１３の説明に戻る。ステップＳ１１４において再構築したマザーモデルの学習（再学習）が行われた後、モデル検証部１０６が、ステップＳ１１４でモデル保存部１２２に保存した学習済みモデル（Mother model v1.1）の精度検証を行う（ステップＳ１１５）。具体的には、モデル検証部１０６は、上記学習済みモデルを読み出して、所定の検証データセットを入力データとして当該モデルで推論結果（推理結果）を計算し、その検証精度を出力する。またこのとき、モデル検証部１０６は、精度検証に用いた検証データセットをマザーモデル管理テーブル３１０の評価用データセット３１４に登録するとともに、得られた検証精度を正解率３１５に登録する。
【０１１９】
次いで、モデル検証部１０６は、ステップＳ１１５で得られた検証精度が、モデルを採用可能な所定の精度基準を達成しているか否かを判定する（ステップＳ１１６）。ステップＳ１１６の処理は、図１２のステップＳ１０７の処理と同様であり、詳細な説明は省略する。ステップＳ１１６において、モデル検証部１０６が上記精度基準を達成していると判定した場合は（ステップＳ１１６のＹＥＳ）、ステップＳ１１７に進み、上記精度基準を達成していないと判定した場合は（ステップＳ１１６のＮＯ）、図１２のステップＳ１０１に戻る。
【０１２０】
ステップＳ１１７では、モデル運用部１１０が、再構築された学習済みモデル（Mother model v1.1）を、マザーサーバ１００の本稼働環境に適用（デプロイ）し、運用を開始する。言い換えると、ステップＳ１１７のデプロイによって、再構築された学習済みモデルがマザー拠点の生産工程に載せられる。
【０１２１】
ステップＳ１１７の後、デプロイされたモデルの運用中に、モデル運用部１１０は、当該モデルを用いて、入力データから推理（識別）を行い、その推理結果に対して監視を行う（ステップＳ１１８）。
【０１２２】
そして、デプロイ後の所定のタイミング（例えば３か月後）で、モデル検証部１０６が、デプロイされたモデルによる推理結果の精度を検証し、モデルを運用可能な所定の精度基準を満たしているか否かを判定する（ステップＳ１１９）。
【０１２３】
ステップＳ１１９の処理について詳しく説明する。ステップＳ１１９の判定処理は、マザーモデルの性能を評価する処理であって、例えば、教師データが保持されている場合（教師データ管理テーブル３５０参照）には、モデル検証部１０６は、これを用いてモデルの推理結果の精度を計算するようにしてもよい。また、予め用意された教師データが存在しない場合には、モデル検証部１０６は、チャイルド拠点から収集した情報に基づいて、マザーモデルの性能を評価するようにしてもよい。この場合、具体的には例えば、定期的にチャイルド拠点の生産工程から一定少数のサンプルデータ（例えば数百件）をランダムに抽出し、現場エンジニアに判断させた結果を「True label」としてラベルを付け、これをマザーモデルの検証データセットとする。そして、この検証データセットを入力データとしてマザーモデルの推論結果（推理結果）を計算し、推理結果と上記現場エンジニアの判断結果とを比較することにより、モデルの推理結果の精度（現場エンジニアの判断結果との一致率）を計算することができる。
【０１２４】
そしてモデル検証部１０６は、上記のようにして算出されたモデルの推理結果の精度が、モデルの運用継続に関する所定の精度基準（モデル運用の精度基準）を満たしているか否かを判定する。モデル運用の精度基準は、生産拠点の現場責任者等との相談で決めてよく、例えば「精度９０％」の基準値とすることができる。また、「現バージョンのモデル（Mother model v1.1）による推理結果の精度が、１つ前のバージョンのモデル（Mother model v1.0）による推理結果の精度よりも向上していること」をモデル運用の精度基準としてもよく、または、上記２つの精度基準を組み合わせる等してもよい。モデルの推理結果の精度がモデル運用の精度基準を満たす場合には（ステップＳ１１９のＹＥＳ）、モデルの運用継続を許可し、ステップＳ１２０に進む。一方、モデルの推理結果の精度がモデル運用の精度基準を満たさない場合は（ステップＳ１１９のＮＯ）、モデルの運用継続を否定し、ステップＳ１０１に戻ってマザーモデルを再学習させる処理に進む。マザーモデルを再学習させる場合には、図１２のステップＳ１０７のＮＯの場合と同様に、モデルの検証精度を高めるために、その後のステップＳ１０１〜Ｓ１０５の処理内容を部分的に変更してもよい。
【０１２５】
ステップＳ１１９においてモデルの運用継続が許可された場合、モデル共有部１０７は、ステップＳ１１９で基準を達成した学習済みモデル、すなわちマザーサーバ１００で運用中のマザーモデル（Mother model v1.1）を、各チャイルド拠点のチャイルドサーバ２００と共有する（ステップＳ１２０）。ステップＳ１２０におけるモデル共有の具体的な手法は、図１２のステップＳ１０８の処理と同様でよく、詳細な説明を省略する。
【０１２６】
そして、ステップＳ１２０のモデル共有を受けて、共有先のチャイルドサーバ２００では、モデル運用部２０８が、共有したマザーモデル（Mother model v1.1）を、チャイルドサーバ２００で異常検知に用いるチャイルドモデルとして適用（デプロイ）し、運用を開始する（ステップＳ２１１）。言い換えると、このデプロイによって、マザーサーバ１００から配布された学習済みモデルがチャイルド拠点の生産工程に展開される。
【０１２７】
ステップＳ２１１の後、デプロイされたモデルの運用中に、モデル運用部２０８は、当該モデルを用いて、入力データから推理（識別）を行い、その推理結果に対して監視を行う（ステップＳ２１２）。
【０１２８】
そして、デプロイ後の所定のタイミング（例えば１か月後）で、モデル検証部２０５が、デプロイされたモデルによる推理結果の精度を検証し、モデルを運用可能な所定の精度基準を満たしているか否かを判定する（ステップＳ２１３）。ここで、ステップＳ２１３の判定処理は、チャイルドモデルの性能を評価する処理であって、例えば、教師データが保持されている場合には、モデル検証部２０５は、これを用いてモデルの推理結果の精度を計算するようにしてもよい。また、予め用意された教師データが存在しない場合には、モデル検証部２０５は、自チャイルド拠点から収集した情報に基づいて、チャイルドモデルの性能を評価するようにしてもよい。この場合、具体的には例えば、自チャイルド拠点から一定少数のサンプルデータ（例えば数百件）をランダムに抽出し、現場エンジニアに判断させた結果を「True label」としてラベルを付け、その「True label」に基づいて、モデルの推理結果の精度（現場エンジニアの判断結果との一致率）を計算することができる。そしてモデル検証部２０５は、上記のようにして算出されたモデルの推理結果の精度が、所定の基準値（生産拠点の現場責任者等との相談で決めてよく、例えば「精度９０％」）を達成しているか否かを判定する。
【０１２９】
ステップＳ２１３において、デプロイされたモデルによる推理結果の精度が所定の基準値以上であった場合は（ステップＳ２１３のＹＥＳ）、モデルの運用継続が許可される。この結果、マザーサーバ１００とチャイルドサーバ２００の双方において、同一のモデル（Mother model v1.1）について、所定の精度基準が達成されて、運用継続可能と判断される。したがって、学習モデル作成システム１は、マザーサーバ１００またはチャイルドサーバ２００が配置された複数拠点において、各拠点で異常検知を行うために用いられるニューラルネットワークのモデルに、各拠点で運用可能な精度を有するロバストな共通モデルを適用することができる。
【０１３０】
一方、ステップＳ２１３において、デプロイされたモデルによる推理結果の精度が所定の基準値未満であった場合は（ステップＳ２１３のＮＯ）、モデルの運用継続が否定される。この場合は、図１２のステップＳ２０１に戻り、チャイルド拠点における検査データを再収集する処理に進む。ステップＳ２０１に戻った後は、新しい検査データを取得して、改めて特徴量及び小サンプルを再抽出し（ステップＳ２０６）、これをマザーサーバ１００と共有することにより（ステップＳ２０７）、マザーサーバ１００においてステップＳ１１２以降の処理が行われ、モデルを再構築させて再度学習させることができる。学習モデル作成システム１では、ステップＳ２１３においてチャイルドモデルの運用継続に関する精度基準が達成できなかった場合に、上記処理を繰り返すことにより、マザー拠点（マザーサーバ１００）にチャイルド拠点における特徴を繰り返しフィードバックできるため、最終的には各拠点に適応するロバストな共通モデルの構築に期待できる。
【０１３１】
なお、図１３には示していないが、ステップＳ２１３で何れの判定結果が得られた場合でも、チャイルドサーバ２００からマザーサーバ１００にその判定結果を通知することが好ましい。このような判定結果が通知されることにより、マザーサーバ１００は、共通モデル（Mother model v1.1）の展開が成功したか否かを早期に認識することができる。また、通知に基づいて、種々の管理テーブル等を更新すれば、マザーサーバ１００は、最新の情報でモデル管理を行うことができる。また、ステップＳ２１３で精度基準を達成できなかった場合に、アラートを発生させる等すれば、チャイルド拠点において適切なモデル運用が行われていないことが報知されるため、必要に応じて、早急に検査データの再収集を行ってマザーモデルの再構築を依頼する等といった対策を行うことも支援できる。
【０１３２】
以上に説明した図１２及び図１３の一連の処理をまとめると、本実施形態に係る学習モデル作成システム１は、以下のような処理を行うものである。まず、マザー拠点（マザーサーバ１００）で構築及び学習された学習済みモデルを初期モデルとして各チャイルド拠点と共有する（図１２のステップＳ１０８）。そして、各チャイルド拠点（チャイルドサーバ２００）では、この共通する初期モデルに基づくチャイルドモデルの構築及び学習を経て、自拠点の特徴に起因する情報（特徴量及び小サンプル）を抽出し（図１２のステップＳ２０６）、マザー拠点に共有する（図１２のステップＳ２０７）。そして、マザー拠点では、マザー拠点を含む各拠点の特徴量を融合した特徴量を用いてマザーモデルを再構築し学習することにより、マザー拠点及び各チャイルド拠点の特徴をフィードバックした学習済みモデルを生成することができる（図１３のステップＳ１１０〜Ｓ１１４）。さらに、マザー拠点では、再構築したマザーモデルの学習済みモデルが運用可能な精度基準を満たす場合に、この学習済みモデルを共通モデルとして、自拠点だけでなく各チャイルド拠点の本稼働環境（生産工程）にも適用する。この結果、学習モデル作成システム１は、検査対象の状態を診断するニューラルネットワークにおいて、各拠点で得られた特徴的な情報を拠点間で早期に連携（学習モデルを共有）し、各拠点の周辺環境や加工条件に耐えられるロバストな共通モデルを早期に構築することができる。
【０１３３】
また、本実施形態に係る学習モデル作成システム１は、多様な環境や材料等が展開されるグローバルな複数のチャイルド拠点を対象として、様々な情報（特徴量及び小サンプル）を収集し、これを共通モデルに反映させることにより、より精度の高い共通モデルに反映させることができる。
【０１３４】
また、本実施形態に係る学習モデル作成システム１は、マザー拠点（マザーサーバ１００）と複数のチャイルド拠点（チャイルドサーバ２００）とで共通のモデルを適用することから、複数のチャイルド拠点の間でも学習結果が共有できる。すなわち、他の拠点で発生し、将来的には自拠点でも発生し得る事象（異常）を事前に学習できるため、各拠点の不良要因を早期に把握することに期待できる。
【０１３５】
また、従来技術では、チャイルド拠点の状況をマザー拠点に通知する場合、チャイルド拠点で収集された検査データの全てを送信しないと精度的に不十分となる可能性が高かったが、本実施形態に係る学習モデル作成システム１では、図１２のステップＳ２０６〜Ｓ２０７で説明したように、検査データの一部（小サンプル）とともに特徴量をマザーサーバ１００に渡すようにしたことで、比較的少ないデータ量でマザー拠点（マザーサーバ１００）に、チャイルド拠点（チャイルドサーバ２００）に関する十分な情報を送信することができるため、通信負荷や処理負荷を低減する効果が期待できる。
【０１３６】
また、図１３に示した処理では、複数のチャイルドサーバ２００から収集した特徴量及びデータ（小サンプル）に基づいて再構築したマザーモデルを、マザーサーバ１００で先に適用してモデル監視を行い、その推理結果の精度が運用継続の基準を満たす場合に、チャイルドサーバ２００と共有する、という処理進行を採用したことにより、マザー拠点の本稼働環境でモデルの安全性を確認してから、各チャイルド拠点に共通モデルを展開することができるため、各チャイルド拠点における運用継続の基準達成の未達を抑制する効果に期待できる。但し、本実施形態における学習モデルの共有方法は図１３に示した処理手順に限定されるものではなく、例えば別の処理進行として、上記再構築したマザーモデルを、マザーサーバ１００側で運用継続の基準達成を確認する前に、チャイルドサーバ２００と共有し、各チャイルドサーバ２００側でモデル適用してモデル監視を行い、その推理結果の精度が運用継続の基準を満たすかを判定するようにしてもよい。具体的な処理の流れとしては、ステップＳ１１６でＹＥＳと判定された場合に、ステップＳ１２０に移行し、チャイルドサーバ２００側でステップＳ２１１〜Ｓ２１３の処理を行う。そして、チャイルドサーバ２００でステップＳ２１３の処理が終了した後に、マザーサーバ１００のステップＳ１１７〜Ｓ１１９の処理を行うとすればよい。この場合、マザー拠点における安全性の確認は後回しになるが、各チャイルド拠点に共通モデルをより早期に展開できるという効果が得られる。
【０１３７】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１３８】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１３９】
また、図面において制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１４０】
１      学習モデル作成システム
１０    マザー工場（Mother Fab）
１１，１２，１３，２１，２２，２３  ライン
２０    チャイルド工場（Child Fab）
３１，４１  ＣＰＵ
３２，４２  ＲＯＭ
３３，４３  ＲＡＭ
３４，４４  補助記憶装置
３５，４５  通信装置
３６，４６  表示装置
３７，４７  入力装置
３８，４８  メディア取込装置
３９    ＧＰＵ
１００  マザーサーバ
１０１，２０１  外部システムインタフェース部
１０２，２０２  データ取得部
１０３，２０３  データ前処理部
１０４  バージョン管理部
１０５，２０４  モデル学習部
１０６，２０５  モデル検証部
１０７  モデル共有部
１０８  特徴量取得部
１０９  特徴量融合部
１１０，２０８  モデル運用部
１２１，２２１  検査データ保存部
１２２，２２２  モデル保存部
１２３，２２３  特徴量データ保存部
１２４，２２４  モデル推理結果保存部
２００  チャイルドサーバ
２０６  特徴量抽出部
２０７  特徴量共有部
３１０  マザーモデル管理テーブル
３２０  チャイルドモデル管理テーブル
３３０  特徴量管理テーブル
３４０  モデル運用管理テーブル
３５０  教師データ管理テーブル
【図１】
0006967099.tif 000002
【図２】
0006967099.tif 000003
【図３】
0006967099.tif 000004
【図４】
0006967099.tif 000005
【図５】
0006967099.tif 000006
【図６】
0006967099.tif 000007
【図７】
0006967099.tif 000008
【図８】
0006967099.tif 000009
【図９】
0006967099.tif 000010
【図１０】
0006967099.tif 000011
【図１１】
0006967099.tif 000012
【図１２】
0006967099.tif 000013
【図１３】
0006967099.tif 000014
【図１４】
0006967099.tif 000015
【図１５】
0006967099.tif 000016