IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社安川電機の特許一覧

特許7408815機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム
<>
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図1
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図2
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図3
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図4
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図5
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図6
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図7
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図8
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図9
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図10
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図11
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図12
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図13
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図14
  • 特許-機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-22
(45)【発行日】2024-01-05
(54)【発明の名称】機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラム
(51)【国際特許分類】
   G06N 20/00 20190101AFI20231225BHJP
【FI】
G06N20/00 130
【請求項の数】 9
(21)【出願番号】P 2022539902
(86)(22)【出願日】2020-07-30
(86)【国際出願番号】 JP2020029255
(87)【国際公開番号】W WO2022024302
(87)【国際公開日】2022-02-03
【審査請求日】2022-10-07
(73)【特許権者】
【識別番号】000006622
【氏名又は名称】株式会社安川電機
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】鈴木 良平
(72)【発明者】
【氏名】横矢 剛
(72)【発明者】
【氏名】増村 諒
(72)【発明者】
【氏名】太刀掛 浩貴
【審査官】牛丸 太希
(56)【参考文献】
【文献】特開2020-112921(JP,A)
【文献】米国特許出願公開第2019/0303759(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
機械または電気回路である対象機器の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する実時系列情報取得部と、
前記対象機器の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する物理シミュレーション実行部と、
前記複数の仮想時系列情報と、前記実時系列情報とに基づいて、前記複数のパラメータのうち1以上のパラメータを特定し、前記ラベルと関連付けるパラメータ特定部と、
前記パラメータ特定部によって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応する前記ラベルを生成するパラメータ生成部と、
前記新たなパラメータを用いて前記物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する仮想時系列情報生成部と、
前記新たな内部状態に対応する仮想時系列情報に前記新たなパラメータと対応する前記ラベルを関連付けて、新たな機械学習データを生成する機械学習データ生成部と、
を有する機械学習データ生成装置。
【請求項2】
さらに、前記ラベルの種類ごとに取りうる前記パラメータが該ラベルと関連付けて記憶されたパラメータ記憶部を有し、
前記パラメータ生成部は、前記パラメータ記憶部に記憶された前記パラメータに基づいて、前記新たなパラメータを生成する、
請求項1に記載の機械学習データ生成装置。
【請求項3】
前記パラメータ生成部は、前記新たなパラメータと、前記パラメータ記憶部に記憶された各ラベルと対応するパラメータ群と、の関係によって、当該新たなパラメータと対応する前記ラベルを決定する、請求項2に記載の機械学習データ生成装置。
【請求項4】
前記ラベルは、前記対象機器の前記動作状態が正常であるか異常であるかを表し、
前記パラメータ生成部は、異常であることを表す前記ラベルと対応する前記新たなパラメータを選択的に生成する、
請求項2に記載の機械学習データ生成装置。
【請求項5】
前記新たなパラメータは、前記ラベルが関連付けられた前記パラメータの分布を表すパラメータ分布図上の位置で表され、
前記パラメータ生成部は、前記パラメータ分布図上で、所定の範囲内に所定の数の前記パラメータが存在する位置によって表されるパラメータを前記新たなパラメータとして生成する、
請求項3に記載の機械学習データ生成装置。
【請求項6】
前記仮想時系列情報生成部は、前記新たなパラメータを用いて実行された前記物理シミュレーションの結果に基づいて、前記新たな状態の前記仮想時系列情報を生成するGAN(Generative Adversarial Networks)を有する、請求項1から5のいずれかに記載の機械学習データ生成装置。
【請求項7】
請求項1から6のいずれかに記載の機械学習データ生成装置と、
前記機械学習データに基づいて、前記仮想時系列情報を入力とし、前記ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる学習部と、
を有する機械学習装置。
【請求項8】
機械学習装置を用いた機械学習モデルの生成方法であって、
実時系列情報取得部が、機械または電気回路である対象機器の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する実時系列情報取得ステップと、
物理シミュレーション実行部が、前記対象機器の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する物理シミュレーション実行ステップと、
パラメータ特定部が、前記複数の仮想時系列情報と、前記実時系列情報とに基づいて、前記複数のパラメータのうち1以上のパラメータを特定し、前記ラベルと関連付けるパラメータ特定ステップと、
パラメータ生成部が、前記パラメータ特定ステップによって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応する前記ラベルを生成するパラメータ生成ステップと、
仮想時系列情報生成部が、前記新たなパラメータを用いて前記物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する仮想時系列情報生成ステップと、
機械学習データ生成部が、前記新たな内部状態に対応する仮想時系列情報に前記新たなパラメータと対応する前記ラベルを関連付けて、新たな機械学習データを生成する機械学習データ生成ステップと、
学習部が、前記機械学習データに基づいて、前記仮想時系列情報を入力とし、前記ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる学習ステップと、
を有する機械学習モデルの生成方法。
【請求項9】
機械または電気回路である対象機器の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する実時系列情報取得ステップと、
前記対象機器の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する物理シミュレーション実行ステップと、
前記複数の仮想時系列情報と、前記実時系列情報とに基づいて、前記複数のパラメータのうち1以上のパラメータを特定し、前記ラベルと関連付けるパラメータ特定ステップと、
前記パラメータ特定ステップによって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応する前記ラベルを生成するパラメータ生成ステップと、
前記新たなパラメータを用いて前記物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する仮想時系列情報生成ステップと、
前記新たな内部状態に対応する仮想時系列情報に前記新たなパラメータと対応する前記ラベルを関連付けて、新たな機械学習データを生成する機械学習データ生成ステップと、
前記機械学習データに基づいて、前記仮想時系列情報を入力とし、前記ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる学習ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラムに関する。
【背景技術】
【0002】
物理的な動作を行う機械において、機械学習を用いて動作をさせるためには、種々の現実に起こり得る態様に即した機械学習データ(振動波形など)により機械学習を行う必要がある。しかしながら、十分な学習データを得るためには種々の条件で実機を実際に動作させて機械学習をさせなければならず、多大な労力と時間を要する場合がある。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明が解決しようとする課題は、現実に対象機器を動作させることなく、物理シミュレーションを用いて、対象機器の内部状態を表すパラメータを特定することにより、適切なラベルの付された機械学習データを取得する機械学習データ生成装置、機械学習装置、機械学習モデルの生成方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0004】
本発明の一側面に係る機械学習データ生成装置は、機械または電気回路である対象機器の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する実時系列情報取得部と、前記対象機器の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する物理シミュレーション実行部と、前記複数の仮想時系列情報と、前記実時系列情報とに基づいて、前記複数のパラメータのうち1以上のパラメータを特定し、前記ラベルと関連付けるパラメータ特定部と、前記パラメータ特定部によって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応する前記ラベルを生成するパラメータ生成部と、前記新たなパラメータを用いて前記物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する仮想時系列情報生成部と、前記新たな内部状態に対応する仮想時系列情報に前記新たなパラメータと対応する前記ラベルを関連付けて、新たな機械学習データを生成する機械学習データ生成部と、を有する。
【0005】
また、本発明の別の一側面に係る機械学習データ生成装置は、さらに、前記ラベルの種類ごとに取りうる前記パラメータが該ラベルと関連付けて記憶されたパラメータ記憶部を有し、前記パラメータ生成部は、前記パラメータ記憶部に記憶された前記パラメータに基づいて、前記新たなパラメータを生成する。
【0006】
また、本発明の別の一側面に係る機械学習データ生成装置は、前記パラメータ生成部は、前記新たなパラメータと、前記パラメータ記憶部に記憶された各ラベルと対応するパラメータ群と、の関係によって、当該新たなパラメータと対応する前記ラベルを決定する。
【0007】
また、本発明の別の一側面に係る機械学習データ生成装置は、前記ラベルは、前記対象機器の前記動作状態が正常であるか異常であるかを表し、前記パラメータ生成部は、異常であることを表す前記ラベルと対応する前記新たなパラメータを選択的に生成する。
【0008】
また、本発明の別の一側面に係る機械学習データ生成装置は、前記新たなパラメータは、前記ラベルが関連付けられた前記パラメータの分布を表すパラメータ分布図上の位置で表され、前記パラメータ生成部は、前記パラメータ分布図上で、所定の範囲内に所定の数の前記パラメータが存在する位置によって表されるパラメータを前記新たなパラメータとして生成する。
【0009】
また、本発明の別の一側面に係る機械学習データ生成装置は、前記仮想時系列情報生成部は、前記新たなパラメータを用いて実行された前記物理シミュレーションの結果に基づいて、前記新たな状態の前記仮想時系列情報を生成するGAN(Generative Adversarial Networks)を有する。
【0010】
また、本発明の別の一側面に係る機械学習装置は、上記のいずれかに記載の機械学習データ生成装置と、前記機械学習データに基づいて、前記仮想時系列情報を入力とし、前記ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる学習部と、を有する。
【0011】
また、本発明の別の一側面に係る機械学習モデルの生成方法は、機械または電気回路である対象機器の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する実時系列情報取得ステップと、前記対象機器の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する物理シミュレーション実行ステップと、前記複数の仮想時系列情報と、前記実時系列情報とに基づいて、前記複数のパラメータのうち1以上のパラメータを特定し、前記ラベルと関連付けるパラメータ特定ステップと、前記パラメータ特定ステップによって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応する前記ラベルを生成するパラメータ生成ステップと、前記新たなパラメータを用いて前記物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する仮想時系列情報生成ステップと、前記新たな内部状態に対応する仮想時系列情報に前記新たなパラメータと対応する前記ラベルを関連付けて、新たな機械学習データを生成する機械学習データ生成ステップと、前記機械学習データに基づいて、前記仮想時系列情報を入力とし、前記ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる学習ステップと、を有する。
【0012】
また、本発明の別の一側面に係るプログラムは、機械または電気回路である対象機器の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する実時系列情報取得ステップと、前記対象機器の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する物理シミュレーション実行ステップと、前記複数の仮想時系列情報と、前記実時系列情報とに基づいて、前記複数のパラメータのうち1以上のパラメータを特定し、前記ラベルと関連付けるパラメータ特定ステップと、前記パラメータ特定ステップによって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応する前記ラベルを生成するパラメータ生成ステップと、前記新たなパラメータを用いて前記物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する仮想時系列情報生成ステップと、前記新たな内部状態に対応する仮想時系列情報に前記新たなパラメータと対応する前記ラベルを関連付けて、新たな機械学習データを生成する機械学習データ生成ステップと、前記機械学習データに基づいて、前記仮想時系列情報を入力とし、前記ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる学習ステップと、をコンピュータに実行させる。
【発明の効果】
【0013】
本発明によれば、対象機器の内部状態を表すパラメータを特定し、その補間値を使うことで、適切な機械学習データを容易に取得できる。
【図面の簡単な説明】
【0014】
図1】本発明の実施形態に係る機械学習データ生成装置を含む機械学習装置の全体の構成を示す機能ブロック図である。
図2】機械学習データ生成装置及び機械学習装置のハードウェア構成の一例を示す図である。
図3】対象機器の一例であるボールねじ機構を示す図である。
図4】実時系列情報及び仮想時系列情報の一例を示す図である。
図5】実時系列情報及び仮想時系列情報の他の一例を示す図である。
図6】実時系列情報及び仮想時系列情報の他の一例を示す図である。
図7】実時系列情報及び仮想時系列情報の他の一例を示す図である。
図8】パラメータ記憶部に記憶されたパラメータ及びラベルの一例を示す図である。
図9】パラメータ分布図の一例を示す図である。
図10】GANを説明する図である。
図11】ノイズを含む仮想時系列情報の一例を示す図である。
図12】ノイズを含む仮想時系列情報の他の一例を示す図である。
図13】ノイズを含む仮想時系列情報の他の一例を示す図である。
図14】ノイズを含む仮想時系列情報の他の一例を示す図である。
図15】本発明の実施形態に係る機械学習データ生成装置及び機械学習装置による、機械学習データ生成方法及び機械学習方法のフロー図である。
【発明を実施するための形態】
【0015】
以下、本発明を実施するための好適な実施の形態(以下、実施形態という)を各図を参照しながら説明する。
【0016】
図1は、本発明の第1の実施形態に係る機械学習データ生成装置102を含む機械学習装置100の全体の構成を示す機能ブロック図である。ここで、「機械学習データ生成装置」とは、教師あり学習がなされる機械学習モデルにおける学習に用いられる教師データである、機械学習データを生成する装置を指し、「機械学習装置」とは、機械学習データを用いて、機械学習モデルの学習を実行する装置を表す。
【0017】
機械学習装置100及び機械学習データ生成装置102は、物理的には、それぞれ単独の装置として用意されてもよいが、これに限られない。機械学習装置100及び機械学習データ生成装置102は、他の機械や装置の一部として組み込まれていてもよく、また、必要に応じて他の機械や装置の物理的構成を用いて適宜構成されるものであってもよい。より具体的には、機械学習装置100及び機械学習データ生成装置102は、一般的なコンピュータを用いて、ソフトウェアにより実装されてよい。
【0018】
また、コンピュータを機械学習装置100及び機械学習データ生成装置102として動作させるプログラムは、一体のものであってもよいし、それぞれ単独で実行されるものであってもよい。さらに、プログラムは、モジュールとして他のソフトウェアに組み込まれるものであってもよい。また、機械学習装置100及び機械学習データ生成装置102を、いわゆるサーバコンピュータ上に構築し、インターネットなどの公衆電気通信回線を経由してその機能のみを遠隔地に提供するようにしてもよい。
【0019】
図2は、機械学習装置100及び機械学習データ生成装置102のハードウェア構成の一例を示す図である。図2は、一般的なコンピュータが記載されており、プロセッサであるCPU202(Central Processing Unit)、メモリであるRAM204(Random Access Memory)、外部記憶装置206、表示デバイス208、入力デバイス210及びI/O212(Inpur/Output)がデータバス214により相互に電気信号のやり取りができるよう接続されている。なお、ここで示したコンピュータのハードウェア構成は一例であり、これ以外の構成のものであってもよい。
【0020】
外部記憶装置206は、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の静的に情報を記録できる装置である。表示デバイス208は、CRT(Cathode Ray Tube)やいわゆるフラットパネルディスプレイ等であって、画像を表示する。入力デバイス210は、キーボードやマウス、タッチパネル等の、ユーザが情報を入力するための一又は複数の機器である。I/O212は、コンピュータが外部の機器と情報をやり取りするための一又は複数のインタフェースである。I/O212には、有線接続するための各種ポート及び、無線接続のためのコントローラが含まれていてよい。
【0021】
コンピュータを機械学習装置100及び機械学習データ生成装置102として機能させるためのプログラムは、外部記憶装置206に記憶され、必要に応じてRAM204に読みだされてCPU202により実行される。すなわち、RAM204には、CPU202により実行されることにより、図1に機能ブロックとして示した各種機能を実現させるためのコードが記憶される。当該プログラムは、光ディスク、光磁気ディスク、フラッシュメモリ等のコンピュータが読み込むことができる情報記録媒体に記録されて提供されても、I/O212を介して外部のインターネット等の情報通信回線を介して提供されてもよい。
【0022】
機械学習データ生成装置102は、その機能的構成として、実時系列情報取得部106と、物理シミュレーション実行部108を含む仮想時系列情報生成部110と、パラメータ特定部112と、パラメータ記憶部114を含むパラメータ生成部116と、機械学習データ生成部118と、を含む。さらに、機械学習装置100は、機械学習データ生成装置102及び学習部120を含む。機械学習データ生成装置102は、後述する対象機器104に即して用意されるものである。また、機械学習装置100は、当該対象機器104が使用する機械学習モデルへの学習を行うものである。
【0023】
実時系列情報取得部106は、機械または電気回路である対象機器104の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する。ここで、本明細書に言う対象機器104は、対象物316に対し、何らかの物理的な作用を及ぼす作業を行う機器である。具体例として、対象機器104が対象物316を直線的に移動させるボールねじ機構300である場合について、図3を参照しながら説明する。ボールねじ機構300自体は既知のものであるため、説明は最小限のものにとどめる。
【0024】
図3に示すように、ボールねじ機構300は、センサ302、制御部304、サーボアンプ306、サーボモータ308、ボールねじ軸310、ボールねじナット312、テーブル314、等を有する。
【0025】
センサ302は、ボールねじ機構300の各部の動作状態を示す実時系列情報を取得する。具体的には、例えば、センサ302は、サーボモータ308のトルクを検出するトルクセンサである。また、センサ302は、ボールねじ軸310またはサーボモータ308の回転角を実時系列情報として取得する角度センサ、テーブル314の位置を実時系列情報として取得する位置センサ、制御部304がサーボモータ308に出力する電圧や電流を実時系列情報として取得する電圧センサまたは電流センサであってもよい。
【0026】
具体的には、例えば、センサ302は、図4(a)、図5(a)、図6(a)及び図7(a)に示すサーボモータ308の回転トルクの経時変化を実時系列情報として取得する。各図は、いずれも1秒間隔でテーブル314が一方の方向に2回移動した後、反対方向に2回移動する動作を繰り返し実行した場合における、サーボモータ308の回転トルクを表す図である。
【0027】
本例では、回転トルクが各ピークの後におよそ平坦に収束する場合、ボールねじ機構300は正常な状態である。すなわち、図4(a)は、対象機器104であるボールねじ機構300が正常な状態である場合における実時系列情報(以下、正常データとする)である。一方、回転トルクが各ピークの後に平坦に収束しない場合、ボールねじ機構300は異常な状態である。すなわち、図5(a)、図6(a)及び図7(a)は、対象機器104であるボールねじ機構300が異常な状態である場合における実時系列情報(以下、それぞれ異常データ1、2及び3とする)である。
【0028】
制御部304は、サーボモータ308へ電流や電圧等を出力するサーボアンプ306を制御するコンピュータである。制御部304は、センサ302の出力を取得し、サーボアンプ306への制御に対してフィードバック制御を行ってもよい。サーボモータ308は、制御部304の制御のもと、サーボアンプ306から取得した電流や電圧に基づいて、ボールねじ軸310を回転させる。ボールねじナット312は、ボールねじ軸310に勘合され、ボールねじ軸310が回転することによってボールねじ軸310の軸方向に移動する。テーブル314は、移動させる対象物316が配置され、ボールねじナット312に固定されることによって、当該対象物316をボールねじ軸310の軸方向に移動させる。
【0029】
実時系列情報取得部106は、ボールねじ機構300に含まれるセンサ302から、ボールねじ機構300の動作状態を表す実時系列情報を取得する。例えば、実時系列情報取得部106は、ボールねじ軸310またはサーボモータ308の回転角を実時系列情報として取得する。また、実時系列情報取得部106は、当該実時系列情報と関連付けて、ラベルを取得する。ラベルは、例えば、関連付けられた実時系列情報の表す動作状態が対象機器104の正常または異常な動作を表す場合に、正常または異常であることを表すラベルである。
【0030】
具体的には、例えば、実時系列情報取得部106は、図4(a)、図5(a)、図6(a)及び図7(a)に示す実時系列情報を対象機器104から取得する。また、実時系列情報取得部106は、実時系列情報と関連付けて、当該実時系列情報が取得されたときのボールねじ機構300の状態を表すラベルを取得する。上記例では、実時系列情報取得部106は、図4(a)に示す実時系列情報と関連付けて正常であることを表すラベルを取得する。また、実時系列情報取得部106は、図5(a)、図6(a)及び図7(a)に示す実時系列情報と関連付けて異常であることを表すラベルを取得する。
【0031】
なお、取得される実時系列情報と関連付けられるラベルは、当該実時系列情報を見たユーザの判断によって決定されてもよいし、所与の検査装置の検査結果に応じてユーザの判断によらずに決定されてもよい。また、ラベルは、関連付けられた実時系列情報の表す動作状態が段階的に評価される場合には、優、良、可または不可を表すラベルであってもよい。
【0032】
対象機器104は、対象機器104の動作状態を示す実時系列情報を取得する機器であれば、ボールねじ機構300に限られない。例えば、対象機器104は、部品やパーツのピックアップ、部品の取りつけ(例えば、ベアリングのハウジングへの嵌め込みや、ねじの締結など)、梱包(菓子などの食品の箱詰めなど)、各種加工(バリ取りや研磨などの金属加工、食品などの柔軟物の成型や切断、樹脂成型やレーザー加工など)、塗装及び洗浄といった様々な作業を反復・継続的に行う自動機械であってもよい。
【0033】
仮想時系列情報生成部110は、物理シミュレーション実行部108を含む。物理シミュレーション実行部108は、対象機器104の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する。仮想時系列情報生成部110は、物理シミュレーション実行部108により物理シミュレーションを実行し、内部状態に対応する仮想時系列情報を生成する。
【0034】
本実施形態に係る物理シミュレーション実行部108は、ある特定の物理的動作を行う対象機器104に具体的に即したものとして構築される。物理的動作の内容及び対象機器104の用途は、特段限定されるものではない。例えば、本実施形態に係る物理シミュレーション実行部108は、ボールねじ機構300のモデルに基づいて、物理シミュレーションを実行する。
【0035】
具体的には、物理シミュレーション実行部108の仮想空間上に、現実のボールねじ機構300の仮想モデルとして、センサ302、制御部304、サーボアンプ306、サーボモータ308、ボールねじ軸310、ボールねじナット312、テーブル314の各部で構築されるボールねじ機構300の仮想モデルが予め用意されている。ボールねじ機構300の仮想モデルには、モータ回転角度(θm)、時間tにおけるボールねじ軸310方向のボールねじナット312の位置(xt)、サーボモータ308の回転トルク(Tm)、回転系の慣性モーメント(Jr)、被駆動体、すなわち、ボールねじナット312、テーブル314及びテーブル314の上に配置された対象物316の質量の総和(Mt)、回転系の粘性摩擦係数(Dr)、直動案内の粘性摩擦係数(Ct)、ボールねじ軸310の直径(R)、駆動機構の軸方向剛性(Kt)などのパラメータが含まれる。
【0036】
物理シミュレーション実行部108は、上記パラメータを含む仮想モデルを仮想動作指令に従って動作させることにより、対象機器104が行う物理的動作を仮想空間上でシミュレートする。ボールねじ機構300の各部の仮想モデルの仮想空間上における挙動は、当然に、実際のボールねじ機構300を動作させた際の状況を再現したものとする。
【0037】
物理シミュレーション実行部108は、ある時点における上記パラメータを用いて、単位時間後の各パラメータを出力するよう構築されたものである。具体的には、上記内部状態を表すパラメータには時間に応じて変化するパラメータが含まれる。例えば、サーボモータ308がボールねじ軸310にトルクを与えることにより、ボールねじ軸310は回転し、ボールねじ軸310方向のボールねじナット312の位置は変化する。
【0038】
物理シミュレーション実行部108は、ある時点における上記パラメータを用いて、単位時間後の各パラメータを出力する。そして、物理シミュレーション実行部108は、単位時間後の各パラメータを用いて、さらに単位時間後の各パラメータを出力する。このように、物理シミュレーション実行部108は、単位時間後の各パラメータを、次に演算に用いることで順次変化するパラメータを用いて演算を行う。そして、仮想時系列情報生成部110は、物理シミュレーション実行部108が出力した単位時間ごとの各パラメータを、時間軸で統合することにより、対象機器104の内部状態に対応する仮想時系列情報を生成する。
【0039】
仮想時系列情報生成部110が生成した仮想時系列情報の一例について説明する。ここでは、上記パラメータとして所定の初期値が設定されており、ボールねじ機構300の仮想モデルがいずれも1秒間隔でテーブル314が一方の方向に2回移動させた後、反対方向に2回移動させる仮想動作指令に従って動作した場合について説明する。
【0040】
図4(b)、図5(b)、図6(b)及び図7(b)は、初期パラメータとして与えられた回転系の粘性摩擦係数Drと直動案内の粘性摩擦係数Ctが異なる条件のもと、生成されたサーボモータ308のトルクの経時変化を表す仮想時系列情報である。
【0041】
図4(b)は、回転系の粘性摩擦係数Drが0.003であって、直動案内の粘性摩擦係数Ctが50である場合に生成されたサーボモータ308のトルクの仮想時系列情報である。図5(b)は、回転系の粘性摩擦係数Drが0.0035であって、直動案内の粘性摩擦係数Ctが1000000である場合に生成されたサーボモータ308のトルクの仮想時系列情報である。図6(b)は、回転系の粘性摩擦係数Drが0.3であって、直動案内の粘性摩擦係数Ctが50である場合に生成されたサーボモータ308のトルクの仮想時系列情報である。図7(b)は、回転系の粘性摩擦係数Drが0.1であって、直動案内の粘性摩擦係数Ctが1000である場合に生成されたサーボモータ308のトルクの仮想時系列情報である。
【0042】
なお、物理シミュレーションに使用される物理演算エンジンは、想定している物理的作業に応じたものを用いればよい。本例のように、ボールねじ機構300の動作を想定している場合には、衝突判定及びダイナミックシミュレーションを実行可能な物理演算エンジンを選択もしくは構築すればよい。物理的作業が異なれば、当然に、流体シミュレーションや破壊シミュレーション、その他あらゆる物理現象をシミュレートする物理演算エンジンを適宜選択するか構築することになる。例えば、対象機器104が電子回路である場合、物理シミュレーション実行部108は、電子回路に入力された指令に基づいて、電子回路から逐次変化しながら出力される電圧または電流で表される電気信号を、仮想時系列情報として生成してもよい。
【0043】
パラメータ特定部112は、複数の仮想時系列情報と、動作状態を示す実時系列情報とに基づいて、複数のパラメータから1以上のパラメータを特定し、ラベルと関連付ける。具体的には、例えば、まず仮想時系列情報生成部110は、各パラメータが物理的にとりうる値の範囲内で不作為に作成し、作成されたパラメータに基づいて仮想時系列情報を生成する。パラメータ特定部112は、仮想時系列情報生成部110が生成した複数の仮想時系列情報の中から、実時系列情報取得部106が対象機器104から取得した実時系列情報と、最も誤差の小さい仮想時系列情報を特定する。これにより、パラメータ特定部112は、特定された仮想時系列情報と対応するパラメータを特定する。また、パラメータ特定部112は、特定された仮想時系列情報に対して、対象機器104から取得した実時系列情報と関連付けられたラベルと同一のラベルを関連付ける。
【0044】
例えば、パラメータ特定部112は、図4(a)に示すサーボモータ308のトルクの実時系列情報と、最も誤差の小さい仮想時系列情報として、図4(b)に示すサーボモータ308のトルクの仮想時系列情報を特定する。そして、パラメータ特定部112は、図4(a)に示すサーボモータ308のトルクの実時系列情報に対して、図4(b)に示すサーボモータ308のトルクの仮想時系列情報と関連付けられた「正常」というラベルを関連付ける。
【0045】
同様に、パラメータ特定部112は、図5(a)、図6(a)及び図7(a)に示す各実時系列情報と、最も誤差の小さい仮想時系列情報として、順に図5(b)、図6(b)及び図7(b)に示す仮想時系列情報を特定する。また、パラメータ特定部112は、図5(b)、図6(b)及び図7(b)に示す各仮想時系列情報に対して、図5(a)、図6(a)及び図7(a)と関連付けられた「異常」というラベルを関連付ける。
【0046】
なお、複数のパラメータから1個のパラメータが特定できない場合には、パラメータ特定部112は、2個以上のパラメータを特定してもよい。例えば、仮想時系列情報生成部110が生成した複数の仮想時系列情報の中に、実時系列情報との誤差が同程度に小さい仮想時系列情報が複数含まれる場合がある。この場合、パラメータ特定部112は、当該複数の仮想時系列情報と対応する各パラメータを特定する。また、パラメータ特定部112は、当該複数の仮想時系列情報に対して、対象機器104から取得した実時系列情報と関連付けられたラベルと同一のラベルを関連付ける。
【0047】
パラメータ記憶部114は、特定されたパラメータと、該パラメータと関連付けられたラベルと、を関連付けて記憶する。具体的には、パラメータ記憶部114は、実時系列情報取得部106が取得した実時系列情報と、各実時系列情報と対応するパラメータとして特定されたパラメータと、各実時系列情報と関連付けられたラベルと、を関連付けて記憶する。
【0048】
例えば、パラメータ記憶部114は、図8に示すように、図4(a)、図5(a)、図6(a)及び図7(a)に示す実時系列情報と、実時系列情報と最も誤差の小さい仮想時系列情報として特定された各仮想時系列情報を生成する際に用いられた回転系の粘性摩擦係数Dr及び直動案内の粘性摩擦係数Ctと、各実時系列情報と関連付けられた「正常」または「異常」というラベルと、を記憶する。なお、図8の実時系列情報フィールドの1から4という値は、順に図4(a)、図5(a)、図6(a)及び図7(a)に示す実時系列情報と対応する。
【0049】
また、パラメータ記憶部114は、ラベルの種類ごとに取りうるパラメータが該ラベルと関連付けて記憶される。具体的には、図9は、パラメータ記憶部114に記憶された回転系の粘性摩擦係数Drと、直動案内の粘性摩擦係数Ctと、ラベルと、の関係を示す図である。なお、図9に示す各実時系列情報は、全て実時系列情報取得部106が取得した実時系列情報であって、仮想時系列情報生成部110が生成した仮想時系列情報は含まれていない。図9に示すように、縦軸を回転系の粘性摩擦係数Drとし、横軸を直動案内の粘性摩擦係数Ctとする2次元平面において、異なるラベルが関連付けられた実時系列情報は、所定の領域に偏って分布している。以下、図9に示すような、各ラベルが関連付けられたパラメータの分布を表す図をパラメータ分布図とする。
【0050】
すなわち、「正常」ラベルと関連付けられた実時系列情報(正常データ)は、図9の楕円状の領域の内側に分布し、「異常」ラベルと関連付けられた実時系列情報(異常データ1、2及び3)は、図9の楕円状の領域の外側に分布している。当該分布は、ボールねじ機構300が正常に動作している状態であるか、異常な状態であるかに応じて、ボールねじ機構300の回転系の粘性摩擦係数Drと直動案内の粘性摩擦係数Ctとの関係が異なっていることに起因する。
【0051】
従って、正常ラベルと関連付けられ得るパラメータは、図9の楕円状の領域の内側に分布するパラメータであって、異常ラベルと関連付けられ得るパラメータは、図9の楕円状の領域の外側に分布するパラメータである。このようにして、パラメータ記憶部114は、ラベルの種類ごとに取りうるパラメータが該ラベルと関連付けて記憶される。
【0052】
なお、図9において、異なるラベルと関連付けられた実時系列情報の境界は楕円で示されているが、当該境界は任意の方法によって設定されてよい。例えば、最も近接する正常データとの距離の2乗と、最も近接する異常データとの距離の2乗と、の和が最も小さくなる位置が境界となるように設定されてもよい。また、所定距離の範囲内に存在する正常データまたは異常データの数の多寡に応じて、境界の位置が設定されてもよい。また、境界は、明確に決定されなくてもよい。
【0053】
パラメータ生成部116は、パラメータ特定部112によって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応するラベルを生成する。例えば、パラメータ生成部116は、図8及び図9に示すような、パラメータ記憶部114に記憶されたパラメータに基づいて、新たなパラメータを生成する。
【0054】
具体的には、パラメータ生成部116は、パラメータ分布図において、データが存在しない位置に対応する回転系の粘性摩擦係数Drと直動案内の粘性摩擦係数Ctとを新たなパラメータとして生成する。当該パラメータは、現実のボールねじ機構300では再現されていない新たな内部状態を表すパラメータである。
【0055】
また、パラメータ生成部116は、新たなパラメータと、パラメータ記憶部114に記憶された各ラベルと対応するパラメータ群と、の関係によって、当該新たなパラメータと対応するラベルを決定する。具体的には、例えば、図9の楕円の内側に存在するパラメータ群は、「正常」ラベルと対応し、図9の楕円の外側に存在するパラメータ群は、「異常」ラベルと対応する。従って、パラメータ生成部116は、生成された新たなパラメータが図9の楕円の内側に存在する場合、新たなパラメータと対応するラベルは「正常」であると決定する。また、パラメータ生成部116は、生成された新たなパラメータが図9の楕円の外側に存在する場合、新たなパラメータと対応するラベルは「異常」であると決定する。
【0056】
なお、取得される実時系列情報によっては、パラメータ記憶部114に記憶された各ラベルと対応する各パラメータ群の分布する領域が相互に重複する場合もある。すなわち、図9に示す境界線が明確に決定できない場合がある。この場合、パラメータ生成部116は、新たなパラメータと、パラメータ記憶部114に記憶された各ラベルと対応するパラメータ群と、の関係を評価し、評価結果に基づいて新たなパラメータと対応するラベルを決定してもよい。例えば、パラメータ生成部116は、ラベルごとに、パラメータ分布図における位置を変数とする確率分布関数を算出してもよい。そして、パラメータ生成部116は、確率分布関数に基づいて、新たに生成されたパラメータと関連付けられる確率が最も高いラベルを、新たなパラメータと対応するラベルとして決定してもよい。これにより、図9に示す境界線が明確に決定できない場合であっても、新たなパラメータと対応するラベルとして適切なラベルを決定できる。
【0057】
また、パラメータ生成部116は、新たなパラメータを中心とする所定の距離内に存在するパラメータの数を、ラベルごとに評価してもよい。図9に示すパラメータ分布図の例では、パラメータ生成部116は、新たなパラメータを中心とする所定距離内に存在する正常ラベル及び異常ラベルと関連付けられたパラメータの個数を評価する。そして、当該個数の多いパラメータと関連付けられたラベルを、新たなパラメータと対応するラベルとして決定してもよい。
【0058】
また、パラメータ生成部116は、異常であることを表すラベルと対応する新たなパラメータを選択的に生成してもよい。具体的には、例えば、パラメータ生成部116は、新たなパラメータの図9に示すパラメータ分布図上の位置が楕円の外側に位置するように、新たなパラメータを選択的に生成してもよい。パラメータ分布図において、楕円の外側に位置するパラメータは、「異常」を表すラベルと関連付けられる。そのため、生成された新たなパラメータは、異常であることを表すラベルと関連付けられる。通常、対象機器が異常な動作を行う状態は再現性がないため、正常データよりも異常データを収集する方が困難である場合が多い。パラメータ生成部116が異常であることを表すラベルと対応する新たなパラメータを選択的に生成することにより、効率的に異常データを収集することができる。
【0059】
また、パラメータ生成部116は、パラメータ分布図上で、所定の範囲内に所定の数のパラメータが存在する位置によって表されるパラメータを新たなパラメータとして生成してもよい。具体的には、図9に示すように、新たなパラメータは、ラベルが関連付けられたパラメータの分布を表すパラメータ分布図上の位置で表される。パラメータ生成部116は、新たに生成するパラメータの位置として、周囲に所定の個数のパラメータが存在する位置を決定する。例えば、新たなパラメータの位置を中心として、回転系の粘性摩擦係数(Dr)が±0.1の範囲であって、直動案内の粘性摩擦係数(Ct)が±1000の範囲に、パラメータが10個以上存在するように、パラメータ生成部は、新たに生成するパラメータの位置を決定する。これにより、実時系列情報に基づいて特定されたパラメータの位置から極端に離れた位置に新たなパラメータが生成されることを防止できる。従って、より現実に即した新たなパラメータが生成される。なお、上記範囲及び個数は一例である。新たなパラメータの位置を中心として所定の距離の範囲内に所定の個数のパラメータが存在するように、新たなパラメータが生成されてもよい。
【0060】
機械学習データ生成部118は、新たな内部状態に対応する仮想時系列情報に新たなパラメータと対応するラベルを関連付けて、新たな機械学習データを生成する。具体的には、機械学習データ生成部118は、パラメータ生成部116が生成した新たなパラメータに基づいて仮想時系列情報生成部110に生成された仮想時系列情報と、パラメータ生成部116によって決定された当該パラメータと対応するラベルと、を関連付けて、新たな機械学習データを生成する。
【0061】
なお、機械学習データ生成部118は、GAN1000を含んでいてもよい。GAN1000(Generative Adversarial Networks)は、実時系列情報と区別のつきがたい仮想時系列情報を生成する。ここで、図10を参照して、GAN1000について簡単に説明する。GAN1000は、既知のものであるため、説明は最小限のものにとどめる。
【0062】
GAN1000は、図10に示した構成を有し、ジェネレータ1002及びディスクリミネータ1004と称される2つのニューラルネットワークを含む。ジェネレータ1002は、仮想時系列情報と所定のノイズの入力を受け付け、ノイズを含む仮想時系列情報を出力する。一方、ディスクリミネータ1004には、ジェネレータ1002により生成されたノイズを含む仮想時系列情報と、対象機器104から取得された実時系列情報の両方が入力される。この時、ディスクリミネータ1004には、入力されたデータが仮想時系列情報と実時系列情報のいずれであるかは知らされない。
【0063】
ディスクリミネータ1004の出力は、入力データが仮想時系列情報と実時系列情報のいずれであるかを判別するものである。そして、GAN1000は、あらかじめ用意したいくつかの仮想時系列情報と実時系列情報について、ディスクリミネータ1004ではこの両者を正しく判別するように、また、ジェネレータ1002では、ディスクリミネータ1004においてこの両者が判別できないように繰り返し強化学習を行う。
【0064】
この結果、最終的にはディスクリミネータ1004においてこの両者が判別できない(例えば、仮想時系列情報と実時系列情報を同数用意した場合には、正答率が50%となるなど)状態となる。当該状態においては、ジェネレータ1002は、仮想時系列情報に基づいて、実時系列情報と区別のつかない、あたかも現実の実時系列情報であるかのごとき仮想時系列情報を出力する。したがって、機械学習データ生成部118は、上記のような学習が実行済であるジェネレータ1002及びディスクリミネータ1004を用いて生成されたノイズを含む仮想時系列情報に基づいて、機械学習データを生成してもよい。
【0065】
具体的には、例えば、図11(a)、図12(a)、図13(a)及び図14(a)に示す仮想時系列情報が機械学習データ生成部118に含まれるGAN1000に入力された場合、図11(b)、図12(b)、図13(b)及び図14(b)に示すノイズを含む仮想時系列情報が出力される。
【0066】
ここで、図11(a)、図12(a)、図13(a)及び図14(a)は、それぞれ図4(b)、図5(b)、図6(b)及び図7(b)に示す仮想時系列情報である。仮想時系列情報生成部110が生成した仮想時系列情報は、ノイズを含まないため、現実の対象機器104からは取得することは困難な形状である。しかしながら、GAN1000が生成したノイズを含む仮想時系列情報は、一見して実時系列情報との判別が困難である。すなわち、GAN1000によれば、より現実に即した仮想時系列情報を生成することができる。
【0067】
上記のように、機械学習データ生成装置102により、多数の互いに異なる機械学習データが容易に、かつ、実用的な時間及びコストの範囲で得られる。対象装置に生じる故障が発生頻度の少ない態様であっても、当該故障の態様を反映したパラメータを用いて物理シミュレーションを実行することにより、当該態様の故障が生じた対象装置の内部状態を表す時系列情報を学習データとして用いることができる。
【0068】
機械学習装置100は、上述の機械学習データ生成装置102及び学習部120を含む。学習部120は、機械学習データに基づいて、仮想時系列情報を入力とし、ラベルを出力とするニューラルネットワークである、ニューラルネットワークモデルを学習させる。具体的には、ニューラルネットワークには、機械学習データ生成部118が生成したn個の機械学習データが入力される。ここで、nは機械学習に十分な数であって適宜設定される。また、iを1からnの整数とし、機械学習データiは、仮想時系列情報i及びラベルiを含むものとする。ニューラルネットワークは、仮想時系列情報iが入力されて、スコアを算出する。
【0069】
ここで、スコアは、所定のラベル(上記例では「正常」または「異常」ラベル)と一致する度合いを表す値であって、例えば、CNNの出力値である。そして、仮想時系列情報iと関連付けて学習部120に入力されたラベルiと、スコアとの比較結果(以下、誤差)が特定される。誤差は、0以上1以下の値をとるデータであってもよい。誤差は、例えば、算出されたスコアとラベルiが一致する場合に値として1をとり、一致しない場合に値として0をとるデータであってもよい。
【0070】
さらに、当該誤差に基づいて、例えば誤差逆伝搬法により、CNNの各ノード間の重み係数が更新される。ニューラルネットワークは、iを1からnまで変化させて、機械学習データが入力される毎に重み係数の更新を繰り返し実行する。これにより、学習部120の学習が実行される。
【0071】
図15は、本実施形態に係る機械学習装置100及び機械学習データ生成装置102による、機械学習データ生成方法及び機械学習方法のフロー図である。同図に示したフローのうち、S1502からS1514が機械学習データ生成方法に該当し、S1502からS1516が機械学習方法に該当する。
【0072】
まず、実時系列情報取得部106は、機械または電気回路である対象機器104の動作状態を示す実時系列情報を、所定のラベルと関連付けて取得する(S1502)。次に、物理シミュレーション実行部108は、対象機器104の内部状態を表す複数のパラメータのそれぞれに基づいて、単位時間後の仮想的な状態を順次算出することにより、複数の仮想時系列情報を生成する物理シミュレーションを実行する。これにより、仮想時系列情報生成部110は、内部状態に対応する仮想時系列情報を生成する(S1504)。
【0073】
次に、パラメータ特定部112は、S1504で生成された複数の仮想時系列情報と、動作状態を示す実時系列情報とに基づいて、複数のパラメータから1以上のパラメータを特定し、ラベルと関連付ける(S1506)。特定されたパラメータと該パラメータと関連付けられたラベルとは、パラメータ記憶部114に記憶される。また、この際、パラメータ分布図上の各ラベルの境界や確率分布関数が算出されることにより、ラベルの種類ごとに取りうるパラメータが、該ラベルと関連付けてパラメータ記憶部114に記憶されてもよい。
【0074】
次に、パラメータ生成部116は、パラメータ特定部112によって特定されるパラメータに基づいて、新たなパラメータ及び該新たなパラメータと対応するラベルを生成する(S1508)。そして、仮想時系列情報生成部110は、S1508で生成された新たなパラメータを用いて物理シミュレーションを実行し、新たな内部状態に対応する仮想時系列情報を生成する(S1510)。機械学習データ生成部118は、S1510で生成された新たな内部状態に対応する仮想時系列情報にラベルを関連付けて、新たな機械学習データを生成する(S1512)。生成された機械学習データは、逐次蓄積される。
【0075】
S1514において、蓄積された機械学習データの数が十分であるか否かを判断される。機械学習データの数が十分でなければ(S1514:N)、S1508へと戻り、繰り返し機械学習データの生成を行う。レコード数が十分であれば(S1514:Y)、S1518へと進む。必要な機械学習データの数は、あらかじめ目標数を定めておいてよい。または、S1516での機械学習の結果を評価し、学習が十分でない場合には、S1508~S1514を改めて実行し、機械学習データを追加で生成するようにしてもよい。機械学習の結果の評価は、学習部120におけるニューラルネットワークモデルの内部状態の収束を評価することにより行ってもよいし、ニューラルネットワークモデルにテストデータを入力し、得られた出力の正解率により行ってもよい。
【0076】
次に、学習部120は、生成された機械学習データに基づいて、ニューラルネットワークモデルを、達成状況に応じて学習を実行する。このようにして、本実施形態では、学習済みのニューラルネットワークモデルが得られる。
【0077】
本例に示すボールねじ機構300の例でも明らかなように、学習部120のニューラルネットワークモデルを十分に学習させるための、十分な数の適切な機械学習データを現実に用意することは容易ではない。ボールねじ機構300は、複数の部品を組み合わせて構成されており、故障を引き起こす部品が異なる場合や、故障を引き起こす部品が同一であっても故障の原因が異なる場合には、種々の異なる故障態様が現れるためである。当該種々の異なる故障態様で動作するボールねじ機構300から機械学習データを取得するためには、当該種々の異なる故障態様を現実のボールねじ機構300を用いて実現する必要があるが、あまりに多大な時間とコストを要するため、現実的ではない。
【0078】
しかしながら、本実施形態によれば、故障態様の異なる対象機器104を現実に準備を要することなく機械学習がなされる。従って、本実施形態に係る機械学習データ生成装置102は、対象機器104による物理的動作を仮想的に実行することで、ニューラルネットワークモデルに対する十分な数の機械学習データを現実的な時間及びコストで生成できる。また、本実施形態に係る機械学習装置100は、生成された機械学習データによりニューラルネットワークモデルを学習させることができる。
【0079】
また、機械学習データの特徴を捉えて潜在変数にエンコードし、潜在変数から再び機械学習データに似たデータを生成するVAEという技術がある。VAEによれば、対象機器104が実際に物理的動作を行わずに機械学習データを生成することができる。例えば、VAEは、機械に備えられたセンサ302の出力等の機械学習データを特徴ベクトル化し、これらを補間した新たな教師データを生成する。しかしながら、VAEは、機械の表面的な状態を表すデータを補間するに過ぎないため、機械の内部状態がわずかに異なるだけであるが機械から出力されるデータが大きく異なる場合には、適切なラベルが付された機械学習データを生成することができない。
【0080】
しかしながら、本実施形態によれば、物理シミュレーション実行部108が対象機器104の内部状態を表す複数のパラメータに基づいて物理シミュレーションを実行するため、対象機器104が行う動作を反映した機械学習を行うことができる。また、パラメータは対象機器104の内部状態を表すため、当該パラメータがとり得る値の範囲は物理的に定まる。従って、現実的にあり得ないパラメータから生成された仮想時系列情報に基づいて学習が実行されることを回避できる。
【符号の説明】
【0081】
100 機械学習装置、102 機械学習データ生成装置、104 対象機器、106 実時系列情報取得部、108 物理シミュレーション実行部、110 仮想時系列情報生成部、112 パラメータ特定部、114 パラメータ記憶部、116 パラメータ生成部、118 機械学習データ生成部、120 学習部、202 CPU、204 RAM、206 外部記憶装置、208 表示デバイス、210 入力デバイス、212 I/O、214 データバス、300 ボールねじ機構、302 センサ、304 制御部、306 サーボアンプ、308 サーボモータ、310 ボールねじ軸、312 ボールねじナット、314 テーブル、316 対象物、1000 GAN、1002 ジェネレータ、1004 ディスクリミネータ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15