(57)【要約】【課題】ロボットに対して何らかの物体に対する操作を行なわせるという物体操作タスクにおいて、不完全情報を含む命令であっても操作可能性を推定するという、新たな技術を提供する。【解決手段】命令文を言語理解するための命令文推定システムは、操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現を取得する取得手段と、名称の言語表現および状況の言語表現の入力を受けて、実環境において名称に対応する物体の操作可能性を出力する分類器とを含む。分類器は、画像データセットに含まれる各画像データから取得された、画像内にある物体の名称の言語表現と、当該物体についての状況の言語表現と、操作可能性のラベルとの組に基づいて、事前学習により構成される。【選択図】図１
2019049604.tif 000002
【特許請求の範囲】
【請求項１】
命令文を言語理解するための命令文推定システムであって、
操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現を取得する取得手段と、
前記名称の言語表現および前記状況の言語表現の入力を受けて、実環境において前記名称に対応する物体の操作可能性を出力する分類器とを備え、
前記分類器は、画像データセットに含まれる各画像データから取得された、画像内にある物体の名称の言語表現と、当該物体についての状況の言語表現と、操作可能性のラベルとの組に基づいて、事前学習により構成される、命令文推定システム。
【請求項２】
前記分類器は、
前記名称の言語表現および前記状況の言語表現の入力を受けて、特徴サンプルを生成する抽出ネットワークと、
前記特徴サンプルの入力を受けて、当該特徴サンプルが属する確率が最も高い操作可能性のカテゴリを示す第１の推定値と、当該特徴サンプルが前記抽出ネットワークにより生成されたものである確率を示す第２の推定値と、を出力する識別ネットワークとを含み、
前記識別ネットワークは、カテゴリおよびノイズの入力を受けて疑似サンプルを生成する生成ネットワークからの、当該疑似サンプルの入力が可能に構成されており、
前記識別ネットワークは、入力されたサンプルが特徴サンプルおよび疑似サンプルのいずれであるかの識別の誤りについてのコスト関数と、入力されたサンプルが属するカテゴリの識別の誤りについてのコスト関数とを含む目的関数を用いて学習される、請求項１に記載の命令文推定システム。
【請求項３】
前記抽出ネットワークは、前記名称の言語表現および前記状況の言語表現の入力を受けて、当該入力が属する確率が最も高い操作可能性のカテゴリを示す第３の推定値を出力するように構成されており、
前記抽出ネットワークを構成する層のうち、前記疑似サンプルの次元数と等しいノード数を有する層の出力が前記特徴サンプルとして出力される、請求項２に記載の命令文推定システム。
【請求項４】
前記名称の言語表現および前記状況の言語表現を、言語表現中の単語間または言語表現全体同士の近さを反映した固定長のベクトルにそれぞれ変換する前処理手段をさらに備える、請求項２または３のいずれか１項に記載の命令文推定システム。
【請求項５】
前記取得手段は、
ユーザからの音声命令を認識して操作対象となる物体の名称の言語表現を出力する音声認識手段と、
カメラにより撮像された画像に基づいて、前記操作対象となる物体が置かれている状況の言語表現を出力する状況認識手段とを含み、
前記ユーザからの音声命令に従って、前記分類器からの前記操作対象となる物体についての操作可能性に基づいて、ロボットへの動作指令を生成する指令生成手段をさらに備える、請求項１〜４のいずれか１項に記載の命令文推定システム。
【請求項６】
命令文を言語理解するための命令文推定システムであって、
操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現を取得するステップと、
前記名称の言語表現および前記状況の言語表現を分類器に入力して、実環境において前記名称に対応する物体の操作可能性を出力するステップとを備え、
前記分類器は、画像データセットに含まれる各画像データから取得された、画像内にある物体の名称の言語表現と、当該物体についての状況の言語表現と、操作可能性のラベルとの組に基づいて、事前学習により構成される、命令文推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、不完全情報を含む命令文の言語理解に関する。
【背景技術】
【０００２】
人間とロボットとの間で音声対話を行なう技術の進展が著しい。このようなロボットとの音声対話において、与えられる情報が不完全である場合の言語処理、および、記号接地問題（シンボルグラウンディング問題）に対応した言語処理は、多くの関連課題を有する挑戦的な技術分野である（例えば、非特許文献１など参照）。
【０００３】
例えば、日常環境において、「新聞片付けておいて」という音声命令をロボットが実行するタスクを考える。実環境中には「新聞（に分類され得るオブジェクト）」が複数存在する可能性がある。さらに、「どれを」「どこに」「どうやって」片付けるかといった、さまざまなレベルでの曖昧性が存在する。そのため、命令者が望む動作を実行することは容易ではない。また、命令者にとって当たり前であるような、タスクの開始条件および終了条件、ならびに、行動途中で変化した状況に対してロボットがとるべき行動なども、命令文の言語情報のみからは一義的に決定できない場合も多い。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】杉浦孔明，「ロボットによる大規模言語学習に向けて−実世界知識の利活用とクラウドロボティクス基盤の構築−」，計測と制御，vol.55，no.10，pp.884-889，2016．
【非特許文献２】Q. Le and T. Mikolov, "Distributed Representations of Sentences and Documents", Proc. of ICML, pp.1188-1196, 2014.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本開示は、ロボットに対して何らかの物体に対する操作を行なわせるという物体操作タスクにおいて、不完全情報を含む命令であっても操作可能性を推定可能な新たな技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のある局面に従えば、命令文を言語理解するための命令文推定システムが提供される。命令文推定システムは、操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現を取得する取得手段と、名称の言語表現および状況の言語表現の入力を受けて、実環境において名称に対応する物体の操作可能性を出力する分類器とを含む。分類器は、画像データセットに含まれる各画像データから取得された、画像内にある物体の名称の言語表現と、当該物体についての状況の言語表現と、操作可能性のラベルとの組に基づいて、事前学習により構成される。
【０００７】
好ましくは、分類器は、名称の言語表現および状況の言語表現の入力を受けて、特徴サンプルを生成する抽出ネットワークと、特徴サンプルの入力を受けて、当該特徴サンプルが属する確率が最も高い操作可能性のカテゴリを示す第１の推定値と、当該特徴サンプルが抽出ネットワークにより生成されたものである確率を示す第２の推定値と、を出力する識別ネットワークとを含む。識別ネットワークは、カテゴリおよびノイズの入力を受けて疑似サンプルを生成する生成ネットワークからの、当該疑似サンプルの入力が可能に構成されている。識別ネットワークは、入力されたサンプルが特徴サンプルおよび疑似サンプルのいずれであるかの識別の誤りについてのコスト関数と、入力されたサンプルが属するカテゴリの識別の誤りについてのコスト関数とを含む目的関数を用いて学習される。ここで、抽出ネットワーク、生成ネットワークおよび識別ネットワークは、個別のネットワークとしても学習済みモデルであり、全体としても学習済みモデルである。
【０００８】
好ましくは、抽出ネットワークは、名称の言語表現および状況の言語表現の入力を受けて、当該入力が属する確率が最も高い操作可能性のカテゴリを示す第３の推定値を出力するように構成されている。抽出ネットワークを構成する層のうち、疑似サンプルの次元数と等しいノード数を有する層の出力が特徴サンプルとして出力される。
【０００９】
好ましくは、識別ネットワークは、名称の言語表現および状況の言語表現の入力が属するカテゴリの識別の誤りについてのコスト関数を用いて学習される。
【００１０】
好ましくは、命令文推定システムは、名称の言語表現および状況の言語表現を、言語表現中の単語間または言語表現全体同士の近さを反映した固定長のベクトルにそれぞれ変換する前処理手段をさらに含む。
【００１１】
好ましくは、取得手段は、ユーザからの音声命令を認識して操作対象となる物体の名称の言語表現を出力する音声認識手段と、カメラにより撮像された画像に基づいて、操作対象となる物体が置かれている状況の言語表現を出力する状況認識手段とを含む。
【００１２】
好ましくは、命令文推定システムは、ユーザからの音声命令に従って、分類器からの操作対象となる物体についての操作可能性に基づいて、ロボットへの動作指令を生成する指令生成手段をさらに含む。
【００１３】
好ましくは、命令文推定システムは、カメラにより撮像された画像に含まれる操作対象となる物体の各々についての操作可能性に基づいて対話画面を生成する、対話画面生成手段をさらに含む。
【００１４】
本発明のある局面に従う命令文推定方法は、操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現を取得するステップと、名称の言語表現および状況の言語表現を分類器に入力して、実環境において名称に対応する物体の操作可能性を出力するステップとを含む。分類器は、画像データセットに含まれる各画像データから取得された、画像内にある物体の名称の言語表現と、当該物体についての状況の言語表現と、操作可能性のラベルとの組に基づいて、事前学習により構成される。
【００１５】
好ましくは、分類器は、名称の言語表現および状況の言語表現の入力を受けて、特徴サンプルを生成する抽出ネットワークと、特徴サンプルの入力を受けて、当該特徴サンプルが属する確率が最も高い操作可能性のカテゴリを示す第１の推定値と、当該特徴サンプルが抽出ネットワークにより生成されたものである確率を示す第２の推定値と、を出力する識別ネットワークとを含む。識別ネットワークは、カテゴリおよびノイズの入力を受けて疑似サンプルを生成する生成ネットワークからの、当該疑似サンプルの入力が可能に構成されている。方法は、入力されたサンプルが属するカテゴリの識別の誤りについてのコスト関数と、入力されたサンプルが特徴サンプルおよび疑似サンプルのいずれであるかの識別の誤りについてのコスト関数とを含む目的関数を用いて、識別ネットワークを学習するステップをさらに含む。
【００１６】
好ましくは、抽出ネットワークは、名称の言語表現および状況の言語表現の入力を受けて、当該入力が属する確率が最も高い操作可能性のカテゴリを示す第３の推定値を出力するように構成されている。方法は、名称の言語表現および状況の言語表現の入力が属するカテゴリの識別の誤りについてのコスト関数を用いて、識別ネットワークを学習するステップをさらに含む。
【発明の効果】
【００１７】
本技術によれば、不完全情報を含む命令であっても操作可能性を推定できる。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態に従う推定エンジンの概要を示す模式図である。
【図２】本実施の形態に従う推定エンジンを利用した物体操作システムにより提供されるユーザインターフェイス画面の一例を示す模式図である。
【図３】本実施の形態に従う推定エンジンを利用した物体操作システムの構成例を示す模式図である。
【図４】本実施の形態に従う物体認識エンジンによる物体認識結果の一例を視覚化した図である。
【図５】本実施の形態に従う分類器のネットワーク構成の一例を示す模式図である。
【図６】本実施の形態に従う分類器の学習手順の一例を示すフローチャートである。
【図７】本実施の形態に従う分類器の学習手順の別の一例を示すフローチャートである。
【図８】本実施の形態に従う分類器の学習手順のさらに別の一例を示すフローチャートである。
【図９】本実施の形態に従う推定エンジンを用いた運用フェーズの処理手順を示すフローチャートである。
【図１０】本実施の形態に従う物体操作システムを実現するためのハードウェア構成の一例を示す模式図である。
【図１１】構築されたデータセットの一例を示す図である。
【図１２】本実施の形態に従う分類器の運用形態の一例を示す模式図である。
【発明を実施するための形態】
【００１９】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００２０】
［Ａ．概要］
本実施の形態は、命令文を言語理解するための命令文推定システムが提供される。より具体的には、本実施の形態は、何らかの対象の物体について、当該物体がどのようなものであるかを言語的に表現した「名称」、および、当該対象の物体の周囲がどのようなものであるかを言語的に表現した「状況」が取得される。取得される「名称」および「状況」は、いずれも言語表現、あるいは、言語コンテキストである。取得された「名称」および「状況」に基づいて、当該対象の物体に対する操作可能性を推定あるいは取得する処理に向けられる。推定あるいは取得される操作可能性に基づいて、対象の物体に対する現実の操作の可否などが判断される。
【００２１】
本明細書において、「操作」は、物体に対する任意の操作を対象とし得る。一例としては、物体を「把持する」、「取る」、「しまう」、「置く」、「移動する」といった動作が想定される。本発明は、これら列挙した動作に限らず、物体に対する任意の操作を対象とし得る。
【００２２】
本発明のある局面は、上述したような物体に対する操作可能性を推定するための演算機能または演算処理に向けられている。以下の説明においては、このような操作可能性を推定するための演算機能を「推定エンジン」とも略称する。
【００２３】
図１は、本実施の形態に従う推定エンジンの概要を示す模式図である。図１を参照して、推定エンジンは、操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現を取得する。名称の言語表現および状況の言語表現の取得については、何らかのアルゴリズムを用いて自動的に取得する方法だけではなく、人間による音声入力やテキスト入力なども可能である。
【００２４】
推定エンジンは、名称の言語表現および状況の言語表現の入力を受けて、実環境において名称に対応する物体の操作可能性を出力する分類器を有している。この分類器は、画像データセットに含まれる各画像データから取得された、画像内にある物体の名称の言語表現と、当該物体についての状況の言語表現と、操作可能性のラベルとの組に基づいて、事前学習により構成される。
【００２５】
このような推定エンジンを利用することで、ロボットに対して何らかの物体に対する操作を行なわせるという物体操作タスクにおいて、不完全情報を含む命令が与えられた場合であっても、ロボットに対して適切な動作指令を与えることができる。
【００２６】
［Ｂ．応用例］
まず、本実施の形態に従う命令文推定システムの応用例として、推定エンジンを含むシステムについて説明する。図２は、本実施の形態に従う推定エンジンを利用した物体操作システム１により提供されるユーザインターフェイス画面の一例を示す模式図である。
【００２７】
図２に示すユーザインターフェイス画面は、例えば、ユーザが「Ｂｏｔｔｌｅ，ｐｌｅａｓｅ（ボトルを取って下さい）」との音声命令を発した場合を想定している。このような音声命令に対して、本実施の形態に従う推定エンジンは、音声命令に含まれる物体の名称（すなわち、「Ｂｏｔｔｌｅ／ボトル」）の言語表現と、カメラなどで撮像された画像から取得される指定された物体に関する状況の言語表現とを取得し、指定された名称の物体に対する操作可能性を推定する。
【００２８】
カメラの視野内に指定された名称の物体が複数存在している場合には、各物体について操作可能性が推定される。そして、図２に示すように、操作可能な物体にキャプションが付与された状態で表示される。複数のキャプションが表示される場合には、例えば、各キャプションを特定するための情報も併せて表示される。
【００２９】
このような状態において、ユーザから後続の音声命令（例えば、「Ｎｏ．１，ｐｌｅａｓｅ」（Ｎｏ．１をお願いします。））が発せられると、当該音声命令に従って、ユーザの生活支援を行なうロボット等により特定のキャプションが付与されている物体に対する操作が実行される。
【００３０】
このような音声対話環境を提供することで、例えば、体の一部が不自由なユーザの生活支援などを行なうことができる。
【００３１】
［Ｃ．システム構成例］
次に、本実施の形態に従う推定エンジンを利用したシステムの一例について説明する。
【００３２】
図３は、本実施の形態に従う推定エンジンを利用した物体操作システム１の構成例を示す模式図である。図３を参照して、本実施の形態に従う物体操作システム１は、ユーザからの命令を受けると、対象となる任意の物体に対する操作可能性を推定し、その推定結果に基づいて、ユーザからの命令に応じた動作指令をロボット２に対して与える。
【００３３】
より具体的には、物体操作システム１は、ロボット２と、指令生成部４と、音声認識部６と、ロボットコントローラ８と、推定エンジン１０と、物体認識エンジン１２と、状況認識エンジン１４とを含む。推定エンジン１０は、前処理部１６，１８と、分類器２０とを含む。
【００３４】
ロボット２としては、物体に対して何らかの操作を行なうことができるものであればどのようなものであってもよい。また、「ロボット」との名称に限定されず、物体に対する何らかの操作を行なうことができる任意の装置または機構を「アクチュエータ」として用いることができる。図３に示す構成において、ロボット２は、物体を撮像するカメラ２２と、動作指令に従って物体に対する物理的な作用を与える作用部２４とを含む。図３には、カメラ２２および作用部２４が一つのロボット２として実装される例を示す、これらの機能を分離して配置してもよい。あるいは、複数のカメラ２２を配置するようにしてもよい。あるいは、ユーザが装着するウェアラブルデバイスに組み込まれたカメラ２６を用いてもよい。
【００３５】
指令生成部４は、ユーザからの音声命令に従って、分類器２０からの操作対象となる物体についての操作可能性に基づいて、ロボット２への動作指令を生成する。より具体的には、指令生成部４は、ユーザからの音声またはテキストの命令を受けると、物体認識エンジン１２に対して、ユーザからの命令に含まれる物体の種類を特定するための識別情報（物体ＩＤ）を与える。指令生成部４は、物体ＩＤに対応する物体の物体座標（物体位置）を受信するとともに、推定エンジン１０からの操作可能性の情報に基づいて、いずれかの物体に対する操作をロボット２に行なわせるための動作指令を生成する。
【００３６】
指令生成部４は、対話画面生成部５を含んでいてもよい。対話画面生成部５は、カメラにより撮像された画像に含まれる操作対象となる物体の各々についての操作可能性に基づいて対話画面を生成する。一例として、対話画面生成部５は、上述の図２に示すような、ユーザとの間で対話可能なユーザインターフェイス画面を生成および提供する。
【００３７】
音声認識部６は、ユーザからの音声命令を受けて、音声認識により命令された内容を指令生成部４へ出力する。特に、音声認識部６は、ユーザからの音声命令を認識して操作対象となる物体の名称の言語表現を出力する。
【００３８】
物体認識エンジン１２は、指令生成部４からの物体ＩＤに従って、カメラからの映像信号に基づいて、カメラの視野に含まれる物体ＩＤに対応する種類の物体を認識（あるいは、識別）する。物体認識エンジン１２は、認識した物体の物体座標を指令生成部４へ出力するとともに、指令生成部４からの物体ＩＤを状況認識エンジン１４へ出力する。また、物体認識エンジン１２は、認識した物体の名称を、人間が理解できる自然言語である言語表現（言語コンテキスト）として推定エンジン１０へ出力する。
【００３９】
状況認識エンジン１４は、カメラにより撮像された画像に基づいて、操作対象となる物体が置かれている状況の言語表現を出力する。より具体的には、状況認識エンジン１４は、物体認識エンジン１２からの物体ＩＤに従って、カメラからの映像信号に基づいて、カメラの視野に含まれる物体ＩＤに対応する種類の物体が置かれている状況を認識し、その認識した状況を出力する。本実施の形態においては、状況認識エンジン１４は、人間が理解できる自然言語である言語表現として、認識した状況を出力する。出力される言語表現は、対象となる物体および当該物体の周囲を含めた状況を説明するものに相当する。
【００４０】
本実施の形態に従う物体操作システム１においては、人間が任意の物体を視認して発する自然言語と同様の形式で、物体の種類、および、その物体が置かれている状況の情報が出力される。そのため、物体認識エンジン１２および／または状況認識エンジン１４に代えて、現実のユーザが対象の物体を視認して発声または記述した自然言語（音声またはテキスト）をそのまま入力することもできる。
【００４１】
前処理部１６，１８は、分類器２０に与えるための所定次元数の入力ベクトルを生成する。すなわち、前処理部１６，１８は、名称の言語表現および状況の言語表現をそれぞれ固定長のベクトルに変換する。
【００４２】
分類器２０は、教師あり学習により構成された識別器を含んで構成される。分類器２０には、入力として、物体認識エンジン１２からの名称の言語表現を前処理部１６において変換して得られる所定次元数の実サンプルｘｎａｍｅ、および、状況認識エンジン１４からの状況の言語表現を前処理部１８において変換して得られる所定次元数の実サンプルｘｓｉｔｕａｔｉｏｎが与えられる。分類器２０は、実サンプルｘｎａｍｅ、および、実サンプルｘｓｉｔｕａｔｉｏｎを受けて、物体に対する操作可能性を示す情報を出力する。
【００４３】
本明細書において、「物体に対する操作可能性」とは、対象の物体に対して何らかの操作ができる確率を示す指標を意味する。出力される指標としては、確率を示す数値（例えば、０〜１００％）であってもよいし、複数カテゴリのいずれであるかを示すようなものであってもよい。例えば、対象の物体を把持するという操作を想定すると、物体に対する操作可能性の出力形態として、「把持不可」、「操作不可能」、「操作困難」、「操作容易」といった４つのカテゴリのいずれとすることができる。
【００４４】
物体認識エンジン１２は、認識した物体の座標（すなわち、物体の位置）を出力することもできる。ロボットコントローラ８は、推定エンジン１０からの物体に対する操作可能性に基づいて、対象の物体に対する操作が可能であると判断すると、ユーザからの命令に従って、物体認識エンジン１２からの物体座標に基づいて動作指令を生成し、ロボット２へ与える。ロボット２は、ロボットコントローラ８からの動作指令に従って、対象の物体に対する操作を行なう。
【００４５】
上述したような物体操作システム１を採用することで、例えば、ロボット２を用いて、体の一部が不自由なユーザの生活支援などを行なうことができる。
【００４６】
［Ｄ．物体操作システム１の機能的構成］
次に、本実施の形態に従う物体操作システム１の機能的構成の一例について説明する。
【００４７】
（ｄ１：物体認識エンジン１２）
物体操作システム１の推定エンジン１０を構成する物体認識エンジン１２は、カメラからの映像信号に基づいて、カメラの視野に含まれる任意の物体を検出し、その位置および種類を出力する。このような、物体認識エンジン１２は、画像内から物体を検出し、その検出した物体の種類を示す名称を付与する公知技術を用いて実現できる。
【００４８】
例えば、Ｒ−ＣＮＮ（Region-based Convolutional Neural Network）などを用いて、物体の種類をカテゴリとする複数の画像により学習した分類器を採用することで、入力された映像信号に被写体として含まれる物体を検出するとともに、検出した物体が各カテゴリに属する確率を推定できる。
【００４９】
例えば、３つのカテゴリについて事前学習した場合には、検出された物体が各カテゴリに属する確率を、３次元の（０，１）表現のベクトルを用いて表現することができる。例えば、カテゴリ１に属する確率が「０．７０」であり、カテゴリ２に属する確率が「０．０５」であり、カテゴリ３に属する確率が「０．１０」であるとすると、その検出された物体は「カテゴリ１」に属するものと判断することができる。この場合、３次元の（０，１）表現のベクトルとしては、（１，０，０）と表現できる。さらに、各物体が属すると判断されたカテゴリに応じた名称をキャプションとして付与することもできる。
【００５０】
上述したようなＲ−ＣＮＮの処理自体については公知であるので、さらなる詳細な説明は行なわない。
【００５１】
図４は、本実施の形態に従う物体認識エンジンによる物体認識結果の一例を視覚化した図である。図４には、机上に配置された複数の物体の各々が検出されるとともに、検出された各物体の種類を示すキャプションが付与されていることが分かる。
【００５２】
（ｄ２：状況認識エンジン１４）
物体操作システム１の推定エンジン１０を構成する状況認識エンジン１４は、カメラからの映像信号に基づいて、特定の物体が置かれている状況を示す情報を出力する。推定エンジン１０は、例えば、Ｆａｓｔｅｒ−ＲＣＮＮ（Faster Recurrent Convolutional Neural Network）などを用いて実現することができる。この場合、例えば、画像と、当該画像内において特定の物体が置かれている状況を示す言語表現とを関連付けたデータセットを訓練サンプルとして用いることで、ネットワークを学習できる。
【００５３】
このようなネットワークの学習においては、後述するような「Ｖｉｓｕａｌ  Ｇｅｎｏｍｅ」データセットを用いることもできる。
【００５４】
（ｄ３：前処理部１６，１８）
前処理部１６，１８は、分類器２０に入力するサンプル（ベクトル）を生成する。分類器２０での処理を簡素化するために、前処理部１６，１８は、入力された名称および状況をそれぞれ固定長のベクトルに変換する。
【００５５】
本実施の形態においては、分類器２０に入力される名称および状況の言語的な意味から区別できるように、入力される言語表現に現れる単語間の近さを反映するベクトルを分類器２０に入力する。前処理部１６，１８は、入力される言語表現に現れる単語間の近さを反映したアルゴリズムに従って固定長のベクトルを生成する。このような固定長のベクトルは、「パラグラフベクトル」などと称される。このように、前処理部１６，１８は、入力される名称の言語表現および状況の言語表現を、言語表現中の単語間または言語表現全体同士の近さを反映した固定長のベクトル（パラグラフベクトル）にそれぞれ変換する。
【００５６】
以下の説明においては、「パラグラフベクトル」で表現するが、この記載は限定的なものではなく、本明細書の開示全体から導き出されるのと同じ技術思想を有するベクトルを包括的に含み得る用語である。
【００５７】
より具体的には、前処理部１６，１８は、入力される言語に含まれる単語（word）の各々をワードベクトルとして表現するとともに、ワードベクトル間の近さを考慮して、パラグラフベクトルを出力する。このようなパラグラフベクトルへの変換は、機械学習によって構成されるニューラルネットワークを用いることで実現できる。
【００５８】
このようなパラグラフベクトルの生成には、ＰＶ−ＤＭ（Distributed Memory Model of Paragraph Vectors）と称される手法を採用できる（非特許文献２などを参照）。
【００５９】
このように、前処理部１６は、名称についての実サンプルｘｎａｍｅを出力し、前処理部１８は、状況についての実サンプルｘｓｉｔｕａｔｉｏｎを出力する。実サンプルｘｎａｍｅおよび実サンプルｘｓｉｔｕａｔｉｏｎは、所定次元数のベクトルとなる。
【００６０】
（ｄ４：分類器２０）
物体操作システム１の推定エンジン１０を構成する分類器２０は、物体認識エンジン１２から出力される物体の名称（実装上は、名称についての実サンプルｘｎａｍｅ）、および、状況認識エンジン１４から出力される状況（実装上は、状況についての実サンプルｘｓｉｔｕａｔｉｏｎ）を入力として、物体に対する操作可能性を出力する。分類器２０としては、教師あり学習により構成される任意の構成を採用できる。このような分類器２０は、例えば、ＳＶＭ（Support Vector Machine）または任意のニューラルネットワークを採用できる。
【００６１】
本実施の形態に従う物体操作システム１の推定エンジン１０においては、一例として、ＧＡＮ（Generative Adversarial Nets）と称されるモデルを改良したニューラルネットワークを採用する。ＧＡＮは、ゲーム理論に由来する二人ゼロサムゲームを用いて、サンプルを生成するための生成モデルを学習する方法である。ＧＡＮは、基本的には、２つのニューラルネットワークで構成される。一方のニューラルネットワークは、イメージが真（real）であるか偽（fake）であるかを分類する識別器（discriminator）であり、他方のニューラルネットワークは、識別器を「欺く」イメージを生成する生成器（generator）である。
【００６２】
このようなＧＡＮの一例として、生成器（生成ネットワーク）に対して、データ生成プロセスを指示するための条件情報（conditional information）を用いる、条件付ＧＡＮ（conditional GAN；以下「ｃＧＡＮ」とも略称する。）が提案されている。
【００６３】
本実施の形態に従う分類器２０は、教師ありｃＧＡＮベースのフレームワークを有している。
【００６４】
図５は、本実施の形態に従う分類器２０のネットワーク構成の一例を示す模式図である。図５を参照して、分類器２０は、生成器に相当する生成ネットワーク３０と、識別器に相当する識別ネットワーク４０とを含む。分類器２０は、さらに抽出ネットワーク５０を含む。生成ネットワーク３０、識別ネットワーク４０、および抽出ネットワーク５０としては、任意のニューラルネットワークを採用することができ、その層数などについても任意に設計できる。例えば、多層パーセプトロンまたはＣＮＮ（Convolutional Neural Network）を採用することができる。
【００６５】
分類器２０は、後述するような訓練サンプルを用いた学習により構築される、学習済みモデルである。以下の説明においては、分類器２０を構築するための処理が実行される段階を「学習フェーズ」と称し、分類器２０を用いた分類タスク（より具体的には、物体操作タスク）が実行される段階を「運用フェーズ」とも称す。
【００６６】
学習フェーズにおいては、訓練サンプルを用いた学習により、生成ネットワーク３０、識別ネットワーク４０、および抽出ネットワーク５０が学習される。学習フェーズにおける各ニューラルネットワークの学習の手順などについては、後述する。
【００６７】
運用フェーズにおいては、基本的には、抽出ネットワーク５０および識別ネットワーク４０を用いて、分類タスクが実行される。
【００６８】
生成ネットワーク３０は、カテゴリおよびノイズの入力を受けて疑似サンプルを生成する学習済みモデルである。より具体的には、生成ネットワーク３０は、カテゴリｃ（カテゴリｙと同一）およびノイズｚから疑似サンプルを生成する。この生成される疑似サンプルを「ｘｆａｋｅ」とも記す。
【００６９】
抽出ネットワーク５０は、名称の言語表現および状況の言語表現の入力を受けて、特徴サンプルを生成する学習済みモデルである。より具体的には、抽出ネットワーク５０は、名称についての実サンプルｘｎａｍｅおよび状況についての実サンプルｘｓｉｔｕａｔｉｏｎを構成要素とする入力サンプルｘｒａｗから特徴サンプルを生成する。この生成される特徴サンプルを「ｘｒｅａｌ」とも記す。
【００７０】
識別ネットワーク４０は、特徴サンプルの入力を受けて、当該特徴サンプルが属する確率が最も高い操作可能性のカテゴリを示す推定値ｐＤ（＾ｙ）（第１の推定値）と、当該特徴サンプルが抽出ネットワーク５０により生成されたものである確率を示す推定値ｐＤ（＾Ｓ）（第２の推定値）とを出力する学習済みモデルである。また、識別ネットワーク４０には、疑似サンプルの入力が可能になっている。なお、ハット「＾」は、本来「ｙ」の上部に配置されるべきものであるが、特許出願システムの制約上、対象となる文字の前に記載する（以下においても同様である）。
【００７１】
より具体的には、学習フェーズにおいて、識別ネットワーク４０は、抽出ネットワーク５０からの特徴サンプルｘｒｅａｌ、および、生成ネットワーク３０からの疑似サンプルｘｆａｋｅの入力を受けて、入力されたサンプルが属する確率が最も高いカテゴリを示す推定値ｐＤ（＾ｙ）と、入力ソースＳが「真」である確率を示す推定値ｐＤ（＾Ｓ）とを出力する。
【００７２】
このように、生成ネットワーク３０、識別ネットワーク４０、および抽出ネットワーク５０の全体としても学習済みモデルに相当する。
【００７３】
一方、運用フェーズにおいて、識別ネットワーク４０は、抽出ネットワーク５０からの特徴サンプルｘｒｅａｌの入力を受けて、入力されたサンプルが属する確率が最も高いカテゴリを示す推定値ｐＤ（＾ｙ）と、入力ソースＳが「真」である確率を示す推定値ｐＤ（＾Ｓ）とを出力する。但し、運用フェーズにおいては、基本的には、推定値ｐＤ（＾ｙ）のみが利用される。
【００７４】
また、抽出ネットワーク５０は、名称の言語表現および状況の言語表現の入力を受けて、当該入力が属する確率が最も高い操作可能性のカテゴリを示す推定値ｐＥ（＾ｙ）（第３の推定値）を出力する。
【００７５】
以下、各ニューラルネットワークの詳細な構成について説明する。
生成ネットワーク３０は、１または複数の層３６＿１，３６＿２，・・・（以下、各層を「層３６」とも総称する。）を含み、入力層３２から先頭の層３６＿１に入力が与えられるとともに、生成ネットワーク３０の結果は出力層３８に出力される。図５には、一例として、２層の層３６からなる生成ネットワーク３０が示されている。入力層３２には、学習フェーズにおいて、カテゴリｃおよびノイズｚが与えられる。
【００７６】
識別ネットワーク４０は、１または複数の層４６＿１，４６＿２，・・・（以下、各層を「層４６」とも総称する。）を含み、入力層４２から先頭の層４６＿１に入力が与えられるとともに、識別ネットワーク４０の結果は出力層４８に出力される。図５には、一例として、２層の層４６からなる識別ネットワーク４０が示されている。
【００７７】
抽出ネットワーク５０は、１または複数の層５６＿１，５６＿２，・・・（以下、各層を「層５６」とも総称する。）を含み、入力層５２から先頭の層５６＿１に入力が与えられるとともに、抽出ネットワーク５０の結果は出力層５８に出力される。図５には、一例として、４層の層５６からなる抽出ネットワーク５０が示されている。
【００７８】
本実施の形態において、カテゴリｃとしては、操作可能性を示すベクトル（すなわち、正解データ）が用いられる。操作可能性として、４カテゴリを採用する場合には、各カテゴリに対応する４次元のカテゴリｃを用いることができる。例えば、１番目のカテゴリを示す場合には、カテゴリｃ＝（１，０，０，０）とすることができる。同様に、２番目のカテゴリを示す場合には、カテゴリｃ＝（０，１，０，０）とすることができる。
【００７９】
ノイズｚとしては、例えば、標準正規分布（ガウシアン分布）ソースから発生する乱数ベクトルが用いられてもよい。あるいは、それ以外の任意のノイズソースから発生する乱数ベクトルが用いられてもよい。本実施の形態においては、ノイズｚとして、１００次元のベクトルを採用する。
【００８０】
カテゴリｃが４次元のベクトルであり、ノイズｚが１００次元のベクトルである場合には、入力層３２には、これらのベクトルを結合した１０４次元のベクトルが与えられることになる。
【００８１】
生成ネットワーク３０を構成する層３６の各々のノード数および層間の活性化関数については、任意の数および構成を採用できる。活性化関数の一例としては、シグモイド関数（tanh）、ランプ関数であるＲｅＬＵ（Rectified Linear Unit）およびその派生形（例えば、ｌｅａｋｙ  ＲｅＬＵなど）、ならびに、ｓｏｆｔｍａｘ関数などを用いることができる。生成ネットワーク３０においては、例えば、入力層３２と層３６＿１との結合、および、層３６＿１と層３６＿２との結合には、ＲｅＬＵが採用されるとする。生成ネットワーク３０の出力は正負をとる実数値であるので、最終層である層３６＿２にはシグモイド関数を採用した。一例として、層３６＿１および層３６＿２のノード数は１００とし、出力層３８のノード数は５０とした。
【００８２】
生成ネットワーク３０から出力層３８に与えられるベクトルがｘｆａｋｅとなる。
次に、識別ネットワーク４０においては、入力層４２から先頭の層４６＿１に入力が与えられ、識別ネットワーク４０の結果は出力層４８に出力される。
【００８３】
識別ネットワーク４０の入力層４２には、セレクタ４４によって、特徴サンプルｘｒｅａｌまたは疑似サンプルｘｆａｋｅが選択的に入力される。学習サンプルは予めシャッフルされていることが多く、そのときの学習サンプルが特徴サンプルｘｒｅａｌおよび疑似サンプルｘｆａｋｅのいずれであるかに応じて選択される。
【００８４】
識別ネットワーク４０を構成する層４６の各々のノード数および層間の活性化関数については、任意の数および構成を採用できる。識別ネットワーク４０においては、例えば、入力層４２と層４６＿１との結合、および、層４６＿１と層４６＿２との結合には、ＲｅＬＵが採用されるとする。一例として、層４６＿１および層４６＿２のノード数は１００とした。識別ネットワーク４０の出力はカテゴリカル変数であるので、最終層である層４６＿２にはｓｏｆｔｍａｘ関数を採用した。
【００８５】
次に、抽出ネットワーク５０においては、入力層５２から先頭の層５６＿１に入力が与えられ、抽出ネットワーク５０の結果は出力層５８に出力される。
【００８６】
抽出ネットワーク５０の入力層５２には、入力サンプルｘｒａｗが入力される。入力サンプルｘｒａｗは、実サンプルｘｎａｍｅと実サンプルｘｓｉｔｕａｔｉｏｎとを結合したベクトルに相当する。例えば、実サンプルｘｎａｍｅおよび実サンプルｘｓｉｔｕａｔｉｏｎのいずれもが２００次元のベクトルである場合には、入力サンプルｘｒａｗは４００次元のベクトルとなる。
【００８７】
抽出ネットワーク５０を構成する層５６の各々のノード数および層間の活性化関数については、任意の数および構成を採用できる。抽出ネットワーク５０においては、例えば、層５６＿１と層５６＿２との結合、層５６＿２と層５６＿３との結合、および、層５６＿３と層５６＿４との結合には、ＲｅＬＵが採用されるとする。入力層５２と層５６＿１との結合には、ＰＡ（Pre-Activation）が適用されるものとする。抽出ネットワーク５０の出力はカテゴリカル変数であるので、最終層である層５６＿４にはｓｏｆｔｍａｘ関数を採用した。
【００８８】
一例として、層５６＿１のノード数は４００とし、層５６＿２，５６＿４のノード数は１００とし、層５６＿３のノード数は５０とした。
【００８９】
抽出ネットワーク５０から出力層５８には、入力された入力サンプルｘｒａｗが属する確率が最も高い操作可能性のカテゴリを示す推定値ｐＥ（＾ｙ）が出力される）。本実施の形態においては、抽出ネットワーク５０の層（層５６＿３）に与えられるベクトルが特徴サンプルｘｒｅａｌとして出力される。特徴サンプルｘｒｅａｌは、疑似サンプルｘｆａｋｅと同じ次元数となっている。
【００９０】
抽出ネットワーク５０において特徴サンプルｘｒｅａｌを抽出する層は、抽出ネットワーク５０の全体を考慮して、設計者が任意に選択することができる。本実施の形態において、特徴サンプルｘｒｅａｌを出力する層５６＿３は、抽出ネットワーク５０を構成するそれぞれの層が有するノード数のうち、最も少ないノード数を有する層になっている。
【００９１】
このように、抽出ネットワーク５０は、入力サンプルｘｒａｗに含まれる特徴を抽出し、その抽出した特徴を反映するサンプルを、生成ネットワーク３０および識別ネットワーク４０から構成される教師ありｃＧＡＮベースのフレームワークに入力する。すなわち、抽出ネットワーク５０は、分類に関連する特徴量を疑似的に生成するニューラルネットワークである。抽出ネットワーク５０を採用することで、より少ない学習回数で必要な性能を実現するとともに、処理を簡素化できる。
【００９２】
以下では、図５に示すネットワーク構成を「ＬＡＣ−ＧＡＮ（LAtent Classifier Generative Adversarial Nets）」と称することもある。
【００９３】
［Ｅ．学習手順（学習フェーズ）］
次に、分類器２０を学習するための学習手順の内容について説明する。図５に示すように、本実施の形態に従う分類器２０は、３つのニューラルネットワークから構成される。これら３つのニューラルネットワークに対する学習手順の一例について説明する。
【００９４】
訓練サンプルは、（ｘｒａｗ；ｙ）の組で与えられるものとする。ここで、入力サンプルｘｒａｗ（ＲＮ∋ｘｒａｗ）は抽出ネットワーク５０による抽出前の特徴量であり、ｙは対応する操作可能性のカテゴリを示す。カテゴリｙは、カテゴリｃと同次元の（０，１）表現であるとする。
【００９５】
抽出ネットワーク５０の目的は、入力される入力サンプルｘｒａｗから、分類に適した特徴量であるｘｒｅａｌを抽出することである。本実施の形態においては、ＧＡＮ（生成ネットワーク３０および識別ネットワーク４０）を用いて分類器２０を構成するため、入力サンプルｘｒａｗをそのまま用いるより、分類に適した特徴量であるｘｒｅａｌを用いる方が性能上有利となる。
【００９６】
抽出ネットワーク５０の学習は、入力される入力サンプルｘｒａｗが属するカテゴリを可能な限り間違えずに分類すること目的とする。すなわち、抽出ネットワーク５０の学習には、以下の（１）式に示す交差エントロピーＪＣＥの最小化が目的とされる。
【００９７】
【数１】
2019049604.tif 000003
【００９８】
ここで、ｙｊは、カテゴリｙと同次元の（０，１）表現であり、ｐＥ（＾ｙｊ）は、抽出ネットワーク５０の出力層の値である。抽出ネットワーク５０は、ボトルネック型のネットワークであり、抽出ネットワーク５０を構成する層のうち、疑似サンプルｘｆａｋｅの次元数と等しいノード数を有する層の出力が特徴サンプルｘｒｅａｌとして出力される。
【００９９】
一方、ＧＡＮ（生成ネットワーク３０および識別ネットワーク４０）において、生成ネットワーク３０の入力は，カテゴリｃおよびノイズｚである。カテゴリｃはカテゴリカル分布から生成され、ノイズｚは任意の分布（標準正規分布（ガウシアン分布）やその他の一様分布など）からサンプルされる。カテゴリｃは、本実施の形態では操作可能性に対応するカテゴリ数である４次元のベクトルであり、ノイズｚはｄｚ次元の乱数である。ｄｚは、ｚの次元数であり、例えば１００次元程度で設計者が任意に設定できる。生成ネットワーク３０の出力は、疑似サンプルｘｆａｋｅである。
【０１００】
識別ネットワーク４０の入力は、通常のＧＡＮと同様であり、セレクタ４４により、入力ソースＳ＝｛ｒｅａｌ，ｆａｋｅ｝が選択される。入力ソースＳの選択に応じてそれぞれ入力されるサンプルがｘｒｅａｌおよびｘｆａｋｅとなる。識別ネットワーク４０の出力は、入力ソースＳが「真」である確率の推定値ｐＤ（＾Ｓ）、および、入力されるサンプルが属するカテゴリの推定値ｐＤ（＾ｙ）である。すなわち、識別ネットワーク４０は、入力されるサンプルｘに対して、以下の（２）式に示す確率の推定値を出力する。
【０１０１】
【数２】
2019049604.tif 000004
【０１０２】
識別ネットワーク４０の学習は、入力される特徴サンプルｘｒｅａｌと疑似サンプルｘｆａｋｅとを取り違えないようにするとともに、入力される特徴サンプルｘｒｅａｌまたは疑似サンプルｘｆａｋｅが属するカテゴリを可能な限り間違えずに分類することを目的とする。すなわち、推定値ｐＤ（＾Ｓ）についてのコスト関数ＪＳ、および、推定値ｐＤ（＾ｙ）についてのコスト関数ＪＤＣは、それぞれ以下の（３）式および（４）式のように示すことができる。
【０１０３】
【数３】
2019049604.tif 000005
【０１０４】
（３）式中のＧ（ｚ，ｃ）は、生成ネットワーク３０がカテゴリｃおよびノイズｚの入力を受けて出力する疑似サンプルｘｆａｋｅを意味する。
【０１０５】
生成ネットワーク３０の学習は、識別ネットワーク４０が生成する疑似サンプルｘｆａｋｅを特徴サンプルｘｒｅａｌと取り違える確率を高めることを目的とする。すなわち、生成ネットワーク３０は、識別ネットワーク４０に対して、生成ネットワーク３０により出力される疑似サンプルｘｆａｋｅを「真」であると欺くことを目的として学習される。したがって、生成ネットワーク３０のコスト関数は、識別ネットワーク４０の推定値ｐＤ（＾Ｓ）についてのコスト関数ＪＳの負値に相当する。
【０１０６】
したがって、抽出ネットワーク５０、識別ネットワーク４０および生成ネットワーク３０についてのコスト関数Ｊ（Ｅ），Ｊ（Ｄ），Ｊ（Ｇ）は、それぞれ以下の（５）〜（７）式のように示すことができる。
【０１０７】
【数４】
2019049604.tif 000006
【０１０８】
なお、（６）式のλは、（３）式および（４）式に示す目的関数の間のトレードオフ係数を示す。
【０１０９】
このように、抽出ネットワーク５０は、名称の言語表現および状況の言語表現の入力が属するカテゴリの識別の誤りについてのコスト関数を用いて学習される。また、識別ネットワーク４０は、入力されたサンプルｘが特徴サンプルおよび疑似サンプルのいずれであるかの識別の誤りについてのコスト関数ＪＳと、入力されたサンプルｘが属するカテゴリの識別の誤りについてのコスト関数ＪＳと、を含む目的関数を用いて学習される。
【０１１０】
［Ｆ．学習手順の処理手順］
次に、分類器２０を学習するための学習フェーズにおける処理手順の一例について説明する。上述したように、分類器２０を構成する３つのニューラルネットワークについては、教師あり学習によってネットワークパラメータが決定される。図６〜図８は、本実施の形態に従う分類器２０の学習手順の一例を示すフローチャートである。
【０１１１】
（ｆ１：処理例１）
図６には、生成ネットワーク３０、識別ネットワーク４０、および抽出ネットワーク５０を循環的に学習する場合の手順を示す。図６を参照して、まず、抽出ネットワーク５０に対する学習が実行される（ステップＳ２）。これは、識別ネットワーク４０を学習するにあたって、抽出ネットワーク５０からの特徴サンプルｘｒｅａｌの入力が必要となるからである。続いて、識別ネットワーク４０に対する学習が実行される（ステップＳ４）。これは、生成ネットワーク３０を学習する際の目的関数に、識別ネットワーク４０の推定値ｐＤ（＾ｙ）および推定値ｐＤ（＾Ｓ）が含まれるからである。続いて、生成ネットワーク３０に対する学習が実行される（ステップＳ６）。
【０１１２】
そして、分類器２０全体としての学習終了条件が成立したか否かが判断される（ステップＳ８）。学習終了条件としては、例えば、検証データの識別率の改善量が予め定められた値より小さいことなどを含む。
【０１１３】
分類器２０全体としての学習終了条件が成立していなければ（ステップＳ８においてＮＯの場合）、次の訓練サンプルを読み込み、ステップＳ２以下の処理が繰返される。なお、訓練サンプル全体を使用しても学習終了条件を成立させることができなかった場合には、最初の訓練サンプルを再度利用して学習を実行する。
【０１１４】
これに対して、分類器２０全体としての学習終了条件が成立していれば（ステップＳ８においてＹＥＳの場合）、生成ネットワーク３０、識別ネットワーク４０、および抽出ネットワーク５０に対する学習は終了する。すなわち、分類器２０としてのニューラルネットワークが学習されたことになる。
【０１１５】
（ｆ２：処理例２）
次に、図７には、ＧＡＮの基本的な考え方に沿って、主として、生成ネットワーク３０および識別ネットワーク４０を循環的に学習する場合の手順を示す。図７を参照して、まず、抽出ネットワーク５０に対する学習が実行される（ステップＳ１２）。続いて、識別ネットワーク４０に対する学習が実行される（ステップＳ１４）。続いて、生成ネットワーク３０に対する学習が実行される（ステップＳ１６）。
【０１１６】
そして、分類器２０全体としての学習終了条件が成立したか否かが判断される（ステップＳ１８）。分類器２０全体としての学習終了条件が成立していなければ（ステップＳ１８においてＮＯの場合）、次の訓練サンプルを読み込み、ステップＳ１４以下の処理が繰返される。なお、訓練サンプル全体を使用しても学習終了条件を成立させることができなかった場合には、最初の訓練サンプルを再度利用して学習を実行する。すなわち、学習終了条件が成立するまで、生成ネットワーク３０および識別ネットワーク４０に対する学習が循環的に繰返し実行される。
【０１１７】
これに対して、分類器２０全体としての学習終了条件が成立していれば（ステップＳ１８においてＹＥＳの場合）、生成ネットワーク３０、識別ネットワーク４０、および抽出ネットワーク５０に対する学習は終了する。すなわち、分類器２０としてのニューラルネットワークが学習されたことになる。
【０１１８】
（ｆ３：処理例３）
次に、図８には、ＧＡＮを構成する生成ネットワーク３０および識別ネットワーク４０に対する学習と、付加的な要素である抽出ネットワーク５０に対する学習に対する学習とを並列的に実行する場合の手順を示す。
【０１１９】
図８を参照して、抽出ネットワーク５０に対する学習が実行される（ステップＳ２２）。そして、抽出ネットワーク５０としての学習終了条件が成立したか否かが判断される（ステップＳ２４）。抽出ネットワーク５０としての学習終了条件が成立していなければ（ステップＳ２４においてＮＯの場合）、次の訓練サンプルを読み込み、ステップＳ２２の処理が繰返される。なお、訓練サンプル全体を使用しても学習終了条件を成立させることができなかった場合には、最初の訓練サンプルを再度利用して学習を実行する。
【０１２０】
このような学習処理と並行して、識別ネットワーク４０に対する学習が実行される（ステップＳ２６）。続いて、生成ネットワーク３０に対する学習が実行される（ステップＳ２８）。そして、生成ネットワーク３０および識別ネットワーク４０からなるＧＡＮとしての学習終了条件が成立したか否かが判断される（ステップＳ３０）。ＧＡＮとしての学習終了条件が成立していなければ（ステップＳ３０においてＮＯの場合）、次の訓練サンプルを読み込み、ステップＳ２６以下の処理が繰返される。なお、訓練サンプル全体を使用しても学習終了条件を成立させることができなかった場合には、最初の訓練サンプルを再度利用して学習を実行する。
【０１２１】
このように、抽出ネットワーク５０、ならびに、生成ネットワーク３０および識別ネットワーク４０は、それぞれの学習終了条件が成立するまで、循環的に繰返し学習される。なお、学習を互いに独立して実行すると、うまく動作しない場合もあるので、学習実行タイミングについては、互いに連係して決定される。
【０１２２】
図６〜図８に示す学習手順はあくまで一例であり、要求される性能に到達できるものであれば、どのような学習手順を採用してもよい。なお、図６〜図８に示す各ニューラルネットワークに対する学習については、その実行回数および入力する訓練サンプルをそれぞれ異ならせてもよい。例えば、識別ネットワーク４０の学習をＮ回（Ｎは１以上の整数）行なった後、生成ネットワーク３０の学習を１回だけ行なうようにしてもよい。このように、学習の進め方としては、任意の方法を採用できる。
【０１２３】
（ｆ４：安定化処理）
上述したような学習フェーズにおいては、学習を安定化するための正則化処理などを行なってもよい。
【０１２４】
例えば、学習を安定化する手法として、ＢＮ（Batch Normalization）が知られている。ＢＮは、訓練サンプル群から所定数のサンプルからなるバッチデータ（ミニバッチ）を抽出し、その抽出したミニバッチ毎に、サンプル全体の平均が「０」、分散が「１」となるように変換することで、学習を安定化する。ＢＮは、入力される訓練サンプルを正則化する機能を果たすので、Ｄｒｏｐｏｕｔ（層を構成するノードの一部を無効化して学習する手法）の代わりに利用できる。
【０１２５】
本実施の形態においては、生成ネットワーク３０および識別ネットワーク４０の各層についてＢＮを採用できる。但し、識別ネットワーク４０の第１層には、ＢＮを適用しないことが多く、本実施の形態においても、識別ネットワーク４０の第１層には、ＢＮではなく、Ｄｒｏｐｏｕｔを採用することが好ましい。
【０１２６】
一般的には、入力に重みを掛けた後にＢＮが適用される。一方、重みを掛ける前の入力にＢＮを適用する手法もある。このような手法は、ＰＡ（Pre-Activation）と称されている。本実施の形態において、入力サンプルｘｒａｗは、パラグラフベクトルであり、そのままでは標準化されていない。そのため、抽出ネットワーク５０において、入力される入力サンプルｘｒａｗに対して、ＰＡを適用することで、バッチ単位での標準化を行なってもよい。
【０１２７】
［Ｇ．運用フェーズ］
次に、本実施の形態に従う推定エンジン１０を用いた運用フェーズにおける処理手順の一例について説明する。運用フェーズにおいては、抽出ネットワーク５０および識別ネットワーク４０が用いられる。
【０１２８】
図９は、本実施の形態に従う推定エンジン１０を用いた運用フェーズの処理手順を示すフローチャートである。図９を参照して、まず、操作対象となる物体の名称の言語表現、および、実環境において当該名称に対応する物体が置かれている状況の言語表現が取得される。より具体的には、入力された名称の言語表現に基づいて前処理部１６が実サンプルｘｎａｍｅを生成するとともに、入力された状況の言語表現に基づいて前処理部１８が実サンプルｘｓｉｔｕａｔｉｏｎを生成する（ステップＳ５０）。
【０１２９】
続いて、名称の言語表現および状況の言語表現を分類器に入力して、実環境において名称に対応する物体の操作可能性が出力される。
【０１３０】
より具体的には、実サンプルｘｎａｍｅと実サンプルｘｓｉｔｕａｔｉｏｎとを結合して、入力サンプルｘｒａｗが生成される（ステップＳ５２）。そして、生成された入力サンプルｘｒａｗが抽出ネットワーク５０に入力されて、特徴サンプルｘｒｅａｌが生成される（ステップＳ５４）。生成された特徴サンプルｘｒｅａｌが識別ネットワーク４０に入力されて、推定値ｐＤ（＾ｙ）が生成される（ステップＳ５６）。最終的に、生成された推定値ｐＤ（＾ｙ）に対応する操作可能性の値が出力される（ステップＳ５８）。
【０１３１】
以上のような分類処理は、分類対象の実サンプルが入力されるたびに実行される。
［Ｈ．物体操作システム１のハードウェア構成］
次に、本実施の形態に従う物体操作システム１のハードウェア構成の一例について説明する。図１０は、本実施の形態に従う物体操作システム１を実現するためのハードウェア構成の一例を示す模式図である。物体操作システム１は、典型的には、汎用コンピュータを用いて実現される。
【０１３２】
図１０を参照して、物体操作システム１は、主要なハードウェアコンポーネントとして、プロセッサ１００と、主メモリ１０２と、ディスプレイ１０４と、入力デバイス１０６と、ネットワークインターフェイス（Ｉ／Ｆ：interface）１０８と、光学ドライブ１１０と、入力インターフェイス（Ｉ／Ｆ）１１４と、出力インターフェイス（Ｉ／Ｆ）１１６と、二次記憶装置１２０とを含む。これらのコンポーネントは、内部バス１１８を介して互いに接続される。
【０１３３】
プロセッサ１００は、後述するような各種プログラムを実行することで、本実施の形態に従う物体操作システム１の実現に必要な処理を実行する演算主体であり、例えば、１または複数のＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）などで構成される。複数のコアを有するようなＣＰＵまたはＧＰＵを用いてもよい。
【０１３４】
主メモリ１０２は、プロセッサ１００がプログラムを実行するにあたって、プログラムコードやワークメモリなどを一時的に格納する記憶領域であり、例えば、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）などの揮発性メモリデバイスなどで構成される。
【０１３５】
ディスプレイ１０４は、処理に係るユーザインターフェイスや処理結果などを出力する表示部であり、例えば、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electroluminescence）ディスプレイなどで構成される。
【０１３６】
入力デバイス１０６は、ユーザからの命令や操作などを受付けるデバイスであり、例えば、キーボード、マウス、タッチパネル、ペンなどで構成される。また、入力デバイス１０６としては、機械学習に必要な音声を収集するためのマイクロフォンを含んでいてもよいし、機械学習に必要な音声を収集した集音デバイスと接続するためのインターフェイスを含んでいてもよい。
【０１３７】
ネットワークインターフェイス１０８は、インターネット上またはイントラネット上の任意の情報処理装置などとの間でデータを遣り取りする。ネットワークインターフェイス１０８としては、例えば、イーサネット（登録商標）、無線ＬＡＮ（Local Area Network）、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの任意の通信方式を採用できる。
【０１３８】
光学ドライブ１１０は、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disc）などの光学ディスク１１２に格納されている情報を読出して、内部バス１１８を介して他のコンポーネントへ出力する。光学ディスク１１２は、非一過的（non-transitory）な記録媒体の一例であり、任意のプログラムを不揮発的に格納した状態で流通する。光学ドライブ１１０が光学ディスク１１２からプログラムを読み出して、二次記憶装置１２０などにインストールすることで、コンピュータにより物体操作システム１の機能を提供できるようになる。したがって、本発明の主題は、二次記憶装置１２０などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した光学ディスク１１２などの記録媒体でもあり得る。
【０１３９】
図１０には、非一過的な記録媒体の一例として、光学ディスク１１２などの光学記録媒体を示すが、これに限らず、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、ＭＯ（Magneto-Optical disk）などの光磁気記録媒体を用いてもよい。
【０１４０】
入力インターフェイス１１４は、カメラなどの外部デバイスと接続され、カメラにより撮像された映像信号を取込む。出力インターフェイス１１６は、ロボット２などの外部デバイスと接続され、操作可能性の推定結果およびユーザからの命令などに基づいて、必要な動作指令をロボット２へ出力する。入力インターフェイス１１４および出力インターフェイス１１６は、ＵＳＢ（Universal Serial Bus）などの汎用的な通信インターフェイスを用いることができる。
【０１４１】
二次記憶装置１２０は、プロセッサ１００にて実行されるプログラム、後述するようなニューラルネットワークを学習させるための訓練データセット、および、ニューラルネットワークを規定するパラメータなどを格納するコンポーネントであり、例えば、ハードディスク、ＳＳＤ（Solid State Drive）などの不揮発性記憶装置で構成される。
【０１４２】
より具体的には、二次記憶装置１２０は、図示しないＯＳ（Operating System）の他、物体認識エンジン１２を実現するための物体認識プログラム１２２と、状況認識エンジン１４を実現するための状況認識プログラム１２４と、分類器２０を実現するための分類プログラム１２６と、ロボットコントローラ８を実現するための動作指令生成プログラム１２８と、物体認識エンジン１２、状況認識エンジン１４、および、分類器２０に含まれるニューラルネットワークを学習するためのネットワークパラメータ１３０とを格納している。また、二次記憶装置１２０には、訓練データセット１３２が格納されていてもよい。
【０１４３】
これらのプログラムをプロセッサ１００で実行する際に必要となるライブラリや機能モジュールの一部を、ＯＳが標準で提供するライブラリまたは機能モジュールを用いて代替するようにしてもよい。この場合には、各プログラム単体では、対応する機能を実現するために必要なプログラムモジュールのすべてを含むものにはならないが、ＯＳの実行環境下にインストールされることで、必要な機能を実現できる。このような一部のライブラリまたは機能モジュールを含まないプログラムであっても、本発明の技術的範囲に含まれ得る。
【０１４４】
また、これらのプログラムは、上述したようないずれかの記録媒体に格納されて流通するだけでなく、インターネットまたはイントラネットを介してサーバ装置などからダウンロードすることで配布されてもよい。
【０１４５】
図１０には、単一のコンピュータが物体操作システム１を構成する例を示すが、これに限らず、コンピュータネットワークを介して接続された複数のコンピュータが明示的または黙示的に連携して、物体操作システム１および物体操作システム１を含む全体システムを実現するようにしてもよい。複数のコンピュータが連携する場合、一部のコンピュータがいわゆるクラウドコンピュータと称される、ネットワーク上にある不特定のコンピュータであってもよい。
【０１４６】
コンピュータ（プロセッサ１００）がプログラムを実行することで実現される機能の全部または一部を、集積回路などのハードワイヤード回路（hard-wired circuit）を用いて実現してもよい。例えば、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field-Programmable Gate Array）などを用いて実現してもよい。
【０１４７】
当業者であれば、本発明が実施される時代に応じた技術を適宜用いて、本実施の形態に従う物体操作システムを実現できるであろう。
【０１４８】
［Ｉ．学習用のデータセットの生成］
本実施の形態に従う物体操作システム１においては、訓練サンプルとして、（ｘｒａｗ；ｙ）の組が必要である。本願発明者らは、このような学習用のデータセットについても構築した。以下、物体操作システム１の学習に適した、マルチモーダルデータセットの構築方法の一例について説明する。
【０１４９】
まず、標準的な画像データセットをベースとして、学習に必要なデータセットを構築するというアプローチを採用した。標準的な画像データセットをベースとすることで、スケーラビリティを高めることができる。
【０１５０】
標準的な画像データセットとして、既存の大規模データセットである「Ｖｉｓｕａｌ  Ｇｅｎｏｍｅ」データセット（http://visualgenome.org）から部分集合を抽出し、物体操作タスク用のラベルを付与することで、学習に必要なデータセットを構築した。
【０１５１】
「Ｖｉｓｕａｌ  Ｇｅｎｏｍｅ」データセットは、１０万種類以上の画像を含み、各画像は平均２１個の物体を含む。各物体の領域は、人手でアノテーションされており、ＷｏｒｄＮｅｔのｓｙｎｓｅｔ（同義語の組）および言語表現が付与されている。画像内の各領域の言語表現が含まれているため、物体操作タスクにおいて状況の言語表現を利用するのに都合がよい。
【０１５２】
「Ｖｉｓｕａｌ  Ｇｅｎｏｍｅ」データセットは、物体操作に関係する画像以外の画像も多く含まれるため、操作に関係するカテゴリとして、以下に示すｓｙｎｓｅｔを含む画像を抽出した（なお、カッコ内に意味を記載する。）。なお、カテゴリ分け（ラベル付与）のため、各画像（サンプル）には操作対象とされる物体（以下、「トラジェクタ」とも称す。）が１個だけ含まれるものとする。
【０１５３】
・ａｐｐｌｅ（リンゴ）
・ｂａｌｌ（ボール）
・ｂｏｔｔｌｅ（ボトル）
・ｃａｎ（缶）
・ｃｅｌｌｕｌａｒ  ｔｅｌｅｐｈｏｎｅ（携帯電話）
・ｃｕｐ（カップ）
・ｇｌａｓｓ（グラス／コップ）
・ｐａｐｅｒ（紙）
・ｒｅｍｏｔｅ  ｃｏｎｔｒｏｌ（リモコン）
・ｓｈｏｅ（靴）
・ｔｅｄｄｙ（くま（のぬいぐるみ））
なお、実際のｓｙｎｓｅｔには、上述のカテゴリを示す文字の後に「ｎ．０１」が付与されているが、説明の便宜上、この記載は省略している。
【０１５４】
各サンプルに対しては、以下の基準により、以下の７つのカテゴリにラベル付けを行なった。なお、各ラベルは排他的に与えられるものとした。なお、４つのカテゴリ（Ｎ），（Ｍ０），（Ｍ１），（Ｍ２）については、操作可能性の対応するカテゴリを記載している。
【０１５５】
（Ｅ１）領域が広すぎるため、トラジェクタと同カテゴリの物体が、領域に複数個含まれる（例：カゴに複数の靴が入っている）。
【０１５６】
（Ｅ２）領域が狭すぎるため、トラジェクタのうち一部分しか領域に含まれない（例：グラスの持ち手）。
【０１５７】
（Ｎ）［把持不可］トラジェクタが領域に十分に含まれるが、物体操作タスクの対象ではない。すなわち、ｓｙｎｓｅｔが十分に細かくないため、物体操作対象ではない下位カテゴリが含まれてしまっている（例：領域は「ｂａｌｌ」とラベル付けされているが、実際にはミートボールである（本タスクではミートボールの物体操作対象とはしない））。
【０１５８】
（Ｍ０）［操作不可能］トラジェクタが領域に十分に含まれるが、操作可能ではない（例：移動中、障害物に囲まれている、人間が把持しているなど）。
【０１５９】
（Ｍ１）［操作困難］トラジェクタが領域に十分に含まれており、操作可能である。但し、ロボットが自律的に動作を実行すると失敗の可能性が高い状況（遠隔操作であれば実行可能である状況）。
【０１６０】
（Ｍ２）［操作容易］トラジェクタが領域に十分に含まれており、操作可能である。ロボットが自律的に動作を実行しても失敗の可能性が低い状況。
【０１６１】
（Ｏ）上記のいずれにも当てはまらない。
図１１は、構築されたデータセットの一例を示す図である。図１１（Ａ）および図１１（Ｂ）には、トラジェクタとして「ｂｏｔｔｌｅ」が付与されている画像の例を示す。各画像については、図に示すような状況を示す言語表現が付与されている。説明の便宜上、図１１には、本来付与されているテキストの先頭部分のみ示している。
【０１６２】
また、図１１（Ａ）および図１１（Ｂ）内の矩形部分が対象となるトラジェクタの領域を示す。
【０１６３】
［Ｊ．検証実験］
次に、本願発明者らは、上述のような手順によって構築した学習用のデータセットを用いた検証実験を行なったので、その結果を以下に示す。
【０１６４】
（ｊ１：設定）
本検証実験においては、入力として、ユーザからの命令および状況の言語表現であると想定する。但し、ユーザからの命令（言語表現）には動詞が含まれず、特定の物体（トラジェクタ）を示すＩＤのみで与えられるものとする。状況の言語表現は、上述の構築された学習用のデータセットから得られるものとする。
【０１６５】
トラジェクタの名称の言語表現から実サンプルｘｎａｍｅを生成し、他のオブジェクトの言語表現から実サンプルｘｓｉｔｕａｔｉｏｎを生成する。なお、それぞれの言語表現から実サンプルの生成には、上述したパラグラフベクトルへの変換処理が用いられる。すなわち、入力サンプルｘｒａｗは以下のような結合によって生成される。
【０１６６】
ｘｒａｗ＝｛ｘｎａｍｅ，ｘｓｉｔｕａｔｉｏｎ｝
ここで、ｘｎａｍｅ，ｘｓｉｔｕａｔｉｏｎは、それぞれ２００次元のパラグラフベクトルであるとした。また、生成ネットワーク３０の入力であるノイズｚの次元数は１００  とし、標準正規分布からサンプリングした。
【０１６７】
構築した学習用のデータセットをランダムにシャッフルし、学習セット、検証セット、テストセットに分割した。本検証実験においては、予め３つのカテゴリ（Ｅ１），（Ｅ２），（Ｏ）に属するデータを除いた、４つのカテゴリ（Ｎ），（Ｍ０），（Ｍ１），（Ｍ２）に属するデータを用いて、４クラス分類問題として取り扱う。具体的なデータセットのサイズは下表のとおりである。
【０１６８】
【表１】
2019049604.tif 000007
【０１６９】
本実施の形態に従う分類器２０を構成する各ニューラルネットワークの設定例を以下の表に示す。
【０１７０】
【表２】
2019049604.tif 000008
【０１７１】
（ｊ２：結果）
構築されたデータセットを用いて、本実施の形態に従う手法とベースライン手法（ＡＣ−ＧＡＮ（Auxiliary Classifier GAN））とを比較評価した。一般的に、ディープニューラルネットワークの精度比較では、エポック毎にモデルパラメータが更新される。よって、テストセットの最大値を比較しても、未知のデータに対する精度を表すことにはならない。
【０１７２】
そこで、本検証実験においては、標準的な手順に従って、検証セットの精度が最大値を示したモデルを各手法の最良モデルとした。その上で、最良モデルを用いてテストセットの精度を検証した結果を以下の表に示す。
【０１７３】
【表３】
2019049604.tif 000009
【０１７４】
上表において、ベースラインであるＡＣ−ＧＡＮでは、本実施の形態に従う分類器２０と同じノード数（入力以外）とした。
【０１７５】
上表において、「ＰＡ無」および「ＰＡ有」は、入力に対してＰＡ（Pre-Activation）を行なうかどうかを示す。
【０１７６】
上表において、「抽出ネットワークのみ」は、抽出ネットワーク５０から出力される推定値ｐＥ（＾ｙｊ）の精度を示す。すなわち、６層の単純なフィードフォワード型のネットワークにおける精度を意味する。
【０１７７】
上表に示すように、本実施の形態に従う分類器２０は、ベースラインであるＡＣ−ＧＡＮと比較して高い精度を実現できることが示されている。この精度の向上は、特徴量をそのまま用いるＡＣ−ＧＡＮに比較して、抽出ネットワーク５０を用いて、分類に関係が深い特徴を抽出して、それのみを用いた方が有利であることを示唆している。このような事実から、生成ネットワーク３０の機能であるサンプル生成により、識別ネットワーク４０に入力されるサンプル数が擬似的に拡張され、汎化性能が向上したことが示唆される。
【０１７８】
［Ｋ．運用形態］
上述したように、本実施の形態に従う分類器２０の汎用的な応用を考慮すると、学習フェーズにおいて学習されたニューラルネットワークを同一のタスクを実行する複数のシステムに適用する場合には、学習によって得られたネットワークパラメータのみを配布するようにしてもよい。
【０１７９】
図１２は、本実施の形態に従う分類器２０の運用形態の一例を示す模式図である。図１２を参照して、例えば、あるシステム上で分類器２０を学習し（学習フェーズ）、その結果生成されたネットワークのパラメータを、実際のタスク（分類タスクおよび物体操作タスク）を実行するシステム（運用フェーズ）に配布するようにしてもよい。この場合、学習フェーズによって生成された識別ネットワーク４０および抽出ネットワーク５０のネットワークパラメータが配布される。ネットワークパラメータを配布することで、運用フェーズで利用可能な分類器２０を実現できる。
【０１８０】
図１２には、分類タスクが実行される場所にシステムを配置する、いわゆるオンプレミス環境に適した処理例を示すが、これに限らず、コンピュータネットワーク上に配置された１または複数のサーバを用いて、分類タスクを処理する、いわゆるクラウドサービス環境を採用してもよい。
【０１８１】
クラウド環境を採用する場合には、分類タスクを処理するサーバ装置において、分類器２０の学習を行なうとともに、その学習によって生成された分類器２０をそのまま利用することになる。この場合、運用フェーズにおいて、分類器２０は、典型的には、コンピュータネットワークを介して入力データを受付け、その受付けた入力データに対して実行される分類タスクの結果を、コンピュータネットワークを介して応答することになる。
【０１８２】
上述した分類器２０の運用は一例であり、要求されるタスクの内容や実行環境などに応じて適宜適切な実装が可能である。また、本実施の形態に従う分類器２０は、より大きなタスクの一部として組み込まれてもよい。この場合、他のタスクを実行する装置やモジュールと連携することで、目的のタスクを実行することになる。
【０１８３】
［Ｌ．変形例］
図５には、学習フェーズにおいて、特徴サンプルｘｒｅａｌおよび疑似サンプルｘｆａｋｅの一方が識別ネットワーク４０に選択的に入力されるネットワーク構成の例を示すが、これに限られるものではない。例えば、特徴サンプルｘｒｅａｌおよび疑似サンプルｘｆａｋｅの両方を用いるようにしてもよい。
【０１８４】
この場合には、例えば、入力ソースＳが「真」に対応付けられるサンプルｘとして、特徴サンプルｘｒｅａｌ同士を結合したベクトルを用いることができ、一方、入力ソースＳが「偽」に対応付けられるサンプルｘとして、特徴サンプルｘｒｅａｌと疑似サンプルｘｆａｋｅとを結合したベクトルを用いることができる。
【０１８５】
［Ｍ．まとめ］
本実施の形態に従う推定エンジンは、名称の言語表現および状況の言語表現の入力を受けて、実環境において名称に対応する物体の操作可能性を出力する。例えば、状況の言語表現については、任意のアルゴリズムに従って取得するようにして、ユーザから名称の言語表現を受付けるようなシステムを構成できる。このようなシステムを用いることで、不完全情報を含む命令、例えば、動詞のない命令文が与えられた場合であっても、対象となる物体を特定するとともに、当該特定した物体に対して、ある確からしさをもって操作を行なうことができる。
【０１８６】
従来の技術によれば、動詞のない命令文が与えられた場合には、確認発話などにより、聞き返しを行なう必要があるが、本実施の形態によれば、このような聞き返しなどを行なうことなく、物体に対する操作を進行することができる。
【０１８７】
本実施の形態に従う推定エンジンは、教師ありｃＧＡＮベースのフレームワーク（ＬＡＣ−ＧＡＮ）を有する分類器を採用する。このようなフレームワークを採用することで、より特徴量を反映したサンプルを識別ネットワークに入力することができ、識別能力を高めることができる。また、学習フェーズにおいては、生成ネットワークからの疑似サンプルを識別ネットワークに入力することで、学習に用いるサンプルの量を増大させて、過学習に陥る可能性を低減できる。
【０１８８】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１８９】
１  物体操作システム、２  ロボット、４  指令生成部、５  対話画面生成部、６  音声認識部、８  ロボットコントローラ、１０  推定エンジン、１２  物体認識エンジン、１４  状況認識エンジン、１６，１８  前処理部、２０  分類器、２２，２６  カメラ、２４  作用部、３０  生成ネットワーク、３２，４２，５２  入力層、３６＿１，３６＿２，・・・，４６＿１，４６＿２，・・・，５６＿１，５６＿２，・・・  層、３８，４８，５８  出力層、４０  識別ネットワーク、４４  セレクタ、５０  抽出ネットワーク、１００  プロセッサ、１０２  主メモリ、１０４  ディスプレイ、１０６  入力デバイス、１０８  ネットワークインターフェイス、１１０  光学ドライブ、１１２  光学ディスク、１１４  入力インターフェイス、１１６  出力インターフェイス、１１８  内部バス、１２０  二次記憶装置、１２２  物体認識プログラム、１２４  状況認識プログラム、１２６  分類プログラム、１２８  動作指令生成プログラム、１３０  ネットワークパラメータ、１３２  訓練データセット。
【図１】
2019049604.tif 000010
【図２】
2019049604.tif 000011
【図３】
2019049604.tif 000012
【図４】
2019049604.tif 000013
【図５】
2019049604.tif 000014
【図６】
2019049604.tif 000015
【図７】
2019049604.tif 000016
【図８】
2019049604.tif 000017
【図９】
2019049604.tif 000018
【図１０】
2019049604.tif 000019
【図１１】
2019049604.tif 000020
【図１２】
2019049604.tif 000021