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

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

▶ 日本電信電話株式会社の特許一覧

<>
  • 特許-強化学習用演算装置、強化学習方法 図1
  • 特許-強化学習用演算装置、強化学習方法 図2
  • 特許-強化学習用演算装置、強化学習方法 図3
  • 特許-強化学習用演算装置、強化学習方法 図4
  • 特許-強化学習用演算装置、強化学習方法 図5
  • 特許-強化学習用演算装置、強化学習方法 図6
  • 特許-強化学習用演算装置、強化学習方法 図7
  • 特許-強化学習用演算装置、強化学習方法 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-19
(45)【発行日】2024-11-27
(54)【発明の名称】強化学習用演算装置、強化学習方法
(51)【国際特許分類】
   G06N 20/00 20190101AFI20241120BHJP
   G06N 3/044 20230101ALI20241120BHJP
   G06N 3/067 20060101ALI20241120BHJP
   G06N 3/092 20230101ALI20241120BHJP
【FI】
G06N20/00
G06N3/044 100
G06N3/067
G06N3/092
【請求項の数】 8
(21)【出願番号】P 2023526735
(86)(22)【出願日】2021-06-09
(86)【国際出願番号】 JP2021021969
(87)【国際公開番号】W WO2022259434
(87)【国際公開日】2022-12-15
【審査請求日】2023-10-02
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】中島 光雅
(72)【発明者】
【氏名】橋本 俊和
【審査官】佐藤 直樹
(56)【参考文献】
【文献】特開2018-200391(JP,A)
【文献】菅野 円隆 ほか,時間遅延リザーバコンピューティングを用いた強化学習,電子情報通信学会2020年基礎・境界ソサイエティ/NOLTAソサイエティ大会講演論文集,2020年,p.123,ISSN 2189-700X
【文献】松木 俊貴 ほか,カオスニューラルネットワークの内部ダイナミクスによる探索を用いたQ-learning,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会 The Institute of Ele,2020年,Vol.119, No.453,pp.207-212,ISSN 2432-6380
【文献】小林 泰介,リザーバコンピューティングによる目的切替可能な強化学習,ロボティクスメカトロニクス講演会2017講演論文集,一般社団法人 日本機械学会,2017年,pp.1-4
【文献】小西 文昂 ほか,干渉合成開口レーダ地形分類のための複素リザバーコンピューティング,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2020年,Vol.119, No.453,pp.193-198,ISSN 2432-6380
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
G06N 3/044
G06N 3/067
G06N 3/092
(57)【特許請求の範囲】
【請求項1】
対象がタスクを実行する際の方策を学習する強化学習用の演算装置であって、
対象の状態に関する入力情報を入力する入力層と、前記入力層に入力された前記入力情報に基づいて、前記対象の前記方策を学習する中間層と、前記方策に関する出力情報を出力する出力層と、を有するコンピュータシステムと、
前記コンピュータシステムから出力された前記出力情報に基づいて、前記対象の行動に関する情報を出力する行動決定部と、を含み、
前記コンピュータシステムは、前記入力情報を物理的に変換し、前記対象の前記方策を学習する機能の少なくとも一部を実行する物理媒質を備え
前記物理媒質の媒質内の相互結合に相当するΩは、相互結合を表す任意の行列であり、行列Ωのスペクトル半径αが0.6以上、1.2以下である、強化学習用演算装置。
【請求項2】
前記Ωは、以下のリングトポロジを反映し、前記リングトポロジの行列様式のスペクトル半径に相当するリング内の戻り光の利得αは、0.6以上、1.2以下の間で設定される、請求項1に記載の強化学習用演算装置。
【請求項3】
前記コンピュータシステムは、前記入力情報に基づいて前記対象の前記方策を決定するアクター部と、前記入力情報に基づいて前記状態の価値を推定するクリティック部と、を有する、請求項1に記載の強化学習用演算装置。
【請求項4】
前記アクター部として機能する第1のコンピュータシステムと、前記クリティック部として機能する第2のコンピュータシステムと、を含む、請求項に記載の強化学習用演算装置。
【請求項5】
前記コンピュータシステムの前段に、前記入力情報を圧縮する前処理部を有する、請求項1からのいずれか一項に記載の強化学習用演算装置。
【請求項6】
前記物理媒質は、非線形の光学素子である、請求項1からのいずれか一項に記載の強化学習用演算装置。
【請求項7】
前記コンピュータシステムは、前記入力情報を前記物理媒質に対応して変換する入力変換部と、前記物理媒質から出力された前記出力情報を後に行われる演算処理に応じて変換する出力変換部と、前記出力変換部によって変換された前記出力情報に基づいて、強化学習に関する演算処理を実行する演算部と、前記演算部の演算結果に基づいて、前記対象の行動に関する情報を出力する、請求項1からのいずれか一項に記載の強化学習用演算装置。
【請求項8】
対象がタスクを実行する際の方策を学習する強化学習用の演算方法であって、
情報を入力する入力層と、前記入力層に入力された入力情報に基づいて演算を実行する中間層と、前記演算の結果を出力する出力層と、を有するコンピュータシステムに対し、
前記入力層に前記対象の状態に関する入力情報を入力する工程と、
前記中間層が前記入力情報に基づいて前記対象の前記方策を学習する工程と、
前記学習によって得られた前記方策に関する情報に基づいて、前記対象の行動に関する情報を出力する工程と、を含み、
前記対象の前記方策を学習する工程においては、少なくとも一部が、前記入力情報を物理的に変換する物理媒質により実行されて、
前記物理媒質の媒質内の相互結合に相当するΩは、相互結合を表す任意の行列であり、行列Ωのスペクトル半径αが0.6以上、1.2以下である、
強化学習用演算方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、強化学習をするためのアルゴリズムを備えた強化学習用演算装置に関する。
【背景技術】
【0002】
近年、深層ニューラルネットワーク(DNN:Deep Neural Network)を用いた深層強化学習の研究開発が進展している。深層ニューラルネットワークは、ゲームプレイ、ロボティクス、囲碁等と幅広い領域で、優れた学習性能を発揮することが報告されており、さまざまなタスクで方策の学習が可能な汎化性の高い手法が多く提案されている。一般的に、深層強化学習においては、時間tにおける状態をあらわす状態変数sと、その際に取り得る行動である行動変数a、その結果得られる報酬Rを用いて、ある状態における行動及び状態の持つ価値である行動価値関数Q(s,a)、状態価値関数V(s)をニューラルネットワークの出力として算出し、方策を決定する。強化学習では、入力情報にセンサデータをはじめとした時系列的な情報を取り扱うことが多いため、LSTM(Long short-term memory)をはじめとしたリカレントニューラルネットワーク(Recurrent Neural Network:以下、「RNN」とも記す)モデルを組み込むことが多い。一般的にその演算処理や学習コストは重いため、これらの処理負荷の低減が望まれている。
【0003】
ところで、近年、RNNの一種として、リザバーコンピューティング(Reservoir Computing(以下、「RC」とも記す)と呼ばれるモデルが提案されている。RCは、入力情報が各々のニューロンに結合する入力層、各ニューロンが相互に結合する中間層、各ニューロンの信号を和算し出力する出力層からなる。このような構成は、例えば、特許文献1に記載されている。
【0004】
RCは、入力層と中間層のネットワークを固定とし、学習に用いる変数を出力層の重み係数のみとしている点で一般的なRNNと相違している。このようなRCの方式は、学習すべき変数を大幅に削減できるため、データが膨大かつ高速な処理を要する時系列学習に好適である。RCは、ほとんどのノード間結合をランダムな写像で生成する。このランダム写像は計算機上で演算すると、ノード数の増加に伴い多くの計算リソースを必要とするし、計算機を含む演算システムを大規模化、高コスト化させる一因になる。この点を解消するため、写像を物理系で演算させる物理RCと呼ばれる構成の研究実証が進んでいる。物理RCによれば、物理素子に計算の一部をアウトソースできるため、低い演算リソースのデバイスでも効率的な学習が可能となる。物理RCについては、例えば、特許文献2に記載されている。
【先行技術文献】
【非特許文献】
【0005】
【文献】Herbert, Jaeger. and Harald, Haas.(2 APRIL 2004). Harnessing nonlinearity: predicting chaotic systems and saving energy in wireless communication. VOL 304 Science.
【文献】Gouhei, Tanaka.et al.(2019). Recent advances in physical reservoir computing. Neural Networks.100-123.
【発明の概要】
【0006】
本開示は、演算処理量の大きい強化学習に対して物理RCを適用し、効果的に演算リソースを低減し、効率の高い強化学習を実行する強化学習用演算装置、強化学習方法を提供することを目的とする。
【0007】
上記目的を達成するために本発明の一態様の強化学習用演算装置は、対象がタスクを実行する際の方策を学習する強化学習用の演算装置であって、対象の状態に関する入力情報を入力する入力層と、前記入力層に入力された前記入力情報に基づいて、前記対象の方策を学習する中間層と、前記方策に関する出力情報を出力する出力層と、を有するコンピュータシステムと、前記コンピュータシステムから出力された前記出力情報に基づいて、前記対象がとるべき行動に関する情報を出力する行動決定部と、を含み、前記コンピュータシステムは、前記入力情報を物理的に変換し、前記対象の方策を学習する機能の少なくとも一部を実行する物理媒質を備え、前記物理媒質の媒質内の相互結合に相当するΩは、相互結合を表す任意の行列であり、行列Ωのスペクトル半径αが0.6以上、1.2以下である。
【0008】
本発明の一態様の強化学習用演算方法は、対象がタスクを実行する際の方策を学習する強化学習用の演算方法であって、情報を入力する入力層と、前記入力層に入力された入力情報に基づいて演算を実行する中間層と、前記演算の結果を出力する出力層と、を有するコンピュータシステムに対し、前記入力層に前記対象の状態に関する入力情報を入力する工程と、前記中間層が前記入力情報に基づいて前記対象の前記方策を学習する工程と、
前記学習によって得られた前記方策に関する情報に基づいて、前記対象の行動に関する情報を出力する工程と、を含み、前記対象の前記方策を学習する工程においては、少なくとも一部が、前記入力情報を物理的に変換する物理媒質により実行されて、前記物理媒質の媒質内の相互結合に相当するΩは、相互結合を表す任意の行列であり、行列Ωのスペクトル半径αが0.6以上、1.2以下である。

【0009】
以上の態様によれば、演算処理量の大きい強化学習に対して物理RCを適用し、効果的に演算リソースを低減し、効率の高い強化学習を実行する強化学習用演算装置、強化学習方法を提供することができる。
【図面の簡単な説明】
【0010】
図1】一般的なRCモデルの形態を説明するための図である。
図2】第1実施形態の強化学習用演算装置を有する演算システムのRCモデルを説明するための図である。
図3】第1実施形態において利用される演算装置の構成の模式図である。
図4図3に示す演算装置のハードウェア構成を説明するための図である。
図5】(a)、(b)は、本発明の第2実施形態の強化学習用演算装置を説明するための図である。
図6】本発明の第3実施形態の演算装置を説明するための図である。
図7】(a)、(b)は、本発明の一実施例の学習の状態を示すグラフである。
図8】(a)は本実施例の前処理部を説明するための図である。(b)は本実施例の学習の状態を示すグラフである。
【発明を実施するための形態】
【0011】
以下、本発明の第1実施形態、第2実施形態及び第3実施形態を説明する。なお、第1実施形態から第3実施形態は、本発明の技術思想、構成、手順等を例示し、その具体的な構成や条件及びパラメータ等を限定するものではない。先ず、本明細書は、第1実施形態、第2実施形態及び第3実施形態の説明に先立って、リザバーコンピューティング(Reservoir Computing(以下、「RC」とも記す)について説明する。
【0012】
図1は、一般的なRCモデルの形態を説明するための図である。図1に示すRCモデル10は、入力情報である入力信号が各々のニューロンに結合する入力層Ri、各ニューロンが相互に結合する中間層Rr、各ニューロンの信号を和算し出力する出力層Roによって構成されている。本明細書では、入力信号が各々のニューロンに結合することを、「入力」とも記す。式(1)は、入力層Riに入力される入力信号u(n)を決定する式である。また、式(2)は、入力信号u(n)を入力層Riに入力した場合に出力層Roから出力される出力信号y(n)を決定する式である。
【数1】
【0013】
上記式(1)、式(2)において、Nはニューロンの数、x(n)は時間ステップnでのi番目のニューロンの状態であり、Ωij,mi,η,ωはそれぞれ、ニューロン間の相互結合、入力信号のニューロンへの結合、出力信号から各ニューロンへのFB(Feed Back)信号への結合、各ニューロンから出力信号への結合を表す係数である。また、f(・)は各ニューロンでの非線形応答を表し、tanh(・)等が頻繁に用いられる。RCネットワークと一般的なリカレントニューラルネットワーク(Recurrent Neural Network:以下、「RNN」とも記す)との大きな違いは、入力層Riと中間層Rrとのネットワークを固定とし、学習に用いる変数を出力層Roの重み係数のみとしている点である。RCの方式は、学習すべき変数を大幅に削減できるため、データが膨大かつ高速な処理を要する時系列学習に対して大きなアドバンテージを有する。
【0014】
[第1実施形態]
(RCによる強化学習(Q学習))
図2は、第1実施形態の強化学習用の演算装置112を有する演算システムのRCモデル10を説明するための図である。第1実施形態のRCモデル10は、エージェント111、状態測定装置113、演算装置112及び行動制御装置114を有している。RCモデル10は、エージェント111があるタスクを実行する際の方策を、演算装置112にて学習する。時刻tにおけるエージェント111の状態はsで表され、エージェント111は状態sに応じて複数の行動aをとり得る。エージェント111は、行動のaの結果として報酬Rを得る。状態sは状態測定装置113によって測定される。また、行動aは、行動制御装置114によって方策に沿う行動aを実現すべく制御される。
【0015】
上記の構成の具体例として、例えば、多関節のロボットアームを制御するためのモデルが考えられる。ロボットアームの制御において、状態sはロボットアームの各関節部のセンサーデータ(位置・角度・加速度など)に相当する。行動aは、ロボットアームを駆動する制御信号(回転量、変位量など)に相当する。報酬Rは、ロボットアームが物を掴んだ場合、あるいは所望の動作を成しえた際にソフトウェア上で得る仮想的な値である。ロボットアームを制御するシステムにあっては、状態測定装置113は、例えば電流や電圧等のセンサデータを取得する電流計、電圧計といった装置に相当し、行動制御装置114は、電圧源や電流源等の駆動装置に相当する。
【0016】
また、図2に示す構成は、ゲームや将棋を学習することにも適用できる。このような学習のシステムにおいて、状態sは画面や盤面の画像であり、行動aは取り得る一手に相当する。また、報酬Rは、行動によって得られたポイント等に相当する。なお、第1実施形態の手法は、上記のタスクに依存する入力や制御量に依らず適応可能であり、上述以外のタスクにも広く利用できる。
【0017】
演算装置112は、状態s、行動a及び報酬Rの情報を基にエージェント111の行動を決定する。以下、その手法について説明する。図3は、第1実施形態において利用される演算装置112の構成の模式図である。演算装置112は、RCアルゴリズム211と、行動決定アルゴリズム212を含んでいる。RCアルゴリズム211は、RCモデル10を有し、RCネットワークを使って強化学習を行っている。第1実施形態においては、状態測定装置113を介して測定された状態sが、式(1)の時間tにおける入力信号u(t)とみなされて演算装置112に入力される。この信号は、RCアルゴリズム211及び行動決定アルゴリズム212により、式(2)で記述される変換を受け、中間状態x(t)、最終出力y(t)へと変換される。ここで、RCモデルの入力、出力の次元は状態sと行動aの次元と等しくなるように設定されている。
【0018】
また、学習変数はωのみであり、その他の変数m,Ωは後述する物理媒質115(図4)の構成に従って生成され、学習は行われない。第1実施形態は、これによって通常の深層学習モデルに比較し、少数パラメータで学習できるという優れた効果を有する。第1実施形態において、RCアルゴリズム211は、RCアルゴリズム211の出力y(t)が、状態sにおける行動aの価値を表す指標である行動価値関数Q(s,a)となるように式(2)の変数ωの学習を行う。行動決定アルゴリズム212は、出力された行動価値関数Q(s,a)に基づいて行動aを決定し、行動aに関する情報として行動制御装置114に出力する。行動制御装置114は、行動aに基づいてエージェント111の行動を制御する。
【0019】
以上説明した構成においては、エージェント111が対象に相当し、状態に関する情報が状態sに、方策に関する情報が行動aに相当する。状態sはRCモデル10の入力層Riに入力され、中間層Rrにおいては状態sに基づいてエージェントの行動aが学習される。学習の結果得られた行動aが行動決定アルゴリズム212に出力される。行動決定アリゴリズム212は、行動aのうちからエージェント111の行動aを決定し、行動aを行動制御装置114に出力する。RCモデル10は、ニューロンを模した計算処理のモデルであり、RCアルゴリズム211は、RCモデル10に基づく計算処理を実現し、報酬Rを含む行動価値関数Q(s,a)を出力するためのプログラムである。行動決定アルゴリズム212は、RCアルゴリズム211によって行われた処理結果からエージェント111の行動を決定するプログラムである。演算装置112は、このようなプログラムを含むソフトウェアと、プログラムを動作させるためのハードウェアとを含む概念である。第1実施形態において、RCモデル10はコンピュータシステムに相当する。
【0020】
また、上記構成は、エージェント111がタスクを実行する際の行動aを学習する強化学習用の演算方法を実行する。この強化学習用演算方法は、RCモデル10に対し、入力層Riに状態sを入力する工程と、状態sに基づいてエージェント111の行動aを学習する工程と、学習によって得られた行動aに基づいてエージェント111の行動に関する情報を出力する工程と、を含んでいる。そして、エージェント111の行動aを学習する工程においては、行動aの方策を学習する処理の少なくとも一部が、状態stを物理的に変換する物理媒質115により実行される強化学習用演算方法を実行する。
【0021】
学習は、例えば、次式(3)で定義されるTD(Temporal Differential)誤差Lを最小化するように実行される。
【数2】
【0022】
上記式(3)において、γは割引率であり、将来の報酬をどれだけ割り引くかを示すハイパーパラメータである。典型的には、0.99等の1より小さい数値を有し、且つ1に近い値を利用する。学習変数はωだけなので、
【数3】
【0023】
ここから、ωの勾配を例えば次式(5)で更新する。
【数4】
【0024】
ただし、式(5)中のλは学習率である。式(5)は単純な勾配降下法に基づいた更新則であるが、Adam-optimizerや確率的勾配降下法(Stochastic Gradient Descent:SGD)など機械学習分野で用いられる種々の最適化アルゴリズムが利用可能である。また、式(3)では、1ステップ分のTD誤差について求めたが、nステップ分のTD誤差を求めてもよい。その場合は、コスト関数として、以下の式(6)を利用する。
【数5】
【0025】
式(6)中のnを1より大きな値に設定することで、学習の安定性、収束性を高めることができる。nは10以下の値であることが望ましい。式(6)中のωに対する偏微分を考えることで、式(5)、式(6)と同様に更新則を導出することができる。
【0026】
一般的な深層強化学習では、学習データのサンプリングには、データ系列をランダムにサンプリングする経験再生(Experimental replay)がしばしば用いられるが、第1実施形態はRNNの一種であるRCモデルを利用しているため、このような方法は利用できない。これを避けるためには、一試行中の時系列データ(エピソード)をそのまま入力する手法や、エピソード内からある長さのデータを抽出するサンプリング手法及びエピソード内のある時刻を指定し、その事前データで内部状態を再現しておく手法等が利用可能である。なお、一試行中の時系列データ(エピソード)をそのまま入力する手法と、エピソード内からある長さのデータを抽出するサンプリング手法とは、例えば、Matthew, Hausknecht. and Peter, Stone. (11,Jan,2017). Deep recurrent q-learning for partially observable. MDPs.Austin.the University of Texas(以下、「参考文献1」とも記す)に記載されている。エピソード内のある時刻を指定し、その事前データで内部状態を再現しておく手法は、例えば、Steven, Kapturowski.et al. (2019)Recurrent experience replay in distributed reinforcement learning. Published as a conference paper at ICLR.(以下、「参考文献2」とも記す)に記載されている。
【0027】
行動決定アルゴリズムにおいては、例えばε-greedy法が利用される。ε-greedy法は、確率εである方策πに基づく行動を選定し、(1-ε)の確率で上記により算出された行動価値関数Q(s,a)が最も高い行動を選択する。方策πは、典型的には、一様な確率分布から生成され、すべての取り得る行動を一様に等しく選択するようにする。演算装置112は、式(1)で記述される数値演算に多くの計算リソースを要求するため、ネットワークの大規模化に従って電力や実行時間を要求する。第1実施形態は、図3におけるRCモデルのうち、式(1)に相当する演算を物理媒質115で演算する。
【0028】
物理媒質115は、例えば、入力情報を光として入力し、入力した光の振幅、波長、周波数といった物理的なパラメータを変換するものであってもよい。また、物理媒質115は、入力情報を電気信号として入力し、この値や周波数といった物理的なパラメータを変換するものであってもよい。さらに、入力情報として液体を入力し、この圧力や流量といった物理的なパラメータを変換するものであってもよい。変換は、パラメータの種別を変更することなく数値を変換することに限らず、他のパラメータへの変更も含む。学習は、状態sに応じてタスクがより達成される可能性が高い行動aを選択することが可能になるように、行動に関する情報を蓄積、あるいは選別することを指す。
【0029】
図4は、式(1)に相当する演算を物理媒質115で演算する第1実施形態の演算装置112のハードウェア構成を説明するための図である。図4に示す演算装置112は、信号変換装置116,117、物理媒質115、電子演算装置119及び記憶部118を含んでいる。状態測定装置113からの入力情報sは、信号変換装置116を介してディジタル的な情報からアナログ的な物理信号へと変換される。変換された物理信号は、物理媒質115へと入力される。ここで、物理信号とは、例えば電流、電圧、光強度等を指す。物理信号への変換は、物理媒質115の構成に応じた信号方式によって行うことが望ましい。物理媒質115における信号伝搬は、それぞれの系で定まる物理法則によって記述されるが、種々の物理系で式(1)と等価な演算が実行可能であることが、例えば、先に挙げた非特許文献1によって報告されている。
【0030】
物理媒質115を伝搬した信号は、信号変換装置117によって測定され、再びディジタル情報へと変換される。この測定信号は、式(1)におけるx(t)と等価であるとみなせる。測定信号は、メモリやハードディスクなどからなる記憶部118に保持される。また、記憶部118には、式(2)から式(5)を実行するためのプログラムやパラメータも同時に定義、保存されている。測定信号、プログラム及びパラメータを含む情報は、CPU(central Processing Unit)やGPU(Graphics Processing Unit)等を備える電子演算装置119に転送し、電子演算装置119は、式(2)から(5)を演算することで強化学習を実行する。このような構成により、第1実施形態は、信号伝搬中に式(1)を自動的に演算できるといった優れた効果を有する。また、このような構成の第1実施形態は、物理媒質115において式(1)に相当する演算を物理法則の中で自動的に実行するため、計算リソースの増加に関する課題を軽減、解決することができる。
【0031】
次に、第1実施形態の物理媒質115について説明する。物理媒質115は、公知のものでよく、第1実施形態は、物理媒質115に光回路を用いて演算する構成を用いた。このような光回路を用いる演算は、例えば、J, Bueno. et al. (2018). Reinforcement learning in a large-scale photonic recurrent neural network. Optica 5, 756-760 (以下、「参考文献3」とも記す)、L, Larger. et al, (2012) Photonic information processing beyond Turing: an optoelectronic implementation of reservoir computing. Optics express 20, 3241 (以下、「参考文献4」とも記す)、M, Nakajima. et al. (2021) Scalable reservoir computing on coherent linear photonic processor communications. physics.4. 20(以下、「参考文献5」とも記す)に記載されている。第1実施形態は、光通信用デバイスを介して100Gbit/sを超える高速な光の入出力が可能であるため、演算を高速に行うことができる。
【0032】
光を高速で入出力するため、信号変換装置116は、ディジタル・アナログ変換器(Digital-to-Analog Converter:DAC)と光変調器によって構成され、ディジタル信号を光強度や光位相に変換し、光学的な物理媒質115に導入する。出力光を再びディジタル信号に変換する場合、信号変換装置117は、光受信機とアナログ・ディジタル変換器(Analog-to-Digital Converter:ADC)とによって構成される。光学的な物理媒質115は、例えば参考文献3に記載のレンズ・ミラー・空間変調器からなる空間光学系でもよく、参考文献4に記載の光ファイバリングを利用する構成であってもよい。このような構成は、比較的装置が大型化する一方、参考文献5に記載のように、光集積回路を利用することによって小型の演算回路を集積することも可能である。
【0033】
物理媒質115は、非線形変換が可能なように、非線形の光学素子であることが好ましい。非線形素子は、例えば、物理媒質115を非線形光学材料(例えば、LiNbO等)で構成する他、光増幅器の利得飽和を利用する構成等で実現される。第1実施形態では、物式(1)における行列Ωのスペクトル半径(行列の固有値の最大値)が0.8から1.2の範囲になるように物理媒質115を物理的に実装することが好ましい。このような構成により、第1実施形態は、カオス転移点付近での動作を実現でき、RCの記憶を保持する性能を高めることができる。物理媒質115が利得媒質を含まない光学媒質である場合、カオス転移付近における動作とは、可能な限り光学損失を低減する構成によって実行される動作に相当する。なお、物理媒質115が、例えば増幅器のような利得媒質を含む構成である場合、利得を調整することによって記憶保持に係る機能を向上させることができる。
【0034】
また、第1実施形態は、式(1)で示した演算と等価の機能の全てを物理媒質115によって行うことに限定されるものではない。例えば、第1実施形態は、式(1)によって得られる結果の一部を物理媒質115によって行うものであってもよい。そして、式(1)によって表される演算の一部を電子演算装置119によって行うものであってもよい。より具体的には、例えば、式(1)に示す演算の一部を予め電子演算装置119等によって行ってもよい。このような事前の処理については、例えば、参考文献4に記載えている。参考文献4に記載の事前処理においては、式(1)の第二項の処理(入力マスク処理)を事前に実行し、その結果を物理媒質115への力信号としている。このような事前処理によれば、状態sや中間状態x(t)の次元が大きい場合であっても、物理媒質115の実装が容易になる。
【0035】
また、物理媒質115の他の態様としては、例えば、ReRAMなどのメモリスタが挙げられる。このような態様は、抵抗セルを通過した電流の履歴に応じて抵抗値が変化するという物理現象を利用する構成である。この構成では、信号変換装置116、117にDAC/ADCを利用する。このような構成は、アナログ電子回路で実装されるため、インターフェイスの親和性が高く、小型化に有利である。このような構成は、例えば、Yanan, Zhong. et al. (2021). Dynamic memristor-based reservoir computing for high-efficiency temporal signal processing. Nature Communications 12:408.(以下、「参考文献6」と記す)に記載されている。また、メモリスタは、半導体プロセスで形成可能なため大規模なノードを構成しやすい点でも有利である。さらに、このような構成の他、磁性体回路や流体、ソフトマテリアルなども物理媒質115の態様として利用可能である。この点は、例えば、参考文献1にまとめられている。
【0036】
以上説明したように、第1実施形態は、演算処理量の大きい強化学習に対して物理RCを適用し、効果的に演算リソースを低減することができる。このため、強化学習を実行する強化学習用演算装置の大型化、高コスト化を抑えることができる。あるいは、強化学習を実行する強化学習用演算装置の小型化により演算リソースに余裕が生じた場合には、さらに高度な演算処理を実行することができる。このような第1実施形態は、効率の高い強化学習を実行する強化学習用演算装置、強化学習方法を提供することができる。
【0037】
[第2実施形態]
(RCによる強化学習(Actor-critic型))
次に、本発明の第2実施形態について説明する。第2実施形態の強化学習用演算装置は、方策πについて一様の確率で生成し、学習しない方式(方策オフ型学習)であったことに対し、方策πについても学習する態様(方策オン型学習)である点で相違する。方策オン型学習を行う第2実施形態は、第一実施形態よりも解の速い収束が可能である。
【0038】
図5(a)、図5(b)は、第2実施形態の強化学習用の演算装置512、513を説明するための図である。図5(a)は、第2実施形態の強化学習用演算装置512の模式図である。図5(b)は、図5(a)に示す演算装置512の変形例である演算装置513の模式図である。演算装置512は、二つのRCモデル10a、10bを有するRCアルゴリズム311と、行動決定アリゴリズム212と異なる行動を選定する行動決定アリゴリズム312を備える点で第1実施形態の演算装置112と相違する。
【0039】
図5(a)に示す第2実施形態の演算装置512における信号の流れは第1実施形態で説明した図2の演算装置112と同様である。ただし、演算装置512は、RCネットワークの構成及び学習方法が演算装置112と異なっている。図5(a)に示す構成においては、状態測定装置113から入力された状態sが、式(1)における入力信号u(t)として二つのRCモデル10a、10bにそれぞれ入力される。RCモデル10a、10bの入力及び出力の次元は、状態s、行動aの次元とそれぞれ等しくなるように設定されている。RCアルゴリズム311における学習変数は、RCモデル10a、10bの各々の出力層の重みωとωのみである。これによって、RCアルゴリズム311は、通常の深層学習モデルに比較し、少数のパラメータを使って学習できるという利点がある。RCモデル10a、10bは、各々が「アクター(Actor)」と「クリティック(Critic)」と呼ばれる異なる処理を実行する。
【0040】
ここで、アクターはエージェント111の取り得る方策を決定し、クリティックは状態測定装置113から出力される状態Sから情報を集めることにより状態の価値を推定する。RCアルゴリズム311は、アクター側の出力が方策を表す行動価値関数π(s,a)となるように、また、クリティック側の出力が状態価値関数V(s)になるように学習を行う。
【0041】
演算装置310の行動決定アルゴリズム312は、実施の形態1とは異なり、アクター側で学習される方策πに基づいて図2に示したエージェント111の行動を選定する。行動の選定は、例えば、以下の式(7)、式(8)で定義されるアクター側とクリティック側のコスト関数L,Lをそれぞれ最小化するように実行する。
【数6】
【0042】
式(7)、式(8)のω,ωに対する偏微分を考えることで、式(5),式(6)と同様に更新則を導出することができる。学習を安定化させるため、Lについては以下の式(9)のようにnステップ先まで考慮したコスト関数を用いてもよい。
【数7】
【0043】
式(9)において、nを1より大きな値に設定することで、学習の安定性、収束性を高めることができる。nは10以下の値に設定することが望ましく、式(9)のωに対する偏微分を考えることで、式(5)、式(6)と同様に更新則を導出することができる。このような構成の演算装置310は、RCモデル10a、10bを並列に2つ接続し、行動決定アルゴリズム212が方策に関する情報と価値に関する情報とを併せてエージェント111の行動を決定するようにすることによって実現できる。
【0044】
また、上記では、アクター側とクリティック側で異なるRCモデル10a,10bを利用していたが、図5(b)のRCアルゴリズム411のように、入力層、中間層をシェアし、出力層のみ異なるように設定してもよい。これによって、RCアルゴリズム411において同一の物理媒115質の計算結果を共有できるので、第1実施形態と同様に、1つのRCモデル10を有する演算装置410でも演算の実行が可能となる。
【0045】
なお、図5(a)、図5(b)に示すRCアルゴリズム311、411は、ハードウェアとして構成する場合、いずれも第1実施形態の図4に示す演算装置112と同様に、信号変換装置116,117、物理媒質115、記憶部118及び電子演算装置119を含むように構成される。
【0046】
[第3実施形態]
(ランダム畳み込み層の追加)
次に、本開示の第3実施形態を説明する。図6は、第3実施形態の演算装置612を説明するための図である。演算装置612は、第1実施形態の図2に示したRCアルゴリズム211、行動決定アルゴリズム212と共に、RCアルゴリズム211の前段に設けられた前処理部613を有している。前処理部613は、ランダム畳み込み層とプーリング層による前処理をする機能を有し、状態測定装置113から出力される状態sを状態st´に変換する。RCアルゴリズム211は、状態st´に基づいてRCモデルの演算を実行する。
【0047】
前処理部613は、畳み込みを行うカーネルフィルタと、プーリングを行うカーネルフィルタの2つの層を持っている。畳み込みは、画像の小領域の部分の画素値に対し、この領域を1つの特徴料としてより小さい領域に圧縮する処理をいい、画像のデータ量を低減する処理である。プーリングは、画像を間引いてデータ量を低減する処理である。ランダム畳み込み層におけるカーネルフィルタの係数は、例えば[-1:1]区間の乱数テーブルによって生成され、その後学習はしない。したがって、第3実施形態では、RCアルゴリズム211が第1実施形態、第2実施形態が状態sを処理するのと同様に状態st´を処理することができる。第3実施形態は、ゲームや車載カメラといった画素数に対応する高次元な入力情報を扱う必要がある場合、予め畳み込みニューラルネットワークによって次元を圧縮し、RCアルゴリズム211における処理量を低減することができる。
【実施例
【0048】
(数値計算による検証)
上記の第1実施形態から第3実施形態を用いて行った強化学習の実施例について説明する。本実施例は、強化学習のテストで一般的に用いられるカートポール問題とよばれるタスクをコンピュータシミュレーション上で実行する。このタスクは、一次元空間中を移動する台車の位置を制御することで、台車の上に立つ棒を倒さないように制御することを目標とする。状態sとしては、各時刻の台車の速度、位置、角度及び角速度が与えられる。行動aとしては、その時刻において棒が左右のどちらに動くかが選択できる。角度が±20.9°以上傾く、あるいは±2.4以上位置が変わると失敗となり、-200の報酬Rを得る。それ以外の場合、各時刻において+1の報酬Rtを得る。このようなタスクを実装するために、本実施例は、実施形態2のアクターとクリティックの2つのRCモデルを有する演算装置を適用した。
【0049】
また、RCモデルの物理媒媒質として、光学的な媒質を採用し、非線形関数として半導体光増幅器(Semiconductor Optical Amplifier:SOA)の飽和挙動に基づくtanh()を利用している。入力結合mは、例えば、事前に演算してから物理媒質115に導入することとしており、[0:1]区間から一様乱数で生成している。物理媒質115はファイバベースで構築することを前提とし、媒質内の相互結合に相当するΩは次式のようなリングトポロジを反映したものとなっている。このような媒質は、例えば、Francois, Duport. et al.(2012). All-optical reservoir computing. Vol. 20, No. 20 / Optics Express, 22783-22795.(以下、「参考文献7」と記す)に記載されている。
【数8】
【0050】
リング内の戻り光の利得αは、Ωのスペクトル半径に概ね等しい。RCモデル10における学習は、式(7)、(9)記載の方法で実施される。式(9)のn、γをn=5,γ=0.99とし、RCモデル10のノード数は64とした。
【0051】
図7(a)、図7(b)は、本実施例の学習の状態を示すグラフである。図7(a)は、横軸に試行回数、縦軸に継続して棒を倒さずにいたステップ数を示している。図7(a)中の実線は、本実施例のRCモデルを用いた学習を示す。破線は、比較のために3層の全結合ニューラルネットワークを用いて行った同様の学習の結果を示す。図7(a)から明らかなように、本実施例は、破線に比べて試行回数の少ないうちに棒を倒さずにいられるステップ数が上昇し、全結合ニューラルネットワークを用いるよりも収束が早い。さらに、RCアルゴリズムによれば、学習変数はωのみであり、その他の変数は後述する物理媒質115により処理されるので、少ないパラメータで学習が可能である。
【0052】
図7(b)は、リング内の戻り光の利得αと、収束するまでに要する試行回数の平均値との関係を示している。ここで、収束は、200ステップまで棒を倒さずに保持することを5回連続で成功することと定義する。図7(b)から明らかなように、αが1.2以上になると、収束までの試行回数が増えて、αが0.6から1.0までの間では収束にかかる試行回数が少なく、かつ安定している。この理由は、αが1.2を超えると光学媒質の挙動がカオス的になり、光学媒質のカオス転移点付近でRCアルゴリズムの性能が高まるという傾向を反映している。したがって、RCアルゴリズムのスペクトル半径は、カオス転移点に至らない範囲で、かつ、なるべく大きな値を持つように設定することが望ましい。
【0053】
また、本実施例では、別の学習の例として、コンピュータゲームPong(Atari社製)をタスクとし、コンピュータと対戦して勝利することを目的とする。RCモデルでは、状態sを第3実施形態で述べた前処理部で予め処理し、RCモデルに入力する。図8(a)は、本実施例で使用した前処理部613を説明するための図である。図8(b)は、学習の状態を示すグラフである。前処理部613は、複数の中間層3130、3131、3133を有する畳み込みフィルタ、プーリング層3135を有している。畳み込みフィルタの後段には、RCモデル10を有する演算装置が設けられている。中間層3130においては、8×8のカーネルフィルタ3137が、84×84×4の入力データに対し、4×4画素分ずつスライドしながら畳み込み処理を行う。中間層3131においては、4×4のカーネルフィルタ3132が、20×20×32のデータに対し、2×2画素分ずつスライドして畳み込み処理が行う。中間層3133においては、3×3のカーネルフィルタ3134が、9×9×64のデータに対し、1×1画素分ずつスライドして畳み込み処理が行う。この結果、畳み込み処理が行われる度に特徴マップが出力される。特徴マップは、プーリング層3135によって画素数を減じられた後、結合して結合層3136を構成する。
【0054】
学習は、式(7)、(9)に示す方法で行った。式(9)において、n=5,γ=0,99とし、RCのノード数は4000としている。図8(b)の横軸は試行回数を示し、縦軸は得点差(コンピュータの得点から対象の得点を差し引いた値)を示している。得点差が「+」である場合、対象が勝利したことを示している。図8(b)から明らかなように、得点差は、試行回数が増えるにつれて大きくなり、以降安定して収束した。このような結果は、ゲームプレイのような比較的難しいタスクであっても本開示のRCモデルを使って学習することができることを示している。
【符号の説明】
【0055】
10,10a,10b・・・RCモデル
111・・・エージェント
112,512,513,612・・・演算装置
113・・・状態測定装置
114・・・行動制御装置
115・・・物理媒質
116,117・・・信号変換装置
118・・・記憶部
119・・・電子演算装置
211,311,411・・・RCアルゴリズム
212,312,412・・・行動決定アルゴリズム
613・・・前処理部
3130,3131,3133・・・中間層
3132,3134,3137・・・カーネルフィルタ
3135・・・プーリング層
3136・・・結合層
図1
図2
図3
図4
図5
図6
図7
図8