(57)【要約】【課題】ロボットのためのニューラルネットワークモデルの各バッチのパラメータを操作対象の教材画像に基づいて得る。【解決手段】深層学習システム１は、頭部センサ１４及び手首センサ１５と、カメラ１２及び表示部１１１を備えて教材画像を表示部１１１に表示し、かつカメラ１２の視野に入るヒトの手首を表示部１１１に合成表示させて学習映像を得るＨＭＤ１１と、ヒトの頭部に対応して設けられたカメラ３３とヒトの頭部及び手首の動きを等価的に実現するアクチュエータ３４，３５とを備えたロボット３０と、ロボット側学習映像に対応するロボット３０のアクチュエータ３４，３５の動きの時系列な動作信号を記憶部２２に記憶し、記憶された学習映像及び対応する時系列な動作信号に基づいて、予め設計されたニューラルネットワークの各エッジに対するパラメータを設定する第１学習処理部２１１とを備える。【選択図】図３
2019093537.tif 000002
【特許請求の範囲】
【請求項１】
ヒトの頭部及び身体一部の動きを検出して検出信号を出力する動作検出部と、
カメラ及び表示部を備え、互いに類似する複数の第１の教材画像を個別に前記カメラからの一人称視点で前記表示部に表示するとともに、前記カメラの視野内に入る前記ヒトの身体一部を前記表示部に合成表示させる頭部装着型表示器と、
前記ヒトの頭部に対応する位置に設けられたロボットカメラと前記ヒトの頭部及び身体一部の動きを等価的に実現するアクチュエータとを備えたロボットと、
前記表示部に表示中の前記各第１の教材画像に対する前記ロボットのアクチュエータの動きを時系列な動作信号及び第１の学習映像としてそれぞれ取得して第１の記憶部に記憶し、前記第１の記憶部に記憶された各第１の学習映像及び対応する前記動作信号に基づいて、予め設計されたニューラルネットワークの各エッジに対する第１のパラメータを設定する第１の学習部とを備えた深層学習システム。
【請求項２】
前記複数の第１の教材画像と類似する複数の第２の教材画像の情報に対する前記アクチュエータの動きを時系列な動作信号及び第２の学習映像としてそれぞれ取得して第２の記憶部に記憶し、前記第２の記憶部に記憶された各第２の学習映像及び対応する前記動作信号に基づいて、前記第１のパラメータを更新して第２のパラメータを得る第２の学習部を備えた請求項１に記載の深層学習システム。
【請求項３】
前記アクチュエータは、前記ヒトの頭部及び手首を運動させるものである請求項１又は２に記載の深層学習システム。
【請求項４】
前記ヒトの頭部に対するアクチュエータは、前記ロボットカメラに対する視線移動を行わせるものである請求項１〜３のいずれかに記載の深層学習システム。
【請求項５】
前記アクチュエータは、６自由度で並進移動及び回転を行うものである請求項１〜４のいずれかに記載の深層学習システム。
【請求項６】
ヒトの頭部及び身体一部の動きを検出して検出信号を出力する動作検出部と、
カメラ及び表示部を備え、互いに類似する複数の第１の教材画像を個別に前記カメラからの一人称視点で前記表示部に表示するとともに、前記カメラの視野内に入る前記ヒトの身体一部を前記表示部に合成表示させる頭部装着型表示器と、
前記ヒトの頭部に対応する位置に設けられたロボットカメラ及び前記ヒトの頭部及び身体一部の動きを等価的に実現するアクチュエータを備えたロボットとを備え、
前記表示部に表示中の前記各第１の教材画像に対する前記ロボットのアクチュエータの動きを時系列な動作信号及び第１の学習映像としてそれぞれ取得して第１の記憶部に記憶する教師データ取得ステップと、
前記第１の記憶部に記憶された各第１の学習映像及び対応する前記時系列な動作信号に基づいて、予め設計されたニューラルネットワークの各エッジの第１のパラメータを設定する第１パラメータ算出ステップとを備えた深層学習方法。
【請求項７】
前記複数の第１の教材画像と類似する複数の第２の教材画像の情報に対する前記アクチュエータの動きを時系列な動作信号及び第２の学習映像としてそれぞれ取得して第２の記憶部に記憶する強化学習データ取得ステップと、
前記第２の記憶部に記憶された前記各第２の学習映像及び対応する前記動作信号に基づいて、前記第１のパラメータを更新して第２のパラメータを得る第２パラメータ算出ステップとを備えた請求項６に記載の深層学習方法。
【請求項８】
請求項６又は７に記載の深層学習方法によって得られた第２のパラメータが設定されたロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、深層学習に適用される学習システム、学習方法及びロボットに関する。
【背景技術】
【０００２】
近年、機械学習を用いてロボットに環境認識と自律動作を獲得させる試みが行われている。例えば特許文献１には、乱雑にバラ積みされたワークを取り出すときに、ロボットの最適な動作を人間の介在無しに学習できる機械学習装置が提案されている。この機械学習装置は、各ワークの三次元の位置データ及び姿勢データを計測し、かかる三次元計測結果とハンドの状態量とを利用してロボットハンドによるワーク取り出しのためのパラメータを、教師あり学習及び強化学習による深層学習を通じて獲得するものである。
【０００３】
また、従来、環境への適応力を有する方法として、熟練者の能力及び触覚などの感覚情報を遠隔地に伝送することで臨場感を得るロボット操縦を実現するテレイグジスタンスが知られている。熟練者の動作に学び、熟練者同等の運動スキルを自律ロボットに再現させることで、熟練者の技能伝承ならびに保全が可能になると期待できる。しかしながら、意識せずに発現する運動こそ熟練により獲得された好例であるように、熟練者自身が気づかない運動スキルは陽な定式化が困難であり、自律ロボット上での再現もまた容易ではない。昨今の深層学習では、自律ロボットに強化学習を行わせることで動力学パラメータや目標物の視覚的特徴量などの事前知識を与えることなく、ロボットに物体の把持動作、その他の操作を獲得させている（非特許文献１，２，３，４）。これらの研究は、原始的な感覚運動課題である、例えば把持するという課題を自律的に獲得可能な人工知能に対して、事前に与える知識をどこまで与えずに済むかを学術的な問いとしたものである。すなわち、事前知識の最小化が主題であり、人からのスキル獲得は目的としていない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−３０１３５号公報
【非特許文献】
【０００５】
【非特許文献１】Sergey Levine, Peter Pastor, AlexKrizhevsky, Deirdre Quillen, Learning Hand-Eye Coordination for RoboticGrasping with Deep Learning and Large-Scale Data Collection,arXiv:1603.02199v3, 2016.
【非特許文献２】Sergey Levine, Chelsea Finn, Trevor Darrel,Pieter Abbeel. End-to-End Training of Deep Visuomotor Policies. Journal ofMachine Learning Research (JMLR) 17:1-40. 2016.
【非特許文献３】鳥居航，藤本真平，中嶋篤宏，古川正紘，安藤英由樹，前田太郎，テレイグジスタンスによる一人称視点映像を用いた深層学習による自動スキル生成，第16回SICE SI，2015.
【非特許文献４】古川 正紘，近藤 大祐、安藤 英由樹，前田 太郎，深層学習におけるロボットのvisio-motor課題のためのテレイグジスタンスによる中間状態の獲得，第21回日本バーチャルリアリティ学会大会論文集（2016年9月）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１では、事前知識として乱雑にバラ積みされた個々のワークの三次元の位置データ及び姿勢データを計測して学習段階で利用しており、学習処理が繁雑となっている。また、非特許文献１〜４では、動力学パラメータや目標物の視覚的特徴量などの事前知識を与えることなく、すなわち事前に与える知識をどこまで与えずに済むか、乃至は事前知識の最小化を主題としたものであるが、事前知識の最小化がどの範囲か、またその場合の学習方法も一般的な内容に留まり、明確といえるほどには示されていない。
【０００７】
本発明は、上記に鑑みてなされたもので、画像情報のみの教材画像に基づいてニューラルネットワークモデルの各バッチのパラメータを設定する深層学習システム、深層学習方法、及び学習済みのロボットを提供するものである。
【課題を解決するための手段】
【０００８】
本発明に係る深層学習システムは、ヒトの頭部及び身体一部の動きを検出して検出信号を出力する動作検出部と、カメラ及び表示部を備え、互いに類似する複数の第１の教材画像を個別に前記カメラからの一人称視点で前記表示部に表示するとともに、前記カメラの視野内に入る前記ヒトの身体一部を前記表示部に合成表示させる頭部装着型表示器と、前記ヒトの頭部に対応する位置に設けられたロボットカメラと前記ヒトの頭部及び身体一部の動きを等価的に実現するアクチュエータとを備えたロボットと、前記表示部に表示中の前記各第１の教材画像に対する前記ロボットのアクチュエータの動きを時系列な動作信号及び第１の学習映像としてそれぞれ取得して第１の記憶部に記憶し、前記第１の記憶部に記憶された各第１の学習映像及び対応する前記動作信号に基づいて、予め設計されたニューラルネットワークの各エッジに対するパラメータを設定する第１の学習部とを備えたものである。
【０００９】
また、本発明に係る深層学習方法は、ヒトの頭部及び身体一部の動きを検出して検出信号を出力する動作検出部と、カメラ及び表示部を備え、互いに類似する複数の第１の教材画像を個別に前記カメラからの一人称視点で前記表示部に表示するとともに、前記カメラの視野内に入る前記ヒトの身体一部を前記表示部に合成表示させる頭部装着型表示器と、前記ヒトの頭部に対応する位置に設けられたロボットカメラ及び前記ヒトの頭部及び身体一部の動きを等価的に実現するアクチュエータを備えたロボットとを備え、前記表示部に表示中の前記各第１の教材画像に対する前記ロボットのアクチュエータの動きを時系列な動作信号及び第１の学習映像としてそれぞれ取得して第１の記憶部に記憶する教師データ取得ステップと、前記第１の記憶部に記憶された各第１の学習映像及び対応する前記時系列な動作信号に基づいて、予め設計されたニューラルネットワークの各エッジのパラメータを設定する第１パラメータ算出ステップとを備えたものである。
【００１０】
これらの発明によれば、第１の教材画像に対して熟練者等のヒトが操作する内容、学習映像がロボット側に送信され、ロボット側での時系列な第１の学習映像、及び対応するアクチュエータに対する動作信号が複数の試行について取得され、第１の記憶部に記憶される。次いで、第１の学習部によって、第１の記憶部に記憶された各第１の学習映像及び対応する前記動作信号に基づいて、予め設計されたニューラルネットワークの各エッジに対する第１のパラメータが設定される。従って、画像の情報のみの学習教材で深層学習が行うもので、しかも、他の数値情報などを不要とすることから学習のための準備、学習作業及び処理が容易となる。
【００１１】
また、本発明は、前記複数の第１の教材画像と類似する複数の第２の教材画像の情報に対する前記アクチュエータの動きを時系列な動作信号及び第２の学習映像としてそれぞれ取得して第２の記憶部に記憶し、前記第２の記憶部に記憶された各第２の学習映像及び対応する前記動作信号に基づいて、前記第１のパラメータを更新して第２のパラメータを得る第２の学習部を備えたものである。
【００１２】
また、本発明は、前記複数の第１の教材画像と類似する複数の第２の教材画像の情報に対する前記アクチュエータの動きを時系列な動作信号及び第２の学習映像としてそれぞれ取得して第２の記憶部に記憶する強化学習データ取得ステップと、前記第２の記憶部に記憶された前記各第２の学習映像及び対応する前記動作信号に基づいて、前記第１のパラメータを更新して第２のパラメータを得る第２パラメータ算出ステップとを備えたものである。
【００１３】
かかる構成によれば、さらに類似する複数の第２の教材画像を用いて、第２の学習部により、ロボット側の前記アクチュエータで同様な学習動作を試行し、得られた複数試行分の第２の学習映像及び対応する前記動作信号に基づいて、前記第１のパラメータが更新されて第２のパラメータが得られる。また、第１の学習部の処理と同様、第２の学習部によって、画像の情報のみに基づいて第１のパラメータをより成功確率を高める第２のパラメータに更新することが可能となる。
【００１４】
また、前記アクチュエータは、前記ヒトの頭部及び手首を運動させるものである。この構成によれば、人体に手首の部位に対応するハンドによって作業を行うロボットに適用可能である。
【００１５】
また、前記ヒトの頭部に対するアクチュエータは、前記ロボットカメラに対する視線移動を行わせるものである。この構成によれば、人体の眼の部位に対応したロボットカメラの視線を変更することが可能となる。
【００１６】
また、前記アクチュエータは、６自由度で並進移動及び回転を行うものである。この構成によれば、アクチュエータは３次元の位置及び向きを自在に設定可能となり、作業性に優れたロボットとなる。
【００１７】
また、前記深層学習方法によって得られた第２のパラメータをロボットに設定することで、教材と類似する作業対象物に対して自律的に作業を行うロボットが提供できる。
【発明の効果】
【００１８】
本発明によれば、ロボットのためのニューラルネットワークモデルの各バッチのパラメータを操作対象の教材画像に基づいて得ることができる。
【図面の簡単な説明】
【００１９】
【図１】ニューラルネットワークモデルと入出力信号との関係を示す概要図である。
【図２】強化学習の過程を説明するための複数コマ分の映像で、（ａ）は途中で失敗した場合の図、（ｂ）は成功した場合の図である。
【図３】本発明に係る深層学習システムの一例を示す構成図である。
【図４】ロボットの一例を示す構成図である。
【図５】教師あり学習の手順の一例を示すフローチャートである。
【図６】強化学習の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００２０】
まず、図１、図２を参照して深層学習について説明する。ニューラルネットワークは、入力層、出力層、及びその間の１又は複数の中間層から構成されている。図１のモデルは、全体で３層から構成されている。さらに、一例として、入力層は映像情報（学習映像）の６９１２個と体性感覚（Somatosensory）情報の１２個のノード（細胞数）を備え、中間層は５００個のノードを備え、出力層は１２個のノードを備えて構成されている。また、活性化関数は、各相間で各ノードを接続する各エッジのパラメータ（重み、バイアス）を規定する関数、例えばシグモイド関数を用い、出力関数は線形関数である。入力層からの映像情報は、表示部１１１の画面から、例えば空間解像度３２×６４ピクセル、かつ各色３２ビットの色深度で表された情報を、所定コマ数（表示部１１１の所定フレーム数）、例えば時間方向に連続する２０コマ分の画像を合成して入力情報としている。なお、フィルタリング方法としては、他に空間フィルタを利用して畳み込み処理する態様でもよい。
【００２１】
出力系列は、図１の右部に示す頭部及び手首のアクチュエータ３０１，３０２、例えばモータ（Motor）に示すように、ロボット３０が出力すべき頭部及び手先の並進速度、回転角速度である。頭部及び手首の動きは、頭部の視点位置、姿勢の６自由度と手先の位置、姿勢の６自由度との計１２自由度に縮退され、各自由度に対してモータで対応可能にされている。頭部及び手首の動きは、縮退された計１２自由度に対して、後退差分法を用いて時刻ｔの並進速度ｖｉ、回転角速度ｒｉに変換して得ている（式(1)）。なお、式(1)の添字ｉは頭部及び手先を表すもので、ｉ＝（０，１）である。また、時刻ｔの出力教師データは、式(2)のとおりである。
【００２２】
【数１】
2019093537.tif 000003
【００２３】
入力系列の一部に、体性感覚情報（Somatosensory）として１２自由度を設けており、前時刻の出力系列とした。従って、時刻ｔの入力系列は式(3)として表現される。なお、ｃｔは、Vision（視覚情報）を表している。
【００２４】
【数２】
2019093537.tif 000004
【００２５】
図１に示すように、表示画面に示される作業空間内に、世界座標系に対して固定された目標物（目標軌跡）が表示されている。目標軌跡は、例えば、曲がりくねった「イライラ棒」１０１を想定したもので、例えば、緑色の曲線部と、その一端１０２が青色、他端（図１では見えていない。）が赤色として表現されている。ロボット３０の状態量は、式(4)、(5)で表現され、世界座標系で表現された頭部、手先の位置姿勢ｐｉ，ｔ、θｉ，ｔ、及びｘｔで表される。作業空間は、一人称視点で描画されるもので、後述するように視点遷移に応じて位置や向きが変更される。
【００２６】
【数３】
2019093537.tif 000005
【００２７】
図1に示す視覚(Vision)と体性感覚(Somatosensory)の入力によりニューラルネットワークモデルは、式(2)に示した速度を出力する。この結果を用いて、後述する式(6)によりロボット３０の位置、姿勢を更新する。ただし、式(6)における初期状態ｘ０は、教師データの入力系列導出に用いた系列を用いる。
【００２８】
【数４】
2019093537.tif 000006
【００２９】
これにより、更新された位置、姿勢に基づいて視覚情報が更新され、式(3)におけるｃｔが更新される。ただし、強化学習における過度の発散を防ぐために、注視反射に相当する処理を実装している。具体的には視線方向に相当する頭部姿勢は用いずに、頭部位置ｐ０，ｉ，ｔから、手先位置ｐ１，ｉ，ｔが常に視野中心に位置するよう視線を制御するようにしている。また、ロボット３０は、後述するように、ヒトの頭部、典型的には額に対応する位置に頭部前方を撮像視野とするカメラを備えている。ロボット３０のカメラは、能動的な頭部並進運動を誘発させるために、両眼立体視ではなく単眼視条件を採用している。従って、頭部運動を伴わない限り、目標軌跡と、手首のアクチュエータ３０２に把持された「リング」３０３との相対距離が不定となる。頭部運動を伴う運動視差によって正確に相対距離を獲得することができる。
【００３０】
次に、学習手順の一例について説明する。本実施例では、学習過程は２段階であり、まずニューラルネットワークを、好ましくは熟練者による教師あり学習（第１の学習）で複数の教材画像のそれぞれに対する時系列な動作信号及び学習映像を取得し、かかる時系列な動作信号及び学習映像に対応するロボット側の時系列な動作信号及び学習映像に等価変換し、これらの等価変換された時系列な動作信号及び学習映像の複数組を用いて、ニューラルネットワークモデルのパラメータ（各エッジの重み、バイアス）の初期値（１次パラメータ）の算出演算を行う。パラメータの精度を高めるには、熟練者を教師とし、又は学習数を増加することで対応可能である。
【００３１】
１次パラメータが決定されると、この１次パラメータをモデルに設定した状態で、教師あり学習から、自律的な強化学習（第２の学習）に切り替えて学習を行って所要回数の試行情報を取得して、１次パラメータの更新演算を行う。これにより、１次パラメータはより成功度合いの高いパラメータに遷移される。ここに、強化学習とは、与えられた環境下で、試行錯誤を通じて価値を最大化するような行動を学習することである。なお、第１、第２の学習の結果からパラメータを算出する方法は、例えば、重みとバイアスとを引数とする誤差関数の値が収束するように反復計算を行う方法である。
【００３２】
なお、強化学習の実現のための、与えられる報酬（スコア）は、「イライラ棒」１０１を抜けるというタスクにおいて、「イライラ棒」１０１に触れずに、「リング」３０３を一端から他端まで移動させられたかどうかに関して、２値で与えられる。例えばタスクを失敗した試行時の情報はパラメータの更新には用いず、成功した試行時に情報で学習を進めていくようにしてもよい。教師あり学習及び強化学習のいずれも、学習のための、「イライラ棒」１０１に例示されるような教材画像が適用される。なお、「イライラ棒」１０１の形状は互いに類似するものが複数採用され、それぞれが教材画像データとして準備されている。また、形状の他、作業空間への配置状態（姿勢）を変更することで他の類似する教材画像とすることも可能である。なお、ロボット３０は、一般的には、すべての学習が終了して、設定されたパラメータの下で学習時の動作を自律的に行って類似する現物の作業対象物に対する作業に供される。
【００３３】
本学習方法では、教材画像と、対応して取得された教師データとから第１の学習における学習結果が得られ、その結果と第２の学習とから、自律的に映像と教師データとの関連を認識し、成功確率を高める行動を行うパラメータに更新していく。すなわち、本学習によれば、学習段階において、従来のような学習映像内の教材画像に関する種々の定義情報、数量的な情報は不要となる。しかも学習映像内の教材画像が何かということを認識することなく学習が可能であり、その結果、学習後におけるロボットによる実際の作業等においてもロボットカメラ等で撮像した映像のみで簡易な作業が実行可能となる。
【００３４】
より詳細には、教師あり学習では、まず教師データは入出力系列ともに自由度毎に時間軸方向に、zscoreを用いた正規化を行って、各自由度間における偏りを軽減し、かつ標準化する。教師あり学習における正規化の際の統計量(平均、分散)は、自由度毎に保持し、強化学習の際の正規化ならびに逆変換にも用いることができる。そして、確率的勾配降下法、mini-patch法、Dropoutにより、前述の教師データを学習させ、学習誤差が十分に小さくなるよう収束させる。
【００３５】
教師あり学習により学習した出力系列は、速度期待値であり、次いで速度を期待値に近づけるためのTemporal Difference（TD）学習を行う。すなわち、状態ｓにおいて行動ａを採った後、行動則πに従った累積報酬の期待値Ｑπ（ｓ，ａ）は、式(7)で表される。
【００３６】
【数５】
2019093537.tif 000007
【００３７】
すぐに得られる報酬期待値をＲ（ｓ，ａ）とし、成功もしくは失敗時に、報酬値＋１，−１（一般的には、絶対値が同一の値）を与える。なお、Ｅπは成功、失敗を表し、γは、古いほど影響を小さくする割引度を表し、Ｖπは行動則πに従った際の行動価値関数を表している。これを用いて最適行動価値関数のBellman方程式は、式(8)により与えられる。
【００３８】
【数６】
2019093537.tif 000008
【００３９】
本発明では、行動価値関数の学習を行う“sarsa”(state-action-reward-state-action)学習則を用い、式(9)を更新則とする。
【００４０】
【数７】
2019093537.tif 000009
【００４１】
本発明において行動価値関数は、例えば、式(10)で示すと、
【００４２】
【数８】
2019093537.tif 000010
【００４３】
のように出力速度の期待値を表しており、すなわち行動則πは、式(6)である。なお、式(10)の結果を、入力層の一部のノードに関与させるモデルとすることで、出力速度の期待値の影響を緩和することができる。
【００４４】
本実施例では、テレイグジスタンス環境にて計測された熟練者(教師)の頭部、手先の位置、姿勢の時系列データから教師データとしての入出力系列を生成した。試行毎の初期位置姿勢は、教材画像のうちからランダム又はルールに従って抽出したものを用い、学習係数α＝０．００１（式(9)参照）、減衰率γ＝０．９５（式(7)参照）での強化学習を約５００回試行した。その結果、ここでは成功率は２０％前後で推移した。
【００４５】
強化学習過程の一例を、図２に抜粋する。図２（ａ）は、教師あり学習の終了後、強化学習開始後間もない試行回数での事例であり、頭部の左右方向の並進運動が顕著な事例である。同図から、目標軌跡へ「リング」３０３を接近させる際に、頭部を目標軌跡に向かって左から右に移動させている様子が再現されていることがわかる。同試行は結果的に目標軌道と「リング」３０３とが接触し、失敗となっているが、これは手首の姿勢も目標軌跡に対して浅い角度を徐々にとるような運動が生じていることに起因する。一方、図２（ｂ）は、十分な試行回数目での成功した試行例であり、初期状態は「リング」３０３は開始点である一端１０２を通過した直後の状態である。その後、目標軌道に「リング」３０３は接触せずに終点である他端を通過している。この場合、視点位置は目標軌跡から遠ざかるような並進運動を伴っており、課題遂行のためのスキル獲得可能性が示された。
【００４６】
本発明の適用例としては、熟練作業においてテレイグジスタンスシステムを媒介して作業を行うことで、熟練者に提示される情報と熟練者が出力する情報のすべてを観測することが可能となるため、上記手法によって熟練者がなす作業をロボットによって実行可能となる。具体例として、医療分野において慢性的な熟練者不足が問題となっている内視鏡外科手術においては、遠隔操縦型のロボットを用いた手術が普及し始めており、当該手法により将来的には熟練者の技術を蓄積してロボット自らが半自動的に作業を行えるようになる。また、工業分野においてＴＩＧ（TungstenInert Gas）溶接は、大量生産が少なく単品受注が多い状況で現状のロボットシステムではプログラミング及び調整にかかるコストが高騰化していることから、自動化が困難とされているが、当該手法によればプログラミング及び調整を殆ど不要にすることができるため、熟練技術ＡＩ汎用の汎用ロボットの実現が可能となる。その他、視覚を仲介して学習する作業であれば、種々の分野、用途に対して適用可能である。また、作業としては、ロボットカメラで撮像した対象物の映像に、前記対象物に関する情報、例えば放射温度計で計測した表面温度分布の画像を重畳した状態で提示し、表面温度に依存して作業内容が微妙に変わるような作業でもよい。
【００４７】
図３は、本発明に係る深層学習システムの一例を示す構成図である。図４は、ロボットの一例を示す構成図である。図３、図４は、学習時に必要となる構成を示している。なお、学習終了後は、ロボット３０は、内蔵のプロセッサ（図略）によって作業プログラムが実行されて、他の構成と切り離されて作業等に供されてもよい。また、学習によって得られたパラメータを例えばネットワークを経由して１又は複数のロボットに提供することで、多数のロボットが異なる場所で同時に同様な作業を行う態様に供することもできる。
【００４８】
深層学習システム１は、教師（ヒト）に装備される教師データ生成部１０、学習本体部２０、及びロボット３０を備えて構成されている。教師データ生成部１０は、ＨＭＤ（Head Mounted Display）１１、カメラ１２及びセンサ部１３を備えている。ＨＭＤ１１は、公知のものが採用可能であり、ヒトの頭部に装着して用いられる。ＨＭＤ１１は、装着状態で顔面と対向する位置に表示部１１１を備え、この例では外部適所に、前方を視野とするカメラ１２を備えている。表示部１１１には教材画像が表示されると共に、カメラ１２の視野内で撮像された、例えば現物の「リング」３０３を所持した教師の手首部分の映像が合成表示されて、時系列な学習映像とされる。
【００４９】
また、ＨＭＤ１１の外部適所あるいは別（ＨＭＤ１１以外）の場所には、教師の頭部の動き及び手首の動きを検出する頭部センサ１４及び手首センサ１５が配設されている。頭部センサ１４及び手首センサ１５は、例えば加速度センサ、磁気センサその他であって、各対象部位について３次元での６自由度、合計１２自由度方向の動きが計測可能なものである。なお、後述するように、頭部センサ１４からの検出情報に応じて、表示部１１１に表示されている映像全体の向き、遠近距離が変更されるように映像が書き換えられる。
【００５０】
図１，２に示すような学習によって、時系列な学習映像、頭部及び手首の位置、姿勢情報が取得されて学習本体部２０の記憶部２２の取得データメモリ２２３に書き込まれる。教師データ生成部１０による学習作業は、学習データメモリ２２２に予め記憶されている複数の互いに類似する、３次元で表現される立体画像を試行の度に１つずつ読み出すことで実行される。なお、類似範囲は、深層学習後の実際の作業対象物に対する作業が可能となるような範囲をいい、固定的ではなく、例えば第１パラメータの精度、強化学習での学習量によって範囲は広狭変化し得る。
【００５１】
学習本体部２０は、深層学習処理を制御する制御部２１、学習プログラムその他の情報を記憶し、またワークエリアを有する記憶部２２、及び外部から操作指示を行う操作部２３を備えている。記憶部２２は、深層学習を実行させる学習プログラムを記憶するプログラムメモリ２２１、教材画像である画像データを記憶する学習データメモリ２２２、学習時の操作で得られる情報を記憶する取得データメモリ２２３、及びニューラルネットワークモデルのエッジのパラメータ（重み、バイパス）を記録するパラメータメモリ２２４を有する。
【００５２】
ここで、図４に示すロボット３０の構成を簡単に説明する。ロボット３０は、制御部３１、記憶部３２、カメラ３３、頭部アクチュエータ３４及び手首アクチュエータ３５を備えている。詳細は後述する。なお、ロボット３０は学習本体部２０と一体で、共通のプロセッサで動作制御される態様でもよく、あるいは学習本体部２０とは別体で、それぞれのプロセッサで動作制御される態様でもよい。
【００５３】
図３に戻って、制御部２１は、学習プログラムが実行されることで、第１学習処理部２１１、第２学習処理部２１２、画像表示処理部２１３及び通信処理部２１４として機能する。
【００５４】
第１学習処理部２１１は、前記教師あり学習（第１の学習）の進行を制御するものである。第１学習処理部２１１は、第１の学習が開始されると、複数の教材画像を順番にＨＭＤ１１側に出力すると共に、カメラ１２で撮像された視野内の教師の手首映像を表示部１１１に合成表示する。また、第１学習処理部２１１は、頭部センサ１４からの検出情報に応じて画像表示処理部２１３により視点を移動させて表示映像の向き、遠近処理等を施して画像を書き換える。また、第１学習処理部２１１は、表示部１１１に表示される映像のうち、例えば教師の手首映像が除かれた映像の時系列データを取得データメモリ２２３に記憶すると共に、必要に応じて、同期して取得される頭部センサ１４及び手首センサ１５からの時系列データである検出情報を取得データメモリ２２３に記憶する。
【００５５】
さらに、第１学習処理部２１１は、学習映像及び頭部センサ１４及び手首センサ１５からの時系列データである検出情報をロボット３０に送信して、ロボット３０の駆動制御部３１１を介して、ロボット３０側の構造に則して等価変換された信号で頭部アクチュエータ３４及び手首アクチュエータ３５の動作を指示すると共に、それらの動作信号を取り込んで、そのときの学習映像と対応付けて取得データメモリ２２３に記憶させる。かかるタスクが複数の教材画像分だけ個々に行われる。
【００５６】
また、第１学習処理部２１１は、取得データメモリ２２３に記憶されたロボット３０側からの学習映像及び頭部及び手首の動作信号を用いて、図１に例示するニューラルネットワークモデルの各エッジのパラメータを１次パラメータとして算出し、パラメータメモリ２２４に記憶することで、各活性化関数の定義付けを行う。なお、学習前にデフォルトのパラメータが設定されていてもよい。
【００５７】
第２学習処理部２１２は、第１学習処理部２１１で取得された１次パラメータが設定されたニューラルネットワークの下で、第２の学習を行う。第２学習処理部２１２は、第１学習で使用した互いに類似する教材画像と類似するような別の複数の（より好ましくはさらに多い）教材画像をロボット３０に送信すると共に、行動価値関数を利用して、ロボット３０の駆動制御部３１１を介して頭部アクチュエータ３４及び手首アクチュエータ３５に対する選択行動を実行させ、それらの動作信号を取り込んで、学習映像と関連させて取得データメモリ２２３に記憶させる。なお、学習映像には、カメラ３３で撮像したロボット３０のアクチュエータ３４，３５（及びリング）を合成したものを含ませることができる。また、リングの向きは、駆動制御部３１１からの動作信号から設定し得る。また、各試行において、成功した場合の時系列データのみを取り込み、失敗した場合の時系列データは不採用としてもよい。かかるタスクが複数の教材画像分だけ個々に行われる。
【００５８】
さらに、第２学習処理部２１２は、第２の学習で取得データメモリ２２３に記憶された学習映像及び頭部及び手首の時系列の動作信号を用いて演算を実行することで、１次パラメータを、より成功度合いを高めるパラメータに更新し、パラメータメモリ２２４に記憶する。第２学習処理部２１２は、所望数の教材画像に対するタスクがすべて終了した状態でパラメータ更新処理を実行してもよいし、タスクが１回終了する毎にパラメータの更新演算を実行する態様でもよい。
【００５９】
なお、操作部２３は、失敗か成功かの指示を第三者がマニュアルで入力するものである。なお、マニュアル入力に代えて自動的に判定する方法も採用可能である。自動的な判定方法として、例えば、予め「イライラ棒」と「リング」との接近具合を複数のタスクでの学習映像から、接近の具合と失敗か成功かの関連性事例を蓄積しておき、本学習時に前記蓄積情報に基づいて行う方法が考えられる。
【００６０】
画像表示処理部２１３は、第１学習処理部２１１での学習処理時に動作する。すなわち、画像表示処理部２１３は、選択された教材画像乃至はその位置、姿勢を指示された状態で表示部１１１に表示する。また、カメラ１２の視野内に「リング」を把持したヒトの手首などが入ると、カメラ１２で撮像されて表示部１１１の画面内に合成表示する。また、画像表示処理部２１３は、頭部センサ１４からの位置、姿勢情報から表示映像に対して視点移動（並進、向き）を行う。なお、第２学習時に、マニュアルで成功、失敗を指摘する態様では、例えば学習本体部２０又はロボット３０に表示部を設け、その画面にタスクの映像を表示させてもよい。この画面を参照することで、成否のマニュアル判定を行うようにすることもできる。
【００６１】
通信処理部２１４は、教師データ生成部１０及びロボット３０との間で情報の授受を行う。
【００６２】
ロボット３０は、用途などに応じた適宜な形状が採用可能であるが、ここでは、図１に示すように、少なくとも頭部、手首部分がヒトに似た外観形状をなし、手首を用いて所定の作業を行うことを想定している。なお、他の部位（例えば足部）で作業を行うロボットの場合、該当部位にアクチュエータを設けるとともに、視点に該当する部位にアクチュエータを設けてカメラの視線を可変可能に設置する態様とすればよい。なお、各アクチュエータは６自由度の構造を備える必要はなく、例えば並進、回転の一方でもよいし、並進及び回転の少なくとも一方が２自由度又は１自由度であってもよい。
【００６３】
図４において、カメラ３３は、ロボット３０の頭部の額に相当する部位に前方を視野とするように設けられている。頭部アクチュエータ３４及び手首アクチュエータ３５は、各自由度に対応してモータ等が設けられている。手首アクチュエータ３５は、ロボット３０が手首を利用して作業を行い、一方、頭部アクチュエータ３４を動作させることでカメラ３３、すなわち視点位置、姿勢を調整することで、カメラ３３で撮像された映像内にロボット３０のアクチュエータ３４，３５の撮像映像を合成表示する。なお、ロボット３０は、これらの映像を表示画面に表示してもよいし、映像データのままで画像処理を経て、頭部アクチュエータ３４、手首アクチュエータ３５に対する動作指示を行うものでもよい。
【００６４】
頭部駆動制御部３１１１は、頭部アクチュエータ３４に対する位置、姿勢の動作を指示する。手首駆動制御部３１１２は、手首アクチュエータ３５に対する位置、姿勢の動作を指示する。なお、記憶部３２は、教師データ生成部１０の頭部センサ１４、手首センサ１５の検出信号と、頭部アクチュエータ３４及び手首アクチュエータ３５との指令信号とを等価変換するための変換テーブル等、また学習によって生成されたパラメータを記憶する。
【００６５】
図５は、教師あり学習の処理の一例を示すフローチャートである。まず、教材画像の１つがＨＭＤ１１に表示され、教師の手首、リングがカメラ１２で撮像されて表示部１１１に合成表示されると共に、教師の動きが頭部センサ１４、手首センサ１５で検出され、この検出信号がロボット３０側に出力されて、頭部駆動制御部３１１１及び手首駆動制御部３１１２に入力される。頭部駆動制御部３１１１及び手首駆動制御部３１１２は、入力された検出信号からロボット３０側に等価変換された駆動信号を生成し、頭部アクチュエータ３４、手首アクチュエータ３５に駆動信号を出力して、頭部アクチュエータ３４、手首アクチュエータ３５を動作させる（ステップＳ１）。
【００６６】
この間、頭部駆動制御部３１１１及び手首駆動制御部３１１２から出力される動作信号は、ロボット３０での学習映像と共に時系列データとして逐次取得され（ステップＳ３）、学習映像と対応付けて取得データメモリ２２３に記憶される（ステップＳ５）。教師の合図により、あるいは所定時間の経過によって１回の試行の終了が確認されると、次の教材画像が有るか否かが判断され（ステップＳ７）、判断が肯定されると、ステップＳ１に戻って同様な手順が繰り返される。
【００６７】
一方、ステップＳ７で判断が否定された場合には、取得された複数の映像学習及び対応する動作信号からパラメータの算出演算が実行され（ステップＳ９）、算出結果は１次パラメータとしてパラメータメモリ２２４に記憶される（ステップＳ１１）。
【００６８】
図６は、強化学習の処理の一例を示すフローチャートである。まず、学習映像がロボット３０に出力され、次いで、行動価値関数の学習則を用いて、頭部駆動制御部３１１１及び手首駆動制御部３１１２からロボット３０の頭部、手首アクチュエータ３４，３５を選択された自由度について動作させる動作信号が出力される（ステップＳ２１）。
【００６９】
頭部駆動制御部３１１１及び手首駆動制御部３１１２から出力される動作信号は、時系列データとして逐次取得される（ステップＳ２３）。この間、学習が失敗したか否かの判断が行われる（ステップＳ２５）。１試行分の学習に成功した場合には、このときの学習映像と対応付けて動作信号が、例えば取得データメモリ２２３に記憶される（ステップＳ２７）。次いで、次の教材画像が有るか否かが判断され（ステップＳ２９）、判断が肯定されると、ステップＳ２１に戻って同様な手順が繰り返される。一方、試行の途中で学習に失敗したと判断されると、ステップＳ２７をスキップして、ステップＳ２９に進む。
【００７０】
ステップＳ２９で判断が否定された場合には、取得された複数の映像学習及び対応する動作信号から前記１次パラメータに対する更新演算が実行され（ステップＳ３１）、算出結果は最終のパラメータとしてパラメータメモリ２２４に記憶される（ステップＳ１１）。なお、最終のパラメータはロボット３０の記憶部３２に記憶されてもよい。また、前記ステップＳ２５において、試行の途中で学習に失敗したと判断された場合には、このときの学習映像及び動作信号を記憶しないようにしたが、これに代えて、記憶するようにしてもよい。この場合、成功した場合と失敗した場合とで、異なる価値を付与して記憶するようにすることが好ましい。ここに価値とは、例えば成功した場合には大きな値を、失敗した場合には小さい値を係数値（相対的な値含む）として設定することが考えられる。計数値を適用することで、全ての試行分を利用して最終のパラメータ算出演算を実行することができる。
【００７１】
以上によれば、特に、陽な表現が困難な熟練者の感覚運動スキルの場合に、教師あり学習で獲得した上で、強化学習を経て獲得スキルを汎化させることが可能となる。従来の強化学習法は事前知識を要さずに自律的に感覚運動スキルを獲得可能な反面、一般的に動作獲得までに膨大な試行数を必要とし、局所最適解への落ち込みも問題とされているが、目指す熟練者からの運動スキルをまず学習して獲得する手法では、局所最適解への落ち込み回避法としても効果が期待できる。すなわち、熟練者の経験に基づいた洗練された感覚運動過程こそ、強化学習を経て学習すべき大所最適解として獲得し得るものである。
【符号の説明】
【００７２】
１  深層学習システム
１０  教師データ生成部
１１  ＨＭＤ（頭部装着型表示器）
１１１  表示部
１２  カメラ
１３  センサ（動作検出部）
２０  学習本体部
２２  記憶部（第１の記憶部、第２の記憶部）
２１１  第１学習処理部
２１２  第２学習処理部
３０  ロボット
３１１駆動制御部
３３  カメラ（ロボットカメラ）
３４  頭部アクチュエータ
３５  手首アクチュエータ
【図１】
2019093537.tif 000011
【図２】
2019093537.tif 000012
【図３】
2019093537.tif 000013
【図４】
2019093537.tif 000014
【図５】
2019093537.tif 000015
【図６】
2019093537.tif 000016