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

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

▶ ソニー コーポレイション オブ アメリカの特許一覧 ▶ ソニー株式会社の特許一覧

<>
  • 特許-多重予測ネットワーク 図1A
  • 特許-多重予測ネットワーク 図1B
  • 特許-多重予測ネットワーク 図2
  • 特許-多重予測ネットワーク 図3
  • 特許-多重予測ネットワーク 図4
  • 特許-多重予測ネットワーク 図5
  • 特許-多重予測ネットワーク 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-06
(45)【発行日】2023-11-14
(54)【発明の名称】多重予測ネットワーク
(51)【国際特許分類】
   G06N 3/04 20230101AFI20231107BHJP
【FI】
G06N3/04
【請求項の数】 5
(21)【出願番号】P 2021536301
(86)(22)【出願日】2020-01-02
(65)【公表番号】
(43)【公表日】2022-02-16
(86)【国際出願番号】 US2020012073
(87)【国際公開番号】W WO2020142620
(87)【国際公開日】2020-07-09
【審査請求日】2021-06-21
(31)【優先権主張番号】62/788,339
(32)【優先日】2019-01-04
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504257564
【氏名又は名称】ソニー コーポレイション オブ アメリカ
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100092093
【弁理士】
【氏名又は名称】辻居 幸一
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100109335
【弁理士】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(72)【発明者】
【氏名】カポビアンコ ロベルト
(72)【発明者】
【氏名】コンペラ ヴァルン
(72)【発明者】
【氏名】スブラマニアン カウシック
(72)【発明者】
【氏名】マクラシャン ジェームズ
(72)【発明者】
【氏名】ワーマン ピーター
(72)【発明者】
【氏名】バヴェジャ サティンダー
【審査官】石川 亮
(56)【参考文献】
【文献】米国特許出願公開第2016/0217387(US,A1)
【文献】中国特許出願公開第106651915(CN,A)
【文献】中国特許出願公開第107085716(CN,A)
【文献】米国特許出願公開第2018/0276691(US,A1)
【文献】米国特許出願公開第2017/0286830(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/02-3/10
(57)【特許請求の範囲】
【請求項1】
機械及びコンピュータベースのソフトウェアアプリケーションにおいて人工知能を形成する多重入力予測方法であって、
環境から状態情報として入力を受け取るステップと、
複数のスキルIDをさらなる入力として受け取るステップと、
前記さらなる入力の各々の予測を出力するステップと、
を含むことを特徴とする方法。
【請求項2】
前記さらなる入力は複数の予測IDを含み、前記出力される予測は、入力として供給される前記予測IDの予測値である、
請求項1に記載の多重入力予測方法。
【請求項3】
ネットワークの重み又はパラメータが、前記予測のうちの複数の予測にわたって共有される、
請求項1に記載の多重入力予測方法。
【請求項4】
共通の状態依存を共有するスキルに基づいて前記予測を一般化するステップをさらに含む、
請求項1に記載の多重入力予測方法。
【請求項5】
前記さらなる入力は、挙動に影響を与える可変入力パラメータを含む、
請求項に記載の多重入力予測方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の1又は2以上の実施形態は、一般に知的人工エージェント(intelligent artificial agents)に関する。具体的には、本発明は、予測計算をより効率的にするための多重予測(multi-forecasts)及び/又は方法を通じて知的人工エージェントを訓練することに関する。
【背景技術】
【0002】
以下の背景情報は、先行技術のさらなる態様を読者にさらに伝えるのに役立つと期待されるが、本発明、又はそのいずれかの実施形態、その中で言及又は暗示される、或いはそれについて推測される何かを限定するものとして解釈すべきではない先行技術の特定の態様(例えば、限定ではなく、手法、事実又は通念)の例を提示することができる。
【0003】
予測(forecasts)は、多くの種類の人工知能(AI)システムにおいて有用な予想(predictions)である。予測は、世界状況の関数としての、エージェントが実行するスキル又は挙動を条件とする何らかの結果の予想である。予測は、現在の状態における現在の挙動の結果に関する予想を行うために、或いは目的を計画するために仮説的挙動を条件とする仮説的予想を行うために使用することができる。予測の例としては、何らかのスキルの終了までの距離、何らかのスキルの終了までの時間、又は何らかのスキルの終了時の状態特徴(state feature)の値などが挙げられる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
人工エージェントを訓練するための現在知られているシステムは様々な問題を示す。多くの場合、ユーザは、エージェントによって学習されるスキル及び知識を制御する能力に欠け、或いはこのような学習されるスキル及び知識は、ユーザが他の所望のスキル及び知識ほど重要であると気付かない項目となり得る。さらに、従来のシステムは、より高水準のスキル及び知識を学習する上で使用されるようにスキル及び知識をモジュール方式で階層化する能力に欠けていることもある。また、従来のシステムでは、人工エージェントが、スキルの実行中に特定の形態の知識、経験の特徴の予想を学習しないこともある。
【0005】
これらを考慮すると、人工知能エージェントにおけるスキル及び知識の訓練の改善が必要である。
【課題を解決するための手段】
【0006】
本発明の実施形態は、機械及びコンピュータベースのソフトウェアアプリケーションにおいて人工知能を形成する多重ヘッド予測方法(multi-headed forecast method)であって、環境から状態情報として入力を受け取るステップと、それぞれが異なる状態情報特徴に対応する複数の予測を出力するステップとを含む方法を提供する。
【0007】
本発明の実施形態は、機械及びコンピュータベースのソフトウェアアプリケーションにおいて人工知能を形成する多重入力予測方法であって、環境から状態情報として入力を受け取るステップと、予測ID、スキルID、及びパラメータ値のうちの少なくとも1つからさらなる入力を受け取るステップと、さらなる入力の各々の予測を出力するステップとを含む方法をさらに提供する。
【0008】
本発明の実施形態は、機械及びコンピュータベースのソフトウェアアプリケーションにおいて人工知能を形成する予測ネットワーク方法であって、環境から状態情報として入力を受け取るステップと、予測ID、スキルID、及びパラメータ値のうちの少なくとも1つからさらなる入力を受け取るステップと、さらなる入力を、予測ネットワークに入力される前に、学習され縮小されたベクトル表現に埋め込むステップと、各学習され縮小されたベクトル表現の予測を出力するステップとを含む方法も提供する。
【0009】
以下の図面、説明及び特許請求の範囲を参照すれば、本発明のこれらの及びその他の特徴、態様及び利点がより良く理解されるであろう。
【0010】
本発明のいくつかの実施形態を一例として示すが、これらは同様の要素を同様の参照で示すことができる添付図面の図によって限定されるものではない。
【図面の簡単な説明】
【0011】
図1A】本発明の例示的な実施形態による多重ヘッド予測ネットワークを示す図である。
図1B】ニューラルネットワークの入力ノードの重み付けの例を示す図である。
図2】本発明の例示的な実施形態による多重入力予測ネットワークを示す図である。
図3】本発明の例示的な実施形態による多重スキル予測ネットワークを示す図である。
図4】本発明の例示的な実施形態によるパラメータ化スキル予測ネットワークを示す図である。
図5】本発明の例示的な実施形態によるハイブリッドスキルID及び多重予測ネットワークを示す図である。
図6】本発明の例示的な実施形態による、多重予測ネットワークにおける予測IDの埋め込みを示す図である。
【発明を実施するための形態】
【0012】
別途指示していない限り、図のイラストは必ずしも縮尺通りではない。
【0013】
図示の実施形態について説明する以下の詳細な説明を参照することによって、本発明及びその様々な実施形態をより良く理解することができる。図示の実施形態は一例として示すものであり、最終的に特許請求の範囲に定める本発明を限定するものではないと明確に理解されたい。
【0014】
本明細書で使用する用語は、特定の実施形態を説明するためのものにすぎず、本発明を限定するように意図するものではない。本明細書で使用する「及び/又は」という用語は、関連する記載項目のうちの1つ又は2つ以上のありとあらゆる組み合わせを含む。本明細書で使用する単数形の「a、an(英文不定冠詞)」及び「the(英文定冠詞)」は、その文脈で別途明確に示していない限り、単数形に加えて複数形も含むように意図される。さらに、「含む、備える(comprises及び/又はcomprising)」という用語は、本明細書で使用する場合、言及する特徴、ステップ、動作、要素及び/又はコンポーネントの存在を示すものであるが、1又は2以上の他の特徴、ステップ、動作、要素、コンポーネント、及び/又はこれらの群の存在又は追加を除外するものではないと理解されたい。
【0015】
特に定めがない限り、本明細書で使用する(技術用語及び科学用語を含む)全ての用語は、本発明が属する技術の当業者が一般に理解している意味と同じ意味を有する。さらに、一般に使用される辞書に定義されているような用語については、関連技術及び本開示の文脈におけるこれらの意味に従う意味を有すると解釈すべきであり、本明細書で明確に定義していない限り、理想的な又は過度に形式的な意味で解釈されるものではないと理解されるであろう。
【0016】
本発明の説明では、複数の技術及びステップが開示されていると理解されるであろう。これらはそれぞれ個々の利益を有し、それぞれ開示する他の技術の1つ又は2つ以上、又は場合によっては全てと共に使用することもできる。従って、明確にするために、本説明では個々のステップの全ての可能な組み合わせを不必要に繰り返さないようにする。しかしながら、本明細書及び特許請求の範囲については、このような組み合わせも本発明の範囲及び特許請求の範囲に完全に含まれるという理解の下で読むべきである。
【0017】
以下の説明では、本発明の完全な理解をもたらすために数多くの具体的な詳細を示す。しかしながら、当業者には、これらの具体的な詳細を伴わずとも本発明を実施できることが明らかであろう。
【0018】
少なくとも互いに一般通信を行う装置又はシステムモジュールは、別途明示していない限り互いに連続的に通信する必要はない。また、少なくとも互いに一般通信を行う装置又はシステムモジュールは、直接的に、或いは1又は2以上の仲介装置を通じて間接的に通信することができる。
【0019】
互いに通信する複数のコンポーネントを含む実施形態の説明は、このようなコンポーネントが全て必要であることを意味するものではない。むしろ、本発明の幅広い可能な実施形態を示すために様々な任意のコンポーネントについて説明する。
【0020】
当業者には周知のように、いずれかのシステムの、とりわけ本発明の実施形態の商業的実装の最適な構成を設計する際には、通常は多くの熟慮及び妥協を行わなければならない。本発明の趣旨及び教示による商業的実装は特定の用途のニーズに従って構成することができ、これによって当業者は、特定の用途のニーズに対応する所望の実装を達成するために、その平均的なスキル及び既知の技術を使用して、本発明のいずれかの説明する実施形態に関連する教示のいずれかの(単複の)態様、(単複の)特徴、(単複の)機能、(単複の)結果、(単複の)コンポーネント、(単複の)手法又は(単複の)ステップを好適に省略し、含め、適応させ、混合し、合致させ、或いは改善及び/又は最適化することができる、
【0021】
「コンピュータ」は、構造化された入力を受け入れ、構造化された入力を規定のルールに従って処理し、処理の結果を出力として生成することができる1又は2以上の装置及び/又は1又は2以上のシステムを意味することができる。コンピュータの例としては、コンピュータ、固定及び/又はポータブルコンピュータ、単一のプロセッサ、複数のプロセッサ、又は並行して及び/又は並行しないで動作できるマルチコアプロセッサを有するコンピュータ、汎用コンピュータ、スーパーコンピュータ、メインフレーム、スーパーミニコンピュータ、ミニコンピュータ、ワークステーション、マイクロコンピュータ、サーバ、クライアント、双方向テレビ、ウェブアプライアンス、インターネットアクセスを有する通信装置、コンピュータと双方向テレビとのハイブリッド結合、ポータブルコンピュータ、タブレットパーソナルコンピュータ(PC)、携帯情報端末(PDA)、携帯電話機、例えばデジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け命令セットプロセッサ(ASIP)、チップ、複数のチップ、システムオンチップ又はチップセットなどの、コンピュータ及び/又はソフトウェアをエミュレートする特定用途向けハードウェア、グラフィックプロセッシングユニット(GPU)、データ収集装置、光コンピュータ、量子コンピュータ、バイオコンピュータ、及び一般にデータを受け入れ、1又は2以上の記憶されたソフトウェアプログラムに従ってデータを処理し、結果を生成し、典型的には入力装置、出力装置、記憶装置、算術演算装置、論理装置及び制御装置を含むことができる装置を挙げることができる。
【0022】
当業者であれば、適切な場合、本開示のいくつかの実施形態は、パーソナルコンピュータ、ハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースの又はプログラム可能な消費者向け電子装置、ネットワークPC、ミニコンピュータ及びメインフレームコンピュータなどを含む多くのタイプのコンピュータシステム構成を含むネットワークコンピューティング環境において実施することができると理解するであろう。適切な場合、実施形態は、通信ネットワークを通じて(有線リンク、無線リンクのいずれか又はこれらの組み合わせによって)リンクされた局所及び遠隔処理装置によってタスクが実行される分散コンピューティング環境において実施することもできる。分散コンピューティング環境では、局所及び遠隔の両方のメモリ記憶装置にプログラムモジュールを配置することができる。
【0023】
「ソフトウェア」は、コンピュータを動作させるための規定のルールを意味することができる。ソフトウェアの例としては、1又は2以上のコンピュータ可読言語でのコードセグメント、グラフィック及び/又はテキスト命令、アプレット、プリコンパイル済みコード、解釈済みコード、コンパイル済みコード及びコンピュータプログラムを挙げることができる。
【0024】
本明細書で説明する実施形態例は、コンピュータにインストールされたコンピュータ実行可能命令(例えば、ソフトウェア)を含む動作環境、ハードウェア、又はソフトウェアとハードウェアとの組み合わせにおいて実装することができる。コンピュータ実行可能命令は、コンピュータプログラミング言語で書くことができ、又はファームウェアロジックで具体化することができる。このような命令は、認可規格に従うプログラミング言語で書かれている場合、様々なハードウェアプラットフォーム上で様々なオペレーティングシステムと調和するように実行することができる。以下に限定するわけではないが、本発明の態様の動作を実行するためのコンピュータソフトウェアプログラムコードは、オブジェクト指向型プログラミング言語及び/又は従来の手続き型プログラミング言語、及び/又は、例えばハイパーテキストマークアップ言語(HTML)、ダイナミックHTML、拡張マークアップ言語(XML)、拡張スタイルシート言語(XSL)、文書スタイル意味指定言語(DSSSL)、カスケーディングスタイルシート(CSS)、同期化マルチメディア統合言語(SMIL)、ワイヤレスマークアップ言語(WML)、Java(商標)、Jini(商標)、C、C++、Smalltalk、Python、Perl、UNIXシェル、ビジュアルベーシック又はビジュアルベーシックスクリプト、仮想現実マークアップ言語(VRML)、ColdFusion(商標)又はその他のコンパイラ、アセンブラ、インタープリタ、或いはその他のコンピュータ言語又はプラットフォームなどのプログラミング言語を含む1又は2以上の好適なプログラミング言語のいずれかの組み合わせで書くことができる。
【0025】
本発明の態様の動作を実行するためのコンピュータソフトウェアプログラムコードは、Java、Smalltalk又はC++などのオブジェクト指向型プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語などの従来の手続き型プログラミング言語を含む1又は2以上のプログラミング言語のいずれかの組み合わせで書くことができる。プログラムコードは、完全にユーザのコンピュータ上で、スタンドアロン型ソフトウェアパッケージとして一部をユーザのコンピュータ上で、一部をユーザのコンピュータ上でかつ一部を遠隔コンピュータ上で、又は完全に遠隔コンピュータ又はサーバ上で実行することができる。後者のシナリオでは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含むいずれかのタイプのネットワークを通じて遠隔コンピュータをユーザのコンピュータに接続し、或いは(例えば、インターネットサービスプロバイダを使用してインターネットを通じて)外部コンピュータへの接続を形成することができる。プログラムコードを複数の計算ユニット間で分散し、各ユニットが全計算の一部を処理することもできる。
【0026】
以下、本発明の実施形態による方法、装置(システム)及びコンピュータプログラム製品のフローチャート図及び/又はブロック図を参照しながら本発明の態様を説明する。フローチャート図及び/又はブロック図の各ブロック、並びにフローチャート図及び/又はブロック図のブロックの組み合わせは、コンピュータプログラム命令によって実行することができると理解されるであろう。これらのコンピュータプログラム命令を汎用コンピュータ、専用コンピュータ又はその他のプログラマブルデータ処理装置のプロセッサに与えて機械を生産することで、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャート及び/又はブロック図の1又は複数のブロックに規定される機能/動作を実行する手段を生み出すようにすることができる。
【0027】
図のフローチャート及びブロック図には、様々な実施形態によるシステム、方法及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能及び動作を示す。この点、フローチャート又はブロック図の各ブロックは、(単複の)特定の論理機能を実行するための1又は2以上の実行可能命令を含むモジュール、セグメント又はコード部分を表すことができる。なお、いくつかの別の実装では、ブロックに示す機能が図に示す順序とは異なる順序で発生することもできる。例えば、実際には、連続して示す2つのブロックが関連する機能に応じて実質的に同時に実行されることも、又は時にはブロックが逆の順序で実行されることもある。また、ブロック図及び/又はフローチャート図の各ブロック、並びにブロック図及び/又はフローチャート図のブロックの組み合わせは、特定の機能又は動作を実行する専用ハードウェアベースのシステム、又は専用ハードウェアとコンピュータ命令との組み合わせによって実行することもできる。
【0028】
また、コンピュータ、他のプログラマブルデータ処理装置又はその他の装置に特定の形で機能するように指示することができるこれらのコンピュータプログラム命令をコンピュータ可読媒体に記憶することにより、コンピュータ可読媒体に記憶された命令が、フローチャート及び/又はブロック図の1又は複数のブロック内に指定される機能/動作を実行する命令を含む製造の物品を生み出すようにすることもできる。
【0029】
さらに、プロセスステップ、方法ステップ又はアルゴリズムなどは一定の順序で説明することができるが、このようなプロセス、方法及びアルゴリズムは別の順序で機能するように構成することもできる。換言すれば、説明できるステップのあらゆる順番又は順序は、これらのステップを必ずしもこの順序で実行する必要があることを示すものではない。本明細書で説明するプロセスのステップは、あらゆる実用的な順序で実行することができる。さらに、いくつかのステップを同時に実行することもできる。
【0030】
本明細書で説明する様々な方法及びアルゴリズムは、例えば適切にプログラムされた汎用コンピュータ及び計算装置によって実行できることが容易に明らかになるであろう。通常、プロセッサ(例えば、マイクロプロセッサ)は、メモリ又は同様の装置から命令を受け取ってこれらの命令を実行することにより、これらの命令によって定められたプロセスを実行する。さらに、このような方法及びアルゴリズムを実行するプログラムは、様々な既知の媒体を用いて記憶して送信することができる。
【0031】
本明細書で使用する「コンピュータ可読媒体」という用語は、コンピュータ、プロセッサ又は同様の装置が読み取ることができるデータ(例えば、命令)を提供することに関与するいずれかの媒体を意味する。このような媒体は、以下に限定するわけではないが、不揮発性媒体、揮発性媒体及び送信媒体を含む多くの形態を取ることができる。不揮発性媒体は、例えば光又は磁気ディスク及びその他の永続的メモリを含む。揮発性媒体は、典型的にはメインメモリを構成するダイナミックランダムアクセスメモリ(DRAM)を含む。送信媒体は、プロセッサに結合されたシステムバスを含むワイヤを含む、同軸ケーブル、銅線及び光ファイバを含む。送信媒体は、無線周波数(RF)及び赤外線(IR)データ通信中に生成されるものなどの音波、光波及び電磁放射線を含み、又は伝えることができる。一般的な形態のコンピュータ可読媒体としては、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、他のいずれかの磁気媒体、CD-ROM、DVD、他のいずれかの光媒体、パンチカード、紙テープ、穴パターンを有する他のいずれかの物理的媒体、RAM、PROM、EPROM、FLASH―EEPROM、EEPROM又は他のいずれかのメモリーチップ又はカートリッジ、後述するような搬送波、又はコンピュータが読み取ることができる他のいずれかの媒体を挙げることができる。
【0032】
一連の命令をプロセッサに搬送することには、様々な形態のコンピュータ可読媒体が関与することができる。例えば、一連の命令は、(i)RAMからプロセッサに供給することができ、(ii)無線送信媒体を介して搬送することができ、及び/又は(iii)Bluetooth、TDMA、CDMA、3Gなどの数多くのフォーマット、標準又はプロトコルに従ってフォーマットすることができる。
【0033】
本発明の実施形態は、本明細書に開示する動作を実行する装置を含むことができる。装置は、所望の目的で特別に構成することも、又は内部に記憶されたプログラムによって選択的に作動又は構成される汎用装置を含むこともできる。
【0034】
本発明の実施形態は、ハードウェア、ファームウェア及びソフトウェアの1つ又は組み合わせで実装することもできる。これらは、本明細書で説明する動作を実行するためにコンピュータプラットフォームが読み取って実行できる、機械可読媒体に記憶された命令として実装することができる。
【0035】
より具体的には、当業者であれば理解するように、本発明の態様は、システム、方法又はコンピュータプログラム製品として具体化することができる。従って、本発明の態様は、完全にハードウェアの実施形態、(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)完全にソフトウェアの実施形態、又はソフトウェアの態様とハードウェアの態様とを組み合わせた実施形態の形態を取ることができ、本明細書では一般にこれらを全て「回路」、「モジュール」又は「システム」と呼ぶことができる。さらに、本発明の態様は、コンピュータ可読プログラムコードを具体化した1又は2以上のコンピュータ可読媒体に具体化されるコンピュータプログラム製品の形態を取ることもできる。
【0036】
以下の説明及び特許請求の範囲では、限定するわけではないが、取り外し可能記憶ドライブ、及びハードディスクドライブにインストールされたハードディスクなどの媒体を一般的に意味するために「コンピュータプログラム媒体」及び「コンピュータ可読媒体」という用語を使用することができる。これらのコンピュータプログラム製品は、コンピュータシステムにソフトウェアを提供することができる。本発明の実施形態は、このようなコンピュータプログラム製品に関することができる。
【0037】
本開示の範囲内の実施形態は、コンピュータ実行可能命令又はデータ構造を搬送又は記憶する有形の及び/又は非一時的なコンピュータ可読記憶媒体を含むこともできる。このような非一時的コンピュータ可読記憶媒体は、上述したようないずれかの専用プロセッサの機能設計を含む汎用又は専用コンピュータがアクセスできるいずれかの利用可能な媒体とすることができる。限定ではなく一例として、このような非一時的コンピュータ可読媒体は、RAM、ROM、EEPROM、CDROM又はその他の光ディスクストレージ、磁気ディスクストレージ又はその他の磁気記憶装置、或いはコンピュータ実行可能命令、データ構造又はプロセッサチップ設計の形態の所望のプログラムコード手段を搬送又は記憶するために使用できる他のいずれかの媒体を含むことができる。ネットワーク又は別の通信接続(有線、無線のいずれか、又はこれらの組み合わせ)を介してコンピュータに情報が転送又は提供される場合、コンピュータは、この接続を適切にコンピュータ可読媒体とみなす。従って、このようなあらゆる接続はコンピュータ可読媒体と呼ぶことが適切である。これらの組み合わせもコンピュータ可読媒体の範囲に含めるべきである。
【0038】
非一時的コンピュータ可読媒体は、以下に限定するわけではないが、ハードドライブ、コンパクトディスク、フラッシュメモリ、揮発性メモリ、ランダムアクセスメモリ、磁気メモリ、光学メモリ、半導体ベースのメモリ、相変化メモリ、光学メモリ、及び周期的にリフレッシュされるメモリなどを含むが、純粋な一時的信号自体は含んでおらず、すなわちこの場合は媒体自体が一時的である。
【0039】
アルゴリズムは、ここでは、及び一般的に、所望の結果をもたらす首尾一貫した一連の行為又は動作であると考えられる。これらは、物理量の物理的操作を含む。通常、必ずというわけではないが、これらの量は、記憶、転送、合成、比較及び別様な操作が可能な電気又は磁気信号の形態を取る。主に共通使用という理由で、時にはこれらの信号を、ビット、値、要素、記号、文字、用語又は番号などと呼ぶことが便利であると分かっている。しかしながら、これらの及び同様の用語は、全て適切な物理量に関連付けられるべきものであり、これらの量に与えられた便利な表記にすぎないと理解されたい。
【0040】
特に別途述べていない限り、また以下の説明及び特許請求の範囲から明らかになり得るように、本明細書全体を通じて、「処理する」、「計算する」、「算出する」又は「決定する」などの用語を利用した説明は、コンピュータシステムのレジスタ及び/又はメモリ内の電子量などの物理量として表されるデータを操作し、及び/又はコンピュータシステムのメモリ、レジスタ又は他のこのような情報記憶、送信又は表示装置内の物理量として同様に表される他のデータに変形させるコンピュータ、コンピュータシステム又は同様の電子計算装置の動作及び/又はプロセスを意味すると理解されたい。
【0041】
同様に、「プロセッサ」という用語は、レジスタ及び/又はメモリからの電子データを処理し、外部装置の物理的変化又は作動を引き起こすようにこの電子データをレジスタ及び/又はメモリへの記憶又は外部装置への伝達が可能な他の電子データに変換するいずれかの装置又は装置の一部を意味することができる。「コンピュータプラットフォーム」は、1又は2以上のプロセッサを含むことができる。
【0042】
「ロボット」、「エージェント」、「知的エージェント」、「人工エージェント」又は「人工知能エージェント」という用語は、感知又は観察に応答して行動又はコマンドを発行するコンピュータ又はコンピュータシステムによって直接的又は間接的に制御されるいずれかのシステムを意味することができる。この用語は、カメラ、タッチセンサ及び距離センサなどの物理的センサを有する従来の物理的ロボット、又は仮想シミュレーション内に存在する模擬ロボット、或いはネットワーク内のソフトウェアとして存在するメールボット又はサーチボットなどの「ボット」を制限なく意味することができる。この用語は、いずれかの脚付きロボット(limbed robots)、歩行ロボット、(以下に限定するわけではないが、組み立て、塗装、修理、メンテナンスなどの自動化のために使用されるロボットを含む)産業ロボット、車輪付きロボット、掃除又は芝刈りロボット、パーソナルアシスタントロボット、サービスロボット、医用又は外科ロボット、飛行ロボット、運転ロボット、航空機又は宇宙船ロボット、或いは車両用又はそれ以外の、実際の又は模擬の、知的家庭用又は作業用機器などの静止ロボットも含む、実質的に自律制御下で動作する他のいずれかのロボットを制限なく意味することもできる。
【0043】
本発明の多くの実用的な実施形態は、人工知能エージェントによる活動を効率的に実行する手段及び方法を提供する。
【0044】
いくつかの実施形態では、「センサ」が、限定ではないが、エージェントの環境、具体的には目標達成に向けてどのように制御を導くことができるかに関するいずれかの情報ソースを含むことができる。非限定的な例では、知覚情報が、限定ではないが、カメラ、タッチセンサ、距離センサ、温度センサ、波長センサ、音響又は音声センサ、固有感覚センサ(proprioceptive sensors)、ポジションセンサ、圧力又は力センサ、速度又は加速度又はその他の動きセンサなどの知覚装置を含むいずれかのソース、或いは一群の知覚装置を(例えば、物体の最近の位置に関する)以前に保持していた情報、位置情報及び位置センサなどと組み合わせたものから作成できる、編集された、抽象的な又は状況的な情報(例えば、空間内の物体の既知の位置)に由来することができる。
【0045】
「観察(observation又はobservations)」という用語は、エージェントがいずれかの手段によって受け取る、エージェントの環境又はエージェント自体に関するいずれかの情報を意味する。いくつかの実施形態では、この情報を、限定ではないが、カメラ、タッチセンサ、距離センサ、温度センサ、波長センサ、音響又は音声センサ、ポジションセンサ、圧力又は力センサ、速度又は加速度又はその他の動きセンサ、位置センサ(例えば、GPS)などの知覚装置を通じて受け取られる知覚情報又は信号とすることができる。他の実施形態では、この情報が、限定ではないが、一群の知覚装置と記憶された情報とを組み合わせたものから作成された、編集された、抽象的な又は状況的な情報を含むこともできる。非限定的な例では、エージェントが、エージェント自体又は他の物体の位置又は特性に関する抽象情報を観察として受け取ることができる。いくつかの実施形態では、この情報が、人々又は顧客、或いはこれらの購買習慣、個人連絡先情報、個人的好みなどの特性を示すことができる。いくつかの実施形態では、観察を、限定ではないが、エージェントの現在又は過去の活動に関する固有感覚情報(proprioceptive information)又はその他の情報、エージェントの内部状態に関する情報、或いはエージェントによって既に計算又は処理された情報などの、エージェントの内部に関する情報とすることができる。
【0046】
「活動」という用語は、エージェントの環境、エージェントの物理的又は模擬的自己(physical or simulated self)、或いはエージェントの内部機能を制御し、これらに影響し、又はこれらを左右するための、最終的にはエージェントの将来の活動、活動選択、又は活動の好みを制御し、又はこれらに影響を与えることができるエージェントのいずれかの手段を意味する。多くの実施形態では、これらの活動が、物理的又は模擬サーボ又はアクチュエータを直接制御ことができる。いくつかの実施形態では、これらの活動を、エージェントの選択に影響するように意図された好み又は一連の好みの表現とすることができる。いくつかの実施形態では、エージェントの(単複の)活動に関する情報が、限定ではないが、エージェントの(単複の)活動にわたる確率分布、及び/又はエージェントの最終的な活動選択に影響するように意図された発信情報(outgoing information)を含むことができる。
【0047】
「状態」又は「状態情報」という用語は、限定ではないが、エージェントの現在及び/又は過去の観察に関する情報を含むことができる、環境又はエージェントの状態に関するいずれかの一群の情報を意味する。
【0048】
「ポリシー」という用語は、いずれかの完全な又は部分的な状態情報からいずれかの活動情報へのいずれかの関数又はマッピングを意味する。ポリシーは、ハードコーディングすることも、或いは限定ではないが、いずれかの強化学習法又は制御最適化法を含むいずれかの適切な学習法又は教示法を使用して修正、適合又は訓練することもできる。ポリシーは、限定ではないが、特定の尺度、値又は関数を最適化することによって生じ得るものなどの明示的マッピング又は非明示的マッピングとすることができる。ポリシーは、限定ではないが、どのような条件下でポリシーが開始又は継続できるかを反映する開始条件(又は確率)、どのような条件下でポリシーが終了できるかを反映する終了条件(又は確率)などの関連するさらなる情報、特徴又は特性を含むことができる。
【0049】
「距離」という用語は、いずれかの単調関数(monotonic function)を意味する。いくつかの実施形態では、距離が、限定ではないが、ユークリッド距離又はハミング距離などの便利なメトリックによって決定される表面上の2つの地点間の空間を意味することができる。2つの地点又は座標間の距離が短い場合、これらの地点又は座標は「近接」又は「隣接」する。
【0050】
概して、本発明の実施形態は、人工知能エージェントを訓練し、及び/又は動作させるための方法及びシステムを提供する。多重予測は計算構造(computational constructs)であり、必ずというわけではないが典型的にはニューラルネットワークであり、その共有されるネットワークの重みを使用して複数の関連する予測を計算することができる。このことは、必要なデータ量及び/又は経験に関してより効率的な訓練を可能にし、いくつかの事例ではこれらの予測のより効率的な計算を可能にする。多重予測ネットワークには、複数の関連する、時には作成可能な(composable)手法が存在する。以下の説明では、関連する図を参照しながらこれらの手法について説明する。
【0051】
図1図6の各々では、f(x)が予測を意味し、ここでのxは、状態、予測id、スキルid、パラメータ値、又はこれらの組み合わせとすることができ、sは状態を意味し、gは予測idであり、kはスキルidであり、pはパラメータ値である。
【0052】
図1Aに、多重ヘッド予測ネットワークを示す。ここでは単一のネットワークが複数の出力を有し、各出力は異なる特徴の予測である。ネットワークへの入力は、図1に示す複数の状態入力Sによって表される現在の状態である。ネットワークの最後の層を除く全ての層におけるネットワークの重み/パラメータは、異なる予測間で共有される。図1Bに、ニューラルネットワークの単一の隠れ層における単一の活性化ノード(activation nodes)のための一連の入力1、x1、x2及びx3の重み付けw1~w4の単純な例を示す。理解できるように、異なる予測間で重み付けの共有を行わなければ、特にニューラルネットワークの隠れ層及び活性化ノードの数が成長するにつれて計算が必要になると考えられる。従って、この共有から得られる利点は3つある。第1に、この共有によって予測の学習を高速化することができる。第2に、この共有によってネットワークの下位層における計算が共有されるため、複数の予測を計算する計算コストを低下させることができる。第3に、この共有によって状態特徴全体を一般化することができる。
【0053】
例えば、単一の多重ヘッド予測ネットワークは、最も近い物体の距離、色、形状及び重さを所与の状態から予想することができる。エージェントは、センサなどから状態入力データとして入力を受け取って、前方40度の4フィート離れた位置に青色の丸い3オンスのボールが存在すると決定する予測を生成することができる。これらの予測を、図1にf1(s)、f2(s)、f3(s)及びf4(s)として示す。
【0054】
次に図2に、多重入力予測ネットワークを示す。ここでは、単一のネットワークが複数の異なる予測の値を計算することができる。このネットワークは、現在の状態Sに加えて予測ID g1~g4を入力として受け取る。例えば、単一のネットワークは、赤色ブロック、緑色ブロック、青色ブロック又は黄色ブロックのいずれかまでの距離を予想することができる。g値のベクトルを供給することによって4つのうちのどれについて予想したいかをネットワークに示すことができ、この場合g値のうちの1つのみが「オン」になる。図面のようにg2=1である場合には、残りの状態情報に基づいて緑色のボールまでの距離を計算するようにネットワークに求めていることになる。
【0055】
多重入力予測ネットワークの出力は、入力として供給された予測IDの対応する予測値f(s,g)である。ネットワークは共有されており、すなわち複数の予測にわたって重み/パラメータが共通である。パラメータ化予測には多重ヘッド予測に比べて著しい利点があり、すなわち前者は、十分な訓練で目に見えない入力への一般化を行うニューラルネットワークの能力によって、新たな又は未訓練時の予測(untrained-upon forecasts)への一般化を行うことができる。
【0056】
例えば、このような多重入力予測ネットワークは、物体の距離、色、形状又は重さを画像から予想することができる。ユーザは、どの値を計算すべきであるかをネットワークに伝えるフラグを入力として供給する。
【0057】
図3に、多重スキル予測ネットワークを示す。このネットワークは、異なるスキルについて同じ種類の予測を計算することができる。予測ネットワークは、状態Sに加えてスキルID k1~k4を入力として受け取り、予測値f(s,k)を出力する。多重スキル予測ネットワークは、いくつかの共通の状態依存を共有するスキルに基づいて予測を一般化することができる。
【0058】
例えば、多重スキル予測ネットワークは、ドアまで走る、ドアまで歩く、ドアまでスキップする、又はドアまで這って行くといったスキルのうちの1つの継続時間を計算するために使用することができ、これらは全て、エージェントがドアからどれほど離れているかに依存する。ここでは、図2と同様に、[0,1]層が、供給された入力の「ワンホット」の性質を表すように意図される。図面では、第2のスキル(ドアまで歩く)のフラグを1に等しく設定して残りをゼロに設定することにより、ドアまで歩くスキルを実行した場合の予測を計算するようにネットワークに求めていることになる。
【0059】
図4に、パラメータ化スキル予測ネットワークを示す。このネットワークは、挙動に影響する可変入力パラメータに基づいて状態特徴又はその他の予測を予想することができる。例えば、予測f(s,p)は、ボールを蹴った時にどこまで転がるかを予想することができ、ここでの入力パラメータpは、どれほど強くボールを蹴るべきか、又はキック動作について計画される全ての関節角度である。
【0060】
図5には、ハイブリッドネットワークを示す。図示の例では、このネットワークが、図1Aの多重ヘッド予測を図3又は図4に示すものなどのスキル条件付きネットワークのうちの1つ又は2つ以上と組み合わせる。例えば、単一のネットワークが、ドアまで走る、ドアまで歩く、ドアまでスキップする、又はドアまで這って行くなどの一連の同様のスキルについて、距離、継続時間及び膝の痛みの体験などの3つの出力予測を計算することができる。入力は、標準状態情報と、スキルIDの符号化とを含む。
【0061】
図6を参照すると、埋め込みは、入力にわたるさらなる一般化を強要する技術である。埋め込みは、条件付け入力(conditioning inputs)のうちのいずれかと共に使用することができる。図6では、条件付け入力が、学習され縮小されたベクトル表現に最初に埋め込まれてパラメータ化予測への入力を形成する。
【0062】
例えば、ドアまで走る、ドアまで歩く、ドアまでスキップする、又はドアまで這って行く間の継続時間を予想する必要があるネットワークは、走ること及びスキップを1つのカテゴリにクラスタ化し、這って行くこと及び歩くことを第2のカテゴリにクラスタ化し、その後にこれらの2つのカテゴリの予測を条件付けるように学習することができる。
【0063】
なお、ネットワークの多くの組み合わせが可能である。例えば、スキルID及び予測IDの両方を条件とする、図2及び図3のネットワークを組み合わせた予測ネットワークを有することができる。或いは、図1A図3及び図4のネットワークを組み合わせて、力の量などの共通の実数値入力パラメータを使用して数多くのスキルのための複数の状態変数予測の予想を行うことができるネットワークを得ることもできる。
【0064】
例えば、4つの異なるスキル(走る、歩く、スキップする、及び這う)の距離、継続時間及び膝の痛みの体験、並びに「努力」入力パラメータの予測を予想する1つのネットワークを構築することができる。
【0065】
当業者であれば、本発明の教示を踏まえ、かつこれらに従って、特定の用途のニーズに応じて、上述したステップのいずれかを好適に置き換え、並べ替え、取り除いてさらなるステップを挿入することができると容易に認識するであろう。さらに、上述した実施形態の規定の方法ステップは、上述の教示に照らして当業者が容易に好適であると分かるいずれかの物理的及び/又はハードウェアシステムを使用して実装することができる。本出願において説明した、コンピュータマシン上で実行できるいずれかの方法ステップについては、典型的なコンピュータシステムが、適切に構成又は設計された時に、本発明のこれらの態様を具体化できるコンピュータシステムとしての役割を果たすことができる。従って、本発明は、いずれかの特定の有形の実装手段に限定されるものではない。
【0066】
別途明示していない限り、いずれかの添付の要約書及び図面を含む本明細書に開示した全ての特徴は、同一の、同等の又は同様の目的にかなう別の特徴に置き換えることができる。従って、別途明示していない限り、開示した各特徴は、一般的な一連の同等又は同様の特徴の一例にすぎない。
【0067】
知的人工エージェントの特定の実装は、特定の状況又は用途に応じて異なることができる。限定ではなく一例として、上記で説明した知的人工エージェントは主に2次元の実装に向けられたものであったが、代わりに同様の技術をより高次元の実装に適用することもでき、本発明のこのような実装も本発明の範囲内であると考えられる。従って、本発明は、以下の特許請求の範囲の趣旨及び範囲内に収まる全ての修正物、同等物及び代替物を対象とする。さらに、上述した明細書に開示した実施形態は、上述した明細書において説明した目的、利点又は改善の各々を必ずしも全てが満足させ又は達成するわけではないと理解されたい。
【0068】
本明細書における請求項の要素及びステップには、単に可読性及び理解に役立つものとして番号及び/又は文字を付していることがある。あらゆるこのような番号及び文字の付与自体は、特許請求の範囲における要素及び/又はステップの順序付けを示すように意図するものではなく、そのように解釈すべきではない。
【0069】
当業者であれば、本発明の趣旨及び範囲から逸脱することなく多くの変更及び修正を行うことができる。従って、図示の実施形態はほんの一例として示したものであり、以下の特許請求の範囲によって定められる本発明を限定するものとして解釈すべきではないと理解されたい。例えば、以下では請求項の要素を特定の組み合わせで示しているとしても、本発明は、開示する要素よりも少ない、多い、又はこれらと異なる要素の他の組み合わせを含むと明確に理解されたい。
【0070】
本明細書において本発明及びその様々な実施形態を説明するために使用される単語は、その一般に定義される意味合いだけでなく、本明細書における特別な定義によって、これらが単一種を表す包括的構造、材料又は行為も含むと理解されたい。
【0071】
従って、本明細書では、以下の特許請求の範囲の単語又は要素の定義が、文言として明記された要素の組み合わせしか含まないわけではないように定められる。従って、この意味では、以下の特許請求の範囲内の要素のうちのいずれか1つに代えて2又は3以上の要素の同等の代用物を使用し、或いは特許請求の範囲内の2又は3以上の要素に代えて単一の要素を使用することもできると考えられる。上記では、要素を特定の組み合わせで機能するように説明し、当初はこのように特許請求することもあるが、場合によっては、特許請求する組み合わせから生じる1又は2以上の要素をこれらの組み合わせから削除することもでき、特許請求する組み合わせを下位の組み合わせ又は下位の組み合わせの変形例に向けることもできると明確に理解されたい。
【0072】
従って、特許請求の範囲は、上記で具体的に図示し説明したもの、概念的に同等のもの、明らかに代用できるもの、及び本発明の基本的発想を組み込んだものを含むと理解されたい。
【符号の説明】
【0073】
S 状態入力
f1(S)~f4(S) 出力
図1A
図1B
図2
図3
図4
図5
図6