(57)【要約】【課題】工場等の製造現場において用いられる機械学習装置の学習に係る検証を行う検証装置を提供すること。【解決手段】本発明の検証装置１は、学習データ記憶部２００に記憶された学習データに基づく学習により学習モデルを生成する学習部３１０と、学習データ記憶部２００に記憶された学習データに基づいて、学習モデルを用いた推論を行う推論部３２０と、学習データ記憶部２００に記憶された学習データを解析するための解析手法及び該解析における基準を定めた解析仕様に従って、推論部３２０の推論の結果を用いて学習データ記憶部２００に記憶された学習データを解析する解析部１２０と、解析部１２０による解析の結果に従って、学習データ記憶部２００に記憶された学習データを加工する加工部１３０と、を備える。【選択図】図２
2020042673.tif 000002
【特許請求の範囲】
【請求項１】
学習データ記憶部に記憶される学習データの妥当性を検証する検証装置において、
前記学習データ記憶部に記憶された学習データに基づく学習により学習モデルを生成する学習部と、
前記学習データ記憶部に記憶された学習データに基づいて、前記学習モデルを用いた推論を行う推論部と、
前記学習データ記憶部に記憶された学習データを解析するための解析手法及び該解析における基準を定めた解析仕様に従って、前記推論部の推論の結果を用いて前記学習データ記憶部に記憶された学習データを解析する解析部と、
前記解析部による解析の結果に従って、前記学習データ記憶部に記憶された学習データを加工する加工部と、
を備える検証装置。
【請求項２】
前記解析仕様は、前記推論部による推論の結果を用いて前記学習データ記憶部に記憶された学習データの中から異常データを抽出するための閾値を定め、
前記解析部は、前記解析仕様に従って、前記学習データ記憶部に記憶された学習データから異常データを抽出し、
前記加工部は、前記解析部が抽出した異常データを、前記学習データ記憶部から除去する、
請求項１に記載の検証装置。
【請求項３】
前記解析仕様は、前記学習データ記憶部に記憶された学習データに関する前記推論部による推論の結果としての信頼度の閾値を定め、
前記解析部は、前記解析仕様に従って、前記学習データ記憶部に記憶された学習データから信頼度が低い学習データを抽出し、
前記加工部は、前記解析部が抽出した信頼度が低いデータについて、前記学習データ記憶部に記憶された学習データに付与されているタグとは異なる新たなタグを付与する、
請求項１に記載の検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検証装置に関し、特に工場等の製造現場において用いられる機械学習装置の学習に係る検証を行う検証装置に関する。
【背景技術】
【０００２】
工場等の製造現場に於いて、該製造現場に設置されている多くの工作機械やロボット等の産業機械からデータを収集して、収集したデータに基づいたクラス分類や回帰、異常検知等の工程を教師あり学習などの機械学習を応用して自動化する事が行われている（例えば、特許文献１，２等）。一般に、機械学習装置の推論等の性能は学習に用いた学習データの質に依存する為、タスク毎に専用の学習データを大量に準備する事も多い。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１６２２５２号公報
【特許文献２】特開２０１８−０７７７５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、学習済みの機械学習装置を用いて推論処理を行わせた際に、事前に想定していた結果とは違う結果を出力する場合がある。この様な場合、何が原因で学習がうまく行かなかったのかを解析して想定していた結果と成るように改善する必要があるが、一般に機械学習装置は多くのパラメータが相互に関わり合って推論を行っているものであるため、人手による解析と改善は困難である。
【０００５】
また、学習データとして収集したデータに異常データが含まれていることも多く、その様な学習データを用いて学習した場合においても、機械学習装置では想定していた結果とは違う結果を出力する場合があるが、学習に用いた学習データから異常データを抽出する解析を行うにしても、学習に用いる学習データは大量にあるため、やはり人手により解析等を行うことは困難となる。更に、特に教師あり学習に用いられる学習データは、人手でのタグ付与（仕様設計、タグ付等）が行われるが、タグ付与をする作業者の主観を完全に排除することができないため、学習データに付与されるタグの整合性及び再現性を担保することが困難であるという課題もある。
【０００６】
そこで本発明の目的は、工場等の製造現場において用いられる機械学習装置の学習に係る検証を行う検証装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明では、工場等に設置された産業機械で利用する機械学習装置の学習に用いられる学習データの推論結果の分布を解析し、事前に想定した結果との差分を検出する事により、学習データ中の誤り（外れ値、タグの過不足、誤ったタグ付）を自動検出し訂正する機能を実装することにより、上記課題を解決する。
【０００８】
そして、本発明の一態様は、学習データ記憶部に記憶される学習データの妥当性を検証する検証装置において、前記学習データ記憶部に記憶された学習データに基づく学習により学習モデルを生成する学習部と、前記学習データ記憶部に記憶された学習データに基づいて、前記学習モデルを用いた推論を行う推論部と、前記学習データ記憶部に記憶された学習データを解析するための解析手法及び該解析における基準を定めた解析仕様に従って、前記推論部の推論の結果を用いて前記学習データ記憶部に記憶された学習データを解析する解析部と、前記解析部による解析の結果に従って、前記学習データ記憶部に記憶された学習データを加工する加工部と、を備える検証装置である。
【発明の効果】
【０００９】
本発明により、事前設定した基準に対し基準外の推論結果の原因となる学習データを取り除き、自動で再度学習推論する事で、精度向上の為の解析と改善の一助とできる。また、学習データの同一タグを持つ部分の推論結果の分布が割れる時、自動で分布毎に新たなタグを再度付与し直し学習推論する事で、より実態に近いタグで機械学習装置を構築できる。
【図面の簡単な説明】
【００１０】
【図１】一実施形態による検証装置の概略的なハードウェア構成図である。
【図２】一実施形態による検証装置の概略的な機能ブロック図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態を図面と共に説明する。
図１は本発明の一実施形態による検証装置の要部を示す概略的なハードウェア構成図である。本実施形態の検証装置１は、工場等の製造現場に設置されたコンピュータとして実装することができる。また、検証装置１は、工場等の製造現場に設置されたコンピュータとネットワークを介して接続されたエッジコンピュータ、セルコンピュータ、ホストコンピュータ、クラウドサーバ等のコンピュータとして実装することが出来る。図１は、工場等の製造現場に設置されたコンピュータとして検証装置１を実装した場合の例を示している。
【００１２】
本実施形態による検証装置１が備えるＣＰＵ１１は、検証装置１を全体的に制御するプロセッサである。ＣＰＵ１１は、バス２２を介して接続されているＲＯＭ１２に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って検証装置１全体を制御する。ＲＡＭ１３には一時的な計算データや表示装置７０に表示するための表示データ及び入力装置７１を介してオペレータが入力した各種データ等が格納される。
【００１３】
不揮発性メモリ１４は、例えば図示しないバッテリでバックアップされたＳＲＡＭやＳＳＤ等で構成され、検証装置１の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ１４には、入力装置７１を介して入力されたデータやプログラム、インタフェース１７を介してネットワーク７に接続された（制御装置やホストコンピュータ等の）他のコンピュータ５から取得されたデータ等が記憶される。不揮発性メモリ１４に記憶されたデータやプログラム等は、利用時にはＲＡＭ１３に展開されても良い。また、ＲＯＭ１２には、データの解析のために必要とされる各種アルゴリズムや、その他の必要とされる処理を実行するためのシステム・プログラムがあらかじめ書き込まれている。
【００１４】
インタフェース１７は、検証装置１を有線／無線のネットワーク７と接続するためのインタフェースである。ネットワーク７には、工場内に設置された工作機械を制御する制御装置やパソコン、エッジコンピュータ、セルコンピュータ、ホストコンピュータ等のコンピュータ５等が接続され、ネットワーク７を介した情報のやり取りを相互に行っている。
【００１５】
インタフェース２３は、検証装置１と機械学習装置３００を接続するインタフェースである。機械学習装置３００は、機械学習装置３００全体を統御するプロセッサ３０１と、システム・プログラム等を記憶したＲＯＭ３０２、機械学習に係る各処理における一時的な記憶を行うためのＲＡＭ３０３、及び学習モデル等の記憶に用いられる不揮発性メモリ３０４が、バス３０５を介して接続されて構成される。機械学習装置３００は、インタフェース２３を介して検証装置１で取得可能な各情報を観測することができる。また、検証装置１は、機械学習装置３００から出力される検査対象に関する検証結果の推定に基づいてその後の処理を行う。
【００１６】
図２は、第１実施形態による検証装置１と機械学習装置３００の概略的な機能ブロック図である。図２に示した各機能ブロックは、図１に示した検証装置１が備えるＣＰＵ１１及び機械学習装置３００のプロセッサ３０１が、それぞれのシステム・プログラムを実行し、検証装置１及び機械学習装置３００の各部の動作を制御することにより実現される。
【００１７】
本実施形態の検証装置１は、データ取得部１００、前処理部１１０、解析部１２０、加工部１３０を備え、検証装置１が備える機械学習装置３００は、学習部３１０、推論部３２０を備えている。また、不揮発性メモリ１４上には、機械学習装置３００による学習及び推論に用いられるデータを記憶する学習データ記憶部２００が設けられ、また、学習データに係る解析仕様２１０が設定されている。更に、機械学習装置３００の不揮発性メモリ３０４上には、学習部３１０による機械学習により構築された学習モデルを記憶する学習モデル記憶部３３０が設けられている。
【００１８】
データ取得部１００は、入力装置７１や他のコンピュータ５等から学習データとして用いる各種データを取得する機能手段である。データ取得部１００は、例えば、作業者の支持に従って図示しない産業機械を制御する制御装置としてのコンピュータ５から、該産業機械における作業工程で検出されたデータ（信号データ、画像データ等）、（必要に応じて）該取得されたデータに対して作業者が目視で検査した結果を示すラベルデータ、他のコンピュータ５から取得した学習データ等を取得し、学習データ記憶部２００に記憶する。データ取得部１００は、図示しない外部記憶装置からデータを取得するようにしても良い。
【００１９】
前処理部１１０は、学習データ記憶部２００に記憶された学習データに基づいて、機械学習装置３００による学習乃至推論に用いられるデータを作成する機能手段である。前処理部１１０は、例えば学習データ記憶部２００に記憶された学習データに基づいて、機械学習装置３００が教師なし学習を行う場合における、学習に用いられる状態データＳを作成する。前処理部１１０は、例えば学習データ記憶部２００に記憶された学習データに基づいて、機械学習装置３００が教師あり学習を行う場合における、学習に用いられる状態データＳ及びラベルデータＬの組である教師データを作成する。または、前処理部１１０は、例えば、学習データ記憶部２００に記憶された学習データに基づいて、機械学習装置３００における学習モデルを用いた推論に用いられる状態データＳを作成する。前処理部１１０は、取得したデータを機械学習装置３００において扱われる統一的な形式へと変換（数値化、正規化、サンプリング等）することにより状態データＳ及びラベルデータＬを作成する。
【００２０】
前処理部１１０が作成する状態データＳとしては、例えば産業機械により製造された製品を撮像した画像を構成する画素値の配列データ等であってよい。また、前処理部１１０が作成する状態データＳとしては、例えば産業機械から取得された各軸の速度値やトルク値、電流値、電圧値、音声センサにより検出されたセンサ等の物理データを含む配列データ等であってよい。
また、前処理部１１０が作成するラベルデータＬは、例えば産業機械により製造された製品の良品／不良品を分類するラベル等であって良い。また、前処理部１１０が作成するラベルデータＬは、例えば産業機械の動作状態の正常／異常を分類するラベル等であっても良い。
これら状態データＳ、ラベルデータＬは機械学習装置３００による学習の目的や学習方法、学習モデルの種類等に合わせて、様々な形式を取り得る。
【００２１】
学習部３１０は、前処理部１１０が作成したデータを用いた機械学習を行い、学習結果としての学習モデルを生成する（学習する）機能手段である。学習部３１０は、教師なし学習においては、前処理部１１０が作成した状態データＳを用いて学習を行う。また、学習部３１０は、教師あり学習においては、前処理部１１０が作成した教師データ（状態データＳ及び判定データＬ）を用いた学習を行う。学習部３１０は、例えばニューラルネットワークを学習モデルとして用いた教師あり学習を行うように構成しても良い。この様に構成する場合、学習モデルとしては入力層、中間層、出力層の三層を備えたニューラルネットワークを用いても良いが、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることで、より効果的な学習及び推論を行うように構成することも可能である。また、学習部３１０は、例えば回帰モデルやＳＶＭ、Ｉｓｏｌａｔｉｏｎ  Ｆｏｒｅｓｔ、Ｒａｎｄｏｍ  Ｆｏｒｅｓｔ、Ｌｏｃａｌ  Ｏｕｔｌｉｅｒ  Ｆａｃｔｏｒ等の他の様々な公知の学習モデルを用いた学習を行うようにしても良い。学習部３１０が生成した学習モデルは、不揮発性メモリ３０４上に設けられた学習モデル記憶部３３０に記憶され、推論部３２０による推論処理に用いられる。
【００２２】
推論部３２０は、前処理部１１０から入力された状態データＳに基づいて、学習モデル記憶部３３０に記憶された学習モデルを用いた推論処理を行う。推論部３２０は、学習部３１０による学習により生成された（パラメータが決定された）学習モデルを用いて、前処理部１１０から入力された状態データＳを入力データとした演算処理を行うことで該入力データから推論される結果を出力する。推論部３２０が推論した結果は、例えば解析部１２０に対して出力され解析に用いられる他、表示装置７０に表示出力したり、ネットワーク７を介してホストコンピュータやクラウドコンピュータ等に他のコンピュータ５へと送信出力したりして利用するようにしても良い。
【００２３】
解析部１２０は、解析仕様２１０に従って学習データ記憶部２００に記憶されている学習データの解析を行う機能手段である。解析仕様は、学習データを解析するための解析手法と該解析における基準を定める仕様であり、予め入力装置７１を介して作業者により不揮発性メモリ１４上に設けられた検証装置１の設定領域に設定されている。解析仕様の例としては、例えば学習データの中の異常データの抽出方法と該抽出方法における閾値等があげられる。解析仕様２１０の例としては、例えばクラスタ集合を生成した場合にいずれのクラスタからも外れている（いずれのクラスタからも距離がある）データの内で外れ度合いが高い方からｎ％のデータを異常データとして抽出する、学習データ空間における周囲密度の周りの学習データの周囲密度に対する比率が所定の比率ｒ未満である学習データを以上データとして抽出する、学習モデルによる推論結果の信頼度がｍ未満であるデータを異常データとして抽出する、等が挙げられる。解析部１２０は、設定されている解析仕様２１０に従って、学習データ記憶部２００に記憶されている学習データを入力データとした推論部３２０による推論結果を用いて、該学習データの中から異常データを抽出する。
【００２４】
加工部１３０は、解析部１２０による学習データ記憶部２００に記憶されている学習データの解析の結果に基づいて、学習データ記憶部２００に記憶されている学習データの加工を行う機能手段である。加工部１３０は、例えば異常データとして抽出されたデータを学習データから取り除く加工を行うようにしても良い。加工部１３０は、例えば異常データとして抽出されたデータに対して、現在の学習データ記憶部２００に記憶されている学習データに対して付与されているタグ以外のタグを付与するようにしても良い。加工部１３０は、例えば異常データとして抽出された学習データのリストを表示装置７０に対して表示すると共に、作業者に対して該異常データに対して行う加工処理を指令するように促しても良く、この場合、加工部１３０は、入力装置７１を介した作業者からの指令に基づいて、学習データ記憶部２００に記憶された学習データから抽出された異常データに対する加工を行う。
【００２５】
以下では、解析部１２０及び加工部１３０が行う処理の例を示す。
解析部１２０及び加工部１３０が行う処理の第１実施例として、例えば金属製スマートフォンケースの出荷前の良品／不良品検査において、該金属製スマートフォンケースを撮像して得られた２次元画像を学習データとした教師なし学習（Ｉｓｏｌａｔｉｏｎ  Ｆｏｒｅｓｔ）を行い、その学習結果としての学習モデルを用いて製品の自動検査を行う例を考える。この時、学習モデルを作成するために多くの製品を撮像した２次元画像データがデータ取得部１００により取得され学習データとして学習データ記憶部２００に記憶されるが、その中には多くの良品の２次元画像と、少数の不良品の２次元画像が混在する。一般に、教師なし学習により分類のための学習モデルを生成する場合には、良品のみの学習データを用いることで、推論の精度を向上させることができるが、そのためには予め学習データを人手で確認して良品／不良品の選別を行う必要がある。本実施形態の検証装置１では、この工程をほぼ自動化することができる。
【００２６】
はじめに、学習データ記憶部２００に記憶されている学習データを用いた学習部３１０による学習（Ｉｓｏｌａｔｉｏｎ  Ｆｏｒｅｓｔ）を行い、仮の学習モデルを構築する。次に、構築した学習モデルに基づいた各々の学習データに対する推論部３２０による推論処理を行うことで、それぞれの学習データに対する異常度が推論される。解析部１２０は、このようにして推論された各学習データに対する異常度（学習データの集合における該学習データの外れ度合い）に基づいて、上位のｎ％（製造現場において事前に推定された正常不良率を基に解析仕様に定義しておく）分を異常データとして抽出する。そして、加工部１３０は、解析部１２０による解析の結果として抽出された異常データを学習データ記憶部２００から除去する。その後、学習データ記憶部２００に残された学習データを用いて、改めて学習部３１０が学習モデルを生成する。このようにすることで、学習データに対する人手での事前の選別が不要となるため作業効率が向上し、また、異常データを除去することにより自動検査の性能を向上させることができる。
【００２７】
解析部１２０及び加工部１３０が行う処理の第２実施例として、例えば工作機械の故障診断において、該工作機械の動作時に検出された振動データや音データを学習データとした教師なし学習（Ｌｏｃａｌ  Ｏｕｔｌｉｅｒ  Ｆａｃｔｏｒ）を行い、その学習結果としての学習モデルを用いて工作機械の故障状態を自動診断する例を考える。この時、学習モデルを作成するために多くの工作機械に取り付けられたセンサから振動データ乃至音データがデータ取得部１００により取得され、学習データとして学習データ記憶部２００に記憶されるが、その中には多くの正常状態で検出された振動データ乃至音データと、少数の故障状態で検出された振動データ乃至音データが混在する。一般に、教師なし学習により分類のための学習モデルを生成する場合には、正常状態のみの学習データを用いることで、推論の精度を向上させることができるが、そのためには予め学習データを人手で確認して正常状態／故障状態の選別を行う必要がある。本実施形態の検証装置１では、この工程をほぼ自動化することができる。
【００２８】
はじめに、学習データ記憶部２００に記憶されている学習データを用いた学習部３１０による学習（Ｌｏｃａｌ  Ｏｕｔｌｉｅｒ  Ｆａｃｔｏｒ）を行い、仮の学習モデルを構築する。次に、構築した学習モデルに基づいた各々の学習データに対する推論部３２０による推論処理を行うことで、それぞれの学習データについて、学習データ空間における該学習データの周辺密度と周りの学習データの周辺密度との比率が推論される。解析部１２０は、このようにして推論された各学習データの周辺密度の周りの学習データの周辺密度に対する比率（周りの学習データに対する外れ度合い）が所定の比率ｒ（解析仕様により定義しておく）未満の学習データを異常データとして抽出する。そして、加工部１３０は、解析部１２０による解析の結果として抽出された異常データを学習データ記憶部２００から除去する。その後、学習データ記憶部２００に残された学習データを用いて、改めて学習部３１０が学習モデルを生成する。このようにすることで、学習データに対する人手での事前の選別が不要となるため作業効率が向上し、また、異常データを除去することにより自動診断の性能を向上させることができる。
【００２９】
解析部１２０及び加工部１３０が行う処理の第３実施例として、例えば金属製スマートフォンケースの出荷前の傷モード検査において、該金属製スマートフォンケースを撮像して得られた２次元画像を学習データとした教師あり学習（Ｒａｎｄｏｍ  Ｆｏｒｅｓｔ）を行い、その学習結果としての学習モデルを用いて製品の傷モードの自動検査を行う例を考える。この時、事前に想定される傷モード（擦り傷、切り傷等）を洗い出し、学習モデルを作成するために多くの製品を撮像した２次元画像データがデータ取得部１００により取得され、取得された各データに対して良品なのか又はいずれの傷モードに分類されるのかをラベルとして付与した学習データが学習データとして学習データ記憶部２００に記憶されるが、この場合、傷モードの定量的な分類基準を決めるのが難しいため、タグ付けが曖昧になりがちで、結果自動診断の品質にばらつきが出やすいという問題がある。本実施形態の検証装置１では、分類に用いられるタグの妥当性についてほぼ自動的に検証することができる。
【００３０】
はじめに、学習データ記憶部２００に記憶されている（仮ラベル付けされた）学習データを用いた学習部３１０による学習（Ｒａｎｄｏｍ  Ｆｏｒｅｓｔ）を行い、仮の学習モデルを構築する。次に、構築した学習モデルに基づいた各々の学習データに対する推論部３２０による推論処理を行うことで、それぞれの学習データに対する分類とその信頼度が推論される。解析部１２０は、このようにして推論された各学習データに対する分類と信頼度（学習データが当該分類に属する信頼度合い）に基づいて、信頼度がｍ未満（解析仕様により定義しておく）のものは異常タグ付けされたデータとして抽出する。そして、加工部１３０は、解析部１２０による解析の結果として抽出された異常タグ付けされた学習データ記憶部２００内の学習データについて、新たなタグ（例えば、傷モードＡ等）を付与し直す。その後、学習データ記憶部２００に残された学習データを用いて、改めて学習部３１０が仮の学習モデルを生成し、上記工程を全ての学習データが信頼度ｍ以上となるまで繰り返し、全ての学習データが信頼度ｍ以上となった時点での学習モデルを製品の傷モードの自動検査に用いる学習モデルとする。このようにすることで、学習データにあり得る傷モードに沿った分類基準を決定することができ、自動検査の性能を向上させることができる。
【００３１】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【符号の説明】
【００３２】
１  検証装置
５  コンピュータ
７  ネットワーク
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  不揮発性メモリ
１７，１８，１９  インタフェース
２２  バス
２３  インタフェース
７０  表示装置
７１  入力装置
１００  データ取得部
１１０  前処理部
１２０  解析部
１３０  加工部
２００  学習データ記憶部
２１０  解析仕様
３００  機械学習装置
３０１  プロセッサ
３０２  ＲＯＭ
３０３  ＲＡＭ
３０４  不揮発性メモリ
３０５  バス
３１０  学習部
３２０  推論部
３３０  学習モデル記憶部
【図１】
2020042673.tif 000003
【図２】
2020042673.tif 000004