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

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

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

特許7602230人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム
<>
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図1
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図2
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図3
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図4
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図5
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図6
  • 特許-人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-10
(45)【発行日】2024-12-18
(54)【発明の名称】人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置、プログラム及び情報システム
(51)【国際特許分類】
   G06N 3/0895 20230101AFI20241211BHJP
   G06N 20/00 20190101ALI20241211BHJP
   G06T 7/20 20170101ALI20241211BHJP
   G06V 10/77 20220101ALI20241211BHJP
   G06V 40/20 20220101ALI20241211BHJP
【FI】
G06N3/0895
G06N20/00
G06T7/20 300Z
G06V10/77
G06V40/20
【請求項の数】 13
(21)【出願番号】P 2021101780
(22)【出願日】2021-06-18
(65)【公開番号】P2023000773
(43)【公開日】2023-01-04
【審査請求日】2023-09-27
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(73)【特許権者】
【識別番号】504132272
【氏名又は名称】国立大学法人京都大学
(74)【代理人】
【識別番号】110001634
【氏名又は名称】弁理士法人志賀国際特許事務所
(72)【発明者】
【氏名】三鼓 悠
(72)【発明者】
【氏名】入江 豪
(72)【発明者】
【氏名】木村 昭悟
(72)【発明者】
【氏名】中澤 篤志
(72)【発明者】
【氏名】鈴木 乃依瑠
【審査官】多賀 実
(56)【参考文献】
【文献】特開2019-074945(JP,A)
【文献】特開2020-064568(JP,A)
【文献】特開2020-016935(JP,A)
【文献】齋藤 光明、藤波 香織,アンサンブル型Novelty Detectionによる未知の携帯機器所持位置の検出,情報処理学会 研究報告 ユビキタスコンピューティングシステム(UBI) 2019-UBI-062,日本,情報処理学会,2019年06月06日, pp 1-8
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/0895
G06N 20/00
G06T 7/20
G06V 10/77
G06V 40/20
(57)【特許請求の範囲】
【請求項1】
動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データに対して、動作を識別する情報を喪失させる処理を施すことで前処理済み動作データを生成する前処理部と、
前記動作データと、前記前処理済み動作データと、から第一の特徴量を抽出する人物特徴抽出器と、
一組の前記第一の特徴量が入力されたとき、前記一組の第一の特徴量が同一の動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が高いほど値が小さく、前記一組の第一の特徴量が互いに異なる動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が低いほど値が小さくなる対比損失評価値を出力する対比損失評価部と、
前記対比損失評価値が小さくなるように前記人物特徴抽出器のパラメータの学習を行う学習部と、
を備える人物特徴抽出器学習装置。
【請求項2】
前記前処理部が、動作データを入力として受け取ると、時系列についての平均を取得する、または時系列の順序に無作為化したものを取得する、または部分時系列を取得することによって前記前処理済み動作データを生成する請求項1に記載の人物特徴抽出器学習装置。
【請求項3】
動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データに対して、動作を識別する情報を喪失させる処理を施すことで前処理済み動作データを生成し、前記動作データと、前記前処理済み動作データと、から第一の特徴量を抽出し、一組の前記第一の特徴量が入力されたとき、前記一組の第一の特徴量が同一の動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が高いほど値が小さく、前記一組の第一の特徴量が互いに異なる動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が低いほど値が小さくなる対比損失評価値が小さくなるように学習されたパラメータを用いて、入力された動作データの人物を識別する情報だけを捉えた特徴を使って、入力された動作データの第一の特徴量を出力する人物特徴抽出器と、
前記第一の特徴量に基づき、前記動作データの人物を予測する人物予測器と、
を備える人物予測装置。
【請求項4】
動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データに対して、動作を識別する情報を喪失させる処理を施すことで前処理済み動作データを生成する前処理ステップと、
前記動作データと、前記前処理済み動作データと、に基づき、人物特徴抽出器が第一の特徴量を抽出する人物特徴抽出ステップと、
一組の前記第一の特徴量が入力されたとき、前記一組の第一の特徴量が同一の動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が高いほど値が小さくなり、前記一組の第一の特徴量が互いに異なる動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が低いほど値が小さくなる対比損失評価値を出力する評価ステップと、
前記対比損失評価値が小さくなるように、前記人物特徴抽出器のパラメータの学習を行う学習ステップと、
を有する学習方法。
【請求項5】
動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データから第二の特徴量を抽出する動作特徴抽出器と、
前記第二の特徴量に基づいて、一つ以上の動作クラスへの推定帰属確率を示す推定動作クラス帰属確率を求める動作クラス識別器と、
前記第二の特徴量に基づいて、一つ以上の人物クラスへの推定帰属確率を示す推定人物クラス帰属確率を求める人物クラス識別器と、
前記推定動作クラス帰属確率と、所与の教師動作クラス帰属確率との類似度が高いほど小さい値となる動作クラス識別損失評価値を求める動作クラス識別損失評価部と、
前記推定人物クラス帰属確率と、請求項3に記載の人物予測装置によって得られる人物予測結果に基づく教師人物クラス帰属確率との類似度が高いほど小さい値となる人物クラス識別損失評価値を求める人物クラス識別損失評価部と、
前記動作特徴抽出器は、前記動作クラス識別損失評価値を小さく、かつ、前記人物クラス識別損失評価値を大きくするように、前記動作クラス識別器は、前記動作クラス識別損失評価値を小さくするように、前記人物クラス識別器は、前記人物クラス識別損失評価値を小さくするように、それぞれ前記動作特徴抽出器、前記動作クラス識別器、前記人物クラス識別器の各パラメータの学習を行う学習部と、
を備える動作識別学習装置。
【請求項6】
前記動作クラス識別器は、前記学習部における反復学習の回数が所定回数以下である場合には、前記動作クラス識別器から取得する動作クラス帰属確率に基づき、未知動作クラスの判断をする、請求項5に記載の動作識別学習装置。
【請求項7】
前記動作クラス識別器は、前記学習部における反復学習の回数が所定回数より多い場合には、未知動作クラスの帰属確率をさらに取得し、
前記動作クラス識別損失評価部は、教師ラベルが付与されていないデータと、過去の動作識別結果と、前記未知動作クラスの帰属確率と、を用いて、前記過去の動作識別結果と、前記未知動作クラスの帰属確率との類似度が高いほど小さい値を示す動作識別損失評価値をさらに取得する、請求項5又は6に記載の動作識別学習装置。
【請求項8】
請求項5から7のいずれか一項に記載の動作識別学習装置によって得られたパラメータに基づいて、入力されたデータの人物を識別する情報を除きながら、動作を識別する情報だけを捉えた特徴を使って第二の特徴量を出力する動作特徴抽出器と、
前記動作識別学習装置によって得られたパラメータと前記第二の特徴量とに基づいて、前記データについて人物を識別する情報を除きながら、動作を識別する情報だけを捉えた特徴を使って前記データの既知動作クラスおよび未知動作クラスへの帰属確率を取得する動作クラス識別器と、
を備える動作識別装置。
【請求項9】
動作の時系列を記録したデータである動作データを入力として受け取ると、動作特徴抽出器が、前記動作データの第二の特徴量を出力する特徴抽出ステップと、
動作クラス識別器が、前記第二の特徴量に基づいて、前記動作データについて、一つ以上の動作クラスへの推定帰属確率を示す推定動作クラス帰属確率を求める動作クラス識別ステップと、
人物クラス識別器が、前記第二の特徴量に基づいて、前記動作データについて、一つ以上の人物クラスへの推定帰属確率を示す推定人物クラス帰属確率を求める人物クラス識別ステップと、
前記動作データに対して、前記推定動作クラス帰属確率と、所与の教師動作クラス帰属確率との類似度が高いほど小さいとなる動作クラス識別損失評価値を求める動作クラス識別損失評価ステップと、
前記動作データに対して、前記推定人物クラス帰属確率と、請求項3に記載の人物予測装置によって得られる人物予測結果に基づく教師人物クラス帰属確率との類似度が高いほど、小さい値となる人物クラス識別損失評価値を求める人物クラス識別損失評価ステップと、
前記動作クラス識別損失評価値及び前記人物クラス識別損失評価値について、前記動作特徴抽出器は前記動作クラス識別損失評価値を小さく、前記人物クラス識別損失評価値を大きくするように、前記動作クラス識別器は前記動作クラス識別損失評価値を小さく、前記人物クラス識別器は前記人物クラス識別損失評価値を小さくするように、それぞれ前記動作特徴抽出器、前記動作クラス識別器、前記人物クラス識別器の各パラメータの学習を行う学習ステップと、
を有する学習方法。
【請求項10】
請求項1又は請求項2に記載の人物特徴抽出器学習装置又は請求項5から請求項7のいずれか一項に記載の動作識別学習装置としてコンピューターを機能させるためのプログラム。
【請求項11】
人物特徴抽出器学習装置及び人物予測装置を含む情報システムであって、
前記人物特徴抽出器学習装置は、
動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データに対して、動作を識別する情報を喪失させる処理を施すことで前処理済み動作データを生成する前処理部と、
前記動作データと、前記前処理済み動作データと、から第一の特徴量を抽出する人物特徴抽出器と、
一組の前記第一の特徴量が入力されたとき、前記一組の第一の特徴量が同一の動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が高いほど値が小さく、前記一組の第一の特徴量が互いに異なる動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が低いほど値が小さくなる対比損失評価値を出力する対比損失評価部と、
前記対比損失評価値が小さくなるように前記人物特徴抽出器のパラメータの学習を行う学習部と、
を備え
前記人物予測装置は、
動作データを入力として受け取ると、請求項1又は請求項2に記載の人物特徴抽出器学習装置によって得られたパラメータに基づいて、前記動作データの第一の特徴量を出力する人物特徴抽出器と、
前記第一の特徴量に基づき、前記動作データの人物を予測する人物予測器と、
を備える、情報システム
【請求項12】
動作識別学習装置をさらに備え、
前記動作識別学習装置は、
動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データから第二の特徴量を抽出する動作特徴抽出器と、
前記第二の特徴量に基づいて、一つ以上の動作クラスへの推定帰属確率を示す推定動作クラス帰属確率を求める動作クラス識別器と、
前記第二の特徴量に基づいて、一つ以上の人物クラスへの推定帰属確率を示す推定人物クラス帰属確率を求める人物クラス識別器と、
前記推定動作クラス帰属確率と、所与の教師動作クラス帰属確率との類似度が高いほど小さい値となる動作クラス識別損失評価値を求める動作クラス識別損失評価部と、
前記推定人物クラス帰属確率と、前記人物予測装置によって得られる人物予測結果に基づく教師人物クラス帰属確率との類似度が高いほど小さい値となる人物クラス識別損失評価値を求める人物クラス識別損失評価部と、
前記動作特徴抽出器は、前記動作クラス識別損失評価値を小さく、かつ、前記人物クラス識別損失評価値を大きくするように、前記動作クラス識別器は、前記動作クラス識別損失評価値を小さくするように、前記人物クラス識別器は、前記人物クラス識別損失評価値を小さくするように、それぞれ前記動作特徴抽出器、前記動作クラス識別器、前記人物クラス識別器の各パラメータの学習を行う学習部と、
を備える、請求項11に記載の情報システム
【請求項13】
動作識別装置をさらに備え、
前記動作識別装置は、
前記動作識別学習装置によって得られたパラメータに基づいて、入力されたデータの第二の特徴量を出力する動作特徴抽出器と、
前記動作識別学習装置によって得られたパラメータと前記第二の特徴量とに基づいて、前記データについて既知動作クラスおよび未知動作クラスへの帰属確率を取得する動作クラス識別器と、
を備える、請求項12に記載の情報システム
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人物特徴抽出器学習装置、人物予測装置、学習方法、動作識別学習装置、動作識別装置及びプログラムに関する。
【背景技術】
【0002】
近年、モーションキャプチャー装置やウェアラブルデバイスなどのセンサ機器の普及や、画像認識技術の向上に伴って、人物の動作をセンシングすることが容易になってきた。センシングによって得られる動作データの一例として、ウェアラブルデバイスやスマートフォンに搭載された加速度センサで記録されたデータ、カメラ映像中の人物の姿勢データなどがあげられる。これらのデータを用いて人物の動作を認識することができる。このような認識処理は、人物認証やライフログアプリケーション、自動監視システムなどの様々なサービスに応用することが可能である。
【0003】
センシングされたデータを用いた人物の動作認識は、機械学習を用いた予測モデルにより実現されることが多い。この場合の問題として、学習に用いた人物以外のデータに対する動作認識精度が低くなる点が挙げられる。これは、各人物の動作には個性があるためである。例えば、歩くという動作を考えてみても、歩く速さや腕の振りの大きさ等において多様性があり、別の人物で訓練した予測モデルでは動作の認識精度が低下してしまうためである。
【0004】
このような問題を解決すべく、種々の技術が開示されている。例えば、非特許文献1には、対象人物のデータを用いて予測モデルを訓練する方法が開示されている。また、特許文献1には、蓄積された多数の人物の動作データの中で、対象人物に類似する人物を検出し、その人物の動作データを用いて予測モデルを訓練する方法が開示されている。さらに、非特許文献2及び非特許文献3には、能動学習や転移学習などを用いて、予測モデルを、学習事例に含まれる人物以外に対して適応させる方法が開示されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2012―248017号公報
【非特許文献】
【0006】
【文献】Gary Mitchell Weiss and Jeffrey Lockhart. 2012. The impact of personalization on smartphone-based activity recognition. In Workshopsat the Twenty-Sixth AAAI Conference on Artificial Intelligence.
【文献】R. Fallahzadeh and H. Ghasemzadeh. 2017. Personalization without User Interruption: Boosting Activity Recognition in New Subjects Using Unlabeled Data. In 2017 ACM/IEEE 8th International Conference on Cyber-Physical Systems (ICCPS). 293-302.
【文献】Seyed Ali Rokni, Marjan Nourollahi, and Hassan Ghasemzadeh. 2018. Personalized Human Activity Recognition Using Convolutional Neural Networks. In Thirty-Second AAAI Conference on Artificial Intelligence.
【発明の概要】
【発明が解決しようとする課題】
【0007】
高精度な動作認識を実現するために、上記様々な技術が提案されてきたが、これらの技術には、活用するための訓練データセットを作成するコストが非常に大きいという問題が存在する。
【0008】
まず、非特許文献1、非特許文献2、非特許文献3に記載の方法では、対象人物からデータを取得し、さらに各データがどの行動に該当するのかを表すラベルを付与する必要がある。加えて、特定の人物で訓練したモデルは、他の人物には汎化しないため、対象人物が変わる場合は再度データの取得及びラベリングが必要になる。
【0009】
また、特許文献1に記載の、多数の人物の動作データの中から類似する人物のデータを用いる方法についても、各人物について認識したい全ての動作のデータとラベルを取得する必要があり、非常にコストがかかる。
【0010】
さらに、訓練データの作成に際して、プライバシー等の問題によって、各動作データがどの人物のものなのかを表す人物ラベルが得られない場合も存在する。このような場合、上記いずれの技術も人物が特定できることを前提とした技術構成となっているため、利用することができないという問題が存在する。
【0011】
以上概観した通り、プライバシーの問題等を考慮した現実的な条件下で、訓練データ作成コストを抑えつつ人物動作認識を実現する技術は提案されていないのが実情である。
【0012】
上記の事情を鑑み、本発明は、人物動作認識を実現するための理想的なデータセットが得られない場合においても、多様な人物に汎化するような動作認識モデルを学習することが可能な技術を提供することを目的としている。
【課題を解決するための手段】
【0013】
本発明の一態様は、動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データに対して、動作を識別する情報を喪失させる処理を施すことで前処理済み動作データを生成する前処理部と、前記動作データと、前記前処理済み動作データと、から第一の特徴量を抽出する人物特徴抽出器と、一組の前記第一の特徴量が入力されたとき、前記一組の第一の特徴量が同一の動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が高いほど値が小さく、前記一組の第一の特徴量が互いに異なる動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が低いほど値が小さくなる対比損失評価値を出力する対比損失評価部と、前記対比損失評価値が小さくなるように前記人物特徴抽出器のパラメータの学習を行う学習部と、を備える人物特徴抽出器学習装置である。
【0014】
本発明の一態様は、動作データを入力として受け取ると、上記の人物特徴抽出器学習装置によって得られたパラメータに基づいて、前記動作データの第一の特徴量を出力する人物特徴抽出器と、前記第一の特徴量に基づき、前記動作データの人物を予測する人物予測器と、を備える人物予測装置である。
【0015】
本発明の一態様は、動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データに対して、動作を識別する情報を喪失させる処理を施すことで前処理済み動作データを生成する前処理ステップと、前記動作データと、前記前処理済み動作データと、に基づき、人物特徴抽出器が第一の特徴量を抽出する人物特徴抽出ステップと、一組の前記第一の特徴量が入力されたとき、前記一組の第一の特徴量が同一の動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が高いほど値が小さくなり、前記一組の第一の特徴量が互いに異なる動作データから抽出されたものである場合には、前記一組の第一の特徴量の類似度が低いほど値が小さくなる対比損失評価値を出力する評価ステップと、前記対比損失評価値が小さくなるように、前記人物特徴抽出器のパラメータの学習を行う学習ステップと、を有する学習方法である。
【0016】
本発明の一態様は、動作の時系列を記録したデータである動作データを入力として受け取ると、前記動作データから第二の特徴量を抽出する動作特徴抽出器と、前記第二の特徴量に基づいて、一つ以上の動作クラスへの推定帰属確率を示す推定動作クラス帰属確率を求める動作クラス識別器と、前記第二の特徴量に基づいて、一つ以上の人物クラスへの推定帰属確率を示す推定人物クラス帰属確率を求める人物クラス識別器と、前記推定動作クラス帰属確率と、所与の教師動作クラス帰属確率との類似度が高いほど小さい値となる動作クラス識別損失評価値を求める動作クラス識別損失評価部と、前記推定人物クラス帰属確率と、上記の人物予測装置によって得られる人物予測結果に基づく教師人物クラス帰属確率との類似度が高いほど小さい値となる人物クラス識別損失評価値を求める人物クラス識別損失評価部と、前記動作特徴抽出器は、前記動作クラス識別損失評価値を小さく、かつ、前記人物クラス識別損失評価値を大きくするように、前記動作クラス識別器は、前記動作クラス識別損失評価値を小さくするように、前記人物クラス識別器は、前記人物クラス識別損失評価値を小さくするように、それぞれ前記動作特徴抽出器、前記動作クラス識別器、前記人物クラス識別器の各パラメータの学習を行う学習部と、を備える動作識別学習装置である。
【0017】
本発明の一態様は、上記の動作識別学習装置によって得られたパラメータに基づいて、入力されたデータの第二の特徴量を出力する動作特徴抽出器と、前記動作識別学習装置によって得られたパラメータと前記第二の特徴量とに基づいて、前記データについて既知動作クラスおよび未知動作クラスへの帰属確率を取得する動作クラス識別器と、を備える動作識別装置である。
【0018】
本発明の一態様は、動作の時系列を記録したデータである動作データを入力として受け取ると、動作特徴抽出器が、前記動作データの第二の特徴量を出力する特徴抽出ステップと、動作クラス識別器が、前記第二の特徴量に基づいて、前記動作データについて、一つ以上の動作クラスへの推定帰属確率を示す推定動作クラス帰属確率を求める動作クラス識別ステップと、人物クラス識別器が、前記第二の特徴量に基づいて、前記動作データについて、一つ以上の人物クラスへの推定帰属確率を示す推定人物クラス帰属確率を求める人物クラス識別ステップと、前記動作データに対して、前記推定動作クラス帰属確率と、所与の教師動作クラス帰属確率との類似度が高いほど小さいとなる動作クラス識別損失評価値を求める動作クラス識別損失評価ステップと、前記動作データに対して、前記推定人物クラス帰属確率と、請求項3に記載の人物予測装置によって得られる人物予測結果に基づく教師人物クラス帰属確率との類似度が高いほど、小さい値となる人物クラス識別損失評価値を求める人物クラス識別損失評価ステップと、前記動作クラス識別損失評価値及び前記人物クラス識別損失評価値について、前記動作特徴抽出器は前記動作クラス識別損失評価値を小さく、前記人物クラス識別損失評価値を大きくするように、前記動作クラス識別器は前記動作クラス識別損失評価値を小さく、前記人物クラス識別器は前記人物クラス識別損失評価値を小さくするように、それぞれ前記動作特徴抽出器、前記動作クラス識別器、前記人物クラス識別器の各パラメータの学習を行う学習ステップと、を有する学習方法である。
【0019】
本発明の一態様は、上記の人物特徴抽出器学習装置又は上記の動作識別学習装置としてコンピューターを機能させるためのプログラムである。
【発明の効果】
【0020】
本発明により、人物動作認識を実現するための理想的なデータセットが得られない場合においても、多様な人物に汎化するような動作認識モデルを学習することが可能となる。
【図面の簡単な説明】
【0021】
図1】本実施形態にかかる人物特徴抽出器学習装置100の一例を示す機能ブロック図である。
図2】本実施形態にかかる人物予測装置200の一例を表す機能ブロック図である。
図3】本実施形態にかかる動作識別学習装置300の一例を示す機能ブロック図である。
図4】本実施形態に係る動作識別装置400の一例を示す機能ブロック図である。
図5】人物特徴抽出器学習装置100の動作例を示すフローチャートである。
図6】動作識別学習装置300の動作例を示すフローチャートである。
図7】各装置に共通するハードウェア構成を示す概略図である。
【発明を実施するための形態】
【0022】
<概略>
まず、本実施形態についての概略について説明する。
本実施形態は、利用可能な訓練データセットについて、以下に示すような三つの条件が満たされる状態においても、動作認識モデルを学習することが可能な技術を提供することを目的とする。
・動作データの人物ラベルが付与されていない
・各人物についてデータが欠損している動作クラスが存在している
・データセット中にラベル付きデータが存在する動作クラス(以下「既知動作クラス」という。)と、ラベル付きデータが一つもない未知の動作クラス(以下「未知動作クラス」という。)と、が含まれている
【0023】
以下の説明において、教師あり動作データは、正解となる動作クラスラベルが与えられている動作データである。教師なし動作データは、正解となる動作クラスラベルが与えられていない動作データである。訓練データは、教師あり動作データ及び教師なし動作データが含まれるデータである。本実施形態は、訓練データが与えられた時、以下のような問題のいずれか一つ又は複数が内在していたとしても、適切に動作する。第一の問題は、訓練データに人物ラベルが与えられていないという問題である。第二の問題は、各人物について動作データが欠損している動作クラスが存在している問題である。第三の問題は、訓練データ中に未知動作クラスの動作データが含まれている問題である。
【0024】
本実施形態は、第一の問題に対しては、訓練データ全体について人物ラベルを予測して特定することで対処する。本実施形態は、第二の問題及び第三の問題に対しては、予測した人物ラベルを用いて、人物非依存な識別学習を行うと共に、教師なし動作データの内の未知動作クラスの動作データに属するものを識別して特定することで対処する。
【0025】
<人物特徴抽出器学習装置の構成例>
図1は、本実施形態にかかる人物特徴抽出器学習装置100の一例を示す機能ブロック図である。人物特徴抽出器学習装置100は、例えばパーソナルコンピューターやサーバー装置等の情報処理装置を用いて構成される。人物特徴抽出器学習装置100は、制御部90、及び学習結果記憶部120を備える。制御部90は、CPU(Central Processing Unit)等のプロセッサーとメモリーを用いて構成される。制御部90はプロセッサーがプログラムを実行することによって、前処理部101、人物特徴抽出器102、対比損失評価部103、及び学習部104として機能する。なお、制御部90の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されても良い。上記のプログラムは、コンピューター読み取り可能な記憶媒体に記録されても良い。コンピューター読み取り可能な記憶媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM、半導体記憶装置(例えばSSD:Solid State Drive)等の可搬媒体、コンピューターシステムに内蔵されるハードディスクや半導体記憶装置等の記憶装置である。上記プログラムは電気通信回線を介して送信されても良い。
【0026】
人物特徴抽出器学習装置100とデータ記憶部110とは通信可能に接続される。データ記憶部110は磁気ハードディスク装置や半導体記憶装置等の記憶装置や、CD-ROM等の記録媒体からデータを読み出すことができる装置を用いて構成される。
【0027】
前処理部101は、動作データ集合を受け取り、各動作データについて前処理を施し、前処理済み動作データを生成する。前処理部101は、生成した前処理済み動作データを人物特徴抽出器102に出力する。
【0028】
人物特徴抽出器102は、動作データまたは前処理済み動作データを入力として受け取り、第一の特徴量を出力する。人物特徴抽出器102は、このような第一の特徴量を出力可能なパラメータを持つ関数に基づき動作する。第一の特徴量は、動作データの取得元となる人物の特徴を数ベクトルで表したものであり、具体的には整数値n1により定められるn1次元の要素を持つベクトルで表される。人物特徴抽出器102は、学習結果記憶部120に記憶されているパラメータを読み込み、入力された動作データの第一の特徴量を出力する。人物特徴抽出器102に適用される関数は、パラメータに対して微分可能なものであれば、任意ものを用いることができる。本実施形態ではニューラルネットワークが用いられる。
【0029】
対比損失評価部103は、人物特徴抽出器102により出力された一組の第一の特徴量を入力として受け取る。対比損失評価部103はこの一組の第一の特徴量の類似度を表す評価値(以下「対比損失評価値」という。)を出力する。評価値は、一組の第一の特徴量が同一の動作データから抽出された場合には類似度が高いほど、そうでない場合は類似度が低いほど、小さくなる損失値である。
【0030】
学習部104は、対比損失評価部103により得られた対比損失評価値を入力として受け取る。学習部104は入力された値について値が小さくなるように、人物特徴抽出器102のパラメータを学習する。学習部104は、学習により得られたパラメータを、学習結果記憶部120に記録する。
【0031】
<人物予測装置の構成例>
図2は、本実施形態にかかる人物予測装置200の一例を表す機能ブロック図である。人物予測装置200は、例えばパーソナルコンピューターやサーバー装置等の情報処理装置を用いて構成される。人物予測装置200は、制御部91、記憶部230及び人物予測結果記憶部220を備える。制御部91はCPU等のプロセッサーとメモリーを用いて構成される。制御部91はプロセッサーがプログラムを実行することによって、人物特徴抽出器201及び人物予測器202として機能する。制御部91の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されても良い。上記のプログラムはコンピューター読み取り可能な記憶媒体に記録されてもよい。コンピューター読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM、半導体記憶装置(例えばSSD)等の可搬媒体、コンピューターシステムに内蔵されるハードディスクや反動台記憶装置等の記憶装置である。上記のプログラムは電気通信回線を介して送信されても良い。
【0032】
記憶部230及び人物予測結果記憶部220は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。記憶部230は、人物特徴抽出器学習装置等の記憶装置(例えば学習結果記憶部120)を用いて構成されてもよい。記憶部230は、人物特徴抽出器学習装置100の学習部104の学習によって得られた学習結果としてのパラメータ(例えば学習結果記憶部120が記憶するデータ)を記憶する。
【0033】
人物特徴抽出器201は、処理対象の動作データ集合(予測対象の動作データ集合)を受け取ると、記憶部230からパラメータを読み出し、パラメータに基づき動作する。人物特徴抽出器201は、処理対象の動作データ集合について第一の特徴量の集合を出力する。人物予測器202は、人物特徴抽出器201によって得られた第一の特徴量の集合を入力として、処理対象の動作データ集合の各動作データについて、どの人物による動作データであるかを予測した結果の集合である人物予測結果を出力する。出力された人物予測結果は人物予測結果記憶部220に記録される。
【0034】
<動作識別学習装置の構成例>
図3は、本実施形態にかかる動作識別学習装置300の一例を示す機能ブロック図である。動作識別学習装置300は、例えばパーソナルコンピューターやサーバー装置等の情報処理装置を用いて構成される。動作識別学習装置300は、制御部92、動作識別結果記憶部350及び学習結果記憶部340を備える。制御部92は、プロセッサーがプログラムを実行することによって、動作特徴抽出器301、動作クラス識別器302、人物クラス識別器303、動作クラス識別損失評価部304、人物クラス識別損失評価部305及び学習部306として機能する。なお、制御部92の各機能の全てまたは一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されても良い。上記のプログラムは、コンピューター読み取り可能な記録媒体に記録されても良い。コンピューター読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM、半導体記憶装置(例えばSSD)等の可搬媒体、コンピューターシステムに内蔵されるハードディスクや半導体記憶装置等の記憶装置である。上記のプログラムは、電気通信回線を介して送信されてもよい。
【0035】
動作識別学習装置300は、教師あり動作データ記憶部310、教師なし動作データ記憶部320及び人物予測結果記憶部330からデータを取得して動作する。教師あり動作データ記憶部310は磁気ハードディスク装置や半導体記憶装置等の記憶装置や、CD-ROM等の記録媒体から動作データを読み出すことのできる装置を用いて構成される。教師あり動作データ記憶部310は、教師あり動作データ集合を記憶する。教師あり動作データ集合は、所望の動作クラスラベルが付与された動作データの集合である。教師なし動作データ記憶部320は、磁気ハードディスク装置や半導体記憶装置等の記憶装置や、CD-ROM等の記録媒体から動作データを読み出すことのできる装置を用いて構成される。教師なし動作データ記憶部320は、教師なし動作データ集合を記憶する。教師なし動作データ集合は、所望の動作クラスラベルが付与されていない動作データの集合である。
【0036】
動作特徴抽出器301は、教師あり動作データ集合及び教師なし動作データ集合を入力として受け取り、各動作データから第二の特徴量を抽出する。動作特徴抽出器301は、抽出された第二の特徴量を動作クラス識別器302及び人物クラス識別器303に出力する。第二の特徴量とは、必要な動作データの特徴をn2次元の要素を持つベクトルで表したものである。n2は任意の整数である。なお、第二の特徴量は、便宜上ベクトルの形式を持つものとして説明するが、形式は本発明の要点とは無関係であり、任意の形式を取ることができる。動作特徴抽出器301は学習結果記憶部340に記憶されているパラメータを読み込み、第二の特徴量を出力する。
【0037】
動作クラス識別器302は、動作特徴抽出器301によって出力された第二の特徴量を入力として受け取る。動作クラス識別器302は入力された第二の特徴量に基づき、推定動作クラス帰属確率を出力する。推定動作クラス帰属確率は、動作データが各既知動作クラス及び未知動作クラスに帰属する確率である。動作クラス識別器302はこのような推定動作クラス帰属確率を出力することができるパラメータを持つ関数に基づいて動作する。動作クラス識別器302は、学習結果記憶部340に記憶されているパラメータを読み込んで推定動作クラス帰属確率を出力する。また、動作クラス識別器302は、推定動作クラス帰属確率から帰属動作クラスを識別し、識別結果を動作識別結果記憶部350に記録する。
【0038】
人物クラス識別器303は、動作特徴抽出器301によって出力された第二の特徴量を入力として受け取る。人物クラス識別器303は、第二の特徴量に基づき、推定人物クラス帰属確率を出力する。推定人物クラス帰属確率は、動作データがどの人物による動作であるかを表す確率である。人物クラス識別器303はこのような推定人物クラス帰属確率を出力することができるパラメータを持つ関数に基づいて動作する。人物クラス識別器303は、学習結果記憶部340に記憶されているパラメータを読み込んで推定人物クラス帰属確率を出力する。
【0039】
動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303に適用される関数は、パラメータに対して微分可能であれば、任意のものを用いることができる。本実施形態では、ニューラルネットワークが用いられる。
【0040】
動作クラス識別損失評価部304は、処理対象の動作データに対する動作クラス識別器302が出力した推定動作クラス帰属確率と、動作識別結果記憶部350に記憶される動作クラス識別結果をもとに生成した擬似教師動作クラス帰属確率と、所望の動作クラスへの帰属確率を表す教師動作クラス帰属確率と、を入力として受け取る。擬似教師動作クラス帰属確率とは、教師帰属動作クラスが与えられていない教師なし動作データに対して付与した、仮の教師動作クラス帰属確率である。動作クラス識別損失評価部304は、推定動作クラス帰属確率と擬似教師動作クラス帰属確率又は教師動作クラス帰属確率との差異を表す第一の損失評価関数である動作クラス識別損失関数の値(以下「動作クラス識別損失評価値」という。)を求める。
【0041】
人物クラス識別損失評価部305は、人物予測結果記憶部330に記憶される人物予測結果に基づく教師人物クラス帰属確率と、処理対象の動作データに対して人物クラス識別器303が出力した推定人物クラス帰属確率と、を入力として受け取る。人物クラス識別損失評価部305は、推定人物クラス帰属確率と教師人物クラス帰属確率との差異を表す第二損失関数である人物クラス識別損失関数の値(以下「人物クラス識別損失評価値」という。)を求める。
【0042】
学習部306は、動作クラス識別損失評価部304によって得られた動作クラス識別損失評価値と、人物クラス識別損失評価部305によって得られた人物クラス識別損失評価値と、を入力として受ける。学習部306は、入力された値を用いて、動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303のパラメータを学習する。学習部306は、学習によって得られた動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303のパラメータを、学習結果記憶部340に記録する。動作特徴抽出器301に関する学習は、動作クラス識別損失評価値を小さく、人物クラス識別損失評価値を大きくするように行われる。動作クラス識別器302に関する学習は、動作クラス識別損失評価値を小さくするように行われる。人物クラス識別器303は人物クラス識別損失評価値を小さくするように行われる。
【0043】
<動作識別装置の構成例>
図4は、本実施形態に係る動作識別装置400の一例を示す機能ブロック図である。動作識別装置400は、例えばパーソナルコンピューターやサーバー装置等の情報処理装置を用いて構成される。動作識別装置400は、制御部93及び記憶部430を備える。制御部93は、CPU等のプロセッサーとメモリーとを用いて構成される。制御部93は、プロセッサーがプログラムを実行することによって、動作特徴抽出器401及び動作クラス識別器402として機能する。なお、制御部93の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されても良い。上記のプログラムは、コンピューター読み取り可能な記録媒体に記録されても良い。コンピューター読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM、半導体記憶装置(例えばSSD)等の可搬媒体、コンピューターシステムに内蔵されるハードディスクや半導体記憶装置等の記憶装置である。上記のプログラムは、電気通信回線を介して送信されてもよい。
【0044】
記憶部430は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。記憶部430は、動作識別学習装置300の学習部306によって行われた学習で得られた学習結果としてのパラメータ(例えば学習結果記憶部340が記憶する情報)を記憶する。
【0045】
動作特徴抽出器401は、処理対象の動作データ410(予測対象の動作データ)を受けると、記憶部430からパラメータを読み出し、パラメータに基づき動作する。動作特徴抽出器401は、処理対象の動作データ410について第二の特徴量を出力する。動作クラス識別器402は、記憶部430からパラメータを読み出し、パラメータに基づいて動作する。動作クラス識別器402は、動作特徴抽出器401によって得られた第二の特徴量に基づいて、処理対象の動作データ410について推定動作クラス帰属確率を求める。動作クラス識別器402の出力は、処理対象の動作データ410についての、各動作クラスに対する帰属確率そのものであってもよいし、どの動作クラスに属するかの推定結果を示す情報であってもよい。
【0046】
<人物特徴抽出器学習装置の動作例>
図5は、人物特徴抽出器学習装置100の動作例を示すフローチャートである。次に人物特徴抽出器学習装置100の動作例について説明する。人物特徴抽出器学習装置100は、データ記憶部110から動作データ集合を受けて、図5に示される学習処理ルーチンを実行する。
【0047】
まず、人物特徴抽出器学習装置100の制御部90は、二つ以上の動作データ集合を読み込む(ステップS101)。次に制御部90は入力された動作データ集合について各々の動作データに対して前処理を適用し、前処理済み動作データを生成する(ステップS102)。
【0048】
入力動作データ及びステップS102で生成した前処理済み動作データに対して、人物特徴抽出器102及び対比損失評価部103が処理を実行することによって、対比損失評価値が得られる(ステップS103)。
【0049】
ステップS103の処理が終わると、学習部104は、人物特徴抽出器102のパラメータの値(学習結果記憶部120に記録させる値)をそれぞれ更新する(ステップS104)。
【0050】
そして、制御部90は、終了条件を満たすか否か判定する(ステップS105)。終了条件を満たしている場合(ステップS105-YES)、制御部90は処理を終了する。一方、終了条件を満たしていない場合(ステップS105-NO)、制御部90はステップS101に戻って処理を繰り返す。
【0051】
以上説明した反復学習により、人物特徴抽出器102のパラメータが学習される。人物特徴抽出器102は、対比損失評価値を用いて、対比損失評価値を小さくするように学習が行われる。
【0052】
[各処理の詳細]
次に人物特徴抽出器学習装置100の各処理部の処理の詳細について説明する。
ステップS102における、動作データの前処理について詳細を説明する。
【0053】
人物特徴抽出器学習装置100は、人物ラベルが与えられていない訓練データから、人物特徴抽出器102を学習することを目的としている。人物ラベルが与えられていないため、いわゆる一般的な教師あり学習の枠組みで人物特徴抽出器102を学習することは不可能である。一方、同一の動作データであれば、少なくともその一連の動作は同一の人物によってなされた動作であると考えてよい。したがって、本発明の実施形態では、各動作データに対して、何らかの前処理を施して動作データを複製し、元の動作データ並びに複製された動作データから抽出された特徴量を互いに近づけるように学習することによって、人物特徴を学習することを考える。
【0054】
ここで問題となるのは、動作データには、当然ながら人物に関する情報だけではなく動作に関する情報が含まれているため、ただ複製しただけでは、人物を識別する情報だけを捉えた特徴を学習できるとは限らないことである。そこで本発明の実施形態では、人物を識別する情報を保ちつつ、動作を識別する情報を喪失させるような前処理を導入することによって、この問題を解決する。
【0055】
このような要件を満たす前処理としては様々なものが考えられる。例えば、動作データ(あるいはその一部フレーム)に対し、時間方向への平均値を求めてもよい。仮に動作データが、モーションキャプチャデータのように、動作中における人物の各関節位置の時系列を記録したものであると仮定する。このとき、時間方向への平均値を取ることによって時系列情報が喪失する。そのため、動作そのものの情報(動作を識別する情報)は失われる。しかし、関節位置の時間平均値には、依然としてその人物の身長やプロポーションといった身体的特徴を表すような情報は残されている。そのため、先の要件を満たす。なお、平均値は、時間方向への次元を持たない。例えば、仮に、元の動作データが、各フレームd次元で表現される動作をTフレーム分記録したものであるとすると、平均値はd次元ベクトルになる。そのため、元の動作データとはもはや次元が合わず、直接的な比較は不可能になる。しかし、例えば、平均値を元の動作のフレーム数(Tフレーム)分時間方向に複製するなどの簡単な処理によって次元を合わせることにより、比較可能になる。
【0056】
別の例として、動作データの動作フレームの時系列順序をランダムに入れ替える処理がある。平均値をとる場合と同様、順序の入れ替えによって動作の時系列情報(動作を識別する情報)は喪失する。しかし、動作主体の身体的特徴は保持されうる。あるいは、動作データの動作フレームの一部をランダムに選び、抽出してもよい。この場合も同様の効果が得られる。これ以外にも、前処理の形態には様々なものがありえる。先の要件を満たす限り任意のものを前処理として用いることができる。
【0057】
人物特徴抽出器学習装置100は、以上のような前処理を施した動作データ、あるいは、その元の動作データを用いて学習処理を行う。
【0058】
[対比損失評価部の処理]
人物特徴抽出器102は、動作データxを入力として第一の特徴量であるベクトルzを出力し、パラメータθを持つような関数で実現される。
【0059】
ステップS101で読み込まれる動作データ集合のデータ数をNとする。読み込んだ動作データ集合について、前処理部101及び人物特徴抽出器102を適用し、各動作データについて一組のベクトルを出力することで、2N個のベクトルが得られる。このベクトルの集合では、あるベクトルzに対して元動作データを共有するベクトルzが存在し、それ以外のベクトルは全て異なる動作データから生成されたベクトルzである。ベクトルzは2(N-1)個存在する。この対比学習では、同じ動作データから抽出されたベクトルは類似度を大きく、異なる動作データから生成されたベクトルは類似度を小さくするように学習することで、ベクトルzの空間上で同じ人物の動作データ同士が近傍に位置するように学習が行われる。このような学習を実現する対比損失の一例として、ベクトル同士の類似度を計るsim(u、v)を用いて下記式1のようなものが挙げられる。
【0060】
【数1】
【0061】
Eb[a]は、aの確率bに対する期待値である。なお本実施形態では式1は下記式2のようにN個の動作データに対する平均で近似的に置き換えられる。この時zとzi+1とは同一の動作データから抽出された第一の特徴量である。
【0062】
【数2】
【0063】
式2をθzについて小さくすることで、望ましい人物特徴抽出器102が得られる。このようなθzを求める方法は様々ある。単純には、人物特徴抽出器102を実現する関数がパラメータθzに対して微分可能である場合、局所最小化できることが知られている。そのため、本実施形態の一例においては、人物特徴抽出器102として以下の条件を満たす関数が選ばれても良い。
【0064】
人物特徴抽出器102の条件
・動作データxを入力された下でその動作データの特徴ベクトルzを出力する関数であること
・θについて微分可能であること
【0065】
[学習処理]
ステップS104に係る学習部104の学習処理について説明する。学習部104は、人物特徴抽出器102のパラメータについて、対比損失評価値Lctrが小さくなるように学習処理を行う。
【0066】
[パラメータ格納処理]
学習部104は、パラメータ学習後、ステップS104に係る処理にて、パラメータθzを学習結果記憶部120に格納する。学習部104は、以上のステップS101からS104までの学習処理を、終了条件が満たされるまで繰り返す。終了条件については、任意の条件が用いられて良い。例えば、所定の回数を繰り返すことが終了条件であってもよいし、対比損失評価値が一定値以上変化しなくなることが終了条件であってもよい。
【0067】
<人物予測装置の動作例>
人物予測装置200の動作例について説明する。まず、人物予測装置200の制御部91は、データ記憶部210から動作データを全て読み込む。制御部91の人物特徴抽出器201は、人物特徴抽出器学習装置100により記録された学習結果パラメータを記憶部230から読み込む。人物特徴抽出器201は、入力された動作データの集合について、学習結果のパラメータに基づいて処理を行い、各動作データに対して抽出した第一の特徴量の集合を得る。
【0068】
人物予測器202は、第一の特徴量に基づき、各動作データの人物予測結果を取得する。人物予測器202は、得られた人物予測結果を人物予測結果記憶部220に記録する。
【0069】
[人物予測処理の詳細]
人物特徴抽出器201は入力された各動作データの第一の特徴量を出力する。得られた第一の特徴量は、特徴量空間上で、同じ人物の動作データ特徴量同士が近傍に位置する。この特徴量の集合に対して、人物予測器202がクラスタリングアルゴリズムを実行することにより、人物予測結果を得ることができる。
【0070】
人物予測器202が実行するクラスタリングアルゴリズムには、任意の公知のクラスタリングアルゴリズムが用いられても良い。例えばScikit-learnなどのオープンソースソフトウェアで提供されるクラスタリングアルゴリズムを用いることができる。
【0071】
<動作識別学習装置の動作例>
図6は、動作識別学習装置300の動作例を示すフローチャートである。次に動作識別学習装置300の動作例について説明する。動作識別学習装置300は、教師あり動作データ記憶部310、教師なし動作データ記憶部320及び人物予測結果記憶部330からそれぞれデータを読み出し、図6に示される学習処理を実行する。
【0072】
動作識別学習装置300の制御部92は、それぞれ一つ以上の教師あり動作データ集合、教師なし動作データ集合及び各動作データに対する人物予測結果集合を読み込む(ステップS201)。次に、制御部92は、学習の反復回数が予定回数以下であれば(ステップS202-YES)、ステップS203の処理を実行する。一方、反復回数が予定回数より多ければ(ステップS202-NO)、ステップS204の処理が実行される。
【0073】
ここで、ステップS202における分岐処理の意義について説明する。分岐処理の目的は、教師ラベルの存在しない未知動作クラスの識別を動作クラス識別器302に学習させることである。動作クラス識別器302は、既知動作クラスK個と未知動作クラスを合わせた(K+1)個の動作クラスを識別可能になることを目的として学習する。
【0074】
しかし、既知動作クラスに関しては、動作クラスラベルが付与された動作データが教師あり動作データ集合に存在するが、未知動作クラスには未知であることを表すラベルが付与された動作データが存在しない。そのため、所与の動作クラスラベルのみを用いて学習すると、既知動作クラスK個の識別は可能になるが、未知動作クラスの識別は可能とはならない。そこで、反復回数が予定の回数以下である場合には、教師なし動作データ集合に対して動作クラス識別器302の出力結果をもとに、未知動作クラスかの識別を行い、(K+1)クラスの識別結果として識別履歴に記録する。
【0075】
その後、反復回数が予定回数より多い場合には、識別履歴に記録された動作クラス識別結果をもとに擬似的に生成した動作クラスラベルを生成し、(K+1)クラスの識別ができるように動作クラス識別器302を学習する。動作クラス識別結果は、再び識別履歴に記録されることで、次の反復学習時の動作クラスラベルの生成に用いられる。
【0076】
反復回数が予定回数以下の場合に用いられた、動作クラス識別器302の出力結果に基づき、未知動作クラスの識別を行う方法により、形式上は未知動作クラスの識別が可能である。しかし、この方法のみでは誤りが多く含まれる問題がある。そこで、教師なし動作データに対して、未知動作クラスを含む擬似の教師動作クラスラベルを生成し、その後、動作クラス識別器302の学習と未知動作クラスラベルの生成を相互に行うことで、誤りの少ない未知動作クラス識別を実現する。
【0077】
ステップS203では、教師あり動作データ集合、教師なし動作データ集合、人物予測結果集合に対して動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303が処理を実行することで、動作クラス識別損失評価値、人物クラス識別損失評価値、動作クラス識別結果が得られる。
【0078】
ステップS204では、教師なし動作データ集合について動作識別結果記憶部350から動作クラス識別履歴を読み込む。そして、ステップS205において、教師あり動作データ集合、教師なし動作データ集合、人物予測結果集合、動作クラス識別履歴に対して、動作特徴抽出器301、動作クラス識別器302、及び人物クラス識別器303が処理を実行することで、動作クラス識別損失評価値、人物クラス識別損失評価値、動作クラス識別結果が得られる。
【0079】
ステップS203またはS205の処理が終わると、学習部306は動作クラス識別損失評価値及び人物クラス識別損失評価値に基づいて、動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303のパラメータの値(学習結果記憶部340に記録される値)をそれぞれ更新する(ステップS206)。学習部306は、動作特徴抽出器301、動作クラス識別器302、人物クラス識別器303のパラメータを学習結果記憶部340に格納する。次に動作クラス識別器302は、ステップS203又はS205で得られた動作クラス識別結果を動作識別結果記憶部350に記録する(ステップS207)。
【0080】
そして、制御部92は、終了条件を満たすかを判定する(ステップS208)。終了条件を満たしている場合(ステップS208-YES)、制御部92は処理を終了する。終了条件を満たしていない場合(ステップS208-NO)、制御部92は、ステップS201に戻って処理を繰り返す。
【0081】
以上説明した反復学習により、動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303のパラメータが学習される。動作特徴抽出器301に関しては、動作クラス識別損失評価値を小さくするように、人物識別損失評価値を大きくするように学習が行われる。動作クラス識別損失関数は、動作クラス識別器302の出力した動作データの推定動作クラス帰属確率と、動作データの所与の教師動作クラス帰属確率または動作識別結果記憶部350に格納されているクラス識別履歴を用いて生成した擬似の教師動作クラス帰属確率と、の類似度が高いほど小さい値を出力する。人物クラス識別損失関数は、人物クラス識別器303の出力した動作データの推定人物動作クラスと、人物予測結果記憶部330に格納されている動作データの人物予測結果と、の類似度が高いほど小さい値を出力する。また動作クラス識別器302は動作クラス識別損失評価値を小さくするように学習し、人物クラス識別器303は人物クラス識別損失評価値を小さくするように学習する。
【0082】
[各処理の詳細]
次に動作識別学習装置300の各処理部の処理の詳細について説明する。
【0083】
[反復回数が予定回数以下の場合]
ステップS202において、反復回数が予定回数以下の場合における動作クラス識別器302、動作クラス識別損失評価部304、人物クラス識別損失評価部305、の各処理について説明する。
【0084】
[動作識別損失評価部の処理]
動作特徴抽出器301は、動作データxを入力として第二の特徴量を表すベクトルfを出力しパラメータθを持つような関数Fを用いることで実現される。動作クラス識別器302は、ベクトルfを入力として推定帰属確率yを出力するパラメータθを持つ関数として表現することができる。推定動作クラス帰属確率は動作特徴抽出器301を実現する関数Fを用いて、確率関数として下記式3のように表すことができる。
【0085】
【数3】
【0086】
式3はθ、θ、及びxが与えられた下でのyが出現する確率である。望ましい動作特徴抽出器301、動作クラス識別器302は、教師あり動作データ集合から動作データsが得られた時、各動作クラスへの教師動作クラス帰属確率tが出現するようなものである。すなわち、正解となる動作クラスが識別可能な帰属確率が求められる動作特徴抽出器301及び動作クラス識別器302である。動作データsと対応する教師動作クラス帰属確率tの出現確率をp(s、t)とすると、学習は式4の値が小さくなるようにパラメータθ、θを決定できれば良い。
【0087】
【数4】
【0088】
本実施形態では、教師あり動作データは動作データと教師動作クラス帰属確率の組の集合の形で与えられる。そのため、期待値は下記式5のように総和の形で近似的に置き換えられる。
【0089】
【数5】
【0090】
なお、S、Tはそれぞれ1つ以上の動作データと、対応する教師動作クラス帰属確率の集合である。式5が本実施形態の一例における動作クラス識別損失関数であり、これを任意のS、Tに対して評価した値が識別損失関数値である。
【0091】
式5をθ、θについて小さくすることで、sに対してtを出力できるような望ましい動作特徴抽出器301、及び動作クラス識別器302を得ることができる。このようなθ、θを求める方法は様々ある。単純には、動作特徴抽出器301を実現する関数Fと動作クラス識別器302を表す確率関数とがそれぞれのパラメータθ、θに対して微分可能である場合、局所最小化することができることが知られている。そのため、本実施形態の一例においては、動作特徴抽出器301及び動作クラス識別器302として以下の条件を満たす関数が選ばれても良い。
【0092】
動作特徴抽出器301の条件
・動作データxを入力された下でその動作データの特徴ベクトルfを出力する関数であること
・θについて微分可能であること
【0093】
動作クラス識別器302の条件
・特徴ベクトルfを入力として推定動作クラス帰属確率yを出力する関数であること
・θに対して微分可能であること
【0094】
[人物クラス識別損失評価部の処理]
人物クラス識別器303は動作特徴抽出器301が出力した特徴ベクトルfを入力として推定人物クラス帰属確率を出力するパラメータθcを持つ関数として表現することができる。推定ドメイン帰属確率は動作特徴抽出器301を実現する関数Fを用いて、確率関数として下記式6のように表すことができる。
【0095】
【数6】
【0096】
式6はθ、θ、及びxが与えられた下でのcが出現する確率である。望ましい人物クラス識別器303は、教師あり動作データ集合または教師なし動作データ集合から与えられた動作データxに対して、その識別結果が人物予測結果集合から与えられる教師人物クラス帰属確率と一致することである。そのため、動作データxと対応する教師人物クラス帰属確率cの出現確率をp(x、c)とすると、人物クラス識別器303の学習では下記式7が小さくなるようにパラメータθcを決定できれば良い。
【0097】
【数7】
【0098】
一方、動作特徴抽出器301は式7が大きくなるようにパラメータθeを決定するように学習を行う。
【0099】
人物クラス識別器303が式7の値を小さくするように学習するのに対して、動作特徴抽出器301が同じ式7の値を大きくするように学習する意義について説明する。本発明の動作特徴抽出器301は、人物について不変な特徴量を抽出することで、動作クラス識別器302での識別において、人物の差異の影響を受けにくくすることを目指す。式7に対して、人物クラス識別器303はそれを小さくするように学習することで、人物をより正確に識別するようになる。これに対して、動作特徴抽出器301はそれを大きくするように学習することで、出力される特徴は人物の識別がより困難になる。この学習を継続することで、動作特徴抽出器301は人物の差異の影響の小さい人物について不変な特徴量を抽出できるようになる。
【0100】
式7は本実施形態の場合は式4と同様に、下記式8のように総和の形で近似的に置き換えられる。
【0101】
【数8】
【0102】
なお、X、Cはそれぞれ1つ以上の動作データと、対応する教師人物クラス帰属確率の集合である。式8が本実施形態の一例における人物クラス識別損失関数であり、これを任意のX、Cに対して評価した値が識別損失関数値である。
【0103】
動作特徴抽出器301の条件
・動作データxを入力された下でその動作データの特徴ベクトルfを出力する関数であること
・θについて微分可能であること
【0104】
人物クラス識別器303の条件
・特徴ベクトルfを入力として推定人物クラス帰属確率y^を出力する関数であること
・θcに対して微分可能であること
【0105】
[クラス識別器のクラス識別処理]
動作データxに対してその動作データが既知クラスのいずれに帰属するかの確率は、動作クラス識別器302の出力する推定動作クラス帰属確率yであり、上述の式3を用いて表すことができる。動作クラス識別器302が出力する推定動作クラス帰属確率yについて、出力された推定動作クラス帰属確率yの曖昧性を示す情報エントロピーH(y|x)は下記式9のように表される。
【0106】
【数9】
【0107】
教師なし動作データ集合の教師なし動作データuが未知クラス動作データであるか否かを、式9の情報エントロピーの値が閾値σより大きいか否かによって識別する。情報エントロピーを元に未知クラスであると判別された動作データは未知クラスK+1として識別し、そうでない動作データは動作クラス識別器302の推定動作クラス帰属確率yの最も大きいクラスとして識別する。すなわち、反復回数e回目における教師なし動作データuの動作クラス識別結果yu、eは下記式10のように表される。
【0108】
【数10】
【0109】
[反復回数が予定回数より大きい場合]
次に、ステップS204における処理について説明する。ステップS204の処理で、教師なし動作データ集合の各動作データに対してそれらの過去の識別結果を読み込み、過去の識別結果から教師なし動作データに対する擬似の教師動作クラス帰属確率を求める。教師なし動作データ集合の動作データuについて、反復回数tの時の動作クラス識別結果は、後述のステップS207でyu、tとして動作識別結果記憶部350に格納されている。ステップS204では、過去T回の識別結果を動作識別結果記憶部350から読み出し、過去T回で最頻のクラスを擬似教師動作クラス帰属確率とする。すなわち、反復回数eにおいて教師なし動作データuの擬似教師動作クラス確率yは、最頻値を表すmode(・)を用いて式11のように表される。
【0110】
【数11】
【0111】
次にステップS205に係る評価処理について説明する。動作クラス識別損失評価部304及び人物クラス識別損失評価部305の処理については、反復回数が一定以下の場合の処理であるステップS203とほぼ同様の処理を行う。
【0112】
[動作クラス識別損失評価部の処理]
動作クラス識別損失評価部304は、教師あり動作データとその教師動作クラス帰属確率の集合(S、T)と教師なし動作データとステップ204で求めた擬似教師動作クラス帰属確率の集合(S’、T’)の和集合について総和を取ることにより、動作クラス識別損失関数を求める。すなわち、動作クラス識別損失評価部304の評価値は下記式12の形で表される。
【0113】
【数12】
【0114】
[人物クラス識別損失評価部の処理]
人物クラス識別損失評価部の処理はステップS203での人物クラス識別損失評価部305の処理と同一の処理を行う。
【0115】
[動作クラス識別器の動作クラス識別処理]
ステップS205では、動作クラス識別器302はK個の既知動作クラスと未知動作クラスを含めたK+1クラスの推定動作クラス帰属確率を出力することができる。そこで、動作クラス識別器302の動作クラス識別結果はK+1クラスの推定動作クラス帰属確率のうち、最も大きいクラスとなる。すなわち、反復回数e回目における教師なし動作データuの動作クラス識別yu、eは下記式13のように表される。
【0116】
【数13】
【0117】
[学習処理]
ステップS206にかかる学習部306の学習処理について説明する。動作特徴抽出器301については動作クラス識別損失評価値Lsが小さく、人物クラス識別損失評価値Lcの値が大きくなるように学習処理を行う。動作クラス識別器302は動作クラス識別損失評価値Lsが小さくなるように学習する。人物クラス識別器303は人物クラス識別損失評価値が小さくなるように学習する。具体的には式14、式15に示す問題を順次最適化するように行う。
【0118】
【数14】
【0119】
【数15】
【0120】
ここで、クラス識別損失評価値Lとドメイン識別損失評価値Lがパラメータθ、θ、θについて微分可能であるように動作特徴抽出器301、動作クラス識別器302及び人物クラス識別器303の関数を選ぶため、誤差勾配降下法により学習することが可能である。
【0121】
[パラメータ格納処理]
パラメータ学習後、ステップS206に係る処理にて、パラメータθ、θ、θを学習結果記憶部340に格納する。
【0122】
[学習結果格納処理]
ステップS207に係る処理にて、動作クラス識別結果yu、eを動作識別結果記憶部350に格納する。
【0123】
以上のステップS201からS207までの学習処理を、終了条件が満たされるまで、繰り返せば良い。終了条件については、任意の情報が用いられて良い。例えば、所定の回数を繰り返すことが終了条件であってもよいし、目的関数の値が一定以上変換しなくなることが終了条件であってもよいし、訓練データとは別に用意した評価用データに対する精度が一定以上変化しなくなることが終了条件であってもよい。
【0124】
<動作識別装置の動作>
動作識別装置400の動作例について説明する。
まず、動作識別装置400の制御部93は動作データ410を読み込む。次に、制御部93の動作特徴抽出器401と動作クラス識別器402は動作識別学習装置300により記録された学習結果パラメータを記憶部430から読み込む。パラメータを読み込んだ動作特徴抽出器401及び動作クラス識別器402は動作データ410に対して処理を行うことで識別結果420を得る。
【0125】
図7は、各装置に共通するハードウェア構成を示す概略図である。人物特徴抽出器学習装置100、人物予測装置200、動作識別学習装置300及び動作識別装置400のそれぞれは、図7に示されるような情報処理装置900を用いて構成されてもよい。情報処理装置900は、プロセッサー901、メモリー902及び補助記憶装置903を備える。プロセッサー901、メモリー902及び補助記憶装置903は、バス904を介して通信可能に接続されている。
【0126】
このように構成された本実施形態では、訓練データに人物ラベルが与えられていない場合にも人物予測装置200によって動作データの人物を予測することで解決を図る。各人物について動作データが欠損している動作クラスが存在する問題や、訓練データ中に未知動作クラスの動作データが含まれている問題が内在しているような場合であっても、予測した人物ラベルを用いて人物に不変な特徴を学習し、教師ラベルの与えられていない動作データから未知の動作データを識別し特定することで問題の解決を図っている。
【0127】
データ記憶部110は、人物特徴抽出器学習装置100に備えられてもよい。学習結果記憶部120は、人物特徴抽出器学習装置100の外部に設けられてもよい。データ記憶部210及び人物予測結果記憶部220のいずれか一方又は双方は、人物予測装置200に備えられてもよい。記憶部230は、人物予測装置200の外部に設けられてもよい。教師あり動作データ記憶部310、教師なし動作データ記憶部320及び人物予測結果記憶部330のいずれか一つ又は複数は、動作識別学習装置300に備えられてもよい。学習結果記憶部340及び動作識別結果記憶部350のいずれか一方又は双方は、動作識別学習装置300の外部に設けられてもよい。記憶部430は、動作識別装置400の外部に設けられてもよい。各記憶部が各装置の外部に設けられた場合には、例えばTCP/IP等の通信を行うことで動作データが取得されてもよい。
【0128】
人物特徴抽出器学習装置100、人物予測装置200、動作識別学習装置300及び動作識別装置400のそれぞれは、1台の情報処理装置を用いて実装されてもよいし、複数台の情報処理装置に分散して実装されてもよい。
【0129】
人物予測装置200は、人物予測結果記憶部220を備えるのではなく、人物予測結果記憶部220として機能する記憶装置と通信可能に接続されてもよい。この場合、人物予測装置200と人物予測結果記憶部220とは、有線通信や無線通信で通信可能に接続される。
【0130】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0131】
100…人物特徴抽出器学習装置、101…前処理部、102…人物特徴抽出器、103…対比損失評価部、104…学習部、110…データ記憶部、120…学習結果記憶部、200…人物予測装置、201…人物特徴抽出器、202…人物予測器、210…データ記憶部、220…人物予測結果記憶部、230…記憶部、300…動作識別学習装置、301…動作特徴抽出器、302…動作クラス識別器、303…人物クラス識別器、304…動作クラス識別損失評価部、305…人物クラス識別損失評価部、306…学習部、310…教師あり動作データ記憶部、320…教師なし動作データ記憶部、330…人物予測結果記憶部、340…学習結果記憶部、350…動作識別結果記憶部、400…動作識別装置、401…動作特徴抽出器、402…動作クラス識別器、410…動作データ、420…識別結果、430…記憶部
図1
図2
図3
図4
図5
図6
図7