JP2020166315A - Learning data generation method, training method, prediction model and computer program - Google Patents
Learning data generation method, training method, prediction model and computer program Download PDFInfo
- Publication number
- JP2020166315A JP2020166315A JP2019063310A JP2019063310A JP2020166315A JP 2020166315 A JP2020166315 A JP 2020166315A JP 2019063310 A JP2019063310 A JP 2019063310A JP 2019063310 A JP2019063310 A JP 2019063310A JP 2020166315 A JP2020166315 A JP 2020166315A
- Authority
- JP
- Japan
- Prior art keywords
- state
- data
- time
- training
- peak frequency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims description 89
- 238000000034 method Methods 0.000 title claims description 83
- 238000004590 computer program Methods 0.000 title claims description 8
- 238000001228 spectrum Methods 0.000 claims abstract description 19
- 230000036962 time dependent Effects 0.000 claims abstract description 19
- 230000006870 function Effects 0.000 claims description 44
- 238000013528 artificial neural network Methods 0.000 claims description 37
- 230000008859 change Effects 0.000 claims description 34
- 238000000605 extraction Methods 0.000 description 61
- 230000008569 process Effects 0.000 description 35
- 238000012545 processing Methods 0.000 description 29
- 238000011176 pooling Methods 0.000 description 17
- 230000004913 activation Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
Images
Landscapes
- Image Analysis (AREA)
Abstract
Description
本明細書は、予測モデルをトレーニングする技術に関する。 The present specification relates to techniques for training predictive models.
加速度センサや角速度センサなどのセンサによって取得されたデータを用いて、対象の状態を推定する技術が提案されている。例えば、特許文献1では、以下の技術が提案されている。すなわち、正規化済センサデータが期間単位ごとに画像に変換され、生成された画像群を用いてCNN(畳み込みニューラルネットワーク)による学習処理が実行される。そして、所定期間を単位として時系列データが画像に変換され、学習モデルに基づいて画像を判定した判定結果に基づいて対象の状態が推定される。 A technique for estimating the state of an object has been proposed using data acquired by sensors such as an acceleration sensor and an angular velocity sensor. For example, Patent Document 1 proposes the following techniques. That is, the normalized sensor data is converted into an image for each period, and a learning process by a CNN (convolutional neural network) is executed using the generated image group. Then, the time series data is converted into an image in units of a predetermined period, and the state of the target is estimated based on the determination result of determining the image based on the learning model.
ところが、データの変化の速度は、対象の状態などの種々の原因によって、異なり得る。この結果、画像を用いる学習処理が適切にできない場合があった。 However, the rate of change of data may vary depending on various causes such as the state of the object. As a result, there are cases where the learning process using images cannot be performed properly.
本明細書は、予測モデルを適切にトレーニングする技術を開示する。 The present specification discloses techniques for properly training predictive models.
本明細書に開示された技術は、以下の適用例として実現することが可能である。 The techniques disclosed herein can be realized as the following application examples.
[適用例1]予測モデルのトレーニングのための学習データの生成方法であって、対象に取り付けられたセンサによって測定された測定値であって前記対象の動きに関連するパラメータの前記測定値と、前記対象の状態の分類と、の経時変化を示す時系列データを取得し、前記測定値の前記経時変化の周波数スペクトルを、前記状態の前記分類毎に算出し、前記状態の前記分類毎に最大のピークの周波数であるピーク周波数を特定し、前記状態の全ての前記分類の前記ピーク周波数のうち最も低いピーク周波数を特定し、前記最も低いピーク周波数を用いることによって、前記最も低いピーク周波数が低いほど広い時間幅を決定し、前記時間幅の期間内の前記測定値の前記経時変化を示すグラフの画像データであって前記状態の前記分類に対応付けられた前記画像データを含む学習データを生成する、学習データの生成方法。 [Application Example 1] A method of generating training data for training a prediction model, which is a measurement value measured by a sensor attached to the target and the measurement value of a parameter related to the movement of the target. Time-series data showing the classification of the target state and the change with time is acquired, the frequency spectrum of the change with time of the measured value is calculated for each of the classifications of the state, and the maximum is obtained for each classification of the state. By identifying the peak frequency, which is the frequency of the peak of the above, identifying the lowest peak frequency of all the peak frequencies of the above categories in the above state, and using the lowest peak frequency, the lowest peak frequency is low. A moderately wide time width is determined, and training data including the image data associated with the classification of the state, which is image data of a graph showing the time-dependent change of the measured value within the period of the time width, is generated. How to generate training data.
この構成によれば、学習データのグラフの時間幅が、最も低いピーク周波数が低いほど広くなるように決定されるので、測定値の経時変化と対象の状態の分類との対応関係を適切に示す学習データを生成できる。このような学習データは、トレーニングに適している。 According to this configuration, the time width of the graph of the training data is determined to be wider as the lowest peak frequency is lower, so that the correspondence between the time-dependent change of the measured value and the classification of the target state is appropriately shown. Training data can be generated. Such learning data is suitable for training.
[適用例2]適用例1に記載の学習データの生成方法であって、前記学習データの生成は、前記時間幅を有する複数の期間であって、互いに異なるとともに、隣合う2つの期間の時間差が前記時間幅よりも小さい、前記複数の期間のそれぞれに対応する前記学習データを生成することを含む、学習データの生成方法。 [Application Example 2] The learning data generation method according to Application Example 1, wherein the training data is generated in a plurality of periods having the time width, which are different from each other and have a time difference between two adjacent periods. A method for generating learning data, which comprises generating the learning data corresponding to each of the plurality of periods, wherein is smaller than the time width.
この構成によれば、多数の学習データを容易に生成できる。 According to this configuration, a large number of training data can be easily generated.
[適用例3]適用例1または2に記載の学習データの生成方法であって、前記時間幅は、前記最も低いピーク周波数の1周期の時間の1/2以上、かつ、10倍以下である、学習データの生成方法。 [Application Example 3] The learning data generation method according to Application Example 1 or 2, wherein the time width is ½ or more and 10 times or less of the time of one cycle of the lowest peak frequency. , How to generate training data.
この構成によれば、測定値の経時変化と対象の状態の分類との対応関係を適切に示す学習データを生成できる。 According to this configuration, it is possible to generate learning data that appropriately shows the correspondence between the time-dependent change of the measured value and the classification of the target state.
[適用例4]予測モデルのトレーニング方法であって、適用例1から3のいずれかに記載の生成方法に従って学習データを生成し、前記学習データを用いて予測モデルをトレーニングする、トレーニング方法。 [Application Example 4] A training method for a prediction model, in which training data is generated according to the generation method according to any one of Application Examples 1 to 3, and the prediction model is trained using the training data.
この構成によれば、予測モデルのトレーニングに、測定値の経時変化と状態の分類との対応関係を適切に示す学習データが用いられるので、適切なトレーニングが可能である。 According to this configuration, training data that appropriately shows the correspondence between the time-dependent change of the measured value and the classification of the state is used for the training of the prediction model, so that appropriate training is possible.
[適用例5]適用例4に記載のトレーニング方法であって、前記予測モデルは、1つ以上の畳込層を含むニューラルネットワークのモデルである、トレーニング方法。 [Application Example 5] The training method according to Application Example 4, wherein the prediction model is a model of a neural network including one or more convolution layers.
この構成によれば、予測モデルが画像データに適した1つ以上の畳込層を含むので、画像データを含む学習データを用いることによって、適切なトレーニングが可能である。 According to this configuration, since the prediction model includes one or more convolutional layers suitable for the image data, appropriate training is possible by using the training data including the image data.
[適用例6]予測モデルであって、適用例4または5に記載のトレーニング方法によってトレーニングされた学習済の予測モデル。 [Application Example 6] A predicted model that has been trained by the training method described in Application Example 4 or 5.
[適用例7]予測モデルのトレーニングのための学習データを生成するコンピュータのためのコンピュータプログラムであって、対象に取り付けられたセンサによって測定された測定値であって前記対象の動きに関連するパラメータの前記測定値と、前記対象の状態の分類と、の経時変化を示す時系列データを取得する機能と、前記測定値の前記経時変化の周波数スペクトルを、前記状態の前記分類毎に算出する機能と、前記状態の前記分類毎に最大のピークの周波数であるピーク周波数を特定する機能と、前記状態の全ての前記分類の前記ピーク周波数のうち最も低いピーク周波数を特定する機能と、前記最も低いピーク周波数を用いることによって、前記最も低いピーク周波数が低いほど広い時間幅を決定する機能と、前記時間幅の期間内の前記測定値の前記経時変化を示すグラフの画像データであって前記状態の前記分類に対応付けられた前記画像データを含む学習データを生成する機能と、をコンピュータに実現させる、コンピュータプログラム。 [Application Example 7] A computer program for a computer that generates training data for training a prediction model, which is a measured value measured by a sensor attached to the target and a parameter related to the movement of the target. A function of acquiring time-series data indicating the time-dependent change of the measured value and the classification of the target state, and a function of calculating the frequency spectrum of the time-dependent change of the measured value for each of the classification of the state. And the function of specifying the peak frequency which is the maximum peak frequency for each of the classifications of the state, the function of specifying the lowest peak frequency among the peak frequencies of all the classifications of the state, and the lowest. By using the peak frequency, it is a function of determining a wider time width as the lowest peak frequency is lower, and image data of a graph showing the time-dependent change of the measured value within the period of the time width, which is the state. A computer program that allows a computer to realize a function of generating training data including the image data associated with the classification.
なお、本明細書に開示の技術は、種々の態様で実現することが可能であり、例えば、学習データの生成方法および生成装置、予測モデルのトレーニング方法およびトレーニング装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体(例えば、一時的ではない記録媒体)、等の形態で実現することができる。 The technique disclosed in the present specification can be realized in various aspects, for example, a training data generation method and a generation device, a prediction model training method and a training device, and a function of those methods or devices. It can be realized in the form of a computer program for realizing the above, a recording medium on which the computer program is recorded (for example, a recording medium that is not temporary), and the like.
A.第1実施例:
A1.装置構成:
図1は、実施例のシステムを示す説明図である。システム1000は、対象の状態を推定するためのシステムである。対象は、機械(例えば、工作機械、ロボット、無人飛行機(ドローンとも呼ばれる))、生物(例えば、犬などの動物、人)など、状態に応じて動きが変化する任意の対象であってよく、予め決められている。本実施例では、対象は、工場で作業を行う作業者である。
A. First Example:
A1. Device configuration:
FIG. 1 is an explanatory diagram showing a system of an embodiment. The
システム1000は、データ処理装置200と、データ処理装置200に接続されたセンサ300と、を備えている。データ処理装置200は、例えば、パーソナルコンピュータである。データ処理装置200は、プロセッサ210と、記憶装置215と、画像を表示する表示部240と、ユーザによる操作を受け入れる操作部250と、通信インタフェース270と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置215は、揮発性記憶装置220と、不揮発性記憶装置230と、を含んでいる。
The
プロセッサ210は、データ処理を行う装置であり、例えば、CPUである。揮発性記憶装置220は、例えば、DRAMであり、不揮発性記憶装置230は、例えば、フラッシュメモリである。
The
不揮発性記憶装置230は、第1プログラム231、第2プログラム232と、学習済モデル234と、を格納している。学習済モデル234は、対象の例である作業者に取り付けられたセンサ300からの情報を用いて作業者の状態を推定するようにトレーニングされた予測モデルである(詳細は、後述)。本実施例では、学習済モデル234は、プログラムモジュールである。
The
プロセッサ210は、第1プログラム231及び第2プログラム232と学習済モデル234との実行に利用される種々の中間データを、記憶装置215(例えば、揮発性記憶装置220、不揮発性記憶装置230のいずれか)に、一時的に格納する。
The
表示部240は、液晶ディスプレイ、有機ELディスプレイなどの、画像を表示する装置である。操作部250は、表示部240上に重ねて配置されたタッチパネル、ボタン、レバーなどの、ユーザによる操作を受け取る装置である。ユーザは、操作部250を操作することによって、種々の指示をデータ処理装置200に入力可能である。通信インタフェース270は、他の装置と通信するためのインタフェースである(例えば、USBインタフェース、有線LANインタフェースなどの有線インタフェース、または、IEEE802.11やBluetooth(登録商標)などの無線インタフェース)。本実施例では、通信インタフェース270は、無線インタフェースである。データ処理装置200は、通信インタフェース270を介して、センサ300と通信可能である。
The
センサ300は、対象の動きに関連するパラメータを測定するセンサである。本実施例では、センサ300は、3軸の加速度センサと、3軸のジャイロセンサと、を備える動き検知センサである。センサ300は、互いに直交する3個の軸のそれぞれの方向の加速度と、互いに直交する3個の軸のそれぞれを中心とする角速度と、で構成される6個のパラメータを測定する。センサ300は、作業者の腕に取り付けられ、作業者の動きを検知する。センサ300は、予め決められた一定のデータレート(例えば、数ヘルツ)で、6個のパラメータの6個の測定値を示すデータを、出力する。以下、センサ300から出力されるデータを、センサデータとも呼ぶ。データ処理装置200は、センサ300からのセンサデータを記憶装置215に蓄積することによって、各測定値の時系列データを取得できる。
The
図2は、人工ニューラルネットワークNNの例の説明図である(以下、単に、ニューラルネットワークNNとも呼ぶ)。ニューラルネットワークNNは、学習済モデル234(図1)の生成に利用されるニューラルネットワークである。本実施例では、ニューラルネットワークNNは、いわゆる畳み込みニューラルネットワーク(Convolutional Neural Network)である。畳み込みニューラルネットワークは、畳込層を含む複数の層を有している。ニューラルネットワークNNの詳細のついては、後述する。 FIG. 2 is an explanatory diagram of an example of an artificial neural network NN (hereinafter, also simply referred to as a neural network NN). The neural network NN is a neural network used to generate the trained model 234 (FIG. 1). In this embodiment, the neural network NN is a so-called convolutional neural network. A convolutional neural network has a plurality of layers including a convolutional layer. The details of the neural network NN will be described later.
A2.ニューラルネットワークNNのトレーニング:
図3は、ニューラルネットワークNNのトレーニングの処理の例を示すフローチャートである。以下、データ処理装置200(図1)のプロセッサ210は、トレーニング実行者からの指示に応じて、図3の処理を開始することとする。プロセッサ210は、トレーニングのための第1プログラム231に従って、図3の処理を実行する。
A2. Neural network NN training:
FIG. 3 is a flowchart showing an example of training processing of the neural network NN. Hereinafter, the
S110では、プロセッサ210は、学習データを生成する。図4は、学習データの生成処理の例を示すフローチャートである。S210では、プロセッサ210は、センサ300からのセンサデータと、作業者の状態を示すデータと、を取得する。
In S110, the
図5(A)−図5(E)は、作業者の状態の例を示す説明図である。本実施例では、作業者900の状態は、第1状態SAから第5状態SEの5個の状態のいずれかに分類される。第1状態SA(図5(A))は、作業者900が、荷物を持たずに歩いている状態である。第2状態SB(図5(B))は、作業者900が、荷物920を台車910に積んでいる状態である。第3状態SC(図5(C))は、作業者900が、台車910を押しながら歩いている状態である。第3状態SCでは、台車910は、荷物920を載せていてもよく、荷物を載せていなくてもよい。第4状態SD(図5(D))は、作業者900が、台車910から荷物920を下ろしている状態である。第5状態SE(図5(E))は、作業者900が、荷物920を持って歩いている状態である。
5 (A) -FIG. 5 (E) are explanatory views showing an example of the state of the operator. In this embodiment, the state of the
図6は、センサデータを用いる処理の概要図である。図中の上部には、グラフGaが示されている。このグラフGaは、センサ300によって測定される3種類の加速度ACx、ACy、ACzと、3種類の角速度AVx、AVy、AVzと、の経時変化を示している。横軸は、時間Tを示し、縦軸は、パラメータACx、ACy、ACz、AVx、AVy、AVzの測定値を示している。グラフGaには、さらに、時間Tと作業者900の状態との対応関係も、示されている。図6の例では、作業者900の状態は、SA、SC、SB、SC、SD、SEの順に変化している。図5(A)−図5(E)で説明したように、複数の状態SA、SB、SC、SD、SEの間で、作業者900の動きは互いに異なっている。パラメータACx、ACy、ACz、AVx、AVy、AVzの経時変化のパターン(すなわち、グラフの形状)の全体を、状態SA、SB、SC、SD、SEの間で比較する場合、少なくとも一部が互いに異なり得る。
FIG. 6 is a schematic diagram of processing using sensor data. The graph Ga is shown at the upper part of the figure. This graph Ga shows the time course of three types of acceleration ACx, ACy, and ACz measured by the
S210(図4)では、プロセッサ210は、センサ300からの6個のパラメータの6個の測定値と、作業者900の状態の分類と、の経時変化を示す時系列データセットを、取得する。このような時系列データセットは、種々の方法によって、取得可能である。本実施例では、以下の手順に従って、時系列データセットが取得される。作業者900(図5(A)−図5(E))は、センサ300を腕に取り付けた状態で、荷物920を運ぶ作業を行う。データ処理装置200は、センサ300からのセンサデータを取得する。データ処理装置200のプロセッサ210は、センサデータと、センサデータを取得した時点での時間と、の対応関係を示すデータを、記憶装置215(例えば、不揮発性記憶装置230)に格納する。センサ300は、一定のデータレートで、センサデータを送信する。従って、プロセッサ210は、そのデータレートで、センサデータと時間とを記憶装置215に記録する。また、トレーニング実行者は、作業者900を図示しないビデオカメラで撮影する。作業者900による作業の終了後、トレーニング実行者は、ビデオカメラで撮影された映像を観察することによって、時間と作業者900の状態との対応関係を特定する。そして、トレーニング実行者は、時間と状態との対応関係を、操作部250を操作することによって、データ処理装置200に入力する。例えば、トレーニング実行者は、作業の開始時間TS(図6)から作業の終了時間TEまでの時間範囲おいて、状態が変化した時間である変化時間を示すデータを、データ処理装置200に入力する。図6の例では、5個の変化時間T1−T5が、入力される。そして、トレーニング実行者は、変化時間で区切られた各期間の状態を示すデータを、データ処理装置200に入力する。図6の例では、6個の期間P1−P6のそれぞれの状態SA、SC、SB、SC、SD、SEを示すデータが、入力される。プロセッサ210は、入力されたデータを用いる事によって、6個のパラメータの6個の測定値と、作業者900の状態の分類と、の経時変化を示す時系列データセットを取得する。以下、1つの状態が継続する連続な期間P1−P6を、状態期間P1−P6とも呼ぶ。
In S210 (FIG. 4), the
S220(図4)では、プロセッサ210は、状態の分類毎に、時系列データセットを生成する。具体的には、プロセッサ210は、同じ状態が連続する1つの注目期間に含まれるパラメータACx、ACy、ACz、AVx、AVy、AVzのそれぞれのデータを、注目期間に対応する状態の時系列データセットとして取得する。図6の例では、プロセッサ210は、6個の状態期間P1−P6に対応する6個の時系列データセット811−816を取得する。なお、第2状態期間P2に対応する第2時系列データセット812と、第4状態期間P4に対応する第2時系列データセット814とは、同じ第3状態SCに対応している。ただし、第2状態期間P2と第4状態期間P4とは連続していないので、これらの時系列データセット812、814は、互いに異なる時系列データセットとして、生成される。
In S220 (FIG. 4), the
S230(図4)では、プロセッサ210は、各分類の各パラメータに対してフーリエ変換を行うことによって、各パラメータの周波数スペクトルを取得する。図6の下部には、時系列データセット811から得られる周波数スペクトルセット821の概要が示されている。本実施例では、プロセッサ210は、時系列データセット811に含まれる6個のパラメータACx、ACy、ACz、AVx、AVy、AVzのそれぞれの高速フーリエ変換を実行する。これにより、6個のパラメータACx、ACy、ACz、AVx、AVy、AVzの6個の周波数スペクトルFCx、FCy、FCz、FVx、FVy、FVzが、それぞれ算出される。図6の下部には、周波数スペクトルFCx、FCy、FCz、FVx、FVy、FVzのグラフの概要が示されている。横軸は、周波数Fを示し、縦軸は、強度Mを示している。
In S230 (FIG. 4), the
プロセッサ210は、S220で生成された各時系列データセットの各パラメータに対して、周波数スペクトルを算出する。図6の例では、6個の時系列データセット811−816に対応する6個の周波数スペクトルセット821−826が、算出される。
The
S240(図4)では、プロセッサ210は、各周波数スペクトルの最大ピークの周波数であるピーク周波数を特定する。ピーク周波数は、最大の強度を有するピークの周波数である。図6の周波数スペクトルセット821の周波数スペクトルFCx−FCz、FVx−FVzからは、ピーク周波数FP1−FP6が、それぞれ特定される。
In S240 (FIG. 4), the
S250(図4)では、プロセッサ210は、各分類の各パラメータのピーク周波数から、最も低いピーク周波数を特定する。最も低いピーク周波数は、S240で特定された複数のピーク周波数のうちの最低の周波数である。図6の例では、最も低いピーク周波数は、6個の周波数スペクトルセット821−826から特定される36個のピーク周波数のうちの最低のピーク周波数である。
In S250 (FIG. 4), the
S260(図4)では、プロセッサ210は、最も低いピーク周波数を用いて、時間幅を決定する。後述するように、学習データを生成するために、時系列データから、同じ時間幅の互いに異なる複数の期間のデータが、抽出される。S260では、この期間の時間幅が、決定される。以下、S260で決定される時間幅を、抽出時間幅と呼ぶ。
In S260 (FIG. 4),
図7(A)は、最も低いピーク周波数と抽出時間幅との対応関係の例を示すグラフである。横軸は、最も低いピーク周波数Fmを示し、縦軸は、抽出時間幅Twを示している。図7(B)は、最大周期と抽出時間幅との対応関係の例を示すグラフである。横軸は、最大周期Tmを示し、縦軸は、抽出時間幅Twを示している。最大周期Tmは、最も低いピーク周波数Fmの1周期の時間である。図7(A)に示すように、本実施例では、プロセッサ210は、最も低いピーク周波数Fmが高いほど、抽出時間幅Twが狭くなるように、抽出時間幅Twを決定する。図7(B)に示すように、抽出時間幅Twは、最大周期Tmに比例する。抽出時間幅Twと最も低いピーク周波数Fmとの対応関係(すなわち、抽出時間幅Twと最大周期Tmとの対応関係)は、予め決められている。本実施例では、抽出時間幅Twは、最大周期Tmと同じである。
FIG. 7A is a graph showing an example of the correspondence between the lowest peak frequency and the extraction time width. The horizontal axis represents the lowest peak frequency Fm, and the vertical axis represents the extraction time width Tw. FIG. 7B is a graph showing an example of the correspondence between the maximum period and the extraction time width. The horizontal axis represents the maximum period Tm, and the vertical axis represents the extraction time width Tw. The maximum period Tm is the time of one cycle of the lowest peak frequency Fm. As shown in FIG. 7A, in the present embodiment, the
S270(図4)では、プロセッサ210は、状態の分類毎に、複数の期間のそれぞれのグラフの画像データを生成する。図8は、画像データの例を示す概略図である。図中の上部には、図6のグラフGaと同じグラフGaが示されている。グラフGaの下には、互いに異なる複数の期間700が示されている(以下、期間700を、抽出期間700とも呼ぶ)。複数の抽出期間700のそれぞれの時間幅は、S260(図4)で決定された抽出時間幅Twと同じである。本実施例では、プロセッサ210は、状態期間P1−P6のそれぞれにおいて、均等に、複数の抽出期間700を配置する。隣合う2個の抽出期間700の間の時間差は、予め決められた時間差Tdに、設定される。本実施例では、時間差Tdは、抽出時間幅Twよりも小さい(ただし、時間差Tdは、抽出時間幅Tw以上であってもよい)。複数の状態期間に重なる抽出期間700は、採用されない。この理由は、学習効果を高くするためである。例えば、第1状態期間P1と第2状態期間P2とに重なる抽出期間700は、採用されない。
In S270 (FIG. 4), the
プロセッサ210は、時系列データセットから、抽出期間700内のデータを抽出する。そして、プロセッサ210は、抽出されたデータによって示される6個のパラメータACx、ACy、ACz、AVx、AVy、AVzの経時変化を示すグラフの画像データであるグラフ画像データを生成する。以下、グラフ画像データによって表される画像を、グラフ画像とも呼ぶ。図8には、抽出期間700tに対応するグラフ画像830tが、示されている。グラフ画像データは、第1方向Dxと、第1方向Dxに垂直な第2方向Dyと、に沿ってマトリクス状に並ぶ複数の画素のそれぞれの色値を示している。プロセッサ210は、複数の抽出期間700のそれぞれについて、グラフ画像データを生成する。そして、プロセッサ210は、グラフ画像データと、状態を示す教師データと、を含む学習データを生成する。教師データは、グラフ画像データに対応する状態、すなわち、抽出期間700を含む状態期間に対応する状態を示すデータである。例えば、図8のグラフ画像830tの抽出期間700tは、第1状態期間P1に含まれており、第1状態期間P1の状態は第1状態SAである。従って、グラフ画像830tに対応する教師データは、第1状態SAを示している。
The
本実施例では、図8のグラフ画像830tに示すように、グラフ画像は、線グラフである。横軸は時間Tを示し、縦軸はパラメータACx、ACy、ACz、AVx、AVy、AVzを示している。目盛りは省略される。グラフの枠(縦軸と横軸を含む)は、省略されている。ただし、グラフ画像は、グラフの枠を含んでもよい。なお、グラフの構成は、複数のグラフ画像の間で共通である。例えば、横軸のスケールと、各パラメータACx、ACy、ACz、AVx、AVy、AVzの描画領域の位置と大きさと縦軸のスケールとは、複数のグラフ画像の間で共通であり、予め決められている。なお、グラフの種類は、経時変化を示す任意の種類であってよい。例えば、グラフは、いわゆる散布図であってよい。散布図の複数のデータ点は、時間と測定値との組み合わせを示している。また、グラフ画像データのデータ形式は、本実施例では、白黒の二値のビットマップデータである。なお、グラフ画像データのデータ形式は、他の任意のデータ形式であってよい(例えば、RGB等の1以上の色成分のビットマップ)。プロセッサ210は、生成した各抽出期間700の学習データを、記憶装置215(例えば、不揮発性記憶装置230)に、格納する。そして、図4の処理、ひいては、図3のS110の処理が、終了する。
In this embodiment, as shown in the
S120(図3)では、プロセッサ210(図1)は、複数の学習データを用いて、ニューラルネットワークNN(図2)をトレーニングする。 In S120 (FIG. 3), the processor 210 (FIG. 1) trains the neural network NN (FIG. 2) using the plurality of training data.
ニューラルネットワークNNは、入力層505と、第1畳込層510と、第1プーリング層520と、第2畳込層530と、第2プーリング層540と、第1全結合層550と、第2全結合層560と、第3全結合層570と、を有している。これらの層505−570は、この順番に、接続されている。本実施例では、ニューラルネットワークNNは、プログラムモジュールであり、第1プログラム231(図1)に含まれている。プロセッサ210は、ニューラルネットワークNNであるプログラムモジュールに従って処理を進行することによって、各層505−570の機能を実現する。以下、これらの層505−570について、順に説明する。
The neural network NN includes an
入力層505は、ニューラルネットワークNNの外部からのデータを取得する層である。本実施例では、学習データに含まれるグラフ画像データ830が、入力層505に入力される。入力層505に入力された画像データは、第1畳込層510によって、入力情報として利用される。
The
第1畳込層510は、画像の畳み込みの処理を行う層である。畳み込みの処理は、入力された画像である入力画像とフィルタとの相関を示す値(特徴値とも呼ばれる)を、フィルタをスライドさせながら、算出する処理である。画像の畳み込みの処理で用いられるフィルタは、重みフィルタとも呼ばれる。1個の重みフィルタのサイズは、例えば、P×P画素である(Pは2以上の整数。例えば、P=5)。ストライド(すなわち、フィルタの1回の移動量)は、例えば、1である。本実施例では、フィルタは、入力画像の全ての画素位置において特徴値を算出するように、入力画像の全体に亘ってスライドされる。この場合、入力画像の周囲では、ゼロパディングによって、画素が補われる。これに代えて、フィルタは、入力画像の縁部分を除いた残りの画素位置において特徴値を算出するように、スライドされてよい。このように、フィルタは、入力画像と同じサイズの画像(または、入力画像よりも小さい画像)のビットマップデータを生成する(特徴マップとも呼ばれる)。具体的には、入力された画像データのうちフィルタの位置に対応する部分のP×P個の画素の色値のリストが取得される。取得されたリストと、フィルタのP×P個の重みのリストと、の内積が算出される。「内積+バイアス」が、活性化関数に入力される。そして、活性化関数の計算結果が、特徴マップの1つの要素の値として用いられる。本実施例では、活性化関数としては、いわゆるReLU(Rectified Linear Unit)が用いられる。また、本実施例では、Q個の重みフィルタが用いられる(Qは1以上の整数)。従って、第1畳込層510として機能するプロセッサ210は、Q枚の特徴マップを生成する。なお、バイアスは、フィルタ毎に準備される。そして、Q個のフィルタのそれぞれの要素とQ個のバイアスとは、トレーニングによって、更新される。
The
入力画像の各画素の色値は、一般的に、U個の色成分(Uは1以上の整数。例えば、RGBの3色成分)で表されてよい。この場合、1個のフィルタは、P×P×U個の重みを有している。そして、入力画像上のフィルタの位置に対応する部分のP画素×P画素×U色成分の色値のリストと、フィルタのP×P×U個の重みのリストと、の内積が算出される。 The color value of each pixel of the input image may be generally represented by U color components (U is an integer of 1 or more, for example, 3 color components of RGB). In this case, one filter has P × P × U weights. Then, the inner product of the list of the color values of the P pixel × P pixel × U color component of the portion corresponding to the position of the filter on the input image and the list of the weights of P × P × U of the filter is calculated. ..
第1畳込層510からの特徴マップは、第1プーリング層520によって、入力情報として利用される。プーリングは、画像(ここでは、特徴マップ)を縮小する処理である。第1プーリング層520は、いわゆるマックスプーリング(MaxPooling)を行う。マックスプーリングは、いわゆるダウンサンプリングによって特徴マップを縮小する処理であり、ウィンドウをスライドさせつつ、ウィンドウ内の最大値を選択することによってマップを縮小する。本実施例では、第1プーリング層520におけるウィンドウのサイズは、T×T画素であり、ストライドは、Tである(Tは2以上の整数。例えば、T=2)。これにより、元のマップの1/Tの高さと1/Tの幅を有するマップが生成される。第1プーリング層520として機能するプロセッサ210は、Q枚の特徴マップから、Q枚の縮小された特徴マップを生成する。
The feature map from the
第1プーリング層520からの特徴マップは、第2畳込層530によって、入力情報として利用される。第2畳込層530は、第1畳込層510による処理と同様の手順に従って、画像の畳み込みの処理を行う。例えば、1つのフィルタは、Q枚の特徴マップに対応するQ個のマトリクスを備えている。そして、1つのフィルタは、Q枚の特徴マップから、1枚の特徴マップを生成する。活性化関数としては、いわゆるReLUが用いられる。なお、1つのフィルタの1個のマトリクスのサイズ(すなわち、第1方向Dxの要素数と第2方向Dyの要素数)と、フィルタの総数とは、種々の値であってよい。また、特徴マップの周囲のゼロパディングは、行われてよく、これに代えて、省略されてよい。ストライドは、種々の値であってよい。各フィルタのそれぞれの要素と、各バイアスとは、トレーニングによって、更新される。
The feature map from the
第2畳込層530からの特徴マップは、第2プーリング層540によって、入力情報として利用される。第2プーリング層540は、第1プーリング層520による処理と同様の手順に従って、マックスプーリングを行う。これにより、第2プーリング層540は、縮小された特徴マップを生成する。ウィンドウのサイズとストライドとは、種々の値であってよい。
The feature map from the
第2プーリング層540からの特徴マップは、第1全結合層550によって、入力情報として利用される。第1全結合層550は、一般的なニューラルネットワークで用いられる全結合層と同様の層である。第1全結合層550では、入力された特徴マップを用いて、複数の要素で構成されるリスト(第1中間ベクトルとも呼ぶ)が、生成される。第1中間ベクトルの要素の数は、予め決められており、種々の値であってよい。第1全結合層550では、第1全結合層550に入力される特徴マップの全ての要素のリストと、特徴マップの要素数と同じ数の重みのリストと、の内積が算出される。「内積+バイアス」が、活性化関数に入力される。そして、活性化関数の計算結果が、第1中間ベクトルの1つの要素として用いられる。本実施例では、活性化関数としては、いわゆるReLUが用いられる。また、重みのリストとバイアスとは、第1中間ベクトルの複数の要素のそれぞれに対して、別個に準備される。第1全結合層550として機能するプロセッサ210は、上記の計算を実行することによって、第1中間ベクトルを生成する。なお、重みのリストとバイアスとは、トレーニングによって、更新される。
The feature map from the
第1全結合層550からの第1中間ベクトルは、第2全結合層560によって、入力情報として利用される。第2全結合層560は、第1全結合層550による処理と同様の手順に従って、入力された第1中間ベクトルを用いて、複数の要素で構成される第2中間ベクトルを生成する。第2中間ベクトルの要素の数は、予め決められており、種々の値であってよい。第2全結合層560では、第1中間ベクトルと、第1中間ベクトルの要素数と同じ数の重みのリストと、の内積が算出される。「内積+バイアス」が、活性化関数に入力される。そして、活性化関数の計算結果が、第2中間ベクトルの1つの要素として用いられる。本実施例では、活性化関数としては、いわゆるReLUが用いられる。重みのリストとバイアスとは、第2中間ベクトルの複数の要素のそれぞれに対して、別個に準備される。第2全結合層560として機能するプロセッサ210は、上記の計算を実行することによって、第2中間ベクトルを生成する。なお、重みのリストとバイアスとは、トレーニングによって、更新される。
The first intermediate vector from the first fully connected
第2全結合層560からの第2中間ベクトルは、第3全結合層570によって、入力情報として利用される。第3全結合層570は、全結合層550、560による処理と同様の手順に従って、入力された第2中間ベクトルを用いて、複数の要素で構成される出力ベクトルを生成する。本実施例では、出力ベクトルの要素の数は、ニューラルネットワークNNによって分類されるクラスの総数と同じ「5」である。第3全結合層570では、第2中間ベクトルと、第2中間ベクトルの要素数と同じ数の重みのリストと、の内積が算出される。「内積+バイアス」が、活性化関数に入力される。そして、活性化関数の計算結果が、出力ベクトルの1つの要素として用いられる。本実施例では、活性化関数としては、いわゆるソフトマックス関数(SoftMax)が用いられる。公知の通り、ソフトマックス関数は、ゼロ以上1以下の確率を意味する値を算出する。出力ベクトルの5個の成分値PA、PB、PC、PD、PEは、作業者900の状態が状態SA、SB、SC、SD、SEである確率を、それぞれ示している。例えば、第1成分値PAは、状態が第1状態SAである確率を示している。このような確率を示す出力ベクトルは、確信度データとも呼ばれる。なお、重みのリストとバイアスとは、出力ベクトルの複数の要素のそれぞれに対して、別個に準備される。第3全結合層570として機能するプロセッサ210は、上記の計算を実行することによって、出力ベクトルを生成する。第3全結合層570は、出力ベクトルを、ニューラルネットワークNNの外部に出力する。このような第3全結合層570は、出力層の例である。入力層505と出力層(ここでは、第3全結合層570)との間の層510〜560は、中間層とも呼ばれる。なお、重みのベクトルとバイアスとは、トレーニングによって、更新される。
The second intermediate vector from the second fully connected
図3のS120では、ニューラルネットワークNN(図2)が、上述した複数の学習データを用いて、トレーニングされる。図8の例では、5個の状態SA−SEのそれぞれの学習データを用いて、教師あり学習が、行われる。具体的には、プロセッサ210は、学習データのグラフ画像データ830を入力層505に入力する。プロセッサ210は、ニューラルネットワークNNの複数の層505〜570の計算を実行し、第3全結合層570からの出力ベクトルを算出する。プロセッサ210は、この出力ベクトルと、学習データの教師データ840とを、比較することによって、評価値850を算出する。評価値850は、ニューラルネットワークNNによる状態の推定結果と教師データとの間の差違、すなわち、誤差を示している。評価値850は、例えば、損失関数を用いて算出される。損失関数は、学習データから得られる誤差(すなわち、グラフ画像データから得られる出力データと教師データとの間の誤差)を算出する関数である。評価値850は、例えば、複数個の学習データのそれぞれの誤差の合計である。プロセッサ210は、評価値850が小さくなるように、ニューラルネットワークNNの上述した種々のパラメータ(フィルタ、重みのベクトル等)を更新する。損失関数としては、種々の関数を採用可能である。例えば、2乗和誤差、交差エントロピー、contrastive損失関数などの公知の関数が用いられてよい。トレーニングの方法としては、種々の方法を採用可能である。例えば、勾配降下法と誤差逆伝播法とを用いる方法が採用されてよい。
In S120 of FIG. 3, the neural network NN (FIG. 2) is trained using the plurality of training data described above. In the example of FIG. 8, supervised learning is performed using the learning data of each of the five states SA-SE. Specifically, the
このように、ニューラルネットワークNNは、状態を5個の状態SA−SEのいずれかに分類するように、トレーニングされる。 In this way, the neural network NN is trained to classify the states into any of the five states SA-SE.
S130(図3)では、トレーニング済のニューラルネットワークNN(図2)が、学習済モデル234として、記憶装置に格納される。学習済モデル234は、上記のトレーニングによって決定されたパラメータを用いて処理を進行するように、構成されている。本実施例では、プロセッサ210は、学習済モデル234を、データ処理装置200の不揮発性記憶装置230に格納する。格納の完了によって、図3の処理が終了する。
In S130 (FIG. 3), the trained neural network NN (FIG. 2) is stored in the storage device as the trained
A3.状態の推定:
図9は、状態を推定する処理の例を示すフローチャートである。以下、データ処理装置200(図1)のプロセッサ210は、ユーザからの指示に応じて、図9の処理を開始することとする。プロセッサ210は、状態の推定のための第2プログラム232に従って、図9の処理を実行する。
A3. State estimation:
FIG. 9 is a flowchart showing an example of the process of estimating the state. Hereinafter, the
S310では、プロセッサ210(図1)は、センサ300からの6個のパラメータの6個の測定値の経時変化を示す時系列データセットを、取得する。このような時系列データセットは、図4のS210の方法と同様の方法で、取得される。ただし、図9のS310では、作業者900の状態は未知である。
In S310, the processor 210 (FIG. 1) acquires a time series data set showing the time course of the six measurements of the six parameters from the
S320では、プロセッサ210は、S310で取得された時系列データセットから抽出時間幅の期間内のデータを抽出する。抽出時間幅は、図4のS260で決定された抽出時間幅と同じである。そして、プロセッサ210は、抽出されたデータを用いて、グラフ画像データを生成する。グラフ画像データは、6個のパラメータACx、ACy、ACz、AVx、AVy、AVzの経時変化を示すグラフの画像データである。生成されるグラフ画像データは、図8のグラフ画像830tと同じ形式のグラフ画像を表している。グラフ画像データは、図4のS270の方法と同様の方法で、生成される。
In S320, the
S330では、プロセッサ210(図1)は、S320で生成されたグラフ画像データを、学習済モデル234(図2)に入力する。S340では、プロセッサ210は、学習済モデル234の複数の層505−570の計算を実行する。S350では、プロセッサ210は、第3全結合層570から、確信度データを取得する。上述したように、確信度データの5個の成分値PA−PEは、作業者900の状態が状態SA、SB、SC、SD、SEである確率を、それぞれ示している。確信度データは、状態の推定結果を示すデータの例である。
In S330, the processor 210 (FIG. 1) inputs the graph image data generated in S320 into the trained model 234 (FIG. 2). In S340,
S360では、プロセッサ210は、判定部580(図2)としての処理を実行する。判定部580は、確信度データを用いて、作業者900の状態を分類する処理部である。例えば、判定部580として機能するプロセッサ210は、確信度データの5個の成分値PA−PEのうちの最も大きい成分値を特定する。そして、プロセッサ210は、状態は、最も大きい成分値に対応付けられた状態であると判定する。
In S360, the
S370(図9)では、プロセッサ210(図1)は、S360で特定された状態(すなわち、状態の推定結果)を示す推定データの出力処理を実行する。本実施例では、プロセッサ210は、データ処理装置200の表示部240に、推定された状態を示す画像を表示させる。ユーザは、表示された画像を参照することによって、作業者900の状態を特定できる。
In S370 (FIG. 9), the processor 210 (FIG. 1) executes an output process of estimation data indicating the state (that is, the estimation result of the state) specified in S360. In this embodiment, the
以上により、図9の処理が終了する。なお、S310では、図6のグラフGaのように、長時間の時系列データが、取得されてよい。そして、S320−S370では、図8の複数の抽出期間700のように、複数の期間のそれぞれの状態が推定されてよい。ユーザは、このような推定結果を参照することによって、作業者900の状態の経時変化を特定できる。ユーザは、状態の経時変化を、種々の目的に利用できる。例えば、ユーザは、状態の経時変化に基づいて、作業者900が荷物を持たずに歩く第1状態SAが継続する時間を特定する。そして、ユーザは、この時間が短くなるように、工場での作業者900の作業手順を変更してよい。
As a result, the process of FIG. 9 is completed. In S310, long-time time series data may be acquired as shown in the graph Ga of FIG. Then, in S320-S370, each state of the plurality of periods may be estimated as in the plurality of
以上のように、本実施例では、図4の手順に従って、学習データが生成される。具体的には、S210で、プロセッサ210は、作業者900に取り付けられたセンサ300によって測定された測定値であって作業者900の動きに関連するパラメータACx、ACy、ACz、AVx、AVy、AVzの測定値と、作業者900の状態の分類と、の経時変化を示す時系列データを取得する。S220、S230では、プロセッサ210は、各パラメータの測定値の経時変化の周波数スペクトルを、状態の分類毎に算出する。S240では、プロセッサ210は、状態の分類毎に最大のピークの周波数であるピーク周波数を特定する。S250では、プロセッサ210は、状態の全ての分類のピーク周波数のうち最も低いピーク周波数を特定する。S260では、プロセッサ210は、最も低いピーク周波数を用いることによって、最も低いピーク周波数が低いほど広い抽出時間幅Twを決定する。S270では、プロセッサ210は、抽出時間幅Twの抽出期間700内の測定値の経時変化を示すグラフの画像データであって状態の分類に対応付けられた画像データを含む学習データを生成する。パラメータの測定値の経時変化のパターンは、状態の分類に応じて、異なり得る。経時変化の周波数スペクトルのピーク周波数が低い場合には、ピーク周波数が高い場合と比べて、状態の特徴は、長い時間幅の経時変化によって、示される。本実施例では、上記のように、学習データのグラフの時間幅Twが、最も低いピーク周波数が低いほど広くなるように決定されるので、プロセッサ210は、測定値の経時変化と作業者900の状態の分類との対応関係を適切に示す学習データを生成できる。プロセッサ210は、このような学習データを用いることによって、ニューラルネットワークNNを適切にトレーニングできる。
As described above, in this embodiment, the learning data is generated according to the procedure of FIG. Specifically, in S210, the
また、S270(図4)、図8で説明したように、プロセッサ210は、抽出時間幅Twを有する複数の抽出期間700であって、互いに異なる複数の抽出期間700のそれぞれに対応する学習データを、生成する。ここで、同じ状態に対応する連続な状態期間(例えば、第1状態期間P1)に含まれる隣合う2つの抽出期間700の時間差Tdは、抽出時間幅Twよりも小さい。従って、時間差Tdが抽出時間幅Tw以上である場合と比べて、プロセッサ210は、同じ時系列データから、多数の学習データを取得できる。プロセッサ210は、多数の学習データを用いることによって、適切に、ニューラルネットワークNNをトレーニングできる。
Further, as described in S270 (FIG. 4) and FIG. 8, the
また、図7(A)、図7(B)で説明したように、本実施例では、抽出時間幅Twは、最大周期Tmと同じである。従って、プロセッサ210は、測定値の経時変化と作業者900の状態の分類との対応関係を適切に示す学習データを生成できる。
Further, as described with reference to FIGS. 7 (A) and 7 (B), in this embodiment, the extraction time width Tw is the same as the maximum period Tm. Therefore, the
また、本実施例では、図3の手順に従って、ニューラルネットワークNNがトレーニングされる。具体的には、S110では、プロセッサ210は、図4の手順に従って学習データを生成する。S120では、プロセッサ210は、学習データを用いてニューラルネットワークNNをトレーニングする。このように、ニューラルネットワークNNのトレーニングに、測定値の経時変化と状態の分類との対応関係を適切に示す学習データが用いられるので、適切なトレーニングが可能である。
Further, in this embodiment, the neural network NN is trained according to the procedure of FIG. Specifically, in S110, the
また、図2に示すように、ニューラルネットワークNNは、畳込層510、530を含んでいる。畳込層は、画像データの処理に適している。ニューラルネットワークNNが画像データに適した1つ以上の畳込層を含むので、グラフ画像データを含む学習データによる適切なトレーニングが可能である。 Further, as shown in FIG. 2, the neural network NN includes convolution layers 510 and 530. The convolutional layer is suitable for processing image data. Since the neural network NN includes one or more convolutional layers suitable for the image data, appropriate training is possible with the training data including the graph image data.
また、図3で説明したように、学習済モデル234は、上記のトレーニング方法によってトレーニングされた学習済の予測モデルである。プロセッサ210は、このような学習済モデル234を用いることによって、対象(本実施例では、作業者900)の状態を適切に推定できる。
Further, as described with reference to FIG. 3, the trained
B.変形例:
(1)抽出時間幅Tw(図4:S260、図8)と最も低いピーク周波数Fmとの対応関係は、図7(A)、図7(B)で説明した対応関係に代えて、他の種々の対応関係であってよい。例えば、抽出時間幅Twは、最大周期Tmと異なっていてもよい。抽出時間幅Twは、最も低いピーク周波数Fmの変化に対して、階段状に変化してもよい。いずれの場合も、抽出時間幅Twは、最も低いピーク周波数Fmが低いほど広い値に決定されることが、好ましい。グラフ画像が対象の状態の特徴を表すためには、抽出時間幅Twが広いことが好ましい。例えば、抽出時間幅Twは、最大周期Tmの1/2以上であることが好ましく、最大周期Tmの2/3以上であることが更に好ましく、最大周期Tmの3/4以上であることが特に好ましく、最大周期Tm以上であることが最も好ましい。また、同じ時系列データから多くの学習データを取得するためには、抽出時間幅Twが狭いことが好ましい。例えば、抽出時間幅Twは、最大周期Tmの10倍以下であることが好ましく、最大周期Tmの8倍以下であることが更に好ましく、最大周期Tmの6倍以下であることが特に好ましく、最大周期Tmの4倍以下であることが最も好ましい。また、抽出時間幅Twが狭い場合には、抽出時間幅Twが広い場合と比べて、プロセッサ210は、同じ時系列データの早く小さい部分を用いて、学習データを生成できる。例えば、抽出時間幅Twが60分である場合、最初の学習データの生成には、時系列データの最初の60分のデータが必要である。抽出時間幅Twが1分である場合、最初の学習データの生成は、時系列データの最初の1分のデータで可能である。また、時系列データにおいて、同じ状態が継続する時間が短い場合がある。ここで、抽出時間幅Twが狭い場合には、抽出時間幅Twが広い場合と比べて、プロセッサ210は、多数の学習データを生成できる。また、隣合う2つの抽出期間700の時間差Tdは、抽出時間幅Tw以上であってもよい。
B. Modification example:
(1) The correspondence between the extraction time width Tw (FIG. 4: S260, FIG. 8) and the lowest peak frequency Fm is different from the correspondence described in FIGS. 7 (A) and 7 (B). There may be various correspondences. For example, the extraction time width Tw may be different from the maximum period Tm. The extraction time width Tw may change stepwise with respect to a change in the lowest peak frequency Fm. In any case, it is preferable that the extraction time width Tw is determined to be a wider value as the lowest peak frequency Fm is lower. In order for the graph image to represent the characteristics of the target state, it is preferable that the extraction time width Tw is wide. For example, the extraction time width Tw is preferably 1/2 or more of the maximum period Tm, more preferably 2/3 or more of the maximum period Tm, and particularly preferably 3/4 or more of the maximum period Tm. Most preferably, the maximum period is Tm or more. Further, in order to acquire a lot of learning data from the same time series data, it is preferable that the extraction time width Tw is narrow. For example, the extraction time width Tw is preferably 10 times or less of the maximum period Tm, more preferably 8 times or less of the maximum period Tm, particularly preferably 6 times or less of the maximum period Tm, and the maximum. Most preferably, it is 4 times or less of the period Tm. Further, when the extraction time width Tw is narrow, the
(2)対象の状態の推定に利用されるパラメータは、対象の動きに関連する任意のパラメータであってよい。すなわち、パラメータは、対象の動きによって変化する任意のパラメータであってよい。例えば、パラメータは、速度、角速度、角加速度、地磁気方向、気圧、温度を含む複数のパラメータから任意に選択された1以上のパラメータを含んでよい。地磁気方向と気圧と温度とは、対象の移動に応じて変化し得る。速度、角速度、角加速度との測定値は、いずれも、互いに異なるK個の軸(Kは1以上3以下)の成分を含んでよい。 (2) The parameter used for estimating the state of the target may be any parameter related to the movement of the target. That is, the parameter may be any parameter that changes depending on the movement of the target. For example, the parameters may include one or more parameters arbitrarily selected from a plurality of parameters including velocity, angular velocity, angular acceleration, geomagnetic direction, barometric pressure, and temperature. The geomagnetic direction, atmospheric pressure, and temperature can change according to the movement of the object. The measured values of velocity, angular velocity, and angular acceleration may all contain components of K axes (K is 1 or more and 3 or less) that are different from each other.
(3)分類される状態は、図5(A)−図5(E)の5個の状態SA-SEに限らず、対象の動きが互いに異なる任意の複数の状態であってよい。例えば、「対象が走っている状態」、「対象が停止している状態」などの他の状態を含む複数の状態から、対象の状態が推定されてよい。いずれの場合も、対象の状態は、予め決められた複数の状態から推定されてよい。 (3) The classified states are not limited to the five states SA-SE shown in FIGS. 5 (A) to 5 (E), and may be any plurality of states in which the movements of the objects are different from each other. For example, the state of the target may be estimated from a plurality of states including other states such as "a state in which the target is running" and "a state in which the target is stopped". In either case, the target state may be estimated from a plurality of predetermined states.
(4)対象の状態の推定に利用される予測モデルは、図2のニューラルネットワークNNに代えて、他の種々の予測モデルであってよい。予測モデルは、1以上の畳込層を備えてよい。また、予測モデルは、畳込層と畳込層の後ろに接続されたプーリング層との1以上のセットを備えてよい。また、予測モデルは、畳込層を含まずに、複数の全結合層で構成されてもよい。予測モデルは、種々の人工ニューラルネットワークを含んでよい。また、予測モデルは、人工ニューラルネットワークに限らず、他の種々のモデルを含んでよい。予測モデルは、例えば、人工ニューラルネットワークと、隠れマルコフモデルと、推論エンジンと、のグループから任意に選択された1以上のモデルを含んでよい。一般的には、予測モデルは、グラフ画像データを用いて、対象の状態の推定結果を示すデータを出力する種々のモデルであってよい。 (4) The prediction model used for estimating the state of the target may be various other prediction models instead of the neural network NN of FIG. The predictive model may include one or more convolutional layers. The predictive model may also include one or more sets of convolutional layers and pooling layers connected behind the convolutional layers. Further, the prediction model may be composed of a plurality of fully connected layers without including the convolution layer. The prediction model may include various artificial neural networks. Further, the prediction model is not limited to the artificial neural network, and may include various other models. The predictive model may include, for example, one or more models arbitrarily selected from the group of artificial neural networks, hidden Markov models, and inference engines. In general, the prediction model may be various models that output data indicating the estimation result of the target state using graph image data.
(5)S370(図9)の出力処理は、画像の出力(具体的には、表示)に代えて、状態の推定結果を示す情報を出力する任意の処理であってよい。例えば、プロセッサ210は、推定された状態を示す音(例えば、音声やチャイム)を、スピーカーから出力する処理を実行してよい。また、プロセッサ210は、推定結果を示すデータを、データ処理装置200に接続された外部記憶装置に出力(すなわち、格納)する処理を実行してよい。
(5) The output process of S370 (FIG. 9) may be an arbitrary process of outputting information indicating a state estimation result instead of the image output (specifically, display). For example, the
いずれの場合も、状態の推定結果は、種々の処理で利用されてよく、例えば、対象の行動パターンの推定に利用されてよい。そして、対象の行動パターンの推定結果は、行動パターンの改善に利用されてよい。例えば、対象は、工場で作業を行うロボットであってよい。そして、ロボットの行動パターンの推定結果に基づいて、ロボットの作業の手順が改善されてよい。また、対象は、複合機を操作する作業者であってよい。そして、作業者の行動パターンの推定結果に基づいて、複合機の構成(例えば、用紙カセットの位置、操作パネルの位置など)が変更されてよい。 In either case, the state estimation result may be used in various processes, for example, for estimating the behavior pattern of the target. Then, the estimation result of the target behavior pattern may be used for improving the behavior pattern. For example, the target may be a robot that works in a factory. Then, the procedure of the robot's work may be improved based on the estimation result of the robot's behavior pattern. Further, the target may be an operator who operates the multifunction device. Then, the configuration of the multifunction device (for example, the position of the paper cassette, the position of the operation panel, etc.) may be changed based on the estimation result of the behavior pattern of the worker.
(6)図1、図3、図4の実施例では、同じデータ処理装置200が、学習データを生成する生成装置の例であり、また、予測モデルをトレーニングするトレーニング装置の例である。これに代えて、学習データの生成処理は、予測モデルをトレーニングする装置とは異なる装置によって、実行されてよい。また、図1、図3、図9の実施例では、同じデータ処理装置200が、予測モデルを用いて対象の状態を推定する推定装置の例である。なお、対象の状態を推定する処理は、学習データを生成する生成装置とは異なる装置によって、実行されてよい。また、対象の状態を推定する処理は、予測モデルをトレーニングする装置とは異なる装置によって、実行されてよい。
(6) In the examples of FIGS. 1, 3, and 4, the same
(7)学習データを生成する生成装置は、パーソナルコンピュータとは異なる種類の装置(例えば、複合機、プリンタ、スキャナ、デジタルカメラ、スマートフォン、ネットワークに接続されたサーバ装置)であってもよい。また、ネットワークを介して互いに通信可能な複数の装置(例えば、コンピュータ)が、学習データを生成する処理の機能を一部ずつ分担して、全体として、学習データを生成する機能を提供してもよい(これらの装置を備えるシステムが、学習データの生成装置に対応する)。学習データを用いて予測モデルをトレーニングするトレーニング装置と、学習済モデルにグラフ画像データを入力することによって対象の状態を推定する推定装置とについても、同様である。 (7) The generation device that generates the training data may be a device of a type different from that of the personal computer (for example, a multifunction device, a printer, a scanner, a digital camera, a smartphone, a server device connected to a network). Further, even if a plurality of devices (for example, a computer) capable of communicating with each other via a network share the function of the process of generating the learning data part by part and provide the function of generating the learning data as a whole. Good (systems with these devices correspond to learning data generators). The same applies to the training device that trains the prediction model using the training data and the estimation device that estimates the state of the target by inputting graph image data into the trained model.
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図1の学習済モデル234は、プログラムモジュールに代えて、ASIC(Application Specific Integrated Circuit)等のハードウェア回路によって実現されてよい。
In each of the above embodiments, a part of the configuration realized by the hardware may be replaced with software, and conversely, a part or all of the configuration realized by the software may be replaced with the hardware. May be good. For example, the trained
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD−ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。 In addition, when a part or all of the functions of the present invention are realized by a computer program, the program is provided in a form stored in a computer-readable recording medium (for example, a non-temporary recording medium). be able to. The program may be used while being stored on the same or different recording medium (computer-readable recording medium) as it was provided. The "computer-readable recording medium" is not limited to a portable recording medium such as a memory card or a CD-ROM, but is connected to an internal storage device in the computer such as various ROMs or a computer such as a hard disk drive. It may also include an external storage device.
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。 Although the present invention has been described above based on Examples and Modifications, the above-described embodiments of the invention are for facilitating the understanding of the present invention and do not limit the present invention. The present invention can be modified and improved without departing from the spirit thereof, and the present invention includes its equivalents.
200…データ処理装置、210…プロセッサ、215…記憶装置、220…揮発性記憶装置、230…不揮発性記憶装置、231…第1プログラム、232…第2プログラム、234…学習済モデル、240…表示部、250…操作部、270…通信インタフェース、300…センサ、505…入力層、510…第1畳込層、520…第1プーリング層、530…第2畳込層、540…第2プーリング層、550…第1全結合層、560…第2全結合層、570…第3全結合層、580…判定部、700…抽出期間、700t…抽出期間、811−816…時系列データセット、821−826…周波数スペクトルセット、830…グラフ画像データ、830t…グラフ画像、840…教師データ、850…評価値、900…作業者、910…台車、920…荷物、1000…システム、T…時間、TS…開始時間、T1−T5…変化時間、TE…終了時間、P1−P6…状態期間、F…周波数、M…強度、FP1−FP6…ピーク周波数、FCx−FCz、FVx−FVz…周波数スペクトル、SA−SE…状態、PA−PE…成分値、NN…人工ニューラルネットワーク、Ga…グラフ、Td…時間差、Fm…最も低いピーク周波数、Tm…最大周期、Tw…抽出時間幅、Dx…第1方向、Dy…第2方向、ACx、ACy、ACz、AVx、AVy、AVz…パラメータ
200 ... data processing device, 210 ... processor, 215 ... storage device, 220 ... volatile storage device, 230 ... non-volatile storage device, 231 ... first program, 232 ... second program, 234 ... trained model, 240 ... display Unit, 250 ... Operation unit, 270 ... Communication interface, 300 ... Sensor, 505 ... Input layer, 510 ... First convolution layer, 520 ... First pooling layer, 530 ... Second convolution layer, 540 ...
Claims (7)
対象に取り付けられたセンサによって測定された測定値であって前記対象の動きに関連するパラメータの前記測定値と、前記対象の状態の分類と、の経時変化を示す時系列データを取得し、
前記測定値の前記経時変化の周波数スペクトルを、前記状態の前記分類毎に算出し、
前記状態の前記分類毎に最大のピークの周波数であるピーク周波数を特定し、
前記状態の全ての前記分類の前記ピーク周波数のうち最も低いピーク周波数を特定し、
前記最も低いピーク周波数を用いることによって、前記最も低いピーク周波数が低いほど広い時間幅を決定し、
前記時間幅の期間内の前記測定値の前記経時変化を示すグラフの画像データであって前記状態の前記分類に対応付けられた前記画像データを含む学習データを生成する、
学習データの生成方法。 A method of generating training data for training predictive models.
Acquire time-series data indicating changes over time between the measured values of the parameters related to the movement of the target, which are the measured values measured by the sensor attached to the target, and the classification of the state of the target.
The frequency spectrum of the change with time of the measured value is calculated for each of the classifications of the state.
The peak frequency, which is the maximum peak frequency, is specified for each of the classifications of the above states.
The lowest peak frequency among the peak frequencies of all the classifications in the above state is identified.
By using the lowest peak frequency, the lower the lowest peak frequency, the wider the time width is determined.
A learning data including the image data of a graph showing the time-dependent change of the measured value within the period of the time width and associated with the classification of the state is generated.
How to generate training data.
前記学習データの生成は、前記時間幅を有する複数の期間であって、互いに異なるとともに、隣合う2つの期間の時間差が前記時間幅よりも小さい、前記複数の期間のそれぞれに対応する前記学習データを生成することを含む、
学習データの生成方法。 The method for generating learning data according to claim 1.
The generation of the training data is the learning data corresponding to each of the plurality of periods having the time width, which are different from each other and the time difference between the two adjacent periods is smaller than the time width. Including producing,
How to generate training data.
前記時間幅は、前記最も低いピーク周波数の1周期の時間の1/2以上、かつ、10倍以下である、
学習データの生成方法。 The method for generating learning data according to claim 1 or 2.
The time width is ½ or more and 10 times or less the time of one cycle of the lowest peak frequency.
How to generate training data.
請求項1から3のいずれかに記載の生成方法に従って学習データを生成し、
前記学習データを用いて予測モデルをトレーニングする、
トレーニング方法。 It ’s a predictive model training method.
The training data is generated according to the generation method according to any one of claims 1 to 3.
Training the prediction model using the training data,
Training method.
前記予測モデルは、1つ以上の畳込層を含むニューラルネットワークのモデルである、
トレーニング方法。 The training method according to claim 4.
The prediction model is a model of a neural network containing one or more convolutional layers.
Training method.
請求項4または5に記載のトレーニング方法によってトレーニングされた学習済の予測モデル。 It ’s a predictive model,
A trained predictive model trained by the training method according to claim 4 or 5.
対象に取り付けられたセンサによって測定された測定値であって前記対象の動きに関連するパラメータの前記測定値と、前記対象の状態の分類と、の経時変化を示す時系列データを取得する機能と、
前記測定値の前記経時変化の周波数スペクトルを、前記状態の前記分類毎に算出する機能と、
前記状態の前記分類毎に最大のピークの周波数であるピーク周波数を特定する機能と、
前記状態の全ての前記分類の前記ピーク周波数のうち最も低いピーク周波数を特定する機能と、
前記最も低いピーク周波数を用いることによって、前記最も低いピーク周波数が低いほど広い時間幅を決定する機能と、
前記時間幅の期間内の前記測定値の前記経時変化を示すグラフの画像データであって前記状態の前記分類に対応付けられた前記画像データを含む学習データを生成する機能と、
をコンピュータに実現させる、コンピュータプログラム。 A computer program for computers that produces training data for training predictive models.
A function to acquire time-series data indicating a change over time between the measured value of the parameter related to the movement of the target, which is the measured value measured by the sensor attached to the target, and the classification of the state of the target. ,
A function of calculating the frequency spectrum of the time-dependent change of the measured value for each of the classifications of the state, and
A function to specify the peak frequency, which is the maximum peak frequency for each of the classifications of the state, and
A function to identify the lowest peak frequency among the peak frequencies of all the above categories in the above state, and
By using the lowest peak frequency, the function of determining a wider time width as the lowest peak frequency is lower, and
A function of generating learning data including the image data of a graph showing the time-dependent change of the measured value within the period of the time width and associated with the classification of the state.
A computer program that makes a computer realize.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019063310A JP7299560B2 (en) | 2019-03-28 | 2019-03-28 | Learning data generation method, training method, prediction model, computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019063310A JP7299560B2 (en) | 2019-03-28 | 2019-03-28 | Learning data generation method, training method, prediction model, computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020166315A true JP2020166315A (en) | 2020-10-08 |
JP7299560B2 JP7299560B2 (en) | 2023-06-28 |
Family
ID=72716110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019063310A Active JP7299560B2 (en) | 2019-03-28 | 2019-03-28 | Learning data generation method, training method, prediction model, computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7299560B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022114190A1 (en) * | 2020-11-30 | 2022-06-02 | Brother Kogyo Kabushiki Kaisha | Information processing system and information processing method |
CN114662830A (en) * | 2020-12-04 | 2022-06-24 | 株式会社东芝 | Learning device, analysis device, learning method, and storage medium |
WO2023176437A1 (en) * | 2022-03-17 | 2023-09-21 | Furuno Electric Co., Ltd. | Methods and systems for generating learning model to predict failure of drain pump |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014071823A (en) * | 2012-10-01 | 2014-04-21 | Fujitsu Ltd | Information input device, specific frequency extraction method, and specific frequency extraction program |
JP2017157213A (en) * | 2016-02-29 | 2017-09-07 | 富士通株式会社 | Method and data processing apparatus for generating time series data sets for predictive analysis |
US20170300822A1 (en) * | 2016-04-06 | 2017-10-19 | International Business Machines Corporation | Adaptive window size segmentation for activity recognition |
WO2020059498A1 (en) * | 2018-09-21 | 2020-03-26 | 日本電気株式会社 | Information processing device, information processing method, and program |
-
2019
- 2019-03-28 JP JP2019063310A patent/JP7299560B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014071823A (en) * | 2012-10-01 | 2014-04-21 | Fujitsu Ltd | Information input device, specific frequency extraction method, and specific frequency extraction program |
JP2017157213A (en) * | 2016-02-29 | 2017-09-07 | 富士通株式会社 | Method and data processing apparatus for generating time series data sets for predictive analysis |
US20170300822A1 (en) * | 2016-04-06 | 2017-10-19 | International Business Machines Corporation | Adaptive window size segmentation for activity recognition |
WO2020059498A1 (en) * | 2018-09-21 | 2020-03-26 | 日本電気株式会社 | Information processing device, information processing method, and program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022114190A1 (en) * | 2020-11-30 | 2022-06-02 | Brother Kogyo Kabushiki Kaisha | Information processing system and information processing method |
CN114662830A (en) * | 2020-12-04 | 2022-06-24 | 株式会社东芝 | Learning device, analysis device, learning method, and storage medium |
WO2023176437A1 (en) * | 2022-03-17 | 2023-09-21 | Furuno Electric Co., Ltd. | Methods and systems for generating learning model to predict failure of drain pump |
Also Published As
Publication number | Publication date |
---|---|
JP7299560B2 (en) | 2023-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7213241B2 (en) | Meta-learning for Multitask Learning on Neural Networks | |
US20230385640A1 (en) | Misuse index for explainable artificial intelligence in computing environments | |
US11693901B2 (en) | Systems and methods for geolocation prediction | |
CN110998604B (en) | Recognition and reconstruction of objects with local appearance | |
CN104794733B (en) | Method for tracing object and device | |
WO2018051944A1 (en) | People flow estimation device, people flow estimation method, abd recording medium | |
US20180181860A1 (en) | Deriving movement behaviour from sensor data | |
US11468290B2 (en) | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium | |
US11740321B2 (en) | Visual inertial odometry health fitting | |
JP6529470B2 (en) | Movement situation learning device, movement situation recognition device, method, and program | |
KR102697345B1 (en) | An electronic device and method for obtaining emotional information | |
JP7299560B2 (en) | Learning data generation method, training method, prediction model, computer program | |
WO2019217218A1 (en) | Training set sufficiency for image analysis | |
JP6948851B2 (en) | Information processing device, information processing method | |
US11915430B2 (en) | Image analysis apparatus, image analysis method, and storage medium to display information representing flow quantity | |
WO2021200392A1 (en) | Data adjustment system, data adjustment device, data adjustment method, terminal device, and information processing device | |
CN114981836A (en) | Electronic device and control method of electronic device | |
KR20210155655A (en) | Method and apparatus for identifying object representing abnormal temperatures | |
KR20190109654A (en) | Electronic device and method for measuring heart rate | |
KR102532230B1 (en) | Electronic device and control method thereof | |
JP2020170252A (en) | Image processing device, image processing method, and program | |
JP6707715B2 (en) | Learning device, estimating device, learning method and program | |
US20200234085A1 (en) | Electronic device and feedback information acquisition method therefor | |
US20240220817A1 (en) | System and method for self-supervised federated learning for automotive applications | |
WO2022009821A1 (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220311 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230329 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230517 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230530 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7299560 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |