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

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

▶ 日本電信電話株式会社の特許一覧 ▶ 国立大学法人 東京大学の特許一覧

特許7575759学習装置、異常行動判定装置、方法、及びプログラム
<>
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図1
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図2
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図3
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図4
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図5
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図6
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図7
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図8
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図9
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図10
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図11
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図12
  • 特許-学習装置、異常行動判定装置、方法、及びプログラム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-22
(45)【発行日】2024-10-30
(54)【発明の名称】学習装置、異常行動判定装置、方法、及びプログラム
(51)【国際特許分類】
   G06Q 50/10 20120101AFI20241023BHJP
   G06T 7/00 20170101ALI20241023BHJP
   G06T 7/20 20170101ALI20241023BHJP
   G10L 15/10 20060101ALI20241023BHJP
   G06N 20/00 20190101ALI20241023BHJP
   G06F 40/44 20200101ALI20241023BHJP
【FI】
G06Q50/10
G06T7/00 350B
G06T7/20 300A
G10L15/10 500Z
G06N20/00 130
G06F40/44
【請求項の数】 8
(21)【出願番号】P 2021116487
(22)【出願日】2021-07-14
(65)【公開番号】P2023012795
(43)【公開日】2023-01-26
【審査請求日】2023-09-25
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(73)【特許権者】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】高木 基宏
(72)【発明者】
【氏名】島村 潤
(72)【発明者】
【氏名】北原 正樹
(72)【発明者】
【氏名】細野 峻司
(72)【発明者】
【氏名】佐藤 洋一
(72)【発明者】
【氏名】菅野 裕介
(72)【発明者】
【氏名】古田 諒佑
【審査官】山崎 誠也
(56)【参考文献】
【文献】国際公開第2020/235120(WO,A1)
【文献】国際公開第2022/244215(WO,A1)
【文献】特開2019-204362(JP,A)
【文献】特開2021-153426(JP,A)
【文献】勝田 有一朗,コンピュータの未来技術[第157回],I/O 第44巻 第8号,日本,株式会社工学社,2019年08月01日,p.102~104
【文献】KOIZUMI, Yuma, MASUMURA, Ryo, NISHIDA, Kyosuke, YASUDA, Masahiro, and SAITO, Shoichiro,A Transformer-based Audio Captioning Model with Keyword Estimation,Interspeech 2020,日本,2020年08月08日,[retrieved on 2024.05.07], Internet: <URL:https://arxiv.org/abs/2007.00222>
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06T 7/00
G06T 7/20
G10L 15/10
G06N 20/00
G06F 40/44
(57)【特許請求の範囲】
【請求項1】
一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースと、
前記手順に含まれる行動を表す学習用の映像データ又は音声データから、人の行動に関する行動ラベルを検出するラベル検出部と、
前記学習用の映像データ又は音声データに対応付けられた正解となる前記手順文、又は前記手順文を表す文ベクトルと一致するように、前記行動ラベルから文又は文ベクトルを生成する言語モデルを学習するモデル学習部と、
を含む学習装置。
【請求項2】
前記学習用の映像データ又は音声データに対して予め定められた前記手順文を表す文ベクトルは、文ベクトルを生成する事前学習済みモデルを用いて生成されたものである請求項1記載の学習装置。
【請求項3】
前記モデル学習部は、前記ラベル検出部によって複数の行動ラベルからなる行動ラベル群が検出された場合には、前記行動ラベル群を連結したものから前記言語モデルにより生成される前記文又は文ベクトルが、前記学習用の映像データ又は音声データに対応付けられた正解となる前記手順文、又は前記手順文を表す文ベクトルと一致するように、前記言語モデルを学習する請求項1又は2記載の学習装置。
【請求項4】
前記モデル学習部は、前記ラベル検出部によって前記行動ラベル群が検出された場合であって、前記行動ラベル群を連結したものが、前記言語モデルの入力長上限を超える場合に、前記言語モデルの入力長上限以下となるように抽出された前記行動ラベルを連結したものから前記言語モデルにより生成される前記文又は文ベクトルが、前記学習用の映像データ又は音声データに対応付けられた正解となる前記手順文、又は前記手順文を表す文ベクトルと一致するように、前記言語モデルを学習する請求項3記載の学習装置。
【請求項5】
一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースと、
人の行動を表す映像データ又は音声データから検出された、人の行動に関する行動ラベルに基づいて、
前記行動ラベルから文又は文ベクトルを生成する予め学習された言語モデルを用いて、前記文又は文ベクトルを生成する生成部と、
前記生成された前記文又は文ベクトルと、前記手順文データベースに記憶された前記手順文、又は前記手順文を表す文ベクトルとの類似度を算出する類似度算出部と、
前記類似度算出部によって算出された類似度に基づいて、前記人の行動が異常であるか否かを判定する異常判定部と、
を含む異常行動判定装置。
【請求項6】
一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含む学習装置が、
前記手順に含まれる行動を表す学習用の映像データ又は音声データから、人の行動に関する行動ラベルを検出し、
前記学習用の映像データ又は音声データに対応付けられた正解となる前記手順文、又は前記手順文を表す文ベクトルと一致するように、前記行動ラベルから文又は文ベクトルを生成する言語モデルを学習する
学習方法。
【請求項7】
一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含む異常行動判定装置が、
人の行動を表す映像データ又は音声データから検出された、人の行動に関する行動ラベルに基づいて、前記行動ラベルから文又は文ベクトルを生成する予め学習された言語モデルを用いて、前記文又は文ベクトルを生成し、
前記生成された前記文又は文ベクトルと、前記手順文データベースに記憶された前記手順文、又は前記手順文を表す文ベクトルとの類似度を算出し、
前記算出された類似度に基づいて、前記人の行動が異常であるか否かを判定する
異常行動判定方法。
【請求項8】
コンピュータを、請求項1~請求項4の何れか1項記載の学習装置、又は請求項5記載の異常行動判定装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
開示の技術は、学習装置、異常行動判定装置、方法、及びプログラムに関する。
【背景技術】
【0002】
近年、高精細カメラの普及により、カメラで取得した映像や音声で人の行動を解析する技術のニーズが高まっている。例えば、監視カメラでの犯罪行動の検出や工事現場での危険行動の検出などである。これらの行動を発見するには、大量の映像や音声を観察する必要がある。さらに、異常な行動の定義について理解している人が映像中の行動を観察して異常行動を検出する必要がある。しかしながら、人手での検出は時間的・人的コストがかかるため、異常行動を自動で検出するアルゴリズムを構築して検出する方法が考えられる。
【0003】
近年では、ニューラルネットワークを用いた異常行動の検出技術が提案されている(非特許文献1)。非特許文献1の手法では、映像をクラスタリングすることで高精度に異常行動を検出する。
【先行技術文献】
【非特許文献】
【0004】
【文献】Zaheer M.Z., Mahmood A., Astrid M., Lee SI. CLAWS: Clustering Assisted Weakly Supervised Learning with Normalcy Suppression for Anomalous Event Detection. ECCV 2020.
【発明の概要】
【発明が解決しようとする課題】
【0005】
非特許文献1に示す、映像にうつる異常行動を検出する従来手法では、手順と動作を明確に区別していない。そのため、例えば、(手順1)床においた脚立を立てる、(手順2)安全帯ベルトを締める、(手順3)脚立を登る、という一連の手順があった場合、それぞれの手順において多数の行動があり、手順に含まれる行動の順序が合っているかどうかの判定が困難である。具体的には、(手順1)に、人は膝を曲げて脚立を掴み、脚立を持ち上げて固定する、という多数の行動が含まれる。また同様に、(手順2)の安全帯ベルトを締めて脚立を登る、といった手順にも、安全帯ベルトを持ち、人体に固定するといった一連の行動が含まれる。(手順3)には、脚立の方へ歩いてステップに足をかけ、手で脚立を持って登るという多数の行動が含まれる。このように、行動をある程度まとめて1つの手順としてとらえて、手順に含まれる行動の順序が合っているかどうかを確認する必要があるが、現在の異常行動検出手法では個々の行動の異常検出が中心であり、複数の行動がまとまった手順と異なるか否かの異常判定に対する検討はなされていない。そのため、安全帯ベルトを締めたタイミングが脚立を登った後であれば、手順と異なり危険である、というような異常行動の判定を映像から行うことは困難である。
【0006】
開示の技術は、上記の点に鑑みてなされたものであり、手順とは異なる異常行動を精度よく判定することができる学習装置、異常行動判定装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示の第1態様は、学習装置であって、一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースと、前記手順に含まれる行動を表す学習用の映像データ又は音声データから、人の行動に関する行動ラベルを検出するラベル検出部と、前記学習用の映像データ又は音声データに対して予め定められた前記手順文、又は前記手順文を表す文ベクトルを生成するように、前記行動ラベルから文又は文ベクトルを生成する言語モデルを学習するモデル学習部と、を含む。
【0008】
本開示の第2態様は、異常行動判定装置であって、一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースと、人の行動を表す映像データ又は音声データから検出された、人の行動に関する行動ラベルに基づいて、前記行動ラベルから文又は文ベクトルを生成する予め学習された言語モデルを用いて、前記文又は文ベクトルを生成する生成部と、前記生成された前記文又は文ベクトルと、前記手順文データベースに記憶された前記手順文、又は前記手順文を表す文ベクトルとの類似度を算出する類似度算出部と、前記類似度算出部によって算出された類似度に基づいて、前記人の行動が異常であるか否かを判定する異常判定部と、を含む。
【0009】
本開示の第3態様は、学習方法であって、一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含む学習装置が、前記手順に含まれる行動を表す学習用の映像データ又は音声データから、人の行動に関する行動ラベルを検出し、前記学習用の映像データ又は音声データに対して予め定められた前記手順文、又は前記手順文を表す文ベクトルを生成するように、前記行動ラベルから文又は文ベクトルを生成する言語モデルを学習する。
【0010】
本開示の第4態様は、異常行動判定方法であって、一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含む異常行動判定装置が、人の行動を表す映像データ又は音声データから検出された、人の行動に関する行動ラベルに基づいて、前記行動ラベルから文又は文ベクトルを生成する予め学習された言語モデルを用いて、前記文又は文ベクトルを生成し、前記生成された前記文又は文ベクトルと、前記手順文データベースに記憶された前記手順文、又は前記手順文を表す文ベクトルとの類似度を算出し、前記算出された類似度に基づいて、前記人の行動が異常であるか否かを判定する。
【0011】
本開示の第5態様は、プログラムであって、コンピュータを、上記第1態様の学習装置又は上記第2態様の異常行動判定装置として機能させるためのプログラムである。
【発明の効果】
【0012】
開示の技術によれば、手順とは異なる異常行動を精度よく判定することができる。
【図面の簡単な説明】
【0013】
図1】第1実施形態及び第2実施形態の学習装置及び異常行動判定装置として機能するコンピュータの一例の概略ブロック図である。
図2】第1実施形態の学習装置の構成を示すブロック図である。
図3】第1実施形態及び第2実施形態の異常行動判定装置の構成を示すブロック図である。
図4】第1実施形態の学習装置の文ベクトル生成処理ルーチンを示すフローチャートである。
図5】第1実施形態の学習装置の学習処理ルーチンを示すフローチャートである。
図6】第1実施形態の学習装置の言語モデルを更新する処理の流れを示すフローチャートである。
図7】第1実施形態の異常行動判定装置の異常行動判定処理ルーチンを示すフローチャートである。
図8】第1実施形態の異常行動判定装置の文ベクトルを生成する処理の流れを示すフローチャートである。
図9】第1実施形態の異常行動判定装置の異常行動を判定する処理の流れを示すフローチャートである。
図10】第2実施形態の学習装置の学習処理ルーチンを示すフローチャートである。
図11】第2実施形態の学習装置の言語モデルを更新する処理の流れを示すフローチャートである。
図12】第2実施形態の異常行動判定装置の異常行動判定処理ルーチンを示すフローチャートである。
図13】第2実施形態の異常行動判定装置の文を生成する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0014】
以下、開示の技術の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0015】
[第1実施形態]
<本実施形態の概要>
本実施形態では、映像や音声から抽出された行動ラベルの群を入力として行動ラベル群の文ベクトルを生成する。例えば、映像から抽出された、人ラベルと、物体ラベルと、物体に対する人の動作ラベルとの組み合わせであるhuman-object-interactionラベル(HOIラベル)の群を入力として行動ラベル群の文ベクトルを生成する。そして、文ベクトルと比較対象である手順文の文ベクトルを入力として文ベクトル間の類似度を算出し、文ベクトル間の類似度を入力として、手順と異なる異常行動であるか否かを判定する。
【0016】
ここで、手順文の文ベクトルは、一連の手順の各々を表す手順文の文ベクトルであり、一つの手順には、少なくとも一つの行動が含まれる。
【0017】
<本実施形態に係る学習装置の構成>
図1は、本実施形態の学習装置10のハードウェア構成を示すブロック図である。
【0018】
図1に示すように、学習装置10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ストレージ14、入力部15、表示部16及び通信インタフェース(I/F)17を有する。各構成は、バス19を介して相互に通信可能に接続されている。
【0019】
CPU11は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU11は、ROM12又はストレージ14からプログラムを読み出し、RAM13を作業領域としてプログラムを実行する。CPU11は、ROM12又はストレージ14に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ROM12又はストレージ14には、ニューラルネットワークである言語モデルを学習するための学習プログラムが格納されている。学習プログラムは、1つのプログラムであっても良いし、複数のプログラム又はモジュールで構成されるプログラム群であっても良い。
【0020】
ROM12は、各種プログラム及び各種データを格納する。RAM13は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ14は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0021】
入力部15は、マウス等のポインティングデバイス、及びキーボードを含み、各種の入力を行うために使用される。
【0022】
入力部15は、学習用の映像データを、入力として受け付ける。具体的には、入力部15は、作業マニュアルの手順文が表す手順に含まれる行動を表す学習用の映像データを受け付ける。学習用の映像データには、作業マニュアルのどの手順文に対応するかを示す情報(例えば、ID)が付与されている。
【0023】
表示部16は、例えば、液晶ディスプレイであり、各種の情報を表示する。表示部16は、タッチパネル方式を採用して、入力部15として機能しても良い。
【0024】
通信インタフェース17は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0025】
次に、学習装置10の機能構成について説明する。図2は、学習装置10の機能構成の例を示すブロック図である。
【0026】
学習装置10は、機能的には、図2に示すように、作業マニュアルデータベース(DB)20、文ベクトル生成部22、手順文データベース(DB)24、学習用データベース(DB)26、ラベル検出部28、及びモデル学習部30を備えている。
【0027】
作業マニュアルデータベース20には、一連の手順が記載された作業マニュアルに含まれる複数の手順文を記憶している。ここで、手順文はテキストデータとして作業マニュアルデータベース20に記憶されている。
【0028】
文ベクトル生成部22は、作業マニュアルデータベース20から手順文を一つ一つ取り出し、事前学習済みモデルを用いて、手順文を表す文ベクトルを生成する。
【0029】
具体的には、文ベクトル生成部22は、大量のテキストで学習したBERT(Bidirectional Encoder Representations from Transformers)等の言語モデルを学習済みモデルとして予め用意しておき、当該言語モデルを用いて手順文を表す文ベクトルを生成する。この言語モデルでは事前学習以上の学習は行わず、手順文を表す文ベクトルの生成のみに用いる。文ベクトル生成部22は、生成した文ベクトルを手順文データベース24に格納する。
【0030】
手順文データベース24は、作業マニュアルに含まれる複数の手順文の各々について文ベクトル生成部22により生成された文ベクトルを記憶している。
【0031】
ここで、文ベクトルは、後述する言語モデルで生成される文ベクトルと粒度が合った形で手順文データベース24に格納されているものとする。
【0032】
学習用データベース26は、入力された学習用の映像データを複数記憶する。学習用の映像データは、映像ごとに入力されたものでもよいし、分割した映像セグメントごとに入力されたものでもよし、映像フレームごとに入力されたものでもよい。ここで映像セグメントは映像を複数フレームごとにまとめて分割した単位であり、例えば32フレームで1セグメントと定めた単位である。
【0033】
ラベル検出部28は、学習用データベース26に記憶された複数の学習用の映像データの各々から、人の行動に関する行動ラベルを検出する。具体的には、ラベル検出部28は、学習用データベース26から学習用の映像データを取り出し、映像データの長さである一定時間内で検出される行動ラベルの群である行動ラベル群を出力する。行動ラベル群の一例はHOIラベル群である。HOIラベル群は、一定時間内で検出されるHOIラベルの集合である。
【0034】
例えば、人がperson、梯子がladder、登るがclimbであれば、<person,ladder,climb>のHOIラベルを行動ラベルとして検出する。HOIラベルに含まれる動作ラベルの動詞が自動詞か他動詞かであるかに応じて、物体ラベルのありなしが変化する。上記の例では、動作ラベルが他動詞であるが、自動詞でもよい。
【0035】
モデル学習部30は、学習用の映像データに対して予め定められた手順文を表す文ベクトルを生成するように、行動ラベルから文ベクトルを生成する言語モデルを学習する。
【0036】
具体的には、モデル学習部30は、ラベル検出部28より学習用の映像データから検出された行動ラベル群を受け取る。また、モデル学習部30は、手順文データベース24より、学習用の映像データに対応付けられた正解となる手順文の手順文ベクトルを取り出す。モデル学習部30は、学習用の映像データから検出された行動ラベル群から、学習対象である言語モデルを用いて、文ベクトルを生成する。モデル学習部30は、正解となる手順文の手順文ベクトルと、生成した文ベクトルとを比較して評価し、正解となる手順文の手順文ベクトルと、生成した文ベクトルとが一致するように、言語モデルを更新して言語モデルを出力する。ここで言語モデルはニューラルネットワークのモデルなどである。
【0037】
例えば、学習対象の言語モデルのベースモデルとして、大量のテキストで自己教師あり学習した言語モデルを用いる。代表的なモデルとしては、非特許文献2のBERTがある。BERTに対して、<人ラベル 動作ラベル 物体ラベル>の順で行動ラベルを並び替え、入力とする。言い換えると、主語-述語-目的語の関係性を考慮した並びであり、上記の例では<person climb ladder>となる。また、“安全帯ベルトを締める”という手順が“人が梯子を登る”の前にあった場合、同様に<person tighten safety belt>という行動ラベルが検出できたとして、BERTには、<person tighten safety belt person climb ladder>を入力とすることで、一つの文ベクトルを得ることができる。また、入力方法として、<person tighten safety belt >と<person climb ladder>を別々の文として分割して入力してもよい。具体的には、HOIラベルの間にBERTモデルが認識可能なセパレータを挟んで入力とする。こうすることにより、複数の手順を考慮した文ベクトルを生成することができる。
【0038】
[非特許文献2]Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. NAACL2019.
【0039】
<第1実施形態に係る異常行動判定装置の構成>
上記図1は、第1実施形態の異常行動判定装置50のハードウェア構成を示すブロック図である。
【0040】
上記図1に示すように、異常行動判定装置50は、学習装置10と同様の構成であり、ROM12又はストレージ14には、異常行動を判定するための異常行動判定プログラムが格納されている。
【0041】
入力部15は、人の行動を表す映像データから検出された行動ラベル群を、入力として受け付ける。具体的には、入力部15は、映像データの長さである一定時間内で検出されるHOIラベルの群である行動ラベル群を、入力として受け付ける。
【0042】
次に、異常行動判定装置50の機能構成について説明する。図3は、異常行動判定装置50の機能構成の例を示すブロック図である。
【0043】
異常行動判定装置50は、機能的には、図3に示すように、手順文データベース(DB)60、生成部62、類似度算出部64、及び異常判定部66を備えている。
【0044】
手順文データベース60には、手順文データベース24と同様に、作業マニュアルに含まれる複数の手順文の各々について文ベクトル生成部22により生成された文ベクトルを記憶している。
【0045】
生成部62は、入力された行動ラベル群に基づいて、学習装置10により予め学習された言語モデルを用いて、文ベクトルを生成する。
【0046】
類似度算出部64は、生成部62により生成された文ベクトルと、手順文データベース60に記憶された、手順文を表す文ベクトルとの類似度を算出する。
【0047】
異常判定部66は、類似度算出部64によって算出された類似度に基づいて、人の行動が、手順と異なり異常であるか否かを判定する。例えば、異常判定部66は、算出された類似度と、予め定められた閾値とを比較して、人の行動が異常であるか否かの判定を行い、1もしくは0の値をとるラベルを出力する。ここで、異常である場合にラベルが1となり、正常である場合に、ラベルが0となる。
【0048】
<第1実施形態に係る学習装置の作用>
次に、第1実施形態に係る学習装置10の作用について説明する。
【0049】
図4は、学習装置10による文ベクトル生成処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から学習プログラムを読み出して、RAM13に展開して実行することにより、文ベクトル生成処理が行なわれる。
【0050】
ステップS100で、CPU11は、文ベクトル生成部22として、作業マニュアルデータベース20から手順文を一つ一つ取り出し、入力とする。
【0051】
ステップS102で、CPU11は、文ベクトル生成部22として、事前学習済みモデルに手順文を一つずつ入力して手順文を表す文ベクトルを生成する。ここで、事前学習済みモデルは、BERTのような言語モデルで大量の一般的なテキストのみで事前学習されたモデルである。
【0052】
ステップS104で、CPU1は、手順文の各々について生成された文ベクトルを、手順文データベース24に格納する。
【0053】
図5は、学習装置10による学習処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から学習プログラムを読み出して、RAM13に展開して実行することにより、学習処理が行なわれる。また、学習装置10に、学習用の映像データが複数入力され、学習用データベース26に格納される。
【0054】
ステップS110で、CPU11は、ラベル検出部28として、学習用データベース26から複数の学習用の映像データを取り出し、それぞれを入力とする。
【0055】
ステップS112で、CPU11は、ラベル検出部28として、複数の学習用の映像データの各々から、行動ラベル群を検出する。
【0056】
ステップS114で、CPU11は、モデル学習部30として、複数の学習用の映像データの各々から検出された行動ラベル群を取得し、入力とする。
【0057】
ステップS116で、CPU11は、モデル学習部30として、手順文データベース24より、複数の学習用の映像データの各々に対応付けられた正解となる手順文の手順文ベクトルを取り出す。CPU11は、複数の学習用の映像データの各々から検出された行動ラベル群から、学習対象である言語モデルを用いて、文ベクトルを生成する。CPU11は、正解となる手順文の手順文ベクトルと、生成した文ベクトルとを比較して評価し、正解となる手順文の手順文ベクトルと、生成した文ベクトルとが一致するように、言語モデルを更新する。
【0058】
ステップS118で、CPU11は、モデル学習部30として、更新した言語モデルを出力する。ここで、ラベル検出部28は、非特許文献3のような映像データからHOIラベルを検出できる手法を用いて、行動ラベルを検出すればよい。映像フレーム、映像セグメント等、出力の単位は任意とする。
【0059】
[非特許文献3]Georgia Gkioxari, Ross Girshick, Piotr Dollar, Kaiming He. Detecting and Recognizing Human-Object Interactions. CVPR2018.
【0060】
上記ステップS114、S116の処理における詳細動作を図6に示す。
【0061】
ステップS120で、CPU11は、モデル学習部30として、複数の学習用の映像データの各々から検出された行動ラベル群を取得し、入力とする。
【0062】
ステップS122で、CPU11は、モデル学習部30として、行動ラベル群の各行動ラベルを<人ラベル 動作ラベル 物体ラベル> の順に並べ替える。
【0063】
ステップS124で、CPU11は、モデル学習部30として、行動ラベル群が、学習対象の言語モデルの入力長上限より長いかを判断する。行動ラベル群が、学習対象の言語モデルの入力長上限より長い場合には、ステップS126へ移行する。一方、行動ラベル群が、学習対象の言語モデルの入力長上限以下である場合には、ステップS128へ移行する。
【0064】
ステップS126で、CPU11は、モデル学習部30として、行動ラベル群における各行動ラベルの出現頻度を集計し、出現頻度順に各行動ラベルを並べ、学習対象の言語モデルの入力長上限におさまるように、上位N個の行動ラベルを抽出し、抽出された行動ラベル以外の行動ラベルを削除し、新たな行動ラベル群とする。
【0065】
ステップS128で、CPU11は、モデル学習部30として、並び替えた行動ラベル群を学習対象の言語モデルへと入力し、文ベクトルを生成する。
【0066】
ステップS130で、CPU11は、モデル学習部30として、生成された文ベクトルと、手順文データベース24から取得した、当該学習用の映像データに紐づけられた正解の手順文の文ベクトルとの間で、評価関数による損失を算出する。
【0067】
ここで、評価関数は距離関数で表され、ユークリッド距離の二乗や非特許文献4のContrastive Loss等が利用可能である。これらの距離関数に限定されるものではなく、距離を表現でき、微分可能、言い換えると深層学習のバックプロパゲーションに必要な勾配が計算可能な関数であれば、他の距離関数であってもよい。
【0068】
[非特許文献4]Kaiming He, Haoqi Fan, Yuxin Wu, Saining Xie, Ross Girshick. Momentum Contrast for Unsupervised Visual Representation Learning. CVPR2020.
【0069】
ステップS132で、CPU11は、モデル学習部30として、得られた損失から勾配を計算し、言語モデルのパラメータをバックプロパゲーションで更新する。
【0070】
ステップS134で、CPU11は、モデル学習部30として、更新した言語モデルを出力する。
【0071】
<第1実施形態に係る異常行動判定装置の作用>
次に、第1実施形態に係る異常行動判定装置50の作用について説明する。
【0072】
図7は、異常行動判定装置50による異常行動判定処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から異常行動判定プログラムを読み出して、RAM13に展開して実行することにより、異常行動判定処理が行なわれる。また、異常行動判定装置50に、人の行動を表す映像データから検出された行動ラベル群が入力される。ここで、行動ラベル群は非特許文献3に示すような手法で検出済みとする。
【0073】
ステップS140で、CPU11は、入力された行動ラベル群を、生成部62に入力する。
【0074】
ステップS142で、CPU11は、生成部62として、行動ラベル群の文ベクトルを生成する。
【0075】
ステップS144で、CPU11は、行動ラベル群の文ベクトルを類似度算出部64に入力する。
【0076】
ステップS146で、CPU11は、手順文データベース60から手順文を表す文ベクトルを各々取り出し、類似度算出部64に入力する。
【0077】
ここで、手順文データベース60からの手順文の文ベクトルの取り出しには、手順の順序を考慮してもよい。例えば、一つ前の映像セグメントの行動ラベル群について最も類似度が高いと判断された手順文の文ベクトルのID等を保持しておき、当該手順文の手順の前後T個の手順文を表す文ベクトルを取り出すようにしてもよい。これにより、手順文の文ベクトルとの類似度の計算量を削減できる。
【0078】
ステップS148で、CPU11は、類似度算出部64として、取り出した手順文を表す文ベクトルの各々について、当該手順文を表す文ベクトルと行動ラベル群の文ベクトルとの類似度を算出する。例えば、類似度の指標としてコサイン類似度を算出する。なお、類似度の指標はコサイン類似度でなくともベクトル間の類似度が比較できればよい。
【0079】
ステップS150で、CPU11は、類似度算出部64として、算出した類似度を異常判定部66へ出力する。
【0080】
ステップS152で、CPU11は、異常判定部66として、類似度と閾値とを比較し、人の行動が、手順と異なり異常であるか否かを判定し、判定結果を示すラベルを出力し、異常行動判定処理を終了する。
【0081】
上記ステップS140、S142の処理における詳細動作を図8に示す。図8に示す動作は、映像セグメントごとの行動ラベル群について繰り返し行われる。なお、映像セグメントのセグメント長は、アプリケーションに依存する。
【0082】
ステップS160で、CPU11は、行動ラベル群を生成部62に入力する。
【0083】
ステップS162で、CPU11は、生成部62として、行動ラベル群の各行動ラベルを<人ラベル 動作ラベル 物体ラベル>の順に並べ替える。例えば、一つの映像セグメントの行動ラベル群に2つの人ラベルがある場合、<人ラベル1 動作ラベル1 物体ラベル1 人ラベル2 動作ラベル2 物体ラベル2>と並べる。動作と物体の組み合わせについて、動作ラベルと物体ラベルの有り得る組み合わせをあらかじめテーブルとして保持しておき、そのテーブルを参照して行動ラベルを決定する。また、その他、映像特徴等を考慮してもよい。
【0084】
並べ替えた行動ラベル群をBERTのような学習済みの言語モデルに入力して文ベクトルを得る。本実施形態では、行動ラベル群は、BERTの入力長上限におさまる系列長(512単語)の範囲で、<行動ラベル1><行動ラベル2>…といった形で連結して入力を行う。そこで、ステップS164で、CPU11は、生成部62として、行動ラベル群が学習済みの言語モデルの入力長上限より長いか否かを判定する。行動ラベル群が学習済みの言語モデルの入力長上限より長い場合には、ステップS166へ移行する。一方、行動ラベル群が学習済みの言語モデルの入力長上限以下である場合には、ステップS168へ移行する。
【0085】
ステップS166では、CPU11は、生成部62として、行動ラベル群における各行動ラベルの出現頻度を集計し、出現頻度順に各行動ラベルを並べ、学習済みの言語モデルの入力長上限におさまるように、上位N個の行動ラベルを抽出し、抽出された行動ラベル以外の行動ラベルを削除し、新たな行動ラベル群とする。
【0086】
ステップS168で、CPU11は、生成部62として、並び替えた行動ラベル群を学習済みの言語モデルへと入力し、文ベクトルを生成する。
【0087】
ステップS170で、CPU11は、生成部62として、得られた文ベクトルを出力する。
【0088】
上記ステップS150、S152の処理において、異常行動を判定する方法は2通りある。一方の方法では、手順文の文ベクトルとの類似度が、取り出した全ての手順文に対して低い場合、どの手順文にも該当していない行動として異常行動であると判定する。
【0089】
他方の方法では、手順の順序を考慮する。手順の順序を考慮する場合の、上記ステップS150、S152の処理における詳細動作を図9に示す。
【0090】
ステップS180で、CPU11は、算出した類似度を高い順に上位M個、異常判定部66に入力する。
【0091】
ステップS182で、CPU11は、異常判定部66として、入力された行動ラベル群が、映像の先頭から取り出した映像セグメント(以降先頭セグメントと表記)のものであるか否かを判定する。入力された行動ラベル群が、映像の先頭セグメントのものであった場合、ステップS188へ移行する。一方、入力された行動ラベル群が、映像の先頭セグメントのものでない場合、ステップS184へ移行する。
【0092】
ステップS184では、CPU11は、異常判定部66として、入力された類似度M個の中に、一つ前の映像セグメントについて類似度が最も高かった手順文の文ベクトルと同じ文ベクトルと比較した類似度があるかどうかを判定する。入力された類似度M個の中に、一つ前の映像セグメントについて類似度が最も高かった手順文の文ベクトルと同じ文ベクトルと比較した類似度がある場合には、ステップS186へ移行する。一方、入力された類似度M個の中に、一つ前の映像セグメントについて類似度が最も高かった手順文の文ベクトルと同じ文ベクトルと比較した類似度がない場合には、ステップS188へ移行する。
【0093】
ステップS186では、CPU11は、異常判定部66として、入力された類似度M個のうちの、一つ前の映像セグメントについて類似度が最も高かった手順文の文ベクトルと同じ文ベクトルと比較した類似度が、一つ前の映像セグメントについての同じ類似度より高いか否かを判定する。入力された類似度M個のうちの、一つ前の映像セグメントについて類似度が最も高かった手順文の文ベクトルと同じ文ベクトルと比較した類似度が、一つ前の映像セグメントについての同じ類似度より高い場合いは、ステップS192へ移行する。一方、入力された類似度M個のうちの、一つ前の映像セグメントについて類似度が最も高かった手順文の文ベクトルと同じ文ベクトルと比較した類似度が、一つ前の映像セグメントについての同じ類似度以下である場合には、ステップS188へ移行する。
【0094】
ステップS188では、入力された類似度M個のうちの最も高い類似度が、閾値より低いか否かを判定する。入力された類似度M個のうちの最も高い類似度が、閾値より低い場合には、ステップS190へ移行する。一方、入力された類似度M個のうちの最も高い類似度が、閾値以上である場合には、ステップS192へ移行する。
【0095】
ステップS190では、CPU11は、異常判定部66として、人の行動が異常であることを示すラベルを出力する。ステップS192では、CPU11は、異常判定部66として、人の行動が正常であることを示すラベルを出力する。
【0096】
以上説明したように、第1実施形態に係る学習装置は、手順に含まれる行動を表す学習用の映像データから、人の行動に関する行動ラベルを検出し、学習用の映像データに対して予め定められた手順文を表す文ベクトルを生成するように、行動ラベルから文ベクトルを生成する言語モデルを学習する。これにより、手順とは異なる異常行動を精度よく判定するための言語モデルを学習することができる。
【0097】
また、第1実施形態に係る異常行動判定装置は、人の行動を表す映像データから検出された、人の行動に関する行動ラベルに基づいて、行動ラベルから文ベクトルを生成する予め学習された言語モデルを用いて、文ベクトルを生成し、生成された文ベクトルと、手順文データベースに記憶された手順文を表す文ベクトルとの類似度を算出し、算出された類似度に基づいて、人の行動が異常であるか否かを判定する。これにより、映像で撮影された手順のある作業において、手順とは異なる異常行動を精度よく判定することができる。
【0098】
[第2実施形態]
次に、第2実施形態について説明する。なお、第1実施形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【0099】
第2実施形態では、文ベクトルの類似度を用いるのではなく、行動ラベル群から手順文を生成し、手順文の類似度を算出して、人の行動が、手順と異なり異常であるか否かを判定する点が、第1実施形態と異なっている。
【0100】
<第2実施形態の概要>
第2実施形態では、行動ラベル群を入力として文を生成し、生成した文と手順文を入力として類似度を算出し、算出した類似度を入力として人の行動が異常であるか否かを判定する。
【0101】
<第2実施形態に係る学習装置の構成>
第2実施形態の学習装置は、文ベクトル生成部22が不要な点以外は、上記第1実施形態の学習装置10と同様であるため、同一符号を付して説明を省略する。
【0102】
第2実施形態の学習装置10の手順文データベース24は、作業マニュアルに含まれる複数の手順文の各々を記憶している。
【0103】
モデル学習部30は、学習用の映像データに対して予め定められた手順文を生成するように、行動ラベルから文を生成する言語モデルを学習する。
【0104】
具体的には、モデル学習部30は、ラベル検出部28より学習用の映像データから検出された行動ラベル群を受け取る。また、モデル学習部30は、手順文データベース24より、学習用の映像データに対応付けられた正解となる手順文を取り出す。モデル学習部30は、学習用の映像データから検出された行動ラベル群から、学習対象である言語モデルを用いて、文を生成する。例えば、生成される文は、各単語の発生確率で表される。モデル学習部30は、正解となる手順文と、生成した文とを比較して評価し、正解となる手順文と、生成した文とが一致するように、言語モデルを更新して言語モデルを出力する。ここで言語モデルは、非特許文献5のように翻訳等で用いられるEncoder-Decoder型のニューラルネットワークのモデルなどである。
【0105】
[非特許文献5]Jinhua Zhu and Yingce Xia and Lijun Wu and Di He and Tao Qin and Wengang Zhou and Houqiang Li and Tieyan Liu. Incorporating BERT into Neural Machine Translation. ICLR2020.
【0106】
<第2実施形態に係る異常行動判定装置の構成>
第2実施形態の異常行動判定装置は、上記第1実施形態の異常行動判定装置50と同様であるため、同一符号を付して説明を省略する。
【0107】
手順文データベース60には、手順文データベース24と同様に、作業マニュアルに含まれる複数の手順文の各々を記憶している。
【0108】
生成部62は、入力された行動ラベル群に基づいて、学習装置10により予め学習された言語モデルを用いて、文を生成する。
【0109】
類似度算出部64は、生成部62により生成された文と、手順文データベース60に記憶された手順文との類似度を算出する。
【0110】
異常判定部66は、類似度算出部64によって算出された類似度に基づいて、人の行動が、手順と異なり異常であるか否かを判定する。
【0111】
<第2実施形態に係る学習装置の作用>
次に、第2実施形態に係る学習装置10の作用について説明する。なお、第1実施形態と同様の処理については同一符号を付して詳細な説明を省略する。
【0112】
図10は、学習装置10による学習処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から学習プログラムを読み出して、RAM13に展開して実行することにより、学習処理が行なわれる。また、学習装置10に、学習用の映像データが複数入力され、学習用データベース26に格納される。
【0113】
ステップS110で、CPU11は、ラベル検出部28として、学習用データベース26から複数の学習用の映像データを取り出し、それぞれを入力とする。
【0114】
ステップS112で、CPU11は、ラベル検出部28として、複数の学習用の映像データの各々から、行動ラベル群を検出する。
【0115】
ステップS114で、CPU11は、モデル学習部30として、複数の学習用の映像データの各々から検出された行動ラベル群を取得し、入力とする。
【0116】
ステップS200で、CPU11は、モデル学習部30として、手順文データベース24より、複数の学習用の映像データの各々に対応付けられた正解となる手順文を取り出す。CPU11は、複数の学習用の映像データの各々から検出された行動ラベル群から、学習対象である言語モデルを用いて、文を生成する。CPU11は、正解となる手順文と、生成した文とを比較して評価し、正解となる手順文と、生成した文とが一致するように、言語モデルを更新する。
【0117】
ステップS118で、CPU11は、モデル学習部30として、更新した言語モデルを出力する。
【0118】
上記ステップS114、S200の処理における詳細動作を図11に示す。
【0119】
ステップS120で、CPU11は、モデル学習部30として、複数の学習用の映像データの各々から検出された行動ラベル群を取得し、入力とする。
【0120】
ステップS122で、CPU11は、モデル学習部30として、行動ラベル群の各行動ラベルを<人ラベル 動作ラベル 物体ラベル>の順に並べ替える。
【0121】
ステップS124で、CPU11は、モデル学習部30として、行動ラベル群が、学習対象の言語モデルの入力長上限より長いかを判断する。行動ラベル群が、学習対象の言語モデルの入力長上限より長い場合には、ステップS126へ移行する。一方、行動ラベル群が、学習対象の言語モデルの入力長上限以下である場合には、ステップS210へ移行する。
【0122】
ステップS126で、CPU11は、モデル学習部30として、行動ラベル群における各行動ラベルの出現頻度を集計し、出現頻度順に各行動ラベルを並べ、学習対象の言語モデルの入力長上限におさまるように、上位N個の行動ラベルを抽出し、抽出された行動ラベル以外の行動ラベルを削除し、新たな行動ラベル群とする。
【0123】
ステップS210で、CPU11は、モデル学習部30として、並び替えた行動ラベル群を学習対象の言語モデルへと入力し、文を生成する。
【0124】
ステップS212で、CPU11は、モデル学習部30として、生成された文と、手順文データベース24から取得した、当該学習用の映像データに紐づけられた正解の手順文との間で、評価関数による損失を算出する。具体的には、生成した文が表す各単語の出現確率と、正解の手順文の各単語とがどの程度異なるかを評価する評価関数による損失を算出する。例えば、評価関数により、正解の手順文の各単語の出現確率が1に近いほど損失が低く、正解の手順文に含まれない各単語の出現確率が0に近いほど損失が低くなるように損失を計算する。
【0125】
ステップS132で、CPU11は、モデル学習部30として、得られた損失から勾配を計算し、言語モデルのパラメータをバックプロパゲーションで更新する。
【0126】
ステップS134で、CPU11は、モデル学習部30として、更新した言語モデルを出力する。
【0127】
<第2実施形態に係る異常行動判定装置の作用>
次に、第2実施形態に係る異常行動判定装置50の作用について説明する。
【0128】
図12は、異常行動判定装置50による異常行動判定処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から異常行動判定プログラムを読み出して、RAM13に展開して実行することにより、異常行動判定処理が行なわれる。また、異常行動判定装置50に、人の行動を表す映像データから検出された行動ラベル群が入力される。ここで、行動ラベル群は非特許文献3に示すような手法で検出済みとする。
【0129】
ステップS220で、CPU11は、入力された行動ラベル群を、生成部62に入力する。そして、CPU11は、生成部62として、行動ラベル群から文を生成する。
【0130】
ステップS222で、CPU11は、生成した文を類似度算出部64に入力する。
【0131】
ステップS224で、CPU11は、手順文データベース60から手順文を各々取り出し、類似度算出部64に入力する。ここで、手順文データベース60からの手順文の取り出しには、手順の順序を考慮してもよい。例えば、一つ前の映像セグメントの行動ラベル群について最も類似度が高いと判断された手順文のID等を保持しておき、当該手順文の手順の前後T個の手順文を取り出すようにしてもよい。これにより、手順文との類似度の計算量を削減できる。
【0132】
ステップS226で、CPU11は、類似度算出部64として、取り出した手順文の各々について、当該手順文と生成した文との類似度を算出する。なお、類似度の指標としては、機械翻訳で使用される非特許文献6のBLEUや非特許文献7のROUGE等を用いればよく、その他、文間の類似度が測定できる指標を用いてもよい。
【0133】
[非特許文献6]Kishore Papineni, Salim Roukos, Todd Ward, and WeiJing Zhu. BLEU: a method for automatic evaluation of machine translation. ACL2002.
【0134】
[非特許文献7]Lin, Chin-Yew. ROUGE: A Package for Automatic Evaluation of summaries. ACL Workshop: Text Summarization Braches Out 2004.
【0135】
ステップS150で、CPU11は、類似度算出部64として、算出した類似度を異常判定部66へ出力する。
【0136】
ステップS152で、CPU11は、異常判定部66として、類似度と閾値とを比較し、人の行動が、手順と異なり異常であるか否かを判定し、判定結果を示すラベルを出力し、異常行動判定処理を終了する。
【0137】
上記ステップS200の処理における詳細動作を図13に示す。図13に示す動作は、映像セグメントごとの行動ラベル群について繰り返し行われる。なお、映像セグメントのセグメント長は、アプリケーションに依存する。
【0138】
ステップS160で、CPU11は、行動ラベル群を生成部62に入力する。
【0139】
ステップS162で、CPU11は、生成部62として、行動ラベル群の各行動ラベルを<人ラベル 動作ラベル 物体ラベル>の順に並べ替える。
【0140】
ステップS164で、CPU11は、生成部62として、行動ラベル群が学習済みの言語モデルの入力長上限より長いか否かを判定する。行動ラベル群が学習済みの言語モデルの入力長上限より長い場合には、ステップS166へ移行する。一方、行動ラベル群が学習済みの言語モデルの入力長上限以下である場合には、ステップS230へ移行する。
【0141】
ステップS166では、CPU11は、生成部62として、行動ラベル群における各行動ラベルの出現頻度を集計し、出現頻度順に各行動ラベルを並べ、学習済みの言語モデルの入力長上限におさまるように、上位N個の行動ラベルを抽出し、抽出された行動ラベル以外の行動ラベルを削除し、新たな行動ラベル群とする。
【0142】
ステップS230で、CPU11は、生成部62として、並び替えた行動ラベル群を学習済みの言語モデルへと入力し、文を生成する。
【0143】
ステップS232で、CPU11は、生成部62として、得られた文を出力する。
【0144】
以上説明したように、第2実施形態に係る学習装置は、手順に含まれる行動を表す学習用の映像データから、人の行動に関する行動ラベルを検出し、学習用の映像データに対して予め定められた手順文を生成するように、行動ラベルから文を生成する言語モデルを学習する。これにより、手順とは異なる異常行動を精度よく判定するための言語モデルを学習することができる。
【0145】
また、第2実施形態に係る異常行動判定装置は、人の行動を表す映像データから検出された、人の行動に関する行動ラベルに基づいて、行動ラベルから文を生成する予め学習された言語モデルを用いて、文を生成し、生成された文と、手順文データベースに記憶された手順文との類似度を算出し、算出された類似度に基づいて、人の行動が異常であるか否かを判定する。これにより、映像で撮影された手順のある作業において、手順とは異なる異常行動を精度よく判定することができる。
【0146】
<変形例>
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0147】
例えば、映像データではなく、音声データから行動ラベルを検出するようにしてもよい。この場合、音声データから検出した動作ラベルと人ラベルの組み合わせを行動ラベルとすればよい。また、映像データと音声データとの組み合わせから行動ラベルを検出するようにしてもよい。この場合、音声データから検出した動作ラベルと人ラベルと、映像データから検出した物体ラベルとの組み合わせを行動ラベルとしてもよい。
【0148】
また、学習装置と異常行動判定装置とを別々の装置として構成する場合を例に説明したが、これに限定されるものではなく、学習装置と異常行動判定装置とを一つの装置として構成してもよい。
【0149】
また、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した各種処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、学習処理及び異常行動判定処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0150】
また、上記各実施形態では、学習プログラム及び異常行動判定プログラムがストレージ14に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的(non-transitory)記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0151】
以上の実施形態に関し、更に以下の付記を開示する。
【0152】
(付記項1)
一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含む学習装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
前記手順に含まれる行動を表す学習用の映像データ又は音声データから、人の行動に関する行動ラベルを検出し、
前記学習用の映像データ又は音声データに対して予め定められた前記手順文、又は前記手順文を表す文ベクトルを生成するように、前記行動ラベルから文又は文ベクトルを生成する言語モデルを学習する
ように構成される学習装置。
【0153】
(付記項2)
学習処理を実行するように、一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含むコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記学習処理は、
前記手順に含まれる行動を表す学習用の映像データ又は音声データから、人の行動に関する行動ラベルを検出し、
前記学習用の映像データ又は音声データに対して予め定められた前記手順文、又は前記手順文を表す文ベクトルを生成するように、前記行動ラベルから文又は文ベクトルを生成する言語モデルを学習する
非一時的記憶媒体。
【0154】
(付記項3)
一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含む異常行動判定装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
人の行動を表す映像データ又は音声データから検出された、人の行動に関する行動ラベルに基づいて、前記行動ラベルから文又は文ベクトルを生成する予め学習された言語モデルを用いて、前記文又は文ベクトルを生成し、
前記生成された前記文又は文ベクトルと、前記手順文データベースに記憶された前記手順文、又は前記手順文を表す文ベクトルとの類似度を算出し、
前記算出された類似度に基づいて、前記人の行動が異常であるか否かを判定する
ように構成される異常行動判定装置。
【0155】
(付記項4)
異常行動判定処理を実行するように、一連の手順の各々についての、前記手順に含まれる少なくとも一つの行動を表す複数の手順文、又は前記複数の手順文の各々を表す文ベクトルを記憶する手順文データベースを含むコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記異常行動判定処理は、
人の行動を表す映像データ又は音声データから検出された、人の行動に関する行動ラベルに基づいて、前記行動ラベルから文又は文ベクトルを生成する予め学習された言語モデルを用いて、前記文又は文ベクトルを生成し、
前記生成された前記文又は文ベクトルと、前記手順文データベースに記憶された前記手順文、又は前記手順文を表す文ベクトルとの類似度を算出し、
前記算出された類似度に基づいて、前記人の行動が異常であるか否かを判定する
非一時的記憶媒体。
【符号の説明】
【0156】
10 学習装置
11 CPU
14 ストレージ
20 作業マニュアルデータベース
22 文ベクトル生成部
24 手順文データベース
26 学習用データベース
28 ラベル検出部
30 モデル学習部
50 異常行動判定装置
60 手順文データベース
62 生成部
64 類似度算出部
66 異常判定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13