(57)【要約】【課題】動体の動作を適切に特定可能とすることを目的とする。【解決手段】入力スペクトル計算部２３は、動体の動作を表す波形データを入力データとして、入力データのスペクトルである一次スペクトルを計算する。入力スペクトル計算部２３は、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する。そして、動作特定部２４は、入力スペクトル計算部２３によって計算された入力スペクトルから動体の動作の種別を特定する。【選択図】図１
2018073081.tif 000002
【特許請求の範囲】
【請求項１】
動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する入力スペクトル計算部と、
前記入力スペクトル計算部によって計算された入力スペクトルから前記動体の動作の種別を特定する動作特定部と
を備える動作特定装置。
【請求項２】
前記動作特定装置は、さらに、
複数の対象種別それぞれについて、その対象種別の動作を表す波形データを学習データとし、各学習データを対象として、対象の学習データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを学習スペクトルとして計算する学習スペクトル計算部と、
前記学習スペクトル計算部によって計算された各学習データについての学習スペクトルから、対象種別毎の二次スペクトルの発生確率を表す確率モデルを生成するモデル生成部と
を備え、
前記動作特定部は、前記モデル生成部によって生成された確率モデルに基づき、前記入力スペクトルから前記動体の動作の種別を特定する
請求項１に記載の動作特定装置。
【請求項３】
前記動作特定部は、前記確率モデルに基づき、前記複数の対象種別それぞれについて前記入力スペクトルが得られる確率を計算して、前記入力スペクトルが得られる確率が最も高い対象種別を、前記動体の動作の種別として特定する
請求項２に記載の動作特定装置。
【請求項４】
前記入力スペクトル計算部は、前記入力データから切り出された各波形データの入力スペクトルを計算し、
前記動作特定部は、前記複数の対象種別それぞれについて、前記各波形データの入力スペクトルが得られる確率を合算した合算確率を計算して、前記合算確率が最も高い対象種別を、前記動体の動作の種別として特定する
請求項３に記載の動作特定装置。
【請求項５】
前記動作特定部は、全ての対象種別について前記合算確率が基準確率より低い場合には、前記動体の動作の種別を前記対象種別とは異なる種別と特定する
請求項４に記載の動作特定装置。
【請求項６】
前記動作特定部は、全ての対象種別について前記合算確率が基準確率より低く、かつ、前記各波形データの入力スペクトルの分散が第１基準値よりも小さい場合には、前記動体の動作の種別を異常な動作の種別と特定し、全ての対象種別について前記合算確率が基準確率より低く、かつ、前記各波形データの入力スペクトルの分散が第２基準値よりも大きい場合には、前記動体の動作の種別を前記対象種別から他の対象種別へ移り変わる中間動作の種別と特定する
請求項５に記載の動作特定装置。
【請求項７】
前記学習スペクトル計算部は、複数の対象種別それぞれについて、複数の動体の波形データを学習データとして、各学習データについての学習スペクトルを計算し、
前記モデル生成部は、前記学習スペクトルから対象種別毎の二次スペクトルの発生確率を表す確率モデルを全体モデルとして生成するとともに、前記動作特定部によって前記全体モデルに基づき特定の動体の動作の種別が基準数以上特定されると、前記特定の動体についての前記入力スペクトルから前記特定の動体についての二次スペクトルの発生確率を表す確率モデルを個別モデルとして生成する
請求項２から６までのいずれか１項に記載の動作特定装置。
【請求項８】
前記動作特定部は、前記個別モデルが生成された場合には、前記特定の動体の前記特定の動作について前記入力スペクトルが得られる確率を、前記個別モデルに基づき計算する
請求項７に記載の動作特定装置。
【請求項９】
コンピュータが、動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算し、
コンピュータが、前記入力スペクトルから前記動体の動作の種別を特定する動作特定方法。
【請求項１０】
動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する入力スペクトル計算処理と、
前記入力スペクトル計算処理によって計算された入力スペクトルから前記動体の動作の種別を特定する動作特定処理と
をコンピュータに実行させる動作特定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、移動体の動作を特定する技術に関する。
【背景技術】
【０００２】
人等の動作を特定する技術として、機械学習を用いた方法がある（特許文献１参照）。最近では、人等の動作を特定する技術として、ディープラーニングを用いた方法も研究されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２０２６５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ディープラーニングを用いた方法は、特定精度は高くなるものの、学習用に多くのデータが必要であること、学習に長い時間が必要であること、誤って動作が特定された際の解析が困難であることといった課題があった。
この発明は、動体の動作を適切に特定可能とすることを目的とする。
【課題を解決するための手段】
【０００５】
この発明に係る動作特定装置は、
動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する入力スペクトル計算部と、
前記入力スペクトル計算部によって計算された入力スペクトルから前記動体の動作の種別を特定する動作特定部と
を備える。
【０００６】
前記動作特定装置は、さらに、
複数の対象種別それぞれについて、その対象種別の動作を表す波形データを学習データとし、各学習データを対象として、対象の学習データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを学習スペクトルとして計算する学習スペクトル計算部と、
前記学習スペクトル計算部によって計算された各学習データについての学習スペクトルから、対象種別毎の二次スペクトルの発生確率を表す確率モデルを生成するモデル生成部と
を備え、
前記動作特定部は、前記モデル生成部によって生成された確率モデルに基づき、前記入力スペクトルから前記動体の動作の種別を特定する。
【０００７】
前記動作特定部は、前記確率モデルに基づき、前記複数の対象種別それぞれについて前記入力スペクトルが得られる確率を計算して、前記入力スペクトルが得られる確率が最も高い対象種別を、前記動体の動作の種別として特定する。
【０００８】
前記入力スペクトル計算部は、前記入力データから切り出された各波形データの入力スペクトルを計算し、
前記動作特定部は、前記複数の対象種別それぞれについて、前記各波形データの入力スペクトルが得られる確率を合算した合算確率を計算して、前記合算確率が最も高い対象種別を、前記動体の動作の種別として特定する。
【０００９】
前記動作特定部は、全ての対象種別について前記合算確率が基準確率より低い場合には、前記動体の動作の種別を前記対象種別とは異なる種別と特定する。
【００１０】
前記動作特定部は、全ての対象種別について前記合算確率が基準確率より低く、かつ、前記各波形データの入力スペクトルの分散が第１基準値よりも小さい場合には、前記動体の動作の種別を異常な動作の種別と特定し、全ての対象種別について前記合算確率が基準確率より低く、かつ、前記各波形データの入力スペクトルの分散が第２基準値よりも大きい場合には、前記動体の動作の種別を前記対象種別から他の対象種別へ移り変わる中間動作の種別と特定する。
【００１１】
前記学習スペクトル計算部は、複数の対象種別それぞれについて、複数の動体の波形データを学習データとして、各学習データについての学習スペクトルを計算し、
前記モデル生成部は、前記学習スペクトルから対象種別毎の二次スペクトルの発生確率を表す確率モデルを全体モデルとして生成するとともに、前記動作特定部によって前記全体モデルに基づき特定の動体の動作の種別が基準数以上特定されると、前記特定の動体についての前記入力スペクトルから前記特定の動体についての二次スペクトルの発生確率を表す確率モデルを個別モデルとして生成する。
【００１２】
前記動作特定部は、前記個別モデルが生成された場合には、前記特定の動体の前記特定の動作について前記入力スペクトルが得られる確率を、前記個別モデルに基づき計算する。
【００１３】
この発明に係る動作特定方法は、
コンピュータが、動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算し、
コンピュータが、前記入力スペクトルから前記動体の動作の種別を特定する。
【００１４】
この発明に係る動作特定プログラムは、
動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する入力スペクトル計算処理と、
前記入力スペクトル計算処理によって計算された入力スペクトルから前記動体の動作の種別を特定する動作特定処理と
をコンピュータに実行させる。
【発明の効果】
【００１５】
この発明では、動作を表す波形データのスペクトルのスペクトルを用いて動作の種別を特定する。これにより、動体の動作を適切に特定可能になる。
【図面の簡単な説明】
【００１６】
【図１】実施の形態１に係る動作特定装置１０の構成図。
【図２】実施の形態１に係る全体学習処理のフローチャート。
【図３】実施の形態１に係る波形データの切り出し方法の説明図。
【図４】実施の形態１に係るプリエンファシスフィルタの説明図。
【図５】実施の形態１に係るハミング窓フィルタの説明図。
【図６】実施の形態１に係る波形データのスペクトルの説明図。
【図７】実施の形態１に係る人が歩いている場合の波形データから計算された一次スペクトルの例を示す図。
【図８】実施の形態１に係る人が階段を下っている場合及び人がキーボードを打っている場合の波形データから計算された一次スペクトルの例を示す図。
【図９】実施の形態１に係る丸め処理の説明図。
【図１０】実施の形態１に係る二次スペクトルの説明図。
【図１１】実施の形態１に係る図７に示す一次スペクトルから計算された二次スペクトルを示す図。
【図１２】実施の形態１に係る図８に示す一次スペクトルから計算された二次スペクトルを示す図。
【図１３】実施の形態１に係るモデル生成処理の説明図。
【図１４】実施の形態１に係るモデル生成処理の説明図。
【図１５】実施の形態１に係る特定処理のフローチャート。
【図１６】実施の形態１に係る合計確率計算処理の説明図。
【図１７】変形例３に係る動作特定装置１０の構成図。
【図１８】実施の形態２に係る動作特定装置１０の構成図。
【図１９】実施の形態２に係る個別学習処理のフローチャート。
【図２０】実施の形態３に係る異常な動作の種別を特定する処理の説明図。
【図２１】実施の形態３に係る中間動作の種別を特定する処理の説明図。
【図２２】実施の形態４に係る動作例の説明図。
【発明を実施するための形態】
【００１７】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１を参照して、実施の形態１に係る動作特定装置１０の構成を説明する。
動作特定装置１０は、コンピュータである。
動作特定装置１０は、プロセッサ１１と、メモリ１２と、ストレージ１３と、通信インタフェース１４とのハードウェアを備える。プロセッサ１１は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００１８】
プロセッサ１１は、プロセッシングを行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。プロセッサ１１は、具体例としては、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
【００１９】
メモリ１２は、データを一時的に記憶する記憶装置である。メモリ１２は、具体例としては、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
【００２０】
ストレージ１３は、データを保管する記憶装置である。ストレージ１３は、具体例としては、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。また、ストレージ１３は、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカード、ＣＦ（ＣｏｍｐａｃｔＦｌａｓｈ）、ＮＡＮＤフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）といった可搬記憶媒体であってもよい。
【００２１】
通信インタフェース１４は、外部の装置と通信するためのインタフェースである。通信インタフェース１４は、具体例としては、Ｅｔｈｅｒｎｅｔ（登録商標）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＨＤＭＩ（登録商標，Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）のポートである。
【００２２】
動作特定装置１０は、機能構成要素として、学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４とを備える。学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能はソフトウェアにより実現される。
ストレージ１３には、学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ１１によりメモリ１２に読み込まれ、プロセッサ１１によって実行される。これにより、学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能が実現される。
また、ストレージ１３は、全体モデル３１を記憶する。全体モデル３１は、動体の動作を特定するための確率モデルである。
【００２３】
図１では、プロセッサ１１は、１つだけ示されている。しかし、動作特定装置１０は、プロセッサ１１を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能を実現するプログラムの実行を分担する。それぞれのプロセッサは、プロセッサ１１と同じように、プロセッシングを行うＩＣである。
動作特定装置１０は、クラウドシステムとして構築することができる。
【００２４】
＊＊＊動作の説明＊＊＊
図２から図１６を参照して、実施の形態１に係る動作特定装置１０の動作を説明する。
実施の形態１に係る動作特定装置１０の動作は、実施の形態１に係る動作特定方法に相当する。また、実施の形態１に係る動作特定装置１０の動作は、実施の形態１に係る動作特定プログラムの処理に相当する。
実施の形態１に係る動作特定装置１０の動作は、全体学習処理と、特定処理とに大別される。
【００２５】
図２から図１４を参照して、実施の形態１に係る全体学習処理を説明する。
＜全体学習処理の概要＞
学習スペクトル計算部２１は、複数の対象種別それぞれについて、その対象種別の動作を表す波形データを学習データとする。学習スペクトル計算部２１は、各学習データを対象として、対象の学習データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを学習スペクトルとして計算する。そして、モデル生成部２２は、学習スペクトル計算部２１によって計算された各学習データについての学習スペクトルから、対象種別毎の二次スペクトルの発生確率を表す確率モデルを生成する。
【００２６】
＜全体学習処理の詳細＞
（ステップＳ１０１：学習データ受付処理）
学習スペクトル計算部２１は、複数の学習データを受け付ける。複数の学習データは、複数の対象種別それぞれについて、その対象種別の動作を複数の動体それぞれが行った結果を表す波形データである。対象種別は、動体の対象とする動作の種別である。学習データは、一定時間（例えば、１０秒）以上の時間の動体の動作を表すものとする。
実施の形態１では、動体は人である。そのため、対象種別は、歩く、走る、階段を上るといった人の動作の種別である。つまり、実施の形態１では、複数の学習データは、歩く、走る、階段を上るといった動作の種別それぞれについて、その種別の動作を複数の人それぞれが行った結果を表す波形データである。なお、動体は、人に限らず、犬、猫といった動物であってもよい。また、動体は、動物に限らず、車両、船といった乗り物であってもよいし、生産設備といった機械であってもよい。
実施の形態１では、学習データは、加速度を示すデータであるとする。そのため、実施の形態１では、学習データは、人が加速度センサを備えたウェアラブル端末を装着した状態で、対象種別の動作を行って計測された加速度を示す波形データである。なお、学習データは、加速度を示すデータに限らず、動体の移動量を示すデータであってもよい。
【００２７】
続いて、ステップＳ１０１で受け付けられた各学習データについて、ステップＳ１０２からステップＳ１１１の処理が実行される。
ステップＳ１０２からステップＳ１０７の処理を学習スペクトル計算処理と呼ぶ。学習スペクトル計算処理では、学習データから学習スペクトルが計算される。
【００２８】
（ステップＳ１０２：データ切り出し処理）
学習スペクトル計算部２１は、対象とする学習データから、時系列に基準時間分ずつ波形データを切り出す。基準時間は、後述する処理においてスペクトルを計算することが可能な時間以上の時間である。スペクトルを計算するためには、波形が確認できる長さのデータが必要になる。実施の形態１では、基準時間は、４秒とする。
具体的には、図３に示すように、学習スペクトル計算部２１は、学習データの先頭から、一定時間（ここでは、１秒）ずつずらしながら、基準時間分の波形データを順に切り出す。つまり、１０秒分の学習データから７個の波形データが切り出される。これにより、少ない量の学習データを有効に利用することができる。
【００２９】
続いて、ステップＳ１０２で切り出された各波形データについて、ステップＳ１０３からステップＳ１１１の処理が実行される。
【００３０】
（ステップＳ１０３：プリエンファシスフィルタ計算処理）
学習スペクトル計算部２１は、対象の波形データをプリエンファシスフィルタに入力して、波形データを補正する。図４に示すように、プリエンファシスフィルタでは、波形データの平均値が０になるように補正されるとともに、波形データの高い周波数成分が強調されるように補正される。
なお、重力により常に下向きの力が加わるため、加速度を表す波形データの平均値は０にならないが、プリエンファシスフィルタを通すことにより、平均値が０になる。
【００３１】
（ステップＳ１０４：ハミング窓フィルタ計算処理）
学習スペクトル計算部２１は、ステップＳ１０３で補正された波形データをハミング窓フィルタに入力して、波形データを補正する。図５に示すように、ハミング窓フィルタでは、波形データの両端の値が概ね０になるように滑らかに補正される。
後述する処理においてスペクトルを計算する際、波形データの両端の値が一致していないと、正しいスペクトルが得られない。ハミング窓フィルタを通すことにより、波形データの両端の値が概ね０になり、一致する。
【００３２】
（ステップＳ１０５：一次スペクトル計算処理）
学習スペクトル計算部２１は、ステップＳ１０４で補正された波形データを離散フーリエ変換して、波形データのスペクトルである一次スペクトルを計算する。実施の形態１では、学習スペクトル計算部２１は、３８次元の一次スペクトルを計算する。なお、一次スペクトルの次元数はこれに限らず、他の次元でもよい。但し、ある程度適切に周波数成分が現れる程度の次元数にする必要がある。
図６の（Ａ）（Ｂ）に示すように、波形データのスペクトルを計算すると、波形データの周波数が得られる。つまり、図６の（Ａ）では、波形データは１秒間に１０回振幅しているため、スペクトルでは１０Ｈｚにピークがくる。同様に、図６の（Ｂ）では、波形データは１秒間に３回振幅しているため、スペクトルでは３Ｈｚにピークがくる。また、図６の（Ｃ）に示すように、図６の（Ａ）（Ｂ）の波形データを合成した波形データのスペクトルを計算すると、１０Ｈｚと３Ｈｚとにピークがくる。つまり、合成された波形は、スペクトルを計算することにより周波数成分に分解される。
具体例としては、図７に示すように、人が歩いている場合の波形データから一次スペクトルを計算すると、２Ｈｚと８Ｈｚにピークがくる。２Ｈｚのピークは、１秒間に２歩移動した、つまり左右の足を動かしたことを表していると推測される。また、８Ｈｚのピークは、骨格の揺れ等を表していると推測される。また、人が階段を下っている場合の一次スペクトルは、図８の（Ａ）に示すようになり、歩いている場合よりも振動のリズムに幅がある。また、人がキーボードを打っている場合の一次スペクトルは、図８の（Ｂ）に示すようになり、短い周期の振動が多くなる。
【００３３】
（ステップＳ１０６：丸め処理）
学習スペクトル計算部２１は、ステップＳ１０５で計算された一次スペクトルを丸めて次元数を落とす。実施の形態１では、学習スペクトル計算部２１は、３８次元の一次スペクトルを１２次元に丸める。
具体的には、図９に示すように、学習スペクトル計算部２１は、３８次元の一次スペクトルの両端の値を除外して３６次元にする。学習スペクトル計算部２１は、３６次元の一次スペクトルについて、先頭から３点毎にグループ分けする。そして、学習スペクトル計算部２１は、各グループについて３点の値の和を計算し、計算された値の対数（ｌｏｇ１０）を計算する。これにより、１２次元に丸められた一次スペクトルが計算される。
１２次元に丸めることにより、動作の種別に応じたスペクトルの特徴が抽出される。
【００３４】
（ステップＳ１０７：二次スペクトル計算処理）
学習スペクトル計算部２１は、ステップＳ１０６で丸められた一次スペクトルを離散コサイン変換して、一次スペクトルのスペクトルである二次スペクトルを学習スペクトルとして計算する。
図１０の（Ａ）（Ｂ）に示すように、波形データのスペクトルを計算すると、一次スペクトルの周波数が得られる。図１０の（Ａ）では、９Ｈｚにピークがきて、図１０の（Ｂ）では、５Ｈｚにピークがきている。また、図１０の（Ｃ）に示すように、図１０の（Ａ）（Ｂ）の波形データを合成した波形データのスペクトルを計算すると、９Ｈｚと５Ｈｚとにピークがくる。つまり、合成された波形は、スペクトルを計算することにより周波数成分に分解される。
具体例としては、図７の（Ｂ）に示す一次スペクトルのスペクトルを計算すると、図１１の（Ａ）のようになる。図７の（Ｂ）に示す一次スペクトルは、最初と最後とが３目盛以上の値になっているため、周波数の低い大きな波の一部を構成しているとみなされる。その結果、図１１の（Ａ）に示すように、最初の値が最大となる。このままでは、他の値の変化が分かりづらいので、最初の値を除いた残りの部分を拡大すると図１１の（Ｂ）のようになる。同様に、図８の（Ａ）に示す一次スペクトルのスペクトルを計算し、最初の値を除いた部分を拡大すると、図１２の（Ａ）のようになり、図８の（Ｂ）に示す一次スペクトルのスペクトルを計算し、最初の値を除いた部分を拡大すると、図１２の（Ｂ）のようになる。
一次スペクトルのままでは、人によってグラフが左右にずれる。具体的には、図７の例では、１秒間に２歩移動するため、２Ｈｚにピークがきていた。しかし、人によっては１秒間に３歩移動するかもしれないし、１秒間に１．５歩移動するかもしれない。これに伴い、骨格の揺れの回数も変わる。そのため、同じ歩くという動作の場合、波形は同じような形状でも、人によってグラフが左右にずれてしまう。一次スペクトルのスペクトルを計算すると、この左右のずれが吸収され、左右にずれたグラフが同じものとなる。
【００３５】
続いて、ステップＳ１０８からステップＳ１１１の処理が実行される。ステップＳ１０８からステップＳ１１１の処理を、モデル生成処理と呼ぶ。モデル生成処理では、対象種別毎の二次スペクトルの発生確率を表す確率モデルが生成される。実施の形態１では、隠れマルコフモデルにより、確率モデルが生成される。
隠れマルコフモデルは、複数の状態の間の遷移確率と、各状態における確率分布とで表される。ここでは、各状態は、各対象種別が表す動作を分類したそれぞれの状態になる。具体例としては、歩くという動作は、歩き始めの加速時の動作と、一定速度で歩いている動作と等に分類される。この加速時の動作と、一定速度で歩いている動作とが、歩くという動作における状態である。そして、ここでは、二次スペクトルの波形は、同じ動作であっても人によって少しずつ異なるため、各状態における確率分布を、離散的な確率分布ではなく正規分布により表す。
隠れマルコフモデルにより確率モデルを生成する方法には、Ｂａｕｍ−Ｗｅｌｃｈアルゴリズムがある。しかし、Ｂａｕｍ−Ｗｅｌｃｈアルゴリズムは、原則として、各状態における確率分布が離散的な確率分布である場合に適用される。そこで、ここでは、モデル生成部２２は、非特許文献１：ｈｔｔｐ：／／ｗｗｗ．ｓｅａｓ．ｕｃｌａ．ｅｄｕ／ｓｐａｐｌ／ｗｅｉｃｈｕ／ｈｔｋｂｏｏｋ／に記載された、各状態の確率分布が正規分布により表された場合に対してＢａｕｍ−Ｗｅｌｃｈアルゴリズムを応用した方法により、確率モデルを生成する。この方法は、既知のものであるため、詳細な説明は省略し、概要のみ説明する。
【００３６】
（ステップＳ１０８：発生確率計算処理）
モデル生成部２２は、ストレージ１３から全体モデル３１を読み出して、全体モデル３１に基づき、ステップＳ１０７で計算された学習スペクトルが発生する発生確率を計算する。具体的には、モデル生成部２２は、各状態について、その状態における正規分布を用いて、学習スペクトルが発生する発生確率を計算する。
なお、ストレージ１３には、正規分布の平均及び分散を固定値に、状態間の遷移確率は同じ確率に初期化された全体モデル３１が事前に記憶されているものとする。初めて全体学習処理が実行される場合には、この初期化された全体モデル３１が読み出される。
【００３７】
（ステップＳ１０９：遷移確率更新処理）
モデル生成部２２は、ステップＳ１０８で計算された発生確率に基づき、全体モデル３１における状態間の遷移確率を更新する。
例えば、２つの状態Ｘ，Ｙがある場合に、状態Ｘについての発生確率が状態Ｙについての発生確率よりも非常に高い場合には、状態Ｘから状態Ｘへの遷移確率が高くなり、状態Ｘから状態Ｙへの遷移確率が低くなる。また、状態Ｙから状態Ｘへの遷移確率が高くなり、状態Ｙから状態Ｙへの遷移確率が低くなる。
【００３８】
（ステップＳ１１０：正規分布更新処理）
モデル生成部２２は、ステップＳ１０９で更新された遷移確率に基づき、各状態における正規分布を更新する。つまり、モデル生成部２２は、更新された遷移確率で各状態に遷移したとして、各状態における正規分布を学習スペクトルを考慮して更新する。
【００３９】
具体例としては、図１３に示すように、学習スペクトルが新たにプロットされる。図１３では、図示を容易にするため、１２次元ある学習スペクトルのうち、先頭の２次元だけを表した２次元グラフを示している。実際には、１２次元グラフ上に学習スペクトルがプロットされる。図１３では、×印が過去の学習スペクトルを表しており、星印が新たにプロットされた学習スペクトルを表している。そして、図１３では、状態１と状態２との２つの状態があり、黒点がそれぞれの状態についての正規分布の平均を表し、黒点を中心とする楕円がそれぞれの状態についての分散を表している。
図１４に示すように、１２次元グラフ上に学習スペクトルがプロットされ、各次元の一方の正規分布が状態１に対応し、他方の正規分布が状態２に対応している。図１４では、図示を容易にするため、１２次元ある学習スペクトルを２次元ずつ分けて６個の２次元グラフにより表している。
ステップＳ１０８では、新たにプロットされた点の位置から、各状態における学習スペクトルが発生する発生確率が計算される。ステップＳ１０９では、計算された発生確率から、遷移確率が更新される。そして、ステップＳ１１０では、更新された遷移確率と、プロットされた点の位置、点の出現順とから、各状態における正規分布の平均及び分散が更新される。
【００４０】
（ステップＳ１１１：終了判定処理）
モデル生成部２２は、ステップＳ１０９からステップＳ１１０で更新された確率モデルに基づき、ステップＳ１０７で計算された学習スペクトルが発生する発生確率を各状態について計算する。モデル生成部２２は、各状態について計算された発生確率の合計と、ステップＳ１０８で各状態について計算された発生確率の合計との差が基準値以下であれば、対象の波形データについての処理を終了する。一方、差が基準値よりも大きい場合には、処理をステップＳ１０９に戻して、確率モデルを更新する。処理をステップＳ１０９に戻した場合、ステップＳ１０９では、ステップＳ１１１で計算された発生確率に基づき、状態間の遷移確率を更新する。
なお基準値とは、動作特定装置１０の操作者が計算された発生確率の合計と前回の発生確率の合計との差異がそれ以上の向上が見込めない数値として、予め定める数値であり、モデル生成部２２が用いるように設定される数値である。例えば、０．００１と定める。
【００４１】
図１５から図１６を参照して、実施の形態１に係る特定処理を説明する。
＜特定処理の概要＞
入力スペクトル計算部２３は、動体の動作を表す波形データを入力データとして、入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する。動作特定部２４は、モデル生成部２２によって生成された確率モデルである全体モデル３１に基づき、入力スペクトル計算部２３によって計算された入力スペクトルから動体の動作の種別を特定する。
【００４２】
＜特定処理の詳細＞
（ステップＳ２０１：入力データ受付処理）
入力スペクトル計算部２３は、入力データを受け付ける。入力データは、動作の種別を特定する対象の動体の動作を表す波形データである。入力データは、一定時間（例えば、５．５秒）以上の時間の動作を表すものとする。
実施の形態１では、入力データは、学習データと同じ、加速度を示すデータであるとする。そのため、実施の形態１では、入力データは、対象の動体である人が加速度センサを備えたウェアラブル端末を装着した状態で計測された加速度を示す波形データである。なお、学習データが加速度を示すデータではなく、他の種別のデータである場合、入力データも学習データと同じ他の種別のデータであることが、動作の種別を特定する上で望ましい。
【００４３】
ステップＳ２０２からステップＳ２０７の処理を入力スペクトル計算処理と呼ぶ。入力スペクトル計算処理では、入力データから入力スペクトルが計算される。
（ステップＳ２０２：データ切り出し処理）
入力スペクトル計算部２３は、ステップＳ２０１で受け付けられた入力データから、時系列に基準時間分ずつ波形データを切り出す。基準時間は、後述する処理においてスペクトルを計算することが可能な時間以上の時間である。スペクトルを計算するためには、波形が確認できる長さのデータが必要になる。実施の形態１では、基準時間は、４秒とする。
具体的には、入力スペクトル計算部２３は、入力データの先頭から、１フレームずつずらしながら、基準時間分の波形データを順に切り出す。
【００４４】
続いて、ステップＳ２０２で切り出された各波形データについて、ステップＳ２０３からステップＳ２０８の処理が実行される。
【００４５】
ステップＳ２０３からステップＳ２０７の処理は、図２のステップＳ１０３からステップＳ１０７の処理と同様である。そこで、ステップＳ２０３からステップＳ２０７の処理については、簡単に説明する。
ステップＳ２０３では、入力スペクトル計算部２３は、対象の波形データをプリエンファシスフィルタに入力して、波形データを補正する。ステップＳ２０４では、入力スペクトル計算部２３は、ステップＳ２０３で補正された波形データをハミング窓フィルタに入力して、波形データを補正する。ステップＳ２０５では、入力スペクトル計算部２３は、ステップＳ２０４で補正された波形データを離散フーリエ変換して、波形データのスペクトルである３８次元の一次スペクトルを計算する。ステップＳ２０６では、入力スペクトル計算部２３は、ステップＳ２０５で計算された一次スペクトルを丸めて次元数を１２次元に落とす。ステップＳ２０７では、入力スペクトル計算部２３は、ステップＳ２０６で丸められた一次スペクトルを離散コサイン変換して、一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する。
【００４６】
（ステップＳ２０８：発生確率計算処理）
動作特定部２４は、ストレージ１３から全体モデル３１を読み出して、全体モデル３１に基づき、複数の対象種別それぞれについてステップＳ２０７で計算された入力スペクトルが得られる確率を計算する。
具体的には、動作特定部２４は、複数の対象種別それぞれの各状態について、その状態における正規分布を用いて、入力スペクトルが発生する発生確率を計算する。
【００４７】
（ステップＳ２０９：合計確率計算処理）
動作特定部２４は、複数の対象種別それぞれについて、各波形データについてステップＳ２０８で計算された発生確率と、状態間の遷移確率とから、合計確率を計算する。
具体例としては、図１６に示すように、ある対象種別について状態１と状態２との２つの状態があり、状態１から状態１への遷移確率が０．９、状態１から状態２への遷移確率が０．１、状態２から状態１への遷移確率が０．９、状態２から状態２への遷移確率が０．１であったとする。また、ステップＳ２０２で３つの波形データが切り出され、１つ目の波形データについての入力スペクトルの発生確率は、状態１が０．２で状態２が０．４、２つ目の波形データについての入力スペクトルの発生確率は、状態１が０．３で状態２が０．３、３つ目の波形データについての入力スペクトルの発生確率は、状態１が０．４で状態２が０．３であったとする。
この場合、１つ目の波形データが状態１、２つ目の波形データが状態１、３つ目の波形データが状態１であった確率は、０．２×０．９×０．３×０．９×０．４＝０．０１９４４となる。また、１つ目の波形データが状態１、２つ目の波形データが状態１、３つ目の波形データが状態２であった確率は、０．２×０．９×０．３×０．１×０．３＝０．００１６２となる。このように、動作特定部２４は、全ての遷移パターンについての確率を計算する。そして、動作特定部２４は、計算された確率を合計して合計確率を計算する。
【００４８】
（ステップＳ２１０：動作決定処理）
動作特定部２４は、ステップＳ２０９で計算された合計確率が最も高い対象種別を、動体の動作の種別として特定する。
【００４９】
＊＊＊実施の形態１の効果＊＊＊
以上のように、実施の形態１に係る動作特定装置１０は、動作を表す波形データのスペクトルのスペクトル、つまり二次スペクトルを用いて動作の種別を特定する。動作を表す波形データのスペクトルのスペクトルは、適切に動体の動作を表す場合が多い。そのため、少ない学習量で適切に動体の動作を特定することが可能である。
特に、二次スペクトルは、同じ動作の種別における人（例えば体型、体格、年齢、性別による差異）によるグラフの差異を吸収している。そのため、動作を表す波形データのスペクトルのスペクトルを用いることにより、精度よく人の動作の種別を特定することが可能である。また人に限らず、動物、動体等の大きさ、性格、性能等による差異を吸収することができる。
【００５０】
また、実施の形態１に係る動作特定装置１０は、隠れマルコフモデルを用いて確率モデルである全体モデル３１を生成する。これにより、ディープラーニングを用いる従来の方法等と比べ、少ない学習量とすることができる。
【００５１】
また、ディープラーニングを用いる従来の方法と異なり、実施の形態１に係る動作特定装置１０は、動作の種別を誤って特定した場合に、一次スペクトル及び二次スペクトルを解析することにより原因の特定が可能である。そのため、特定された原因に応じた対処をすることにより、動作の種別の特定精度をさらに高くすることが可能である。
動作特定装置１０をクラウドシステムとして構築する場合、学習データを収集しやすくなる。また学習データが多く収集できることにより、学習スペクトルの精度向上が見込まれる。また学習データが多く収集できることにより、データベースの拡張が必要になった場合にもクラウトシステムであれば、容易に実現することができる。
【００５２】
＊＊＊他の構成＊＊＊
＜変形例１＞
実施の形態１では、学習データ及び入力データを、加速度を示すデータであるとした。しかし、学習データ及び入力データは、動体の移動量を示すデータであってもよい。具体例としては、学習データ及び入力データは、動画データにおける動体の移動量が抽出されたデータであってもよい。例えば、学習データ及び入力データは、動画データに含まれるある動体の部位の移動を表した波形データであってもよい。また、学習データ及び入力データは、位置情報に基づき特定された動体の移動を表した波形データであってもよい。
入力データが動画データにおける動体の移動量が抽出されたデータの場合、カメラで撮影された動画データ中の動体の動作の種別を特定するといったことが可能である。
【００５３】
＜変形例２＞
実施の形態１では、隠れマルコフモデルに基づき全体モデル３１が生成された。しかし、隠れマルコフモデルでなく、ベイズの定理等に基づく他のモデルに基づき全体モデル３１が生成されてもよい。
【００５４】
＜変形例３＞
実施の形態１では、動作特定装置１０の各機能構成要素の機能がソフトウェアで実現された。しかし、変形例３として、動作特定装置１０の各機能構成要素の機能はハードウェアで実現されてもよい。この変形例３について、実施の形態１と異なる点を説明する。
【００５５】
図１７を参照して、変形例３に係る動作特定装置１０の構成を説明する。
各機能構成要素の機能がハードウェアで実現される場合、動作特定装置１０は、プロセッサ１１とメモリ１２とストレージ１３とに代えて、処理回路１５を備える。処理回路１５は、動作特定装置１０の学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能とメモリ１２とストレージ１３との機能とを実現する専用の電子回路である。
【００５６】
処理回路１５は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ（Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）が想定される。
学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能を１つの処理回路１５で実現してもよいし、学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能を複数の処理回路１５に分散させて実現してもよい。
【００５７】
＜変形例４＞
変形例４として、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。つまり、動作特定装置１０の各機能構成要素のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。
【００５８】
プロセッサ１１とメモリ１２とストレージ１３と処理回路１５とを、総称して「プロセッシングサーキットリー」という。つまり、学習スペクトル計算部２１と、モデル生成部２２と、入力スペクトル計算部２３と、動作特定部２４との機能は、プロセッシングサーキットリーにより実現される。
【００５９】
実施の形態２．
実施の形態２は、動体毎に個別モデル３２を生成し、個別モデル３２に基づき動作を特定する点が実施の形態１と異なる。実施の形態２では、この異なる点を説明する。
【００６０】
＊＊＊構成の説明＊＊＊
図１８を参照して、実施の形態２に係る動作特定装置１０の構成を説明する。
動作特定装置１０は、ストレージ１３に動体毎に個別モデル３２が記憶されている点が図１に示す動作特定装置１０と異なる。個別モデル３２は、対象の動体の動作を特定するための確率モデルである。
【００６１】
＊＊＊動作の説明＊＊＊
図１９を参照して、実施の形態２に係る動作特定装置１０の動作を説明する。
実施の形態２に係る動作特定装置１０の動作は、実施の形態２に係る動作特定方法に相当する。また、実施の形態２に係る動作特定装置１０の動作は、実施の形態２に係る動作特定プログラムの処理に相当する。
実施の形態２に係る動作特定装置１０の動作は、全体学習処理と、特定処理とに加え、個別学習処理を含む。
【００６２】
図１９を参照して、実施の形態２に係る個別学習処理を説明する。
＜個別学習処理の概要＞
モデル生成部２２は、動作特定部２４によって個別モデル３２に基づき特定の動体の特定の動作の種別が特定されると、特定の動体についての入力スペクトルから特定の動体の特定の動作の種別について、二次スペクトルの発生確率を表す確率モデルを個別モデルとして生成する。
【００６３】
＜個別学習処理の詳細＞
個別学習処理は、図１５のステップＳ２１０で動体の動作の種別が特定されると実行される。ここでは、動体Ｘについて、動作の種別Ｙであると特定されたとして説明する。
【００６４】
ステップＳ２０２で切り出された各波形データについて、ステップＳ３０１からステップＳ３０３の処理が実行される。
【００６５】
（ステップＳ３０１：遷移確率更新処理）
モデル生成部２２は、動体Ｘについての個別モデル３２におけるステップＳ２１０で特定された動作の種別Ｙについての個別モデル３２をストレージ１３から読み出す。モデル生成部２２は、ステップＳ２０８で計算された発生確率に基づき、読み出された個別モデル３２における状態間の遷移確率を更新する。遷移確率を更新する方法は、ステップＳ１０９と同じである。
なお、モデル生成部２２は、ストレージ１３に対象の個別モデル３２が存在しない場合には、図２に示す全体学習処理と同様の処理にて、個別モデル３２を生成し、ストレージ１３に書き込む。
【００６６】
（ステップＳ３０２：正規分布更新処理）
モデル生成部２２は、ステップＳ３０１で更新された遷移確率に基づき、各状態における正規分布を更新する。正規分布の更新方法は、ステップＳ１１０と同じである。
【００６７】
（ステップＳ３０３：終了判定処理）
モデル生成部２２は、ステップＳ３０１からステップＳ３０２で更新された確率モデルに基づき、ステップＳ１０７で計算された学習スペクトルが発生する発生確率を各状態について計算する。モデル生成部２２は、各状態について計算された発生確率の合計と、ステップＳ１０８で各状態について計算された発生確率の合計との差が基準値以下であれば、対象の波形データについての処理を終了する。
【００６８】
図１９に示した個別学習処理は、動体Ｘについて動作の種別Ｙと特定された数が１つでもあれば開始するように構成してもよい。また動体Ｘについて動作の種別Ｙと特定された数が一定以上収集されたときに、開始するように構成してもよい。一定以上収集されたときに開始するように構成すると、より精度が高い個別モデル３２が最初に生成される可能性が高くなる。つまり、ある動体について特定の動作の種別が基準数（１以上の整数）以上特定された場合に、個別学習処理を開始して、個別モデルを生成すればよい。
特定処理では、図１５のステップＳ２０８からステップＳ２０９の処理において、対象の動体についての個別モデル３２がストレージ１３に存在する場合には、全体モデル３１に代えて対象の動体についての個別モデル３２を用いる。
但し、ある程度個別モデル３２についての学習が済むまでは全体モデル３１を用いてもよい。具体例としては、ステップＳ２１０で対象の動体に対して閾値回数以上、動作の種別が特定されるまでは全体モデル３１を用いてもよい。
【００６９】
＊＊＊実施の形態２の効果＊＊＊
以上のように、実施の形態２に係る動作特定装置１０は、全体モデル３１を用いて特定された動作の種別と、動作の種別を特定する際に用いられた入力データとを用いて、対象の動体についての個別モデル３２を生成する。個別モデル３２は、動体毎の確率モデルであるため、対象の動体の動作がより適切に表されている。そのため、適切に動体の動作を特定することができる。
【００７０】
実施の形態３．
実施の形態３は、対象種別にない動作を特定する点が実施の形態１，２と異なる。実施の形態３では、この異なる点を説明する。
【００７１】
＊＊＊動作の説明＊＊＊
図１５と、図２０から図２１を参照して、実施の形態３に係る動作特定装置１０の動作を説明する。
実施の形態３に係る動作特定装置１０の動作は、実施の形態３に係る動作特定方法に相当する。また、実施の形態３に係る動作特定装置１０の動作は、実施の形態３に係る動作特定プログラムの処理に相当する。
【００７２】
図１５のステップＳ２１０では、動作特定部２４は、ステップＳ２０９で計算された少なくともいずれかの対象種別についての合計確率を所定の回数計算し、その算出された合計確率を乗じた確率が基準確率以上の場合には、合計確率が最も高い対象種別を、動体の動作の種別として特定する。一方、動作特定部２４は、ステップＳ２０９で計算された全ての対象種別についての合計確率が基準確率よりも低い場合には、動体の動作の種別を対象種別とは異なる種別と特定する。全ての対象種別についての合計確率が基準確率よりも低い場合、いずれの対象種別の動作でもない可能性が高いためである。
なお基準確率とは、動作特定装置１０の操作者が予め定める数値であり、所定の回数とは、例えば３０回である。
【００７３】
また、図２０に示すように、動作特定部２４は、全ての対象種別についての合計確率が基準確率よりも低く、かつ、各波形データの入力スペクトルの分散が予め定められた第１基準値よりも小さい場合には、動体の動作の種別を異常な動作の種別と特定する。図２０では、星印が各波形データの入力スペクトルを表している。
異常な動作とは、対象種別として定義されていない別の動作、あるいは、対象種別として定義された動作をしているにも関わらず、動作が通常と異なっている状態である。具体例としては、工事現場の作業員の動作の種別を特定している場合であれば、異常な動作とは、工事現場の作業以外の動作と、怪我をしている、あるいは、工具が壊れたといった環境変化に対応した状態における工事現場の作業の動作と、漫然作業と等である。
【００７４】
また、図２１に示すように、動作特定部２４は、全ての対象種別についての合計確率が基準確率よりも低く、かつ、各波形データの入力スペクトルの分散が予め定められた第２基準値よりも大きい場合には、動体の動作の種別を対象種別から他の対象種別へ移り変わる中間動作の種別と特定する。つまり、この場合には、動作特定部２４は、動作間のノイズであると判定する。図２１では、図２０と同様に、星印が各波形データの入力スペクトルを表している。
【００７５】
＊＊＊実施の形態３の効果＊＊＊
以上のように、実施の形態３に係る動作特定装置１０は、全ての対象種別についての合計確率が基準確率よりも低い場合には、動体の動作の種別を対象種別とは異なる種別と特定する。つまり、いずれの対象種別の動作でもない可能性が高い場合には、いずれの対象種別の動作でもないと特定する。これにより、誤って特定された動作の種別を用いて、誤った判断がされるといった可能性を低くすることが可能である。
【００７６】
実施の形態４．
実施の形態４は、実施の形態１〜３で説明した方法を、他の方法と組み合わせて動体の動作の種別、あるいは、対象の種類等を特定する点が実施の形態１〜３と異なる。実施の形態４では、この異なる点を説明する。
【００７７】
実施の形態１〜３で説明した動体の動作の種別を特定する方法と、ディープラーニングを用いて動体の動作の種別を特定する方法とを組み合わせて、動体の動作の種別を特定する。
具体例としては、図２２に示すように、動画データを入力としてディープラーニングを行い、動体の動作の種別を特定する。また、動画データに含まれるある動体の部位の移動を表した波形データを入力として、実施の形態１〜３で説明した動体の動作の種別を特定する方法により、動体の動作の種別を特定する。そして、２つの方法による特定結果を統合して、最終的に動作の種別を特定する。具体例としては、確度の高い方の特定結果が採用されてもよい。
また、入力データの二次スペクトルをディープラーニングの入力の１つとして用いてもよい。これにより、ディープラーニングの特定精度を高めることが可能になる。
【００７８】
また、動画データを入力としてディープラーニングを行い対象の種類を特定する際、実施の形態１〜３で説明した方法により特定された動体の動作の種別を考慮するようにしてもよい。例えば、ディープラーニングといった方法では、杖を特定することが難しい場合がある。この場合に、実施の形態１〜３で説明した方法により杖を使った歩行であるといった動作の種別を特定することで、対象が杖であるということを正確に特定できるようになる可能性がある。
【００７９】
＊＊＊実施の形態４の効果＊＊＊
以上のように、実施の形態４に係る動作特定装置１０は、実施の形態１〜３で説明した方法を、ディープラーニングといった他の方法と組み合わせて、動作の種別等を特定する。これにより、適切に動作を特定することが可能である。
【００８０】
以上、この発明の実施の形態及び変形例について説明した。これらの実施の形態及び変形例のうち、いくつかを組み合わせて実施してもよい。また、いずれか１つ又はいくつかを部分的に実施してもよい。なお、この発明は、以上の実施の形態及び変形例に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【００８１】
１０  動作特定装置、１１  プロセッサ、１２  メモリ、１３  ストレージ、１４  通信インタフェース、２１  学習スペクトル計算部、２２  モデル生成部、２３  入力スペクトル計算部、２４  動作特定部、３１  全体モデル、３２  個別モデル。
【図１】
2018073081.tif 000003
【図２】
2018073081.tif 000004
【図３】
2018073081.tif 000005
【図４】
2018073081.tif 000006
【図５】
2018073081.tif 000007
【図６】
2018073081.tif 000008
【図７】
2018073081.tif 000009
【図８】
2018073081.tif 000010
【図９】
2018073081.tif 000011
【図１０】
2018073081.tif 000012
【図１１】
2018073081.tif 000013
【図１２】
2018073081.tif 000014
【図１３】
2018073081.tif 000015
【図１４】
2018073081.tif 000016
【図１５】
2018073081.tif 000017
【図１６】
2018073081.tif 000018
【図１７】
2018073081.tif 000019
【図１８】
2018073081.tif 000020
【図１９】
2018073081.tif 000021
【図２０】
2018073081.tif 000022
【図２１】
2018073081.tif 000023
【図２２】
2018073081.tif 000024
【手続補正書】
【提出日】平成29年11月1日(2017.11.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する入力スペクトル計算部と、
複数の対象種別それぞれについて、その対象種別の動作を表す波形データが学習データとされ、各学習データを対象として、対象の学習データのスペクトルである一次スペクトルが計算され、計算された一次スペクトルのスペクトルである二次スペクトルが学習スペクトルとして計算され、各学習データについての学習スペクトルから、対象種別毎の二次スペクトルの発生確率を表す確率モデルが生成された場合に、前記確率モデルに基づき、前記入力スペクトル計算部によって計算された入力スペクトルから前記動体の動作の種別を特定する動作特定部と
を備える動作特定装置。
【請求項２】
前記動作特定部は、前記確率モデルに基づき、前記複数の対象種別それぞれについて前記入力スペクトルが得られる確率を計算して、前記入力スペクトルが得られる確率が最も高い対象種別を、前記動体の動作の種別として特定する
請求項１に記載の動作特定装置。
【請求項３】
前記入力スペクトル計算部は、前記入力データから切り出された各波形データの入力スペクトルを計算し、
前記動作特定部は、前記複数の対象種別それぞれについて、前記各波形データの入力スペクトルが得られる確率を合算した合算確率を計算して、前記合算確率が最も高い対象種別を、前記動体の動作の種別として特定する
請求項２に記載の動作特定装置。
【請求項４】
前記動作特定部は、全ての対象種別について前記合算確率が基準確率より低い場合には、前記動体の動作の種別を前記対象種別とは異なる種別と特定する
請求項３に記載の動作特定装置。
【請求項５】
前記動作特定部は、全ての対象種別について前記合算確率が基準確率より低く、かつ、前記各波形データの入力スペクトルの分散が第１基準値よりも小さい場合には、前記動体の動作の種別を異常な動作の種別と特定し、全ての対象種別について前記合算確率が基準確率より低く、かつ、前記各波形データの入力スペクトルの分散が第２基準値よりも大きい場合には、前記動体の動作の種別を前記対象種別から他の対象種別へ移り変わる中間動作の種別と特定する
請求項４に記載の動作特定装置。
【請求項６】
前記各学習データについての学習スペクトルは、複数の対象種別それぞれについて、複数の動体の波形データを学習データとして計算され、
前記学習スペクトルから対象種別毎の二次スペクトルの発生確率を表す確率モデルが全体モデルとして生成されるとともに、前記動作特定部によって前記全体モデルに基づき特定の動体の動作の種別が基準数以上特定されると、前記特定の動体についての前記入力スペクトルから前記特定の動体についての二次スペクトルの発生確率を表す確率モデルが個別モデルとして生成される
請求項１から５までのいずれか１項に記載の動作特定装置。
【請求項７】
前記動作特定部は、前記個別モデルが生成された場合には、前記特定の動体の前記特定の動作について前記入力スペクトルが得られる確率を、前記個別モデルに基づき計算する請求項６に記載の動作特定装置。
【請求項８】
コンピュータが、動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算し、
コンピュータが、複数の対象種別それぞれについて、その対象種別の動作を表す波形データが学習データとされ、各学習データを対象として、対象の学習データのスペクトルである一次スペクトルが計算され、計算された一次スペクトルのスペクトルである二次スペクトルが学習スペクトルとして計算され、各学習データについての学習スペクトルから、対象種別毎の二次スペクトルの発生確率を表す確率モデルが生成された場合に、前記確率モデルに基づき、前記入力スペクトルから前記動体の動作の種別を特定する動作特定方法。
【請求項９】
動体の動作を表す波形データを入力データとして、前記入力データのスペクトルである一次スペクトルを計算し、計算された一次スペクトルのスペクトルである二次スペクトルを入力スペクトルとして計算する入力スペクトル計算処理と、
複数の対象種別それぞれについて、その対象種別の動作を表す波形データが学習データとされ、各学習データを対象として、対象の学習データのスペクトルである一次スペクトルが計算され、計算された一次スペクトルのスペクトルである二次スペクトルが学習スペクトルとして計算され、各学習データについての学習スペクトルから、対象種別毎の二次スペクトルの発生確率を表す確率モデルが生成された場合に、前記確率モデルに基づき、前記入力スペクトル計算処理によって計算された入力スペクトルから前記動体の動作の種別を特定する動作特定処理と
をコンピュータに実行させる動作特定プログラム。