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

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

2025-99162シミュレーション装置、プログラム、およびシミュレーション方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025099162
(43)【公開日】2025-07-03
(54)【発明の名称】シミュレーション装置、プログラム、およびシミュレーション方法
(51)【国際特許分類】
   G06N 20/00 20190101AFI20250626BHJP
   G06N 3/088 20230101ALI20250626BHJP
【FI】
G06N20/00 160
G06N3/088
【審査請求】未請求
【請求項の数】17
【出願形態】OL
(21)【出願番号】P 2023215600
(22)【出願日】2023-12-21
(71)【出願人】
【識別番号】000116024
【氏名又は名称】ローム株式会社
(74)【代理人】
【識別番号】110001933
【氏名又は名称】弁理士法人 佐野特許事務所
(72)【発明者】
【氏名】浜地 健次
(57)【要約】
【課題】教師なしの機械学習による効果を効果的に確認することができる。
【解決手段】シミュレーション装置(1)において、モデル設定部(6)は、読み込まれたデータに基づき、機械学習モデル(40)に逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行い、モデル演算部(5)は、前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う。
【選択図】図2
【特許請求の範囲】
【請求項1】
学習および推論を行うように構成される機械学習モデルを記憶されたモデル記憶部と、
前記機械学習モデルを用いて演算処理を行うように構成されるモデル演算部と、
操作入力部と、
データを読み込むように構成される読込み部と、
前記操作入力部による入力に基づき、前記機械学習モデルに関する設定を行うように構成されるモデル設定部と、
を備え、
前記モデル設定部は、読み込まれた前記データに基づき、前記機械学習モデルに逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行い、
前記モデル演算部は、前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う、シミュレーション装置。
【請求項2】
前記モデル設定部は、前記チャンクに複数種類の信号の時系列データを含めるように設定が可能である、請求項1に記載のシミュレーション装置。
【請求項3】
前記モデル設定部は、読み込まれた前記データに基づき、先頭列としての列番号、行数、および列数を設定することで前記チャンクの設定が可能である、請求項1に記載のシミュレーション装置。
【請求項4】
前記機械学習モデルは、読み込まれた前記データに対して下記式により正規化処理を行うように構成される第1前処理部を有し、
前記モデル設定部は、下記式のパラメータを設定可能である、請求項1に記載のシミュレーション装置。
【数6】

ただし、xcolumn iは、第i列の前記データ、diおよびsiは、第i列の前記データに対するパラメータである。
【請求項5】
前記機械学習モデルは、読み込まれた前記データに対してエンベロープ処理を行うように構成される第2前処理部を有し、
前記モデル設定部は、読み込まれた前記データの列ごとに前記エンベロープ処理の有無を設定可能である、請求項1に記載のシミュレーション装置。
【請求項6】
前記機械学習モデルは、前記チャンクごとに窓関数処理および周波数解析処理を行うように構成される第3前処理部を有し、
前記モデル設定部は、前記窓関数処理および前記周波数解析処理のそれぞれの有無を設定可能である、請求項1に記載のシミュレーション装置。
【請求項7】
前記モデル設定部は、前記機械学習モデルによる学習を開始させる前記チャンクである学習開始チャンクおよび前記機械学習モデルによる推論を開始させる前記チャンクである推論開始チャンクを設定可能である、請求項1に記載のシミュレーション装置。
【請求項8】
前記学習開始チャンクおよび前記推論開始チャンクの設定は、チャンクに含まれるデータ番号の設定により行われ、
前記データ番号は、前記チャンクの列数が複数の場合、小さい行から順に同じ行の異なる列のデータに列番号が小さい順に番号を順に割り当てた場合の番号である、請求項7に記載のシミュレーション装置。
【請求項9】
前記モデル設定部は、前記機械学習モデルに含まれるニューラルネットワークに関する項目を設定可能である、請求項1に記載のシミュレーション装置。
【請求項10】
前記項目には、学習結果を忘れる程度を表すパラメータである忘却率が含まれる、請求項9に記載のシミュレーション装置。
【請求項11】
前記モデル設定部は、全ての前記チャンクを用いた学習を繰り返し行う回数を設定可能である、請求項1に記載のシミュレーション装置。
【請求項12】
前記モデル設定部は、全ての前記チャンクを用いた学習を繰り返し行う回数を設定可能であり、
全ての前記チャンクに対する前記損失関数の値を、最後の前記チャンクから先頭の前記チャンクまでの折り返しラインを含めて、設定された前記回数だけ繰り返して表示する第1表示制御部を備える、請求項1に記載のシミュレーション装置。
【請求項13】
前記機械学習モデルによる学習中および学習後の推論結果に基づく損失関数の値を、全ての前記チャンクに含まれるデータの通し番号に対して表示する制御を行うように構成される第2表示制御部を備える、請求項1に記載のシミュレーション装置。
【請求項14】
前記モデル設定部は、前記第2表示制御部による表示において表示される前記損失関数の値の閾値を設定可能である、請求項13に記載のシミュレーション装置。
【請求項15】
1つの前記チャンクに含まれるデータの通し番号に対して、前記データの値と前記機械学習モデルによる推論結果とを表示する制御を行うように構成される第3表示制御部を備え、
前記モデル設定部は、前記第3表示制御部に再表示させる前記チャンクの設定が可能である、請求項1に記載のシミュレーション装置。
【請求項16】
コンピュータを請求項1から請求項15のいずれか1項に記載のシミュレーション装置として機能させるためのプログラム。
【請求項17】
データを読み込む第1ステップと、
読み込まれた前記データに基づき、機械学習モデルに逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行う第2ステップと、
前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う第3ステップと、を備える、シミュレーション方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、シミュレーション装置に関する。
【背景技術】
【0002】
従来、産機分野の工場設備保全に関して、機械システムの状態管理保全(Condition Based Maintenance)に対してAI(人工知能)の適用が進んでいる(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2019/035279号
【0004】
[概要]
上記状態管理保全に対してAIを導入する場合、実機を用いずにAIの効果を確認することができれば有用である。機械学習としては、教師データを用いない、いわゆる教師なし学習が知られている。
【0005】
上記状況に鑑み、本開示は、教師なしの機械学習による効果を効果的に確認することができるシミュレーション装置を提供することを目的とする。
【0006】
本開示の一態様に係るシミュレーション装置は、
学習および推論を行うように構成される機械学習モデルを記憶されたモデル記憶部と、
前記機械学習モデルを用いて演算処理を行うように構成されるモデル演算部と、
操作入力部と、
データを読み込むように構成される読込み部と、
前記操作入力部による入力に基づき、前記機械学習モデルに関する設定を行うように構成されるモデル設定部と、
を備え、
前記モデル設定部は、読み込まれた前記データに基づき、前記機械学習モデルに逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行い、
前記モデル演算部は、前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う構成としている。
【0007】
また、本開示の一態様に係るシミュレーション方法は、
データを読み込む第1ステップと、
読み込まれた前記データに基づき、機械学習モデルに逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行う第2ステップと、
前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う第3ステップと、を備える。
【図面の簡単な説明】
【0008】
図1図1は、本開示の例示的な実施形態に係るコンピュータの構成を示す図である
図2図2は、本開示の例示的な実施形態に係るシミュレーション装置の構成を示す図である。
図3図3は、機械学習モデルの構成例を示す図である。
図4図4は、3層ニューラルネットワークを示す図である。
図5図5は、第1設定画面を示す図である。
図6図6は、ダイアログボックスを示す図である。
図7図7は、データファイル(サンプルのファイル)におけるデータの一例を示す図である。
図8図8は、第1設定画面を示す図である。
図9図9は、第1設定画面における第1列についての前処理設定および処理結果の一例を示す図である。
図10図10は、第1設定画面における第2列についての前処理設定および処理結果の一例を示す図である。
図11図11は、第1設定画面における第3列についての前処理設定および処理結果の一例を示す図である。
図12図12は、第1設定画面における第4列についての前処理設定および処理結果の一例を示す図である。
図13図13は、第2設定画面を示す図である。
図14図14は、第2設定画面を示す図である。
図15図15は、第2設定画面を示す図である。
図16図16は、第3設定画面を示す図である。
図17図17は、第3設定画面における前処理結果の例を示す図である。
図18図18は、第3設定画面における学習・推論設定部を示す図である。
図19図19は、学習・推論の設定に関する例を示す図である。
図20図20は、第4設定画面を示す図である。
図21図21は、第4設定画面を示す図である。
図22図22は、繰り返しの学習の例を示す図である。
図23図23は、グラフ画面を示す図である。
【0009】
[詳細な説明]
以下、本開示の例示的な実施形態について、図面を参照して説明する。
【0010】
<コンピュータの構成>
図1は、本開示の例示的な実施形態に係るコンピュータ100の構成を示す図である。コンピュータ100は、後述する本開示に係るシミュレーション装置として機能する。コンピュータ100は、例えばPC(パソコン)である。コンピュータ100がPCである場合、デスクトップ型であるかノート型であるかなどは問わない。
【0011】
コンピュータ100は、CPU(Central Processing Unit)100Aと、メモリ100Bと、補助記憶装置100Cと、操作入力部100Dと、表示部100Eと、を備える。
【0012】
CPU100Aは、制御装置と演算装置(いずれも図示せず)を有する。制御装置は、プログラムの指令を解釈し、コンピュータ100の各部を制御する。演算装置は、演算処理を行う装置である。
【0013】
メモリ100Bは、プログラムあるいはデータを一時的に格納する半導体記憶装置である。メモリ100Bに記憶された情報は、コンピュータ100の電源がオフとされると消去される。
【0014】
補助記憶装置100Cは、HDD(Hard Disk Drive)あるいはSSD(Solid State Drive)などにより構成され、プログラムあるいはデータが格納される。補助記憶装置100Cに格納されたプログラムは、メモリ100Bに読み込まれる。CPU100Aは、メモリ100Bに読み込まれたプログラムを実行する。
【0015】
操作入力部100Dは、キーボードあるいはマウスなどにより構成され、コンピュータ100に操作入力を与える装置である。操作入力部100Dから入力された情報は、メモリ100Bに送られる。
【0016】
表示部100Eは、例えば液晶ディスプレイなどにより構成され、メモリ100Bから取得された情報を画像に変換して出力する。
【0017】
<シミュレーション装置の構成>
図2は、本開示の例示的な実施形態に係るシミュレーション装置1の構成を示す図である。シミュレーション装置1は、機械学習(AI)による学習・推論をシミュレーションすることが可能な装置である。
【0018】
シミュレーション装置1は、ファイル記憶部2と、ファイル読込み部3と、モデル記憶部4と、モデル演算部5と、モデル設定部6と、表示制御部7と、操作入力部8と、表示部9と、を備える。コンピュータ100の補助記憶装置100Cに格納されたプログラムP(図1)は、コンピュータ100をシミュレーション装置1として機能させるためのプログラムである。
【0019】
ファイル記憶部2は、データファイル21を記憶し、コンピュータ100の補助記憶装置100Cにより構成される。データファイル21は、一例としてExcel(登録商標)ファイルとして構成される。なお、ファイルは、例えばコンピュータ100におけるUSBインタフェースまたはネットワークインタフェース(いずれも図1で図示せず)を介してコンピュータ100の外部から補助記憶装置100Cに格納してもよい。
【0020】
データファイル21には、データ210が含まれる。データ210は、機械学習モデル40(後述)に入力することで、いわゆる教師なし学習および推論を行うためのデータである。後述するように、データ210のうち学習に用いるデータと推論に用いるデータを指定することが可能である。
【0021】
ファイル読込み部3は、ファイル記憶部2からデータファイル21を読み込む。
【0022】
モデル記憶部4は、機械学習モデル40を記憶しており、コンピュータ100の補助記憶装置100Cにより構成される。機械学習モデル40は、例えばMATLAB/Simulink(登録商標)によってプログラムPとして構成される。機械学習モデル40の具体例については後述する。
【0023】
ファイル読込み部3、モデル演算部5、モデル設定部6、および表示制御部7の各機能は、プログラムPをCPU100Aが実行することにより実現される。なお、操作入力部8と表示部9は、それぞれコンピュータ100における操作入力部100Dと表示部100Eに相当する。
【0024】
モデル演算部5は、モデル記憶部4に記憶された機械学習モデル40の演算処理を行うことでシミュレーションを実行する。モデル設定部6は、モデル記憶部4に記憶された機械学習モデル40に関する設定(学習・推論に使用するデータの設定、パラメータの設定、関数の種類の設定など)を操作入力部8からの入力に応じて行う。モデル演算部5によるシミュレーションは、モデル設定部6による設定内容に従って行われる。表示制御部7は、後述する設定画面などの各種画面を操作入力部8からの入力に応じて表示部9に表示させる制御を行う。
【0025】
例えば、産機分野の工場設備保全において、機械システムの状態管理保全に対して機械学習の適用が進んでいる。しかしながら、いざ目星を付けたAIアルゴリズムをユーザが試そうとしても、AIベンダー等のAIの開発元にデータを提供する必要がある。多くの場合そのデータは製品および製造工程に関わる機密情報を含んでいるため開示が難しい。よって、従来は、AIベンダー等の各種事例を参考にしたり、一般的なAI性能のベンチマークとなっているオープン問題(例えば、ボストンの住宅価格予測、ディーゼル燃料の物性推定など)を解かせて、ユーザの問題および課題解決に適するかを判断するしかなかった。当然、そういったオープン問題はユーザの問題および課題と一致していないため、選定したAIアルゴリズムをユーザのデータに適用したときに、不適切あるいはあまり適してはいなかった等が後から明らかになることがよく起こる。これにより、AIアルゴリズムから選び直すことになれば、ユーザ、AIベンダー双方にとって不利益である。
【0026】
上記のようにユーザが取得したデータを使ってAIでどのようなことができるか試そうにも、データを外部(AIベンダーあるいはAIソリューションを持つICメーカ等)と共有する必要がある。つまり、機密情報であるデータを外部に出すリスクがある。また、データだけを提供しても適切に外部で解析してもらえるかは難しく、ユーザがデータ取得したドメインに対しての高度な知識がないと適切なAIパラメータの調整は難しい。ユーザからAIベンダー等にドメイン知識を伝えることも非常な手間となり、背景知識に差があるためコミュニケーションエラーも起きやすい。また、ユーザが取得したデータを、即日その場で解析することができない。
【0027】
上記のような状況に鑑み、本開示に係るシミュレーション装置1を使用すれば、ユーザが所有するデータを用いて、教師なし学習によるAI効果を効果的に確認することが可能となる。より具体的には、教師なし学習のタスクである異常検知の効果を確認することができる。これにより、例えば、機密情報のデータを外部に出すリスクがなくなったり、取得したデータをその場で解析できたりなどの効果を奏する。特に、本開示では、後述するように機械学習モデルに対して入力させるデータの設定にチャンクという概念を導入し、複数種類の入力データを複数個ずつ入力するなどの設定が容易となっている。これにより、各種信号を組み合わせたときにどのような異常検知が行えるかなどの検討が可能となる。
【0028】
<機械学習モデルの構成>
ここで、機械学習モデル40について説明する。図3は、機械学習モデル40の構成例を示す図である。機械学習モデル40は、前処理部401と、機械学習部402と、を有する。
【0029】
前処理部401は、機械学習部402にデータを入力させる前の前処理を行う。前処理には、正規化処理が含まれる。正規化処理は、およそ0~1(または-1~+1)の範囲にデータを収める処理である。なお、後述するように、正規化処理のパラメータを設定することで、シフト処理または何も処理をしない設定とすることもできる。
【0030】
前処理には、エンベロープ処理も含まれる。エンベロープ処理は、正規化処理によって処理されたデータに対して行われる。なお、エンベロープ処理の有無は後述するように設定可能である。
【0031】
前処理には、窓関数処理、およびFFT(fast Fourier transform)処理も含まれる。後述するように、窓関数処理およびFFT処理は、正規化処理およびエンベロープ処理がされたデータに対して行われる。また、窓関数処理およびFFT処理は、後述するようにチャンクごとに行われる。窓関数処理およびFFT処理は、それぞれの有無が後述するように設定可能である。パターンとしては、窓関数処理のみの実行、FFT処理のみの実行、あるいは窓関数処理とFFT処理の実行を選択可能である。なお、FFT処理に限らず、例えばウェーブレット変換などの周波数解析処理を用いてもよい。
【0032】
機械学習部402は、入力されるデータに対して学習および推論を行う。機械学習部402で用いるAIモデルとして、例えば、図4に示すような3層ニューラルネットワーク30を用いる。
【0033】
図4に示すように、3層ニューラルネットワーク10は、入力層10Aと、隠れ層10Bと、出力層10Cと、を有するAIモデルである。一般に、3層ニューラルネットワーク10において、バッチサイズkのn次元の入力データx∈Rk×nに対して、n’次元の推論結果y∈Rk×n’は、y=G(x・α+b)βとして得られる。ここで、α∈Rn×mは入力層10Aと隠れ層10Bとを結合する重みであり、β∈Rm×n’は隠れ層10Bと出力層10Cとを結合する重みである。また、b∈Rは、隠れ層10Bのバイアスであり、Gは隠れ層10Bの活性化関数である。
【0034】
本実施形態では、3層ニューラルネットワーク10を任意のバッチサイズで逐次的に学習できるアルゴリズムを用いる。バッチサイズkのi番目の学習データ{x∈Rki×n, t∈Rki×n’}が得られた場合、下記(1)式で示される誤差を最小化するβを求める必要がある。
【数1】

なお、i番目の隠れ層行列H=G(x・α+b)である。また、tは、推論結果yに対応する教師データである。
【0035】
最適化された重みβは、下記(2)式により計算される。
=Pi-1-Pi-1 T(I+Hi-1 T-1i-1
β=βi-1+P T(t-Hβi-1) (2)
【0036】
ここで、Pとβについては、下記(3)式により得られる。
=(H T-1
β=P T (3)
【0037】
学習のアルゴリズムは次のようになる。
(1)重みα、およびバイアスbの値を乱数により初期化する。
(2)xに対するHを算出し、Pおよびβを算出する。
(3)バッチサイズkのi番目の学習データが得られるたびに、Pおよびβを逐次算出する。なお、(3)式におけるβの算出式を用いずに、乱数により初期化した値をβとしてもよい。
【0038】
また、本実施形態では、オートエンコーダを用いた学習を行う。オートエンコーダは、入力データをそのまま教師データとして流用し、入力データを推論結果として再構成できるように学習する。すなわち、上記でいえば、t=xとして学習する。オートエンコーダは、別個に教師データを作成する必要がないので、教師なし学習アルゴリズムの一種となる。
【0039】
このような機械学習部402におけるAIモデルによれば、エッジデバイスにおいてマイコン程度の演算装置により学習が可能となる。すなわち、このようなオンデバイス学習を例えばモータの異常検知などに導入する際に、シミュレーションによって異常検知の効果を確認することができる。なお、入力データxは、前処理部401でFFT処理が無しの場合は時系列データであり、FFT処理が有りの場合は周波数領域のデータである。
【0040】
機械学習部402においては、推論結果yと教師データtとの誤差を表す損失関数L(y,t)により異常度が計算される。損失関数には、例えばMAE(Mean Absolute Error)あるいはMSE(Mean Squared Error)が用いられる。損失関数がMAEの場合、損失関数Lは、下記(4)式のように表される。
【数2】

また、損失関数がMSEの場合、損失関数Lは、下記(5)式のように表される。
【数3】
【0041】
オートエンコーダを用いて学習を行うので、損失関数L(y,t)=L(y,x)として異常度が計算される。
【0042】
<GUI>
次に、本実施形態に係るシミュレーション装置1におけるシミュレーションに関する設定を可能とするGUI(Graphical User Interface)について説明する。以下に説明する各種画面の例は、表示制御部7(図2)によって表示部9に表示される。各種設定画面における選択および設定、あるいは画面の切替えなどは操作入力部8による入力に基づいて行われる。各種設定画面において設定される内容は、モデル設定部6により設定される。
【0043】
<<第1設定画面>>
プログラムPを起動させると、図5に示す第1設定画面が表示される。第1設定画面では、データファイルの読み込み、および必要に応じて前処理の設定を行うことができる。第1設定画面の上方には、タブが左右に並んで表示される。タブを押すことで設定画面を切り替えることができる。図5(第1設定画面)は、“1.Data loading”のタブTB1が押された状態である。
【0044】
第1設定画面には、データファイルを選択するための選択ボタンBT1が表示される。選択ボタンBT1を押すことで、図6に示すダイアログボックスが表示される。ダイアログボックスでは、選択部SA1においてファイル名が一覧で表示される。選択部SA1において選択されたファイル名が下方のファイル名表示部DA1に表示される。ダイアログボックスにおいて、決定ボタンBT2が押されると、ファイル名表示部DA1に表示されたファイル名のデータファイルがファイル読込み部3によって読み込まれる。ここでは、拡張子がxlsxのExcelファイルを選択することができる。
【0045】
ここで、図7は、データファイル(サンプルのファイル)におけるデータの一例を示す図である。図7のデータは、一例としてモータ出力軸を支持する軸受の内輪軌道に損傷があり、時間経過とともに段階的に損傷が悪化するとした場合の各種信号の時系列データである。具体的には、A列において時間[s]、B列においてモータ電流[A]、C列においてx方向変位[m]、D列においてx方向加速度[m/s^2]、E列においてy方向変位[m]、F列においてy方向加速度[m/s~2]、G列において出力軸回転速度[rpm]が格納されている。なお、いずれの列においても1行目には変数名が格納されている。また、図7では、一例として最初の4000点のデータは正常状態、その後4000点ごとに損傷の程度が悪化するように設定されている。以下、このようなファイルが読み込まれるものとして説明する。
【0046】
データファイルが読み込まれると、図8に示すように第1設定画面におけるテーブル表示部DA2において、読み込まれたデータファイルに含まれるデータが表形式で表示される。なお、データファイルの1行目は無視されてデータが読み込まれる。これにより、ユーザはデータが正しく読み込まれているかを確認できる。また、読み込まれたデータの行数が行数表示部DA3に表示され、読み込まれたデータの列数が列数表示部DA4に表示される。テーブル表示部DA2には、読み込まれた全データが表示される。
【0047】
一方、データファイルが読み込まれると、図8に示すように第1設定画面におけるグラフ表示部DA5において、読み込まれたデータが列ごとにグラフ表示される。横軸がデータ番号、縦軸がデータ値としてグラフ表示される。列選択部SD1においては、第1列から第5列までをラジオボタンによって選択可能とされている。デフォルトでは第1列のデータがグラフ表示されるが、上記ラジオボタンを押すことでグラフ表示する列を切り替えることができる。なお、第6列以降はグラフ表示できないが、データが読み込まれていない訳ではない。
【0048】
第1設定画面(図8)の左右方向中央には、前処理設定部ST1が表示される。前処理設定部ST1においては、正規化処理およびエンベロープに関する設定を行うことができる。読み込まれたデータの第1列から第5列に対して、それぞれ個別に正規化処理およびエンベロープ処理の設定が可能である。
【0049】
正規化処理は、下記(6)式によって行われる。
【数4】

ただし、xcolumn iは、第i列のデータ、diおよびsiは、第i列のデータに対するパラメータである。
【0050】
前処理設定部ST1におけるパラメータ設定部PS1では、第1列から第5列までのそれぞれのパラメータ(di,si)が設定可能である。パラメータの設定によっては、シフト処理または何も処理しないことも設定可能である。
【0051】
また、前処理設定部ST1におけるチェックボックスBX1は、第1列から第5列までのそれぞれについて設けられる。チェックボックスBX1にチェックを入れた列に対しては、エンベロープ処理が行われる。チェックを入れていないチェックボックスBX1の列に対しては、エンベロープ処理は行われない。
【0052】
第1設定画面における前処理ボタンBT2を押すと、前処理設定部ST1における設定に応じて第1列から第5列のデータに対して前処理が行われる。第1設定画面におけるテーブル表示部DA6には、前処理された後のデータが表形式で表示される。ここでは、第1列から第5列のデータが表示される。グラフ表示部DA7には、選択部SD2のラジオボタンで選択された列の前処理後のデータが表示される。表示形式は、グラフ表示部DA5と同様である。なお、行表示部DA8、列表示部DA9には、それぞれテーブル表示部DA6に表示されるデータの行数、列数が表示される。列表示部DA9には、列数=5が表示される。
【0053】
なお、前処理が不要の場合は、前処理ボタンBT2は押さずに、タブTB2(後述する図13)を押して画面を切り替える。
【0054】
図9は、第1列についての前処理設定および処理結果の一例を示す図である。図9に示すように、第1列のパラメータであるd1,s1は、それぞれd1=0、s1=1に設定されている。この場合、何の処理も行わないことになる。なお、このようなパラメータ設定は、デフォルトである。図9では、グラフ表示部DA5,DA7の表示は、第1列の表示が選択されている。グラフ表示部DA5,DA7を比較すると、データの変化はなく、何の処理もされていないことがわかる。
【0055】
図10は、第2列についての前処理設定および処理結果の一例を示す図である。図10に示すように、第2列のパラメータであるd2,s2は、それぞれd2=1.2、s2=1に設定されている。図10では、グラフ表示部DA5,DA7の表示は、第2列の表示が選択されている。グラフ表示部DA5,DA7を比較すると、前処理後には縦軸のマイナス方向にデータがシフト処理されていることがわかる。
【0056】
図11は、第3列についての前処理設定および処理結果の一例を示す図である。図11に示すように、第3列のパラメータであるd3,s3は、それぞれd3=0、s3=6e-06に設定されている。図11では、グラフ表示部DA5,DA7の表示は、第3列の表示が選択されている。グラフ表示部DA5,DA7を比較すると、前処理後には縦軸方向にデータが拡大され、スケールが変更されていることがわかる。
【0057】
図12は、第4列についての前処理設定および処理結果の一例を示す図である。図12に示すように、第4列のパラメータであるd4,s4は、それぞれd4=0、s4=1に設定されている。すなわち、デフォルトのままである。しかしながら、第4列に対してエンベロープ処理の有りが選択されている(チェックボックスBX1にチェックあり)。図12では、グラフ表示部DA5,DA7の表示は、第4列の表示が選択されている。グラフ表示部DA5,DA7を比較すると、前処理後には上側エンベロープが抽出されていることがわかる。
【0058】
<<第2設定画面>>
タブ2(”2.Input chunk range”)が押されると、図13に示すような第2設定画面が表示される。第2設定画面においては、データ設定ボタンBT31,BT32が表示され、いずれかのボタンを押す。
【0059】
データ設定ボタンBT31が押されると、第1設定画面で読み込んだデータ(オリジナルデータ)をそのまま機械学習モデル40に入力させるデータとして使用する。データ設定ボタンBT32が押されると、第1設定画面で読み込んだデータに第1設定画面において設定された前処理を実施して得られたデータを、機械学習モデル40に入力させるデータとして使用する。
【0060】
データ設定ボタンBT31,BT32のいずれかによって使用が選択されたデータがテーブル表示部DA10およびグラフ表示部DA13に表示される。テーブル表示部DA10には、表記式で表示される。グラフ表示部DA13の表示は、列選択部SD3においてラジオボタンにより列を選択することで第1列から第5列までを切り替え可能である。
【0061】
図14は、第2設定画面において、データ設定ボタンBT31を押した場合の状態を示す図である(すなわち、オリジナルデータの使用)。第2設定画面においては、チャンク設定部ST2が表示される。チャンクは、機械学習モデル40(機械学習部402)に逐次入力するときの1回分のデータの塊である。
【0062】
チャンク設定部ST2においては、列番号設定部ST21と、行数設定部ST22と、列数表示部ST23が含まれる。列番号設定部ST21には、機械学習モデルに入力させる入力データの先頭列を示す使用データ(データ設定ボタンBT31,BT32により選択されたデータ)における列番号を入力可能である。行数設定部ST22には、使用データにおける1つのチャンクの行数を入力可能である。列数設定部ST23には、使用データにおける1つのチャンクの列数を入力可能である。
【0063】
図14の例では、列番号設定部ST21に「2」、行数設定部ST22に「256」、列数設定部ST23に「1」が入力されている。これにより、使用データの2列目が入力データの先頭列に設定され、256行1列のデータの塊が1つのチャンクに設定される。すなわち、第2列のデータ(図7のモータ電流)が入力データとして選択されている。
【0064】
なお、列数設定部ST23に2以上の値を設定することで、複数列のデータ、すなわち複数種類の信号データなどを入力データとすることもできる。例えば、図7におけるモータ電流とx方向変位のデータを入力データとすることなどが可能である。
【0065】
第2設定画面においてチェックボタンBT4が押されると、図15に示すような画面となり、テーブル表示部DA14に先頭のチャンクが表形式で表示される。これにより、チャンクが適切に設定されているかを確認できる。また、チャンク数表示部DA15には、使用データの行数と1つのチャンクの行数から計算されるチャンク数が表示される(図15の例では、チャンク数=62)。データ数表示部DA16には、1つのチャンクに含まれるデータ数が表示される。当該データ数は、1つのチャンクの行数と列数の積の値と同じである(図15の例では、データ数=256)。
【0066】
<<第3設定画面>>
タブTB3(”3.Preprocessing by MCU”)を押すと、図16に示すような第3設定画面が表示される。第3設定画面では、MCU(マイコン)で実行可能なFFTなどの前処理の適用を検討する。
【0067】
第3設定画面においては前処理設定部ST3が表示される。前処理設定部ST3においては、窓関数処理とFFT処理のそれぞれの適用有無が設定される。なお、窓関数処理としては、Hann窓、Hamming窓、Gauss窓、三角窓、カイザー窓、チェビシェフ窓、ブラックマン窓などを採用できる。具体的には、チェックボックスBX2によって窓関数処理の有無が設定される。チェックボックスBX3によってFFT処理の有無が設定される。また、表示単位選択部SD4において、FFT処理結果の表示単位(AmplitudeまたはdB)をラジオボタンによって選択できる。
【0068】
なお、窓関数処理およびFFT処理は、チャンクごとに行われる。FFT処理等はMCUでの計算に適したアルゴリズムとしている。FFT処理後のデータは振幅のみを利用するため、FFT長(1つのチャンクに含まれるデータの数)に対して、(FFT長)/2+1個となる。なお、FFT処理は、振幅のみを利用する場合、位相のみを利用する場合、振幅と位相の両方を利用する場合などを選択できるようにしてもよい。
【0069】
また、前処理設定部ST3において、FFT長表示部DA17には、FFT長が表示される。
【0070】
前処理ボタンBT5が押されると、前処理設定部ST3で設定された前処理が実施され、処理結果が結果表示部DA18に表示される。処理結果は、チャンクごとに表示される。なお、表示されるチャンクに含まれるデータ番号を、前処理設定部ST3におけるデータ番号設定部ST31において設定可能である。ここで、データ番号は、チャンクの列数が複数の場合、小さい行から順に同じ行の異なる列のデータに番号を1から順に割り当てた場合の全てのチャンクにおける通し番号である。例えば、チャンクの列数が3列であれば、1行目の1列目、2列目、3列目→2行目の1列目、2列目、3列目→・・・の順に番号を割り当てる。先述した図15であれば、設定されたチャンクが256行1列であるため、データ番号が1から256までは、先頭の同じチャンクを表す。
【0071】
結果表示部DA18においては、生データ(Raw data)表示部DA181、窓関数処理後表示部DA182、FFT処理後表示部DA183が左から右にかけて表示される。生データ表示部DA181には、1つのチャンクのデータ(処理前のデータ)が表示される。窓関数処理後表示部DA182には、1つのチャンクのデータを窓関数処理して得られるデータが表示される。FFT処理後表示部DA183には、窓関数処理後のデータをFFT処理して得られるデータが表示される。なお、生データ表示部DA181、窓関数処理後表示部DA182、FFT処理後表示部DA183ともに、横軸をデータ番号(ただし、対象チャンクにおける先頭データを番号1とした場合の通し番号)、縦軸をデータ値としてグラフ表示される。
【0072】
ただし、例えば、窓関数処理を適用せず、FFT処理のみを実施した場合は、窓関数処理後表示部DA182に生データが表示される。窓関数処理とFFT処理ともに適用しない場合は、生データ表示部DA181、窓関数処理後表示部DA182、FFT処理後表示部DA183ともに生データが表示される。いずれにせよ、FFT処理後表示部DA183に表示されているデータが機械学習部402(3層ニューラルネットワーク10)に入力されるデータとなる。
【0073】
図17は、窓関数処理およびFFT処理をいずれも適用した場合の処理結果の表示例である。FFT処理後は、データの個数が減っている。なお、結果表示部DA18においては、データ番号設定部ST32が表示される。データ番号設定部ST32には、結果表示部DA18に再表示するチャンクに対応するデータ番号を設定可能である。再表示ボタンBT6が押されると、結果表示部DA18に処理結果が再表示される。
【0074】
次に、第3設定画面における学習・推論設定部ST4(図16)について述べる。図18は、学習・推論設定部ST4を示す。学習・推論設定部ST4においては、生データ表示部DA19が表示される。生データ表示部DA19においては、第2設定画面において設定されたすべてのチャンクのデータ(処理前のデータ)がグラフ表示される。横軸をデータ番号、縦軸をデータ値として表示される。
【0075】
生データ表示部ST4の下方には、左端に先頭データ番号表示部DA20および先頭チャンク番号表示部DA21が表示される。先頭データ番号表示部DA20には、データ番号の先頭の番号(図18では「1」)が表示され、先頭チャンク番号表示部DA21には、先頭のチャンクの番号(図18では「1」)が表示される。
【0076】
生データ表示部ST4の下方には、右端に最終データ番号表示部DA22および最終チャンク番号表示部DA23が表示される。最終データ番号表示部DA22には、最終のデータ番号が表示され、最終チャンク番号表示部DA23には、チャンク番号の最終の番号が表示される。図18の例では、図15の例においてチャンクが256行1列に設定され、図7に示すように1列のデータ数が16001のため、チャンク数=62(最終チャンク番号)となり、最終のデータ番号は62×256=15872となる。
【0077】
機械学習部402における学習(Training)および推論(Prediction)は、チャンク単位で行われる。まず、学習を開始したいチャンクに含まれるデータ番号の1つをデータ番号設定部ST41に入力して設定する。図19は、図18と同様の生データの並びに対する学習および推論の設定についての図である。図7の例における第2列のデータであるモータ電流では、モータ起動時に電流増加が認められる。この電流増加を学習したくない場合、2番目のチャンクCH2(チャンク番号=2)から学習を開始することが有効である。そこで、2番目のチャンクCH2に含まれるデータ番号である例えば257を設定すれば、2番目のチャンクCH2から学習が開始され、先頭のチャンクCH1は学習に用いられない。
【0078】
続いて、推論を開始したいチャンクに含まれるデータ番号の1つをデータ番号設定部ST42(図18)に入力して設定する。図7の例におけるモータ電流では、データ番号4000から異常状態に遷移する。それまでは正常状態のため、ここでは一例としてデータ番号3500を設定し、正常状態のみを学習に使用するようにしている。なお、データ番号3500は、図19に示すようにチャンク番号=14のチャンクCH14に相当する。このようにして、図19の例では、チャンクCH1は学習に使用されず、チャンクCH2からCH13までが学習に使用され、チャンクCH14から最後のチャンクCH62までが推論に使用される。
【0079】
<<第4設定画面>>
タブTB4(“4.AI Settings and Sim”)が押されると、図20に示すような第4設定画面が表示される。第4設定画面は、機械学習部402のパラメータ設定、シミュレーション実行、およびシミュレーション結果確認のための画面である。
【0080】
図20に示す第4設定画面においては、AIパラメータ設定部ST5が表示される。AIパラメータ設定部ST5には、入力ノード数設定部ST51、隠れ層ノード数設定部ST52、および出力ノード数設定部ST53が含まれる。入力ノード数設定部ST51では、入力層10Aのノード数(すなわち上記のnの値)が表示される。入力層のノード数は、入力データの1つのチャンクの行数と列数の乗算で算出される。すなわち、1つのチャンクのデータは、バッチサイズが1のデータに相当する。なお、図20の例では、図17に示すようにFFT処理後のデータを機械学習部402に入力させるため、1つのチャンクにおけるデータ数が256から129に減っており、この129が入力ノード数として設定されている。
【0081】
隠れ層ノード数設定部ST52は、隠れ層10Bのノード数(すなわち上記のmの値)を入力可能である。出力ノード数設定部ST53では、出力層10Cのノード数(すなわち上記のn’の値)が表示される。オートエンコーダのため、出力ノード数は入力ノード数と一致する。
【0082】
AIパラメータ設定部ST5には、活性化関数設定部ST54、損失関数設定部ST55、および忘却率設定部ST56も含まれる。活性化関数設定部ST54では、隠れ層10Bの活性化関数の種類を選択可能である。活性化関数は、例えばSigmoidあるいはReLUなどを設定可能である。
【0083】
損失関数設定部ST55では、機械学習部402において異常度を算出するために用いられる損失関数の種類を選択可能である。損失関数は、例えばMAEあるいはMSEを設定可能である。
【0084】
忘却率設定部ST56では、忘却率の値を入力可能である。忘却率は、学習結果を忘れる程度を表すパラメータである。学習結果を反映しない方法としては、例えば過去の学習結果を使用する、学習結果を初期化するなどが挙げられる。忘却率=1は、以前の学習結果を全く忘れないことを表し、忘却率=0は、全て忘れることを表す。
【0085】
また、AIパラメータ設定部ST5には、学習繰り返し数設定部ST57も表示される。学習繰り返し数設定部ST57では、学習を繰り返す回数を設定可能である。
【0086】
以上の設定画面によってすべての設定項目の設定が完了し、シミュレーション開始ボタンBT7が押し下げられると、モデル演算部5は、モデル設定部6により設定された内容に従ってシミュレーションを実行する。ここでは、データがチャンク単位で逐次、機械学習部402に入力され、先述のアルゴリズムによってβが逐次更新されて教師なし学習が行われる。データが入力される場合、チャンクにおけるデータ番号の順に入力層10Aの各ノードに入力される。学習中には機械学習部402による推論も行われる。また、学習が完了した後には、機械学習部402による推論も行われる。推論結果は、チャンクごとに算出される。また、推論結果、入力データ、および損失関数に基づいて異常度がチャンクごとに算出される。
【0087】
シミュレーション結果は、例えば図21に示すように、第4設定画面における結果表示部RA1に表示される。結果表示部RA1には、上段において異常度テーブル表示部RA11と異常度グラフ表示部RA12が表示される。異常度テーブル表示部RA11には、学習時の各チャンクの異常度が表形式で表示される。異常度グラフ表示部RA12には、学習時の各チャンクの異常度がグラフ形式で表示される。異常度テーブル表示部RA11と異常度グラフ表示部RA12には、いずれもチャンク番号と異常度が対応して表示される。
【0088】
結果表示部RA1には、下段において異常度テーブル表示部RA13と異常度グラフ表示部RA14が表示される。異常度テーブル表示部RA13には、学習完了後における推論時の各チャンクの異常度が表形式で表示される。異常度グラフ表示部RA14には、学習完了後における推論時の各チャンクの異常度がグラフ形式で表示される。異常度テーブル表示部RA31と異常度グラフ表示部RA14には、いずれもチャンク番号と異常度が対応して表示される。
【0089】
ここで、学習繰り返し数設定部ST57に入力された状態でシミュレーション開始ボタンBT7が押されると、学習用のすべてのチャンク(図19の例であればチャンクCH2からCH13まで)を用いた学習が学習繰り返し数設定部ST37に設定された回数だけ再利用される。すなわち、最後のチャンクまで使用された場合、先頭のチャンクに戻って学習が再開される。
【0090】
図21の例では、学習繰り返し数設定部ST57で設定される回数=0のため、学習の繰り返しが行われず、図21の異常度グラフ表示部RA12に表示されるように、学習時の異常度が徐々に低下するが、低下の過程で学習が終わっている。理想的には十分な学習ができたことを示す異常度が平坦な状態が望ましい。しかしながら、そのような学習を実現するための長期間のデータを準備することが容易でない場合もある。そこで、学習繰り返し数設定部ST57で設定される回数を1以上に設定することで、異常度が平坦な状態にまで学習を行うことが容易に可能となる。図22は、学習繰り返し数設定部ST57で設定される回数=20にした場合の異常度グラフ表示部RA12の表示例であり、20回分の折り返しラインLNが表示され、このように学習が繰り返されることで最終的には異常度が平坦な状態に近づいている(学習回数は20+1=21)。
【0091】
<<グラフ画面>>
タブTB5(“5.Graph”)が押されると、図23に示すようなグラフ画面が表示される。グラフ画面においては、上段にグラフ表示部GD1が表示され、下段にグラフ表示部GD2が表示される。グラフ表示部GD1には、機械学習部402に入力されたすべてのデータ(すべてのチャンクからなるデータ)に対する入力データの値が表示される。横軸がデータ番号とされる。なお、図23の例では、第3設定画面において窓関数処理およびFFT処理をチャンクごとに実施して得られるデータを入力データとしているため、トゲのようなピークから次のピークの手前までが1つのチャンクに相当する。また、FFT処理のため、第3設定画面においては最後のデータ番号が15872(図18)までだったのが約半分の7998となっている(最終データ番号表示部DA24)。なお、最後のチャンク番号は、第3設定画面と同様に62である(最終チャンク番号表示部DA25)。
【0092】
グラフ表示部GD2には、機械学習部402に入力されたすべてのデータに対する異常度の値が表示される。横軸がデータ番号とされる。図7のデータでは、全データの前半1/4が正常状態、後半3/4が異常状態であった。グラフ表示部GD2においては、正常状態の異常度と、3段階の異常状態の異常度が表示されている。
【0093】
グラフ画面右上の閾値設定部TS1において、閾値入力部TS11に異常度の閾値を入力し、設定ボタンBT8を押すことで、グラフ表示部GD2において設定された閾値THが表示される。図23の例では、異常レベル3を識別できるように閾値を5e-05に設定している。
【0094】
また、グラフ画面の最下段には、グラフ表示部GD3が表示される。グラフ表示部GD3では、チャンクごとに、機械学習部402に入力されたデータと、機械学習部402による推論結果とを比較して表示される。横軸はデータ番号(ただし、対象チャンクにおける先頭データを番号1とした場合の通し番号)として表示される。なお、グラフ表示部GD3の左方には、チャンク番号表示部DA26とデータ番号設定部ST6が表示される。チャンク番号表示部DA26には、グラフ表示部GD3に表示させるチャンクのチャンク番号が表示される。デフォルトでは、最後のチャンク番号が表示される。データ番号設定部ST6には、グラフ表示部GD3に再表示させるチャンクに含まれるデータ番号を設定可能である。データ番号設定部ST6に設定後、再表示ボタンBT9が押されると、グラフ表示部GD3が再表示される。
【0095】
異常度の値が大きいチャンクについてグラフ表示部GD3を表示させると、入力データと推論値との乖離が大きくなる。
【0096】
<その他>
なお、本明細書中に開示されている種々の技術的特徴は、上記実施形態のほか、その技術的創作の主旨を逸脱しない範囲で種々の変更を加えることが可能である。すなわち、上記実施形態は、全ての点で例示であって制限的なものではないと考えられるべきであり、本発明の技術的範囲は、上記実施形態に限定されるものではなく、特許請求の範囲と均等の意味および範囲内に属する全ての変更が含まれると理解されるべきである。
【0097】
例えば、上記実施形態では、行数と列数によって2次元的にチャンクを設定したが、3次元以上でチャンクを設定するようにしてもよい。
【0098】
<付記>
以上のように、本開示の一態様に係るシミュレーション装置(1)は、
学習および推論を行うように構成される機械学習モデル(40)を記憶されたモデル記憶部(4)と、
前記機械学習モデルを用いて演算処理を行うように構成されるモデル演算部(5)と、
操作入力部(8)と、
データを読み込むように構成される読込み部(3)と、
前記操作入力部による入力に基づき、前記機械学習モデルに関する設定を行うように構成されるモデル設定部(6)と、
を備え、
前記モデル設定部は、読み込まれた前記データに基づき、前記機械学習モデルに逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行い、
前記モデル演算部は、前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う構成としている(第1の構成)。
【0099】
また、上記第1の構成において、前記モデル設定部は、前記チャンクに複数種類の信号の時系列データを含めるように設定が可能である構成としてもよい(第2の構成)。
【0100】
また、上記第1または第2の構成において、前記モデル設定部は、読み込まれた前記データに基づき、先頭列としての列番号、行数、および列数を設定することで前記チャンクの設定が可能である構成としてもよい(第3の構成)。
【0101】
また、上記第1から第3のいずれかの構成において、前記機械学習モデルは、読み込まれた前記データに対して下記式により正規化処理を行うように構成される第1前処理部(401)を有し、
前記モデル設定部は、下記式のパラメータを設定可能である構成としてもよい(第4の構成)。
【数5】

ただし、xcolumn iは、第i列の前記データ、diおよびsiは、第i列の前記データに対するパラメータである。
【0102】
また、上記第1から第4のいずれかの構成において、前記機械学習モデルは、読み込まれた前記データに対してエンベロープ処理を行うように構成される第2前処理部(401)を有し、
前記モデル設定部は、読み込まれた前記データの列ごとに前記エンベロープ処理の有無を設定可能である構成としてもよい(第5の構成)。
【0103】
また、上記第1から第5のいずれかの構成において、前記機械学習モデルは、前記チャンクごとに窓関数処理および周波数解析処理を行うように構成される第3前処理部(401)を有し、
前記モデル設定部は、前記窓関数処理および前記周波数解析処理のそれぞれの有無を設定可能である構成としてもよい(第6の構成)。
【0104】
また、上記第1から第6のいずれかの構成において、前記モデル設定部は、前記機械学習モデルによる学習を開始させる前記チャンクである学習開始チャンクおよび前記機械学習モデルによる推論を開始させる前記チャンクである推論開始チャンクを設定可能である構成としてもよい(第7の構成)。
【0105】
また、上記第7の構成において、前記学習開始チャンクおよび前記推論開始チャンクの設定は、チャンクに含まれるデータ番号の設定により行われ、
前記データ番号は、前記チャンクの列数が複数の場合、小さい行から順に同じ行の異なる列のデータに列番号が小さい順に番号を順に割り当てた場合の番号である構成としてもよい(第8の構成)。
【0106】
また、上記第1から第8のいずれかの構成において、前記モデル設定部は、前記機械学習モデルに含まれるニューラルネットワーク(10)に関する項目を設定可能である構成としてもよい(第9の構成)。
【0107】
また、上記第9の構成において、前記項目には、学習結果を忘れる程度を表すパラメータである忘却率が含まれる構成としてもよい(第10の構成)。
【0108】
また、上記第1から第10のいずれかの構成において、前記モデル設定部は、全ての前記チャンクを用いた学習を繰り返し行う回数を設定可能である構成としてもよい(第11の構成)。
【0109】
また、上記第1の構成において、前記モデル設定部は、全ての前記チャンクを用いた学習を繰り返し行う回数を設定可能であり、
全ての前記チャンクに対する前記損失関数の値を、最後の前記チャンクから先頭の前記チャンクまでの折り返しライン(LN)を含めて、設定された前記回数だけ繰り返して表示する第1表示制御部を備える構成としてもよい(第12の構成)。
【0110】
また、上記第1から第12のいずれかの構成において、前記機械学習モデルによる学習中および学習後の推論結果に基づく損失関数の値を、全ての前記チャンクに含まれるデータの通し番号に対して表示する制御を行うように構成される第2表示制御部(7)を備える構成としてもよい(第13の構成)。
【0111】
また、上記第13の構成において、前記モデル設定部は、前記第3表示制御部による表示において表示される前記損失関数の値の閾値を設定可能である構成としてもよい(第14の構成)。
【0112】
また、上記第1から第14のいずれかの構成において、1つの前記チャンクに含まれるデータの通し番号に対して、前記データの値と前記機械学習モデルによる推論結果とを表示する制御を行うように構成される第3表示制御部(7)を備え、
前記モデル設定部は、前記第3表示制御部に再表示させる前記チャンクの設定が可能である構成としてもよい(第15の構成)。
【0113】
また、上記第1から第15のいずれかの構成において、設定された前記チャンクの先頭のチャンクを表示する制御を行うように構成される第4表示制御部(7)を備える構成としてもよい(第16の構成)。
【0114】
また、上記第6の構成において、1つの前記チャンクについての前記窓関数処理および前記周波数解析処理の処理結果をそれぞれ表示する制御を行うように構成される第5表示制御部(7)を備え、
前記モデル設定部は、前記処理結果を再表示させる前記チャンクの設定が可能である構成としてもよい(第17の構成)。
【0115】
また、上記第1から第17のいずれかの構成において、前記機械学習モデルによる学習中の推論結果に基づく損失関数の値を前記チャンクごとに表示する制御を行うように構成される第6表示制御部(7)を備える構成としてもよい(第18の構成)。
【0116】
また、上記第1から第18のいずれかの構成において、前記機械学習モデルによる学習後の推論による推論結果に基づく損失関数の値を前記チャンクごとに表示する制御を行うように構成される第7表示制御部(7)を備える構成としてもよい(第19の構成)。
【0117】
また、上記第1から第19のいずれかの構成において、前記データには、モータの正常状態と異常状態における信号の時系列データを含めることが可能である構成としてもよい(第20の構成)。
【0118】
また、本開示の一態様に係るプログラム(P)は、コンピュータ(100)を上記第1から第20のいずれかの構成のシミュレーション装置として機能させるためのプログラムである。
【0119】
また、本開示の一態様に係るシミュレーション方法は、
データを読み込む第1ステップと、
読み込まれた前記データに基づき、機械学習モデルに逐次入力させる場合の1回分のデータの塊としてのチャンクに関する設定を行う第2ステップと、
前記チャンクを前記機械学習モデルに逐次入力させることで教師なし学習の演算および推論の演算を行う第3ステップと、を備える。
【産業上の利用可能性】
【0120】
本開示は、例えば、各種用途の教師なし学習シミュレーションに利用することができる。
【符号の説明】
【0121】
1 シミュレーション装置
2 ファイル記憶部
3 ファイル読込み部
4 モデル記憶部
5 モデル演算部
6 モデル設定部
7 表示制御部
8 操作入力部
9 表示部
10 3層ニューラルネットワーク
10A 入力層
10B 隠れ層
10C 出力層
21 データファイル
40 機械学習モデル
100 コンピュータ
100A CPU
100B メモリ
100C 補助記憶装置
100D 操作入力部
100E 表示部
210 データ
401 前処理部
402 機械学習部
P プログラム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23