JP7728107B2 - コンピュータ制御システムの時系列予測の実行 - Google Patents

コンピュータ制御システムの時系列予測の実行

Info

Publication number
JP7728107B2
JP7728107B2 JP2021099178A JP2021099178A JP7728107B2 JP 7728107 B2 JP7728107 B2 JP 7728107B2 JP 2021099178 A JP2021099178 A JP 2021099178A JP 2021099178 A JP2021099178 A JP 2021099178A JP 7728107 B2 JP7728107 B2 JP 7728107B2
Authority
JP
Japan
Prior art keywords
drift
model
sde
variables
component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021099178A
Other languages
English (en)
Other versions
JP2021197189A (ja
Inventor
カンデミール メリー
ゲアヴィン ゼバスティアン
ルック アンドレアス
ラキチュ バーバラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JP2021197189A publication Critical patent/JP2021197189A/ja
Application granted granted Critical
Publication of JP7728107B2 publication Critical patent/JP7728107B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0499Feedforward networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Feedback Control In General (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

本発明は、コンピュータ制御システムに基づく時系列予測を行うためのモデルをトレーニングするコンピュータ実装方法及び対応するシステムに関する。本発明はさらに、コンピュータ制御システムの時系列予測を行うためにトレーニングされたモデルを使用するコンピュータ実装方法及び対応するシステムに関する。本発明はさらに、上記の方法の一方又は両方を実行するための命令を含む、及び/又は、トレーニングされたモデルを表すモデルデータを含む、コンピュータ可読媒体に関する。
背景技術
多くの現実生活の用途においては、コンピュータ制御システムの時系列予測を行うためにモデルを使用することが望まれる。実際の例として、ガソリンエンジン用のガソリンパティキュレートフィルタにおいては、煤粒子がフィルタ上に蓄積する。従って、フィルタの機能を維持するには、煤粒子の蓄積を予測して、洗浄動作(例えば、酸素バーストを使用)を遅滞なく開始し得るようにする必要がある。より一般的には、そのようなコンピュータ制御システムにおいては、典型的には、1つ以上のセンサが、システム及び/又はその環境の測定値の取得のために使用され、1つ以上のアクチュエータが、環境に影響を与えるアクションの実行のために使用されている。コンピュータ制御システムには、ロボットが1つ以上のタスクを自動的に、例えば、外部デバイス又は組み込まれたコントローラの制御下において実行し得るロボットシステムが含まれる。さらなる例には、車両及びそのコンポーネント、家電製品、電動工具、製造機械、パーソナルアシスタント、アクセス制御システム、ドローン、ナノロボット及び暖房制御システムがある。
多くの場合、残念なことに、そのような時系列予測を明示的な物理モデルに基づいて行うことは実現不可能である。ガソリンパティキュレートフィルタについては、適度に正確な予測を行うことができるシミュレータが入手可能であるが、そのようなシミュレータを使用することには高い計算コストがかかり、制御や監視などのリアルタイムの用途には法外に高い。一般に、コンピュータ制御システム及び/又はその環境の基礎となる物理モデルは、明示的にモデル化したり、効果的にシミュレーションしたりするには複雑過ぎることが多々ある。
物理モデルを使用することが不可能であるそのような例において、将来有望な取り組みは、代わりに機械学習技術を使用して時系列予測を行うためのモデルをトレーニングすることである。そのようなモデルは、物理量の測定値に基づいてトレーニングするものとしてもよい。このようにして、入手可能な観測値に一致するモデルを自動的に決定することができる。他の明記がない限り、本明細書においては、所与の物理量の測定値は、直接的(例えば、物理量用のセンサから得られ、時折観測量とも称される)又は間接的(例えば、他の物理量の測定値から計算され、時折潜在量とも称される)であり得る。
確率微分方程式(SDE)に基づくモデルを使用することは、例えば、多くのシステムに存在するノイズなどが実際に発生する確率を捕捉することができるため、特に有意である。A. Lookらによる「Differential Bayesian Neural Nets」(https://arxiv.org/abs/1912.00796において入手可能であり、参照により本明細書に組み込まれる)においては、SDEに基づいて時系列予測を行うためのトレーニング可能なモデルが説明されている。SDEのドリフト成分及び拡散成分は、どちらもベイズニューラルネットワークとしてモデル化されている。それらの重みの事後は、確率的勾配ランジュバンダイナミクスを使用して推論される。
残念ながら、SDEに基づく既存のトレーニング可能な予測モデルには、いくつかの欠点がある。実際に適用した場合、既存のモデルは十分に正確でないことが多く、対象のコンピュータ制御システムを効果的に制御又は監視することが困難になる。そのうえさらに、ある程度の精度を達成するためには、多くの場合、大量のトレーニングデータが必要になる。トレーニングデータは、典型的には実際の測定値に基づいているため、多くの場合、費用がかかるか、取得が困難である。また、トレーニング効率も、例えば、多くの用途においては、既存モデルが収束するまでに時間がかかったり、全く収束しなかったりする場合があるために、問題である。最終的な欠点は、既存のトレーニング可能なSDEモデルが、典型的には、説明性をほとんど提供せず又は全く提供しないブラックボックスモデルであることであり、従って、予測がどのように決定されたかに関する見通しをほとんど提供せず、そのようなモデルのデバッグを困難にさせ、結果の信頼を妨げることである。
A. Lookらによる「Differential Bayesian Neural Nets」(https://arxiv.org/abs/1912.00796において入手可能であり、参照により本明細書に組み込まれる)
発明の概要
物理量をより正確に予測することができ、より少ない測定値に基づいてより効率的にトレーニングすることができる、及び/又は、モデルがその予測にどのように到達したかに関するより多くの見通しを提供する、トレーニング可能な予測モデルを持つことが望ましい。
本発明の第1の態様によれば、請求項1及び13によってそれぞれ特定されるように、コンピュータ制御システムの時系列予測を行うためのモデルをトレーニングするための対応するコンピュータ実装方法及び対応するシステムが提供される。本発明の他の態様によれば、請求項8及び14によってそれぞれ特定されるように、コンピュータ制御システムの時系列予測を行うためにトレーニングされたモデルを使用するためのコンピュータ実装方法及び対応するシステムが提供される。本発明の一態様によれば、請求項15に特定されるように、コンピュータ可読媒体が提供される。
種々の態様は、コンピュータ制御システムの時系列予測を行うことに関する。そのような予測は、変数のセットに関して表されるものとしてよく、時折本明細書においては観測変数と称されることもある。モデルは、これらの観測変数の時系列観測値のセットに基づいてトレーニングされるものとしてもよい。一般に、観測変数は、コンピュータ制御システムの1つ以上の物理量を表し得る。例えば、ロボットアームの状態は、角度、角速度、関節位置などとして表され得る。代替的又は付加的に、観測変数は、コンピュータ制御システムの環境の物理量を表す場合がある。例えば、自律型車両の操舵ダイナミクスは、この自律型車両に取り付けられて当該車両前方の道路に配向されたビデオカメラから学習されるものとしてよい。
時系列予測を行うために、確率微分方程式(SDE)が使用される。SDEは、SDE変数のセットに関して定義される。SDE変数は、観測変数のセットに対応する場合があり、従って、コンピュータ制御システム及び/又はその環境の物理量の(直接的又は間接的)測定値を表す場合がある。以下においてより詳細に説明するように、SDE変数は、観測モデルを介した測定に関連付けることも可能であり、その場合、SDE変数自体が物理量の測定値を表す場合とそうでない場合とがある。
一般に、SDEは、確率過程を含む微分方程式である。SDEは、ドリフト成分及び拡散成分を含む。確率過程は、拡散成分によって、典型的には、拡散成分とノイズ変数との積として定義され、多くの場合、ブラウン運動又はウィーナー過程の導関数である。確率過程を形成しないSDEの残余の部分は、ドリフト成分と称される。このドリフト成分は、システムの決定論的ダイナミクスをモデル化するものとみなされるものとしてよく、一方、拡散成分は、システムの確率性をモデル化するものとみなされるものとしてよい。例えば、常微分方程式(ODE)と比較した、時系列予測を行うためにSDEを使用する利点の1つは、SDEが確率性を示すシステムをより正確にモデル化させ得ることにある。SDEは、所与の予測の不確実性の推定を提供することもできる。これは、例えば、ロボット工学において、ロボットを操縦するときの安全マージンを維持するためなどの多くの実用的な用途にとって重要である。
興味深いことに、種々の実施形態においては、SDEのドリフト成分がトレーニング可能な部分と、事前定義された部分とを含むモデルが使用される。事前定義された部分は、トレーニングするための入力として受信されるものとしてよい。ドリフト成分の事前定義された部分は、トレーニングを改善し、それによって、結果のモデルを改善するために使用することができるコンピュータ制御システムに関するドメイン知識を表す場合がある。例えば、事前定義されたドリフト部分は、例えば、物理学から導出された又はコンピュータ制御システムの現象論的モデルに基づいた常微分方程式として提供することができる。多くの実際的な状況においては、そのようなドメイン知識、例えば、コンピュータ制御システムの粗い及び/又は不完全な記述が入手可能な場合がある。例えば、3次元ボリュームダイナミクスは、重心などの単一の点を通るフローとしてモデル化されるものとしてもよい。他の例として、システム成分のサブセット上のモデルが提供される場合もある。ある時点におけるSDEを評価するために、ドリフト成分の事前定義された部分rとトレーニング可能な部分fとの両方が評価され、次いで、組み合わせられて(例えば、加算されて)総ドリフトにされるものとしてよい。
一般に、ドメイン知識の幅広いタイプをこの方法によりトレーニング可能なSDEに統合することができ、例えば、本明細書において紹介する技法は、いくつかの特定のタイプのハードコーディングされたダイナミクスに限定されるものではなく、実行時に提供される種々のタイプの事前定義されたドリフト部分において機能し得る。
モデルをトレーニングする場合、最初に、ドリフト成分の事前定義された部分rが入力として受信され、次いで、少なくともドリフト成分のトレーニング可能な部分fを含むモデルの他の部分がこの事前定義された部分を使用してトレーニングされるものとしてよい。これらの他の部分の最適化の間、ドリフト成分の事前定義された部分は、典型的には一定のまま残存させられる。これは、事前定義された部分が、トレーニング中にトレーニングされるパラメータによってパラメータ化されないことを意味する。特に、コンピュータ制御システム及び/又はその環境の時系列観測値のトレーニングセットが与えられると、モデルは、時系列予測を行うためにモデルを使用し、予測を観測値と比較することによってトレーニング信号を導出し、このトレーニング信号に基づいてドリフト成分のトレーニング可能な部分のパラメータのセットを調整することによってトレーニングされるものとしてよい。他のパラメータが調整されるものとしてもよい。例えば、対象のコンピュータ制御システムに存在する確率的ノイズに動的に適合させるために、拡散成分がトレーニング可能であるものとしてもよい。時系列予測を行うために、ドリフト成分の事前定義された部分及びトレーニング可能な部分を評価し、結果を組み合わせて総ドリフトにしてもよい。従って、ドリフト成分のトレーニング可能な部分は、SDE用の最適な総ドリフトを提供するために、ドリフト成分の事前定義された部分のドリフト寄与と最良に組み合わせられたドリフト寄与を提供するように最適化されるものとしてよい。
同様に、コンピュータ制御システムの時系列予測を行うためにトレーニングされたモデルを適用することは、先行時点におけるSDE変数のセットの値に基づいて現時点におけるSDE変数のセットの値を予測するためにSDEを使用することを含み得る。この一部として、ドリフト成分のトレーニングされた部分と、ドリフト成分の事前定義された部分とによって提供されるドリフトは、組み合わせられて総ドリフトにするものとしてよい。従って、使用中も、最適な総ドリフトを取得するために、ドリフト成分の事前定義された部分のドリフトへの寄与を、ドリフト成分のトレーニングされた部分の最適な(例えば、最適化された)寄与と組み合わせるものとしてもよい。時系列予測を使用することにより、コンピュータ制御システムを制御及び/又は監視するものとしてもよい。
多くの状況において、事前定義された部分をSDEのドリフト成分に含めることにより、より簡単にトレーニング可能なモデルにつながり、及び/又は、より正確な予測が提供される。事実上、ドリフトモデルのトレーニング可能な部分は、事前定義された部分によって提供される値からの偏差を計算するだけで済み、これは、ドリフト成分全体を計算するよりも簡単な学習タスクである。特に、事前定義された部分が含まれているため、SDEによって提供されるダイナミクスの初期推定は、事前定義された部分が含まれていない場合よりも正確であり得る。これは、典型的には、より高速な収束と、より良好な最適化とにつながる。また、所与のモデル精度を達成するために必要なトレーニングデータも少なくて済み、従って、測定値も少なくて済む。
他の利点は、確率的勾配降下法のような最適化技法に十分に適するように選択されたドリフト成分のトレーニング可能な部分、例えば、ニューラルネットワークタイプのアーキテクチャを持つトレーニング可能な部分を、対象のコンピュータ制御システムをモデル化するために適した任意の手法により、例えば、閉形式又は外部モデル(例えば、Simulink)として記述される事前定義された部分と組み合わせることができることである。例えば、事前定義された部分は、効率的に計算可能な導関数を持たない場合がある。トレーニングに十分に適したトレーニング可能な部分と、コンピュータ制御システムのモデル化に十分に適した事前定義された部分とを使用することも、例えば、ドリフトを計算するためにニューラルネットワークだけを使用した場合よりも多くの精度と良好なトレーニングパフォーマンスとを達成するために役立つ。
事前定義された部分を使用する他の利点は、説明性が向上したモデルにつながることである。モデルには事前定義された部分が含まれているため、その出力は、モデルが提供するドリフトに基づいているものと理解することもできる。トレーニング可能な部分の寄与は、例えば、事前定義された部分として使用される、例えば、物理的に動機付けられたモデルからの偏差を表すブラックボックスモデルとみなされるものとしてよい。
論じたように、提示された技法の代替的手段は、(例えば、ドメインの専門家によって定式化されたものとして)微分方程式系をマニュアルで定義することによって動的環境をモデル化することである。この手法により物理現象の明確な規則性をモデル化することは可能であるが、実際には、それらの挙動に優れたシミュレートを行うことは困難である。経験的には、合理的な労力と専門知識とでパレートフロンティアに到達するには、単純な関係の変数の比較的小さいセットを持たせるだけで十分であることが示された。ただし、モデルをこのフロンティアを超えて忠実度の高い方向に押し出すには、専門家の長い専念時間を必要とし、又は、大量の計算リソースを必要とする。興味深いことに、より正確なシミュレーションは、提示された技法を使用することにより可能になる。また、物理的に動機付けられたモデルも、多くの場合、脆弱な数値的挙動を示す。本発明者らは、提示された技法に従ってトレーニングされたモデルが、よりゆとりのあるそれらの計算特性のために、計算の強健性を高めることができることを観測した。
興味深いことに、本発明者らは、これらの利点を達成するために、ドリフト成分の事前定義された部分がそれ自体で非常に正確であり又は完全である必要がないことを発見した。例えば、SDEの変数のサブセットのみをモデル化する事前定義された部分を使用することが可能である。あるいは、コンピュータ制御システムの非常に簡素化されたモデル、例えば、線形化されたモデル、又は、領域若しくはボリュームが単一点においてモデル化されたモデルなどを事前定義された部分として使用することも可能である。以下においては、これを実証するいくつかの実用例を示す。事前定義されたドリフト成分が実際のドリフトとある程度相関する値を提供する限りは(例えば、コンピュータ制御システムの決定論的ダイナミクス)、事前定義されたドリフト成分をトレーニング可能なSDEに含めることは、典型的には、より正確なモデル及び/又はより簡単にトレーニング可能なモデルにつながる。
任意選択的に、ドリフト成分のトレーニング可能な部分及び拡散成分は、ベイズモデルであるものとしてよい。例えば、拡散成分は、同一のトレーニング信号に基づいて、ドリフト成分のトレーニング可能な部分に沿ってトレーニングすることができる。SDE内においてベイズモデル(例えば、ベイズニューラルネットワークなど)を使用することにより、予測の不確実性を表し、それによって、十分に較正された予測の不確実性を得ることが可能になる。例えば、本発明者らは、ベイズニューラルネットワークの使用が、SDEにおいて常用のニューラルネットワークを使用する場合に比較してはるかに正確な不確実性スコアを提供することができることを発見した。
任意選択的に、モデルは、SDEの変数のセットと観測変数のセットとの間のマッピングを提供する観測モデルをさらに含み得る。このモデルは、観測変数に関して時系列予測を決定することができ、また、トレーニング観測は、観測変数のセットについての値に関して表されるものとしてもよい。SDE変数のセットは、観測変数のサブセットであるものとしてよく、あるいは、観測変数のセットは、SDE変数の(典型的にはより小さい)セットに投影されるものとしてよい。これは、より効率的でより良好にトレーニング可能なモデルにつながり、それゆえ、より正確なモデルにつながり得る。時系列予測を決定するために、SDE変数のための値は、SDEに従って予測されるものとしてよく、次いで、SDE変数のためのこれらの値は、観測変数の値を予測するための観測モデルによって使用されるものとしてよい。
観測モデルをトレーニング可能にすることも可能であり、例えば、ドリフト成分のトレーニング可能な部分及び/又は拡散成分に沿ってトレーニングすることも可能である。このようにして、観測変数とSDE変数との間のマッピング及びそれに応じた観測変数に関するドリフト成分の事前定義された部分の解釈も、対象のコンピュータ制御システムに対して動的に調整することができる。例えば、事前定義されたドリフト成分及び初期観測モデルは、提示のものと同様にコンピュータ制御システムからの測定値に基づいて入手可能であるものとしてよい。ただし、事前定義されたドリフト成分は、提示のコンピュータ制御システムに対して十分に較正されていない場合もある。トレーニング可能な観測モデルを持つことは、事前定義されたドリフト成分が定義されているSDE変数に測定値がマッピングされる方法を動的に調整することにより、この較正の不一致の補償を可能にさせる。例えば、同一のSDE変数及び観測変数のセットを使用し、最初に恒等関数に設定され、事前定義されたドリフト成分を提示のコンピュータ制御システムに効果的に較正するようにトレーニングされた観測モデルを使用することは、有益である可能性がある。
任意選択的に、ノイズモデルは、所与の観測値のノイズのある測定が行われる確率を定義することに使用されるものとしてよい。例えば、ノイズモデルは、SDE変数に関して定義されるものとしてもよいし、使用する場合には、観測モデルの観測変数に関して定義されるものとしてもよい。時系列予測が決定されたトレーニングにおいては、ノイズモデルは、選択された観測値の測定値が、決定された予測、例えば、対数尤度に従って観測される尤度を決定するために使用されるものとしてよい。使用中に時系列予測を行うことは、ノイズのある測定値を予測するためのノイズモデルを適用することを任意選択的に含み得る。従って、ノイズモデルは、測定誤差の正確なモデリングを可能にさせることができる。
拡散成分のトレーニング可能な部分のパラメータなど、モデルのパラメータを推論する1つの手法は、事後推論を適用することである。特に、時系列予測は、ドリフト及び拡散モデルの変数の事後分布に基づいて行われるものとしてよい。この事後分布は、例えば、変分推論又はマルコフ連鎖モンテカルロ(MCMC)を使用して近似することができる。
しかしながら、興味深いことに、本発明者らは、事後推論の代わりにモデル選択を適用することによって結果を改善し得ることに気付いた。従って、モデルは、最尤推定を実行することにより、観測値のセットに基づいてトレーニングされるものとしてよい。確率的設定においては、これは、トレーニングすべきパラメータ(例えば、それが使用されている場合ベイズニューラルネットワークのパラメータ、ノイズ/観測モデルが使用されている場合は、SDE変数の値、ノイズモデルが使用されている場合は観測変数の値)とは別に、潜在的な(例えば、中間の)変数を周辺化することを意味し、トレーニングすべきパラメータについての周辺尤度を最大化することを意味する。最尤推定は、例えば、上記のように、測定値がノイズモデルに従って観測される尤度(例えば、対数尤度)に基づき得る。少なくともドリフト成分のトレーニング可能な部分にモデル選択及びベイズモデルを適用することの組合せは、本明細書においては「経験的ベイズ」法と称する。
事後推論の代わりにモデル選択を適用することは、いくつかの理由により有利である。マルコフ連鎖モンテカルロを適用する場合と比較して、推定量の分散が大きくなるベイズモデルのパラメータなどのグローバルな潜在変数を直接サンプリングすることは回避される。変分推論と比較して、遷移密度の閉形式の計算を保証するために、事後の単純化する仮定を行うこと、又は、モンテカルロサンプリングによる第2の近似を導入することは回避される。一般に、事後推論と比較して、モデル選択は、例えば、最初にモデルパラメータの事後分布を推測し、次いで、事後予測分布を計算する代わりに、周辺予測分布を効果的に直接モデル化する。これは、計算がより効率的であり、実行可能でありながら、途中で行う必要のある単純化する仮定が少なくて済むことを意味する。例えば、グローバルなモデルパラメータによりマルコフ連鎖を構築する必要はない。また、トレーニングの安定性が向上する。
任意選択的に、トレーニング効率をさらに改善するために、ドリフト成分のトレーニング可能な部分は、パラメータフリー確率変数の値をサンプリングし、これらのサンプリングされた値に基づいてトレーニング可能な部分を決定論的に評価することによって評価されるものとしてもよい。これは、モデルを使用するときにも同様に実行される。例えば、勾配に基づく最適化を使用する場合、これにより、例えばニューラルネットワークの場合は非常に多くなる可能性があるドリフト成分のトレーニング可能な部分のパラメータに勾配が渡されることが回避される。特に、ドリフト成分のトレーニング可能な部分は、トレーニング可能な部分のノードの線形活性化の統計パラメータを決定し、統計パラメータ及び確率変数の値に基づいてこの線形活性化を決定論的に計算することにより、サンプリングされた値に基づいて評価されるものとしてよい。これは、周辺尤度の分散における特に大幅な減少につながり、従って、特に高速な最適化の収束につながる。
任意選択的に、トレーニング信号を導出するステップのときに、トレーニング可能なドリフト成分を含むモデルと、トレーニング可能なドリフト成分を含まないモデルとの間の差分を最小化するために正則化項を評価することができる。従って、モデルは、トレーニング中に事前定義されたドリフト成分の近傍にとどまるように促されるものとしてもよく、従って、過剰適合の低減と、不可視データへのより良好な一般化とが期待される。そのような過剰適合は、正則化項が高い複雑さにペナルティを課すため防止され、例えば、モデルは、可能な限り簡素なデータの説明に向けられる。
興味深いことに、本発明者らは、正則化項として、トレーニング可能なドリフト成分を含むモデルとトレーニング可能なドリフト成分を含まないモデルの予測における事後分布間のカルバック・ライブラ(KL)発散を使用することが特に有益であることを示すことができた。本発明者らは、SDEにおいて使用されるモデルがベイズモデルである場合に、非ベイズモデルの発散を各ベイズモデルのパラメータの事前分布と事後分布との間の発散と組み合わせることによって、このKL発散を決定することができることを発見した。本発明者らは、対数尤度損失及びこの特定のカルバック・ライブラ発散を含む損失項に勾配に基づく最適化を適用することにより、PAC(おそらく近似的には正確な)バウンドが保持されることを示し得るトレーニング手順が取得されることを示すことができた。そのようなPACバウンドは、学習能力上の強力な数学的保証の導出を可能にし、従って、PACバウンドは、トレーニングされたモデルの高い汎化性を数学的に保証する。SDEのベイズモデルと組み合わせた正則化項についてのこの特定の選択は、「経験的PACベイズ」トレーニング法と称される。
任意選択的に、第1のドリフトの値と第2のドリフトの対応する値とを重み値に従って組み合わせることによって、第1のドリフトと第2のドリフトとを組み合わせることができる。重み値は、前記組合せにおけるドリフト成分の事前定義された部分の重みを示すことができる。異なる重み値は、異なる値について定義されるものとしてよい。重み値は、例えば、特定のSDE変数のドリフト成分の事前定義された部分の寄与を完全に又は部分的にブロックするように事前定義することができる。興味深いことに、重み値は、トレーニングの一部としてトレーニングすることもできる。このようにして、ドリフト成分の事前定義された部分とトレーニング可能な部分とをどのように最適に組み合わせるかを動的に学習することができる。例えば、事前定義されたドリフト成分のいくつかの部分は、他の部分よりもさらに正確である可能性があり、従って、総ドリフトにより強く寄与し得る重み値を受け取るものとしてよい。トレーニング可能な重みを持つことにより、トレーニング中に行われた予測を、最初は事前定義された部分に強く依存することから、少なくとも一部の値については、後にもはや不要になったときに事前定義された部分にあまり依存しない方向に移行させることもできるようになる。
任意選択的に、ドリフト成分の事前定義された部分は、トレーニングの前に、パラメータ化された微分方程式を観測値のセットに適合させることによって決定されるものとしてよい。例えば、ドメイン知識に基づいて、ドメインの専門家は、微分方程式、例えば、SDE変数のセットの常微分方程式を定式化することができる。同様に、コンピュータ制御システム又はその一部を例えば現象論的モデルの形態において記述するパラメータ化された常微分方程式が既知の場合もある。そのような微分方程式は、コンピュータ制御システムが適用される場合がある種々の状況に適合し得るようにパラメータ化されるものとしてよい。トレーニング観測に基づいて微分方程式をインスタンス化することにより、対象のデータに十分に適合したドリフト成分の事前定義された部分が取得される場合もある。それにもかかわらず、ドリフト成分のトレーニング可能な部分をトレーニングしている間、ドリフト成分の事前定義された部分は、固定的に維持される。従って、例えば、微分方程式を適合化するための従来技法を、ドリフト成分の事前定義された部分の決定のために使用することができ、その一方で、トレーニング可能な部分は、機械学習可能なSDEの設定により適したモデル、例えば、最適化に基づく学習を可能にさせるモデル、及び/又は、不確実性の推定値を提供し得るモデルを使用することができる。
本明細書に記載されるように行われた時系列予測に基づいて、コンピュータ制御システムを制御及び/又は監視するために使用し得る出力データを生成することができる。この出力データは、時系列予測自体にすることができる。出力データは、また、時系列予測の不確実性、例えば、時間ステップごとの不確実性又はグローバルな不確実性を含み又はそれらに基づくことができる。例えば、そのような不確実性は、SDE変数の同一の初期セットに基づいて、複数の(例えば、少なくとも20又は少なくとも100の)時系列予測をサンプリングすることから導出されるものとしてもよい。例えば、これらの複数の時系列予測を視覚化することによって、例えば、1つ以上のSDE及び/又は観測変数の時系列をプロットすることによって、不確実性を視覚化することも可能である。出力データは、出力インタフェースを介して、コンピュータ制御システムの制御又は監視に使用される出力デバイスに提供されるものとしてよい。
任意選択的に、出力デバイスは、コンピュータ制御されたシステムに関連付けられたアクチュエータであり、プロセッササブシステムは、決定された時系列予測に基づく制御データをアクチュエータに提供することによってコンピュータ制御システムを制御するように構成されている。例えば、アクチュエータは、自律型又は半自律型車両などの車両、ロボット、製造機械、建造物などを制御するために使用されるものとしてよい。
任意選択的に、トレーニングされたモデルは、コンピュータ制御システムの環境の時系列予測を提供する環境モデルとして機能することにより、コンピュータ制御システムをトレーニングするために使用することができる。従って、環境との相互作用をシミュレートすることができ、それに基づいて、コンピュータ制御システムを、例えば、モデルに基づく強化学習からそれ自体公知の技術を使用してトレーニングすることができる。このようにして、コンピュータ制御システムをトレーニングするために必要とされる場合がある環境の相互作用が少ないものとするとよい。例えば、コンピュータ制御システムは、ロボットアームであるものとしてもよく、そこでは、環境モデルが、ロボットアームの(例えば、関節位置の)動作への特定のアクション(例えば、供給トルク)を実行する効果を予測するために使用されるものとしてよい。
提供される技術の特定の適用領域は、(半)自律型車両の制御システム内にある。モデルは、車両の機械部品の時系列予測を行うように構成されるものとしてよい。多くの場合、SDE変数は、観測変数と一致するように選択することができる。一般に、モデルによって提供される時系列予測は、車両の性能を監視するために(例えば、排出量が過度に多いことを警告するために)使用することができ、又は、車両を(例えば、排出量を低減するための運転パラメータを適合化することによって、過剰な煤を除去するための酸素バーストを活性化することによって、又は、水素モータの充填を制御することによって)制御するために使用することができる。
一例においては、車両の機械的部品は、車両の排気ガス処理部品、例えば、選択的触媒還元(SCR)、三元触媒(TWC)又はディーゼル酸化触媒(DOC)であり得る。観測変数は、この場合、圧力、温度(部品の上流側及び/又は下流側)、放出量(部品の上流側及び/又は下流側)、及び、部品への入力量(例えば、SCR触媒の場合のNH調量)のうちの1つ以上を含み得る。例えば、モデルは、予測される排出量を決定するために、例えば、運転パラメータを調整するために使用することができる。この文脈において、この事前定義されたドリフト成分として用いることができる種々のモデルが、例えば、ETAS ASCMOモデルが入手可能である。
他の例においては、車両の機械的部品は、水素モータの複数の燃料電池のスタックであり得る。このモデルは、化学反応エネルギーを燃料電池に蓄積するダイナミクスを捕捉することができる。この場合の観測変数は、圧力、温度、湿度及び電気負荷(例えば、電圧として表される生成トルク)のうちの1つ以上を含み得る。実際には、セルの数は多くすることができ、例えば、少なくとも100又は少なくとも1000にすることができる。これは、他の適用例であり、ここでは、目下粗い動的モデルのみが入手可能であり、従って、その精度は、提供された技法によって向上させることができる。この提供された技法は、そのようなモデルを、新たな設定に動的に較正し較正労力を軽減することも可能である。
さらに他の例においては、車両の機械的部品は、パティキュレートフィルタ、例えば、ガソリンパティキュレートフィルタ(GPF)であり得る。この観測変数は、エンジン圧力、質量流量、煤の質量、及び、煤粒子の数のうちの1つ以上を含む。現在、パティキュレートフィルタは、リアルタイム用途についての予測が法外となる高い計算コストのシミュレータを用いて中程度から高程度の忠実度でモデル化することが可能である。煤の質量の直接測定は費用がかかる。本発明による技法のための事前定義されたドリフトとしてそのようなシミュレータの低いバージョンモデルを使用することにより、安価でスケーラブルな手法の予測取得が達成され、その予測は、車両のエンジン制御ユニットによって使用することができる。例えば、煤の質量が閾値を超えると予測される場合、酸素バーストなどの洗浄動作を活性化又は通知することができる。
本発明の2つ以上の上記した実施形態、実装形態及び/又は任意の態様は、有用とみなされる任意の手法により組み合わせるものとしてよいことが当業者には理解される。対応するコンピュータ実装方法の説明された修正及び変形形態に対応する、任意のシステム及び/又は任意のコンピュータ可読媒体の修正及び変形形態は、本発明の説明に基づいて当業者によって実行可能である。
本発明のこれらの態様及びその他の態様は、以下の明細書に例示的に記載される実施形態を参照して及び添付の図面を参照して明らかとなり、さらに解明される。
時系列予測を行うためのモデルをトレーニングするためのシステムを示した図である。 トレーニングされたモデルを使用するためのシステムを示した図である。 トレーニング可能なモデルの詳細な例を示した図である。 観測に基づいてモデルをトレーニングする詳細な例を示した図である。 (半)自律型車両の一部としてトレーニングされたモデルを使用するためのシステムを示した図である。 観測値のセットに基づいてコンピュータ制御システムの時系列予測を行うためのモデルをトレーニングするコンピュータ実装方法を示した図である。 コンピュータ制御システムの時系列予測を行うためにトレーニングされたモデルを使用するコンピュータ実装方法を示した図である。 データを含むコンピュータ可読媒体を示した図である。
これらの図面は、純粋に図式であり、縮尺通りに描写されていない点に留意されたい。図面中において、既に説明した要素に対応する要素は、同一の参照番号を有し得る。
実施例の詳細な説明
図1は、コンピュータ制御システム及び/又はその環境の観測値のセットに基づいて、コンピュータ制御システムの時系列予測を行うためのモデルをトレーニングするためのシステム100を示している。このモデルは、SDE変数のセットの確率微分方程式(SDE)を使用することができる。SDEは、ドリフト成分及び拡散成分を含み得る。
システム100は、データ通信121を介して内部通信することができるデータインタフェース120と、プロセッササブシステム140と、を含み得る。データインタフェース120は、モデルを定義するモデルデータ040にアクセスするためのものであってよい。モデルデータは、少なくともSDEのドリフト成分のトレーニング可能な部分のパラメータのセットを含み得る。図に示されるように、データインタフェース120は、任意選択的に、コンピュータ制御システムの観測値のセット030にアクセスするためのものであってもよい。モデルデータ040は、例えば、図2のシステム200により、本明細書に記載の方法に従って、コンピュータ制御システムの時系列予測を行うときに使用されるためのものであってよい。
このプロセッササブシステム140は、システム100の動作中に、データインタフェース120を使用して、データ030,040にアクセスするように構成されるものとしてよい。例えば、図1に示されるように、データインタフェース120は、前記データ030,040を含み得る外部データストレージ021へのアクセス122を提供することができる。代替的に、データ030,040は、システム100の一部である内部データストレージからアクセスされるものとしてもよい。代替的に、データ030,040は、ネットワークを介して他のエンティティから受信されるものとしてもよい。一般に、データインタフェース120は、ローカル又はワイドエリアネットワーク、例えば、インタネットへのネットワークインタフェース、内部又は外部データストレージなどへのストレージインタフェースなど、種々の形態を取ることができる。データストレージ021は、既知の適当な任意の形態を取ることができる。
プロセッササブシステム140は、システム100の動作中に、データインタフェース120を使用して、トレーニング入力として、SDEのドリフト成分の事前定義された部分を受信するように構成されるものとしてよい。ドリフト成分の事前定義された部分は、モデルデータ040に含まれ、モデルをトレーニングするための命令にハードコーディングされ、ユーザなどによって特定されるものとしてよい。プロセッササブシステム140は、さらに、コンピュータ制御システムの観測値のセット030を取得することができる。観測値は、コンピュータ制御システム及び/又はその環境の時系列の測定値を含み得る。図においては、これらの観測値は、データインタフェース120を介してアクセスされるが、これは必須ではなく、例えば観測値は、例えば、図2に関連して論じるようにセンサインタフェースを介して取得されるものとしてもよい。
プロセッササブシステム140は、観測値のセットに基づいてモデルをさらにトレーニングすることができる。モデルをトレーニングするために、プロセッササブシステム140は、時系列予測を行うためのモデルを使用する。これは、先行時点におけるSDE変数のセットの値に基づいて、現時点におけるSDE変数のセットの値を予測するステップのためにSDEを使用することを含み得、これは、第1のドリフトを得るためにドリフト成分の事前定義された部分を評価するステップと、第1のドリフトを、ドリフト成分のトレーニング可能な部分の評価によって取得された第2のドリフトと組み合わせるステップと、を含み得る。トレーニングは、時系列予測を観測値のセットの観測値と比較することによってトレーニング信号を導出するステップと、トレーニング信号に基づいて少なくともドリフト成分のトレーニング可能な部分のパラメータのセットを調整するステップと、をさらに含み得る。
システム100は、学習された(又は「トレーニングされた」)モデルを表すトレーニングされたモデルデータを出力するための出力インタフェースをさらに含み得る。例えば、図1にも示されているように、この出力インタフェースは、データインタフェース120によって構成されるものとしてもよく、前記インタフェースは、これらの実施形態においては、それを介してトレーニングされたモデルデータ040がデータストレージ021に格納され得る入力/出力(「IO」)インタフェースである。例えば、「トレーニングされていない」モデルを定義するモデルデータ040は、トレーニング中又はトレーニング後に、少なくとも部分的に、トレーニングされたモデルのモデルデータによって置き換えられるものとしてよく、ここで、ニューラルネットワークの重みや他のタイプのパラメータなどのモデルのパラメータは、トレーニングがトレーニングデータ030に反映されるように適合化されるものとしてよい。他の実施形態においては、トレーニングされたモデルデータは、「トレーニングされていない」動的モデルを定義するモデルデータ194とは別個に格納されるものとしてよい。いくつかの実施形態においては、出力インタフェースは、データインタフェース120とは別個であるものとしてよいが、一般に、データストレージインタフェース120について上記で説明されたタイプのものであってよい。
システム100の動作の種々の詳細及び態様は、それらの動作態様を含めて図3及び図4を参照してさらに解明される。
一般に、システム100は、ワークステーション、例えばラップトップ若しくはデスクトップに基づく、又は、サーバなどの単一のデバイス若しくは装置として実装されるものとしてもよいし若しくはその内部に実装されるものとしてもよい。このデバイス又は装置は、適当なソフトウェアを実行する1つ以上のマイクロプロセッサを含み得る。例えば、プロセッササブシステムは、単一の中央処理ユニット(CPU)又はグラフィカル処理ユニット(GPU)によって実装されるものとしてよいが、そのようなCPU、GPU及び/又は他のタイプの処理ユニットの組合せ又はシステムによって実装されるものとしてもよい。ソフトウェアは、対応するメモリに、例えば、RAMなどの揮発性メモリ又はフラッシュなどの不揮発性メモリにダウンロード及び/又は格納されたものであってもよい。代替的に、システムの機能ユニット、例えばデータインタフェース又はプロセッササブシステムが、例えば、フィールドプログラマブルゲートアレイなどのプログラマブルロジックの形態においてデバイス又は装置に実装されるものとしてもよい。一般に、システムの各機能ユニットは、回路の形態において実装されるものとしてよい。システム100は、例えばクラウドコンピューティングの形態において、例えば、異なるデバイスや装置を含む分散型サーバのように分散されるように実装されるものとしてもよい。
図2は、コンピュータ制御システムを制御及び/又は監視するためにコンピュータ制御システムの時系列予測を行うためのトレーニングされたモデルを使用するためのシステム200を示している。このモデルは、SDE変数のセットの確率微分方程式(SDE)を使用することができる。SDEは、ドリフト成分及び拡散成分を含み得る。
システム200は、データ通信221を介して内部通信することができるデータインタフェース220と、プロセッササブシステム240と、を含み得る。データインタフェース220は、モデルを定義するモデルデータ040にアクセスするためのものであってよい。モデルデータは、少なくともSDEのドリフト成分のトレーニング可能な部分のパラメータのセットを含み得る。モデルデータ040は、さらに、SDEのドリフト成分の事前定義された部分を定義することができる。モデルは、例えば、図1のシステム100により、本明細書に記載されるようなトレーニング方法に従ってトレーニングされるものとしてよい。システム200は、モデルを適用することに加えて、モデルをトレーニングするように構成されるものとしてもよく、例えば、システム200は、図1のシステム100と組み合わせるものとしてもよい。
プロセッササブシステム240は、システム200の動作中に、データインタフェース220を使用して、データ040にアクセスするように構成されるものとしてよい。例えば、図2に示されるように、データインタフェース220は、前記データ040を含み得る外部データストレージ022へのアクセス222を提供することができる。代替的に、データ040は、システム200の一部である内部データストレージからアクセスされるものとしてもよい。代替的に、データ040は、ネットワークを介して他のエンティティから受信されるものとしてもよい。一般に、データインタフェース220は、ローカル又はワイドエリアネットワーク、例えば、インタネットへのネットワークインタフェース、内部又は外部データストレージなどへのストレージインタフェースなど、種々の形態を取ることができる。データストレージ022は、既知の適当な任意の形態を取ることができる。
プロセッササブシステム240は、システム200の動作中に、データインタフェース220を使用して、コンピュータ制御システム及び/又はその環境の測定値を表すセンサデータを取得するように構成されるものとしてよい。多くの場合、センサデータは、以下において説明するように1つ以上のセンサから取得される。プロセッササブシステム240は、測定値に基づいてコンピュータ制御システムの時系列予測を決定するように構成されるものとしてよい。時系列予測を決定するために、プロセッササブシステム240は、先行時点におけるSDE変数のセットの値に基づいて、現時点におけるSDE変数のセットの値を予測するステップのためにSDEを使用することができ、これは、第1のドリフトを得るためにドリフト成分の事前定義された部分を評価するステップと、第1のドリフトを、ドリフト成分のトレーニング可能な部分の評価によって取得された第2のドリフトと組み合わせるステップと、を含み得る。プロセッササブシステム240は、コンピュータ制御システムを制御及び/又は監視する際に使用するために、決定された時系列予測に基づいて出力データを生成するように構成されるものとしてもよい。
図2は、システム200の種々の任意選択的な部品をさらに示している。例えば、いくつかの実施形態においては、システム200は、環境082内のセンサ072によって取得されたセンサデータ224に直接アクセスするためのセンサインタフェース260を含み得る。このセンサインタフェース260は、データ通信223を介してプロセッササブシステム240と内部通信することができる。センサ072は、システム200の一部であり得るが、必ずしもそうである必要はない。センサ072は、画像センサ、ライダセンサ、レーダセンサ、圧力センサ、含有温度センサなど任意の適当な形態を有し得る。いくつかの実施形態においては、センサデータ224は、異なる物理量を感知する2つ以上の異なるセンサから取得されるものとしてもよいことから、異なる物理量のセンサ測定値を表し得る。センサインタフェース260は、センサのタイプごとに対応し、例えば、I2C又はSPIデータ通信に基づく低レベル通信インタフェース又は上記のデータインタフェース220について説明したようなタイプのデータ記憶インタフェースを含むがこれらに限定されるものではない、任意の適当な形態を有し得る。
いくつかの実施形態においては、システム200は、環境082内のアクチュエータ092に制御データ226を提供するためのアクチュエータインタフェース280を含み得る。そのような制御データ226は、本明細書に記載されるように決定された時系列予測に基づいてアクチュエータ092を制御するためにプロセッササブシステム240によって生成されるものとしてよい。例えば、アクチュエータは、電気的、油圧式、空気圧式、熱式、磁気的及び/又は機械的アクチュエータであり得る。具体的であるが非限定的な例には、電気モータ、電気活性ポリマ、油圧シリンダ、圧電アクチュエータ、空気圧アクチュエータ、サーボ機構、ソレノイド、ステッピングモータなどが含まれる。そのようなタイプの制御は、図5を参照して(半)自律型車両について説明される。
(図2には示されていない)他の実施形態においては、システム200は、決定された時系列予測に基づいて生成され得る感覚的に知覚可能な出力信号を生成するために使用され得るディスプレイ、光源、スピーカ、振動モータなどのレンダリングデバイスへの出力インタフェースを含み得る。感覚的に知覚可能な出力信号は、時系列予測を直接示すものとしてもよいが、例えば、コンピュータ制御システムのガイダンス、ナビゲーション、又は、他のタイプの制御において使用するために導出された感覚的に知覚可能な出力信号を表すこともできる。アクチュエータは、システム200の一部であるものとしてもよいが、必ずしもそうである必要はない。
他のタイプの出力インタフェース及び出力デバイスも可能であり、例えば、出力インタフェースは、生成された出力データを出力デバイスによってもアクセス可能なストレージに出力するためのデータインタフェース120と同様の又はそれと組み合わせたデータインタフェースであるものとしてもよいし、通信インタフェース、例えばUSB若しくはIEEE1394などの直接的な通信インタフェース、又は、例えばWi-Fi若しくは4Gコネクタなどのネットワーク通信インタフェースであるものとしてもよい。例えば、システム200は、決定された時系列予測又はそこから導出されたデータを、決定された時系列予測に基づいて車両を制御又は監視するための他のシステム、例えば、それが一部である車両の他のサブシステムに提供することができる。
システム200の動作の種々の詳細及び態様は、それらの任意の態様も含めて図3乃至図4を参照してさらに解明される。
一般に、システム200は、ワークステーション、例えばラップトップ若しくはデスクトップに基づく、又は、サーバなどの単一のデバイス若しくは装置として実装されるものとしてもよいし又はその内部に実装されるものとしてもよい。このデバイスは、組み込みデバイスであるものとしてもよい。デバイス又は装置は、適当なソフトウェアを実行する1つ以上のマイクロプロセッサを含み得る。例えば、プロセッササブシステムは、単一の中央処理ユニット(CPU)又はグラフィカル処理ユニット(GPU)によって実装されるものとしてよいが、そのようなCPU、GPU及び/又は他のタイプの処理ユニットの組合せ又はシステムによっても実装されるものとしてもよい。特に、プロセッササブシステムは、1つ以上の組み込みプロセッサによって実装されるものとしてよい。ソフトウェアは、対応するメモリに、例えば、RAMなどの揮発性メモリ又はフラッシュなどの不揮発性メモリにダウンロード及び/又は格納されたものであってもよい。代替的に、システムの機能ユニット、例えば、データインタフェースやプロセッササブシステムが、例えば、フィールドプログラマブルゲートアレイ(FPGA)などのプログラマブルロジックの形態においてデバイス又は装置に実装されるものとしてもよい。一般に、システムの各機能ユニットは、回路の形態において実装されるものとしてよい。システム200は、例えばクラウドコンピューティングの形態において、例えば、異なるデバイスや装置を含む分散型サーバのように分散されるように実装されるものとしてもよい。いくつかの実施形態においては、システム200は、車両、ロボット又は同様の物理的実体の一部であるものとしてもよく、及び/又は、物理的実体を制御するように構成された制御システムを表すものとしてもよい。
図3は、コンピュータ制御システムの時系列予測を行うためのトレーニング可能なモデルの詳細であるが非限定的な例を示している。
このモデルは、SDE変数のセットの確率微分方程式又はSDEを使用する。本明細書全体を通して、Pは、SDE変数の数を表すために使用されている。SDE変数の数は、例えば、最大で若しくは少なくとも2、最大で若しくは少なくとも5、又は、最大で若しくは少なくとも10であり得る。
モデルは、トレーニング可能なパラメータのセットPAR,370によってパラメータ化される。モデルのトレーニング時にトレーニングされるパラメータの数は、例えば、最大で若しくは少なくとも1000、最大で若しくは少なくとも10000、又は、最大で若しくは少なくとも1000000であり得る。
具体的には、この図は、先行時点t-1における観測変数のセットの値OV-xt-1,301が与えられて、現時点tにおける観測変数のセットのノイズ値NOV-yt,361を予測するためにどのようにモデルを使用することができるかを示している。
要約すれば、この例においては、先行観測値OV-xt-1が、最初に演算ブロックObs’,310において、先行時点におけるSDE変数のセットの値SV-ht-1,311を決定するための観測値モデルに従って処理される。次いで、SDEが、現時点におけるSDE変数のセットの値SV-ht,341を予測するために使用される。この目的のために、SDEのドリフト成分の事前定義された部分PD-r,321が、第1のドリフトFDt,324を得るために評価される。SDEのドリフト成分のトレーニング可能な部分TD-f,322は、第2のドリフトSDt,325を得るために評価される。第1及び第2のドリフトFDt,SDtは、組合せ演算ブロックCmb,330において総ドリフトOD,331に組み合わせられる。次いで、この総ドリフトODと、SDEのトレーニング可能な拡散成分TDF-g,323によって計算された拡散DFt,326とが、予測演算ブロックPred,340において、SDE変数のセットの予測値SV-htの取得のために使用される。演算ブロックObs,350においては、現時点におけるSDE変数のセットの予測値SV-htに基づいて、現時点における観測変数のセットの値OV-xt,351を予測するために観測モデルが使用される。ノイズモデルNM,360は、最終的にノイズ測定値、例えば、現時点における観測変数のセットのノイズ値NOV-yt,361を予測するために使用される。
具体的な例として、図に示されているモデルは、以下の確率微分方程式系を使用して実装されるものとしてよい。
ここで、
は、ドリフト成分のトレーニング可能な部分TD-fであり、rξは、ドリフト成分の事前定義された部分PD-rであり、
は、組合せ演算CMBであり、
は、トレーニング可能な拡散成分TDF-gであり、pψ(x|h)は、観測モデルObsであり、
は、ノイズモデルNMであり、{t,…,t}は、観測値
が予測されるか測定値と比較される、潜在的に不規則な時点のセットである。
より詳細には、この図には、SDE変数のセットの値hが与えられて観測変数のセットの観測値xの確率pψ(χ|h)を定義する観測モデルObsが含まれている。観測値は、典型的には、D次元のベクトル
として表される。ここで、Dは、例えば、最大で若しくは少なくとも10、最大で若しくは少なくとも100、又は、最大で若しくは少なくとも1000であり得る。従って、観測変数の数は、SDE変数の数よりも1桁又は数桁大きくなる可能性がある。このようにして、SDEは、実質的にコンピュータ制御システムの状態の圧縮された表現により予測を実行し、トレーニングと使用の両方の効率を向上させることができる。ただし、これは必ずしも必要なことではなく、例えば、観測変数の数は、SDE変数の数と同一であるものとしてもよい。このようにして、例えば、事前定義されたドリフトモデルPD-rによって使用される観測値の表現を動的に調整し、それによって、事前定義されたドリフトモデルの使用を対象の観測に適合させるようにモデルを学習させることができる。SDE変数の第1のサブセットのための事前定義された観測モデル(例えば、一部又は全部の観測変数を選択するモデル)を、SDE変数の第2のサブセットのためのトレーニング可能な観測モデルと組み合わせることも可能である。
図に示されるように、観測モデルObsは、パラメータのセットPARからのパラメータψによってパラメータ化されるものとしてもよいが、これは必ずしも必要ではない。例えば、観測モデルは、固定であるものとしてもよいし(例えば、恒等式にセット)、マニュアルで定義されるものとしてもよい。
観測モデルObsは、いくつかの手法により実装することができる。例えば、観測モデルは、次のようなオートエンコーダ(例えば、変分自動エンコーダ)、即ち、演算ブロックObs’のエンコーダは、観測変数のセットのための値が与えられてSDE変数のセットのための値を決定し、演算ブロックObsのデコーダは、SDE変数のセットのための値が与えられて観測変数のセットの値を決定するオートエンコーダである。このオートエンコーダは、モデルの他の成分とエンドツーエンドでトレーニングすることができる。例えば、ニューラルネットワークを使用する、種々の既知のオートエンコーダアーキテクチャが適用されるものとしてもよい。一般に、観測モデルは、例えば、ニューラルネットワークによって、SDE変数のセットのための値hが与えられて観測変数のセットxのための確率分布を定義する関数を含み得る。演算ブロックObsにおいては、この関数は、例えば、最適化の実行により、所与の観測値に良好な近似を提供するSDE変数のための値を見出すことによって反転可能である。ここでは、確率的観測モデルを、例えば、ベイズニューラルネットワーク又はオートエンコーダ、ベイズエンコーダ及び/又はデコーダの形態において使用することも可能である。
種々の場合において、予測すべき1つ以上の「特別な」物理量については、粗く観測された測定値のみが入手可能であるものとしてもよいが、他の「通常の」物理量については、より細かい観測値が入手可能である。この場合、トレーニング可能なモデルは、SDE変数として(又は同一の観測モデルを用いて等価的に)通常の物理量の値を予測し、さらに、観測モデルの出力として特別な物理量の値を予測するようにトレーニングされるものとしてよい。従って、モデルは、通常の物理量のきめの細かい測定値と特別な物理量のきめの粗い測定値の両方により同時にトレーニングすることができる。これにより、モデルは、特別な物理量の連続的な予測も提供するように使用することができる。これらの粗い予測は粗い測定値によって支援されている。
観測モデルの使用は、任意選択的である。観測モデルが使用されていない場合、観測変数のセット及びSDE変数のセットを一致させることができ、演算ブロックObs’及びObsを用いたマッピングは不要である。数学的には、これは、恒等関数を確率密度関数pψとして使用することに対応している。
演算ブロックPD-r、TD-f及びCmbは、先行時点におけるSDE変数のセットの値SV-ht-1に基づいて、SDEの総ドリフトODを決定することを表す。
ドリフト成分のトレーニング可能な部分TD-fは、数学的に、
として表されるものとしてよく、例えば、SDE変数h∈Rのセットのベクトル場を管理し、パラメータのセットθによってパラメータ化された(典型的には非線形の)ドリフト関数として表されるものとしてもよい。トレーニング可能な部分TD-fは、0<L<∞のいくつかについて、L-リプシッツ連続性拘束条件を満たすことができる。
同様に、SDEの拡散成分は、(典型的には非線形の)拡散ダイナミクスを管理し、パラメータのセットθによってパラメータ化された行列値関数
として提供されるトレーニング可能な拡散成分TDF-gであるものとしてもよい。この拡散部分は、同一の連続性拘束条件を満たすことができる。ドリフト成分のトレーニング可能な部分及び拡散成分のパラメータのセットは、効率を高めるために少なくとも部分的に重複することができる。例えば、
SDEの拡散成分は、典型的には、確率過程を表す係数と組み合わせられ、例えば、任意の時間ステップΔtの間、ブラウン運動ダイナミクスに従う係数βt、βt~N(0,Δt)と組み合わせられる。ただし、他のタイプの確率過程も可能である。
例えば、ドリフト成分のトレーニング可能な部分TD-f及び/又は拡散成分TDF-gは、ニューラルネットワークであるものとしてもよい。ニューラルネットワークは、人工ニューラルネットワークとしても既知である。例として、ディープニューラルネットワークや畳み込みニューラルネットワークが含まれる。ニューラルネットワークは、典型的には、ニューラルネットワークのノードの重みによってパラメータ化される。例えば、モデルの層の数は、少なくとも5又は少なくとも10であるものとしてよく、ノード及び/又は重みの数は、少なくとも1000又は少なくとも10000であるものとしてよい。特定の用途に依存して、ニューラルネットワーク用の既知の種々のアーキテクチャや他のタイプの機械学習可能なモデルが使用されるものとしてよい。
興味深いことに、ドリフト成分トレーニング可能な部分TD-f及び/又は拡散成分のTDF-gは、任意選択的にベイズモデル、例えばベイズニューラルネットワークであるものとしてよい。従って、これらのモデルのパラメータ(例えば、ニューラルネットワークの重み)は、それ自体が確率変数であるものとしてよく、その確率分布は、パラメータの各セットによってパラメータ化されている。例えば、図は、
を示しており、ここで、パラメータφ、φは、トレーニング可能なパラメータのセットPARに含まれている。
ドリフト成分の事前定義された部分PD-rは、一般に、例えば、SDE変数に関して常微分方程式dh=rξ(h,t)dtの形式の事前知識に対応して、パラメータのセットξによってパラメータ化された関数rξ(・,・)として表されるものとしてよい。事前定義された部分についても同様にベイズモデルによって表されることが可能である。事前定義された部分PD-rは、SDE変数のサブセットの関数として提供することができる。事前定義された部分PD-rは、典型的には非定数であり、例えば、非線形又は非多項式の場合ですらあり得る。典型的には、事前定義された部分を定義する関数は、ニューラルネットワーク又は他のタイプの機械学習モデルの評価を表さず、例えば、事前定義された部分を定義する関数は、多くの場合、softmax、ReLu、及び/又は、シグモイド関数若しくはtanh関数などの活性化関数を含まない。事前定義された部分も、典型的には、対象のコンピュータ制御システムに基づいて選択され、従って、コンピュータ制御システムに関するドメイン知識を表すという意味において用途依存性である。事前定義された部分はパラメータ化することができるが、これらのパラメータは、典型的にはモデルのトレーニングの一部としてトレーニングされない。
ドリフト成分の事前定義された部分PD-rによって決定された第1のドリフトFDtと、ドリフト成分のトレーニング可能な部分TD-fによって決定された第2のドリフトSDtとを総ドリフトODに組み合わせるために、組合せ演算ブロックCmbが使用される。2つのドリフトを固定された手法により、例えば、(場合によっては重み付けされた)合計又は平均として組み合わせることも可能である。好適な任意選択肢は、パラメータのセットPARによって与えられる、それぞれの値のトレーニング可能な重み値に従ってドリフトを組み合わせることである。例えば、重みは、実際の学習問題上の事前知識の相対的な重要性を管理する自由パラメータベクトルγ∈[0,1]として指定されるものとしてよい。これらのドリフトは、
として組み合わせるものとしてもよい。例えば、式、
に従って組み合わせる他の手法も可能である。
総ドリフトOD及び拡散の推定DFtに基づいて、予測コンポーネントPredは、現時点におけるSDE変数のセットの値SV-htの予測を決定することができる。これは、SDEのオイラー・丸山離散化に従って、例えば、以下の離散時間確率モデルに従って行うことができる。
分布
は、初期潜在状態で定義される。オイラー・丸山とは異なる他の離散化も可能である。例えば、提示のモデルは、確率的ルンゲクッタ変形に適用される閉形式のガウス仮定密度スキームと組み合わせることもできる。例えば、X.Liらによる文献「Stochastic Runge-Kutta accelerates Langevin Monte Carlo and beyond」(https://arxiv.org/abs/1906.07868において入手可能であり、参照により本明細書に組み込まれる)及び文献Solin & Saerkkae、9.1章の「Applied Stochastic Differential Equations」、2019(参照により本明細書に組み込まれる)を参照されたい。
前述したように、SDE変数のセットの予測値SV-htが与えられると、観測変数のセットの値OV-xtは、観測モデルObs(使用している場合)に従って予測することができる。値OV-xt(又は観測モデルが使用されていない場合はSV-ht)が与えられると、観測変数のセットのノイズ値NOV-ytは、ノイズモデルNM(使用している場合)に従って予測することができる。ノイズモデルp(y|x)は、学習可能なパラメータなしの好適な尤度関数(例えば、標準正規分布)である。
ドリフト成分トレーニング可能な部分TD-f及び/又は拡散成分TDF-gのためにベイズモデルが使用される場合、モデルは、SDE変数のセットに関する不確実性の2つの要因、即ち、事前分布
(例えば、標準正規分布)、及び、SDEの拡散成分の確率過程を有している点に留意すべきである。後者は、動的環境に固有の不確実性を表し得、前者は、モデルの不確実性を表し得る。これは、不確実性が時間ステップを通じて蓄積されるため、特に、システム同定において有用である。
次に、図3のモデルに従って時系列予測を決定するためのアルゴリズムの具体例を示す。このアルゴリズムは、入力として、例えば、コンピュータ制御システムの状態を示すセンサデータに基づいて決定された、SDE変数のセットのための初期値hを受け取る。例えば、観測変数のセットのための値が与えられると、上記のように、観測モデルが演算ブロックObs’において使用されるものとしてよい。この例は、確率変数のための値をそれらが依存する変数のサンプリング値に基づいてサンプリングするために伝承サンプリングを使用する。従って、サンプリングされた時系列予測が取得される。
例えば、上記のアルゴリズムに従って、サンプリングに基づく時系列の予測を繰り返し実行することにより、複数の予測を取得することができる。これに基づいて、例えば、各時点における予測平均と標準偏差とを決定することができる。
図4は、観測値に基づいてモデルをトレーニングする、詳細でありながら非限定的な例を示している。
図に示されているのは、コンピュータ制御システムの時系列予測を行うためのトレーニング可能なモデルTM,400である。このモデルTMは、SDE変数のセットの確率微分方程式(SDE)を使用することができる。SDEは、ドリフト成分及び拡散成分を含み得る。ドリフト成分は、例えば、コンピュータ制御システムに関するドメイン知識を表し、トレーニングするための入力として受信される事前定義された部分と、それらのパラメータがトレーニング中に決定されるトレーニング可能な部分と、を含み得る。トレーニング可能なモデルTMの詳細な例は、図3において提供されている。
モデルのトレーニングの一部としてトレーニングされる、トレーニング可能なモデルTMのパラメータのセットPAR,470も示されている。これらのパラメータは、少なくともドリフト成分のトレーニング可能な部分のパラメータφを含む。図に示されるように、モデルの他の種々の部分のパラメータもトレーニングすることができる。任意選択的に、モデルの拡散成分がトレーニング可能であり、そのパラメータφは、パラメータのセットPARに含まれている。任意選択的に、モデルは、(例えば、図3にも関連して説明されているようにオートエンコーダの形態において)トレーニング可能な観測モデルを含み、そのパラメータψは、パラメータのセットPARに含まれる。任意選択的に、モデルの事前定義されたドリフト成分とトレーニング可能なドリフト成分とを評価することによって決定されたドリフトは、ドリフトの各要素のためのトレーニング可能な重み値γに従って組み合わせられ、これらのトレーニング可能な重み値は、パラメータのセットPARに含まれている。
ドリフト成分の事前定義された部分はパラメータ化することができるが、それらのパラメータは、トレーニングによって調整されず、従って、これらのパラメータは、パラメータのセットPARに含まれない。特に、図には示されていないが、モデルをトレーニングする前に、パラメータ化された微分方程式を観測値のセットOBSに適合させることによってドリフト成分の事前定義された部分を決定することが可能である。
モデルは、観測値のセットOBS,400に基づいてトレーニングされるものとしてよい。そのような観測値は、コンピュータ制御システム及び/又はその環境の時系列の測定値を含み得る。数学的には、そのような時系列は、
により表されるものとしてよく、ここで、Kは、潜在的に不規則な時点t={t,t,…,t}(例えば、ti+1-tは、一定である必要はない)において収集された測定値の数である。観測値は、観測値変数のセットからの各変数のための値を含むD次元ベクトルとして表されるものとしてよい(これは、SDE変数のセットと同一である可能性があり、又は、以下において図3に関連して論じるように異なる可能性もある)。図に示されているのは、コンピュータ制御システムの単一の時系列観測値の2つの測定値、即ち、初期の測定値MOV-y0,401、及び、後続時点における測定値MOV-yt,402である。
例えば、観測値の時点の数は、少なくとも3、少なくとも10又は少なくとも100にすることができる。観測値の数は、比較的多くすること、例えば、少なくとも1000又は少なくとも10000にすることができるが、これは、例えば、観測値ごとの時点の数が多い場合には不要である。例えば、ちょうど1つの観測値を使用してトレーニングを実行することができる。観測値のセットOBSの観測値の測定総数は、例えば、少なくとも1000、少なくとも10000又は少なくとも1000000にすることができる。
一般に、モデルは、時系列予測を行うためのモデルを使用し、決定された時系列予測を観測値のセットOBSからの観測値と比較することによってトレーニング信号を導出し、パラメータのセットPARをトレーニング信号に基づいて調整することによってトレーニングするものとしてもよい。
そのようなトレーニングは、典型的には、目的関数の最適化Opt,480を実行することによって行われる。典型的には、トレーニングは、確率的勾配降下法などの確率的アプローチ、例えば、Kingma and Baの「Adam:A Method for StochasticOptimization」(https://arxiv.org/abs/1412.6980で入手可能、参照により本明細書に組み込まれる)に開示されているAdamオプティマイザを使用して実行される。既知のように、そのような最適化法は、発見的であるものとしてもよく、及び/又は、局所的最適値に到達するものであってよい。異なる更新によりパラメータのセットPARの異なるサブセットを調整することが可能であり、例えば、第1の反復によりパラメータのいくつかのサブセットφ,φ,ψ,γを更新し、第2の反復により(少なくとも部分的に)異なるサブセットを更新することが可能である。トレーニングは、インスタンスごとに実行されるものとしてもよいし、又は、例えば、最大で若しくは少なくとも64の観測値、又は、最大で若しくは少なくとも256の観測値のバッチで実行されるものとしてもよい。
この図に示されている例においては、トレーニングは、最尤推定を使用して、例えば、潜在的な変数を周辺化し、可能な仮説の周辺尤度を比較し、最も高い応答を提供する1つを選択することによって実行される。具体的には、サンプリングに基づくアプローチは、コンピュータ制御システムの観測値の初期測定値MOV-y0が与えられた場合に、使用されるものとしてよく、トレーニングされたモデルTMは、所定の時点における観測変数のセットの予測値POV-xt,451を決定するために使用されるものとしてよい。これは、伝承サンプリングによって行うことができる。ノイズモデルNM,460を使用して、決定された時系列予測に従って、観測値の対応する測定値MOV-ytが観測される尤度POBSp(yt|xy),462を決定するものとしてよい。ノイズモデルNMは、図3に従うことが可能であり、例えば、(多変量)正規分布を使用することができる。この尤度は、パラメータPARにわたって最大化されるものとしてよい。
観測においては、各時点は、予測され観測値と比較することができるが、これは必ずしも必要なものではなく、例えば、測定値のサブセットを予測することができる。測定された2つの後続の観測値の間において複数の予測時間のステップを使用することも可能である。一般に、より長い時間範囲の使用は、トレーニング安定性の向上のために好適である。使用される時間範囲は、観測値ごとに又は選択された観測値ごとにでさえ異なる可能性がある。
具体的な例として、ドリフト成分のトレーニング可能な部分及びトレーニング可能な拡散成分にベイズモデルを使用する場合、トレーニングは、以下の周辺尤度を最大化するパラメータのセットPARの値を選択することを含み得る。
この場合、ドリフト成分のトレーニング可能な部分及び拡散成分のパラメータθ=(θ,θ)を周辺化するために、モンテカルロ積分が実行されるものとしてもよい。即ち、パラメータに割り当てられた分布からサンプルを抽出し、これらのサンプリングされたパラメータから与えられる予測を行ってモデルを評価するものとしてもよい。興味深いことに、グローバルモデルパラメータによりマルコフ連鎖を構築する必要はない。代わりに、事前分布からサンプリングし、モデルの対数周辺尤度を目的関数として使用して、パラメータのセットPARをトレーニングすることができる。例えば、
ここで、Sは、パラメータセットごとのモンテカルロサンプルカウントであり、
は、包含された離散化tに対してSDEにより課される分布である。この分布からの抽出は、例えば、ベイズモデルのサンプリングされたパラメータ
を使用してSDEのオイラー・丸山離散化を適用することによって、取得することができる。
トレーニング中にトレーニングされたモデルTMを適用する場合、ベイズモデルのパラメータ(例えば、ドリフト成分のベイズトレーニング可能部分及び/又はベイズ拡散成分)をパラメータフリー確率変数のサンプリング値に基づいて間接的にサンプリングすることにより、トレーニングパフォーマンスを向上させることができる。例えば、
は、例えば、高密度層、畳み込み層及び/又はプーリング層を含むニューラルネットワークにすることができる。そのような場合、完全なサンプリングアプローチは、サンプルの取得に使用される分布pφ(θ)のパラメータφに勾配を渡す必要があるため、過度に効率化する可能性がある。効率化を改善する1つの可能性は、例えば、以下の式、
を使用することによる、変分推論から公知のいわゆるREINFORCEトリックを適用することである。
他の任意選択肢は、ベイズモデルのパラメータに対してサンプリングされた分布を、パラメータフリー確率変数
と、変換関数
とに分解することである。これには、推定量の分散を減少させ、p(h|θ)上におけるバックプロパゲーションへのアクセスが可能となり、従って、より効果的なトレーニングが可能になるという利点がある。これは、いくつかの事後近似q(θ)のためのデータ項
を近似するために確率的変分推論において使用される、いわゆる「再パラメータ化トリック」の変形である。興味深いことに、本発明者らは、例えば、
を近似するために、重みの周辺化のための変形を使用することを想定した。トレーニング演算Optにおいては、例えば、以下のような目的、
を使用して、パラメータのセットの勾配のバックプロパゲーションと組み合わせてモンテカルロ積分を使用することができる。
ベイズニューラルネットワークの場合においては、推定量の分散をさらに低減してトレーニングの安定性を強化するために、ニューラルネットワークの重みをサンプリングするのではなく、線形活性化の変換関数を使用することによってニューラルネットワークを評価するものとしてもよい。従って、ネットワークのノードの線形活性化の統計パラメータが決定されるものとしてよく、この線形活性化は、統計パラメータ及びサンプリングされたパラメータフリー確率変数の値に基づいて決定論的に計算されるものとしてよい。従って、総ての観測値に同一のノイズを提供する重みの単一のサンプルを使用することを回避することができる。従って、勾配信号中の情報の抑制に起因する次善のトレーニングパフォーマンスが回避され得る。これは、変分推論のための状態空間モデルにおいて公知の局所的再パラメータ化トリックの変形である。興味深いことに、この技法は、本明細書においては、ベイズモデルを用いたSDEの設定に適用されている。具体的な例として、下記条件
を置く場合、重みを周辺化して、層の線形活性化出力
における下記のような分布を実現することが可能になる。
ここで、
は、第1の層においては、ニューラルネットの入力であり、それ以外においては、
であり、ここで、aは、活性化関数である。パラメータフリー確率変数をサンプリングすると、次のようになる。
従って、重みを個別にサンプリングする代わりに、ニューラルネットワークの線形活性化
は、それらがデータポイント全体にわたって独立しているようにサンプリングすることができる。これは、周辺尤度推定の分散の低減に結び付き、ひいてはパラメータのセットPARのための最適化の際の収束をより高速化することにも結び付く。
図に示すように、最適化Optは、トレーニング可能なドリフト成分を含むモデルと、トレーニング可能なドリフト成分を含まないモデルとの間の差分を最小化するために、正則化項Reg,452の評価をさらに含み得る。これは、一般にトレーニングの安定性を向上させ、より複雑な解にペナルティを課し、モデルの一般化可能性を向上させる。例えば、トレーニング可能なドリフト成分を含まないモデルの場合、SDE
は、例えば、トレーニング可能なドリフト成分のドリフト値を無視し、それ以外においては、モデルを不変のままにしておくことによって使用することができる。
特に、正則化項Regでカルバック・ライブラ(KL)発散を使用することは良好な選択である。数学的には、このカルバック・ライブラ発散は、仮説クラスの事後分布Q0→T、例えばトレーニング可能なドリフト成分を含むモデルと、仮説クラスの事前分布P0→T、例えばトレーニング可能なドリフト成分を含まないモデルとの間の発散を表し得る。非ベイズSDEのKL発散を計算すること自体は、変分推論に関連して公知である。興味深いことに、本発明者らは、非ベイズSDEのそのような発散が、ドリフト成分のベイズトレーニング可能な部分及び/又はトレーニング可能な拡散成分を用いた設定に適合化可能であること、詳細には、これらのベイズモデルのパラメータについて、事前分布p(θ),p(θ)と、事後分布q(θ),q(θ)との間の発散を含めることによって可能であることを示すことができた。具体的には、この発散は、両方のモデルがベイズである場合、次のように計算するものとしてよい。
興味深いことに、発散は、ドリフト成分の事前定義された部分のパラメータの関数ではない。従って、これらのパラメータをφ及びφと共に識別することができる。
好ましい実施形態においては、最適化Optは、尤度POBSp(yt|xt)の対数尤度を含み、ベイズSDEのKL発散に基づく正則化項REGをさらに含む目的関数上において勾配に基づくトレーニングを実行する。この場合、最適化OptはPAC学習を提供し、従って、学習能力に強力な数学的保証を提供することを示すことができる。具体的な例として、以下の損失関数を使用することができる。
ここで、
は、離散的で潜在的に不規則な時点t、…、tにおいて取得された観測値OBSであり、Tは、時間範囲であり、さらに、正則化項REGは、いくつかのδ>0についての発散DKL(Q0→T||P0→T)を含む次式
により与えられる。ln(・)関数がその被加数内に配置されると、この損失関数の第1の項は、観測値OBSのデータ対数尤度であるlnp(Y、…、Y)に対するサンプル近似であることを観察することができる。興味深いことに、この損失関数を低減する勾配ステップは、モデルパラメータのトレーニング上のPACバウンドも厳しくすることを数学的に示すことができる。
ここで、最適化Optのためのトレーニング信号を導出するために使用し得るアルゴリズムの詳細な例を示す。この例においては、ベイズモデルが、ドリフト成分のトレーニング可能な部分及び拡散成分のために使用されている。このアルゴリズムは、上記の損失関数に従って損失項を計算する。この例においては、観測値ごとに1つのサンプルのみが抽出されるが、観測値ごとのサンプル数も多くなる可能性がある(例えば、少なくとも5つ又は少なくとも10)。パラメータのセットPAR、例えば(φ,φ、ψ,γ)に勾配を渡すことにより、この目的を介して最適化Optは、観測された軌道のセットOBSを与えられてパラメータのセットを最適化する。
上記においては、最尤推定による学習の例がいくつか示されているが、これが唯一の可能性ではないことに留意すべきである。例えば、最適化Optは、事後推論によってパラメータのセットPARを学習する場合がある。これは、トレーニング中にp(θ,θ,H,、X|Y)を近似し、H及びXを統合し、次いで、ダイナミクス上の近似事後分布p(θ,θ|Y)を予測のために使用することを含む。例えば、以下のとおりである。
そのような場合、モデルステートメントの不確実性、例えば、パラメータ上の分布が予測中に推測され、平均化される場合がある。事後分布p(θ,θ|Y)は、例えば、変分推論(場合によってはモンテカルロサンプリングに基づく)又はマルコフ連鎖モンテカルロ(MCMC)を使用して近似することができる。
図5は、システム200が、環境082内において動作する(半)自律型車両62の制御システムであることが示されている上記の例を示している。車両62は、自律型運転システム又は運転支援システムを含み得る点において、自律型であるものとしてもよい。後者のシステムは半自律型システムとも称される。例えば、この車両62は、例えばセンサ075による車両62及び/又はその環境082のセンサ測定値に基づくガソリンパティキュレートフィルタ042の動作の制御のために、システム200を、例えばそのエンジン制御ユニットに組み込むことができる。
例えば、システムは、パティキュレートフィルタ042の煤の質量を予測し、煤の質量が所与の閾値を超えると予測される場合には、酸素バースト又は他のタイプの洗浄動作を開始することができる。煤の質量は、使用中に、典型的には粗くしか観測されず又は全く観測されない測定の例である。従って、煤の質量予測においては、中間物理量が、SDEに従って(例えば、同一性観測モデルを使用して)連続的に予測されるものとしてよく、煤の質量の時間変化は、第2の観測モデルとしてこれらの中間量に関する物理計算を使用して予測されるものとしてもよい。SDEは、細かく観察された中間値と粗く観察された煤の質量との両方により同時にトレーニングされるため、まれな測定によってサポートされる煤の質量の継続的な予測を提供することができる。
モデルの種々の態様の実装選択肢を、ここで、いくつかの具体的な例に基づいて論じる。最初の例においては、予測は、以下のLotka-Volterra系について行われる。
dx=(θ-θ)dt+0.2dβ
dy=(-θ+θ)dt+0.3dβ
ここで、θ=(2.0,1.0,4.0,1.0)である。
この例においては、SDE及び観測変数のセットが一致しており、トレーニング可能な観測モデルは使用されない。この例においては、軌道は、例えば、間隔t=[0,1]、解像度dt=0.01により予測することができる。本発明者らは、事前定義されたドリフト成分部分が、標準偏差0.5の真の値θを中心とする正規分布からサンプリングされたパラメータθ’を有するPDEの形態において提供される実験を行った。
具体的には、実験においては、10オイラー・丸山ステップは、時間ステップサイズ10-4の間隔[0,10]において実行され、それらを100倍にダウンサンプリングして、0.01の頻度で1000回の観測が行われた。区間[0,5]の最初の500個の観測値がトレーニングデータであり、[5,10]の観測値はテストデータであるとみなされた。各シーケンスは、長さ50の10個のシーケンスに分割される。拡散パラメータが既知で固定されていると仮定すると、ベイズニューラルネットワークには、ドリフト関数として4層のネットがあり、層ごとに50個のニューロンとReLU活性化関数がある。ドリフト成分の事前定義された部分は、真のパラメータ(θ~N(θ,σ))を中心とする正規分布からサンプリングすることによって構成されている。モデルは、Adamオプティマイザ及び1e-3の学習率により、50のエポックについてトレーニングされている。
この、関連するが不正確な事前知識を含めることによって、大幅な改善が観測された。KLに基づく発散項を使用してPAC学習を実行すると、パフォーマンスがさらに向上した。
第2の例においては、コンピュータ制御システムは、ローレンツアトラクタによってモデル化されている(例えば、コンピュータ制御システムは、レーザ、電子回路などを含み得る)。興味深いことに、既存のODEソルバにおいては、このコンピュータ制御システムの決定論的な形式であっても、混沌とした性質のために、発散がしばしば観測される。従って、本質的に解決できないダイナミクスを有している。システムのダイナミクスは、次のように記述することができる。
dx=ζ(y-x)+dβ
dy=x(κ-z)-y+dβ
dz=(x-ρzt)+dβ
この例においては、SDE及び観測変数のセットが一致しており、トレーニング可能な観測モデルは使用されていない。実験においては、ζ=10、κ=2.67、ρ=28であり、βは、単位拡散を伴うブラウン運動に従う確率変数である。実験においては、(x(0)=1,y(0)=1,z(0)=28)によりシステムを開始する上記のダイナミクスからの2000の観測値が決定された。ここで、前半はトレーニング用であり、残余はテスト用であった。ドリフト成分の事前定義された部分として、パラメータは、ガウスノイズによって歪められたシステムを支配する3つの方程式の1つが提供された。
詳細には、20オイラー・丸山ステップが、10-4の時間ステップサイズ内において実行され、係数0.01でダウンサンプリングされた。これにより、頻度0.01で2000の観測値のシーケンスが得られた。このデータセットの前半は、長さ50で20のシーケンスに分割されてトレーニング用に使用され、後半は、長さ100で10のシーケンスに分割されてテスト用に使用されている。総てのモデル変形について、Adamオプティマイザは、学習率0.001、ミニバッチサイズ2、100ニューロンの2つの隠れ層を持つドリフトネット、及び、100ニューロンの拡散ネットにおいて使用される。モデルは、100エポックについてトレーニングされている。
この提供された事前知識の不正確さにもかかわらず、この事前知識の提供からは、パフォーマンスの大きな進歩が観測された。KLに基づく発散項を備えたPAC学習を実行することにより、さらにパフォーマンスが向上した。
第3の例として、CMUウォーキングデータセットが使用された。この実験においては、最初に、ベイズニューラルネットワークとPAC学習とを備えたモデルが、43人の異なる被験者から測定された43個のモーションキャプチャシーケンスからなるデータセットMOCAP-1においてトレーニングされた。次いで、学習されたモデルの学習されたドリフト成分が、人間の歩行ダイナミクスに基づく漠然とした事前知識を表す事前定義されたドリフト成分として使用された。次いで、被験者35からの23個の歩行シーケンスを伴うデータセットMOCAP-2が、忠実度の高い被験者特有のモデリングタスクを表すために使用された。
このモデルは、10-3の学習率で、一度に7つのランダムに選択されたスニペット上において3000のエポックについてAdamオプティマイザを用いてトレーニングされる。スニペットの長さは、最初の1000のエポックについては30が使用され、エポック2500までは50が、その後は100が使用される。観測モデルとして、50個の観測変数を6個のSDE変数に射影するために、オートエンコーダは、微小加法性ノイズσ=10-8において使用される。ドリフト項及び拡散項には、それぞれが30個のニューロンの1つの隠れ層を有する別個のニューラルネットが使用される。
ここでも、ドメイン知識を提供することによりパフォーマンスが向上した。最高のパフォーマンスは、ベイズニューラルネットワークにおいてPAC学習を使用した場合に得られた。
図6は、コンピュータ制御システムの観測値のセットに基づいて、コンピュータ制御システムの時系列予測を行うためのモデルをトレーニングするコンピュータ実装方法600のブロック図を示している。このモデルは、SDE変数のセットの確率微分方程式(SDE)を使用することができる。SDEは、ドリフト成分及び拡散成分を含み得る。本方法600は、図1のシステム100の動作に対応することができるが、しかしながら、このことは、本方法600が、他のシステム、装置又はデバイスを使用して実行され得るということを制限するものではない。
本方法600は、「トレーニング可能なドリフトパラメータのアクセス」というタイトルの動作において、モデルを定義するモデルデータにアクセスするステップ610を含み得る。ここで、このモデルデータは、少なくともSDEのドリフト成分のトレーニング可能な部分のパラメータのセットを含む。
本方法600は、「事前定義されたドリフトの受信」というタイトルの動作において、トレーニングへの入力として、SDEのドリフト成分の事前定義された部分を受信するステップ620を含み得る。
本方法600は、「観測値の取得」というタイトルの動作において、コンピュータ制御システムの観測値のセットを取得するステップ630を含み得る。観測値は、コンピュータ制御システム及び/又はその環境の時系列の測定値を含み得る。
本方法600は、「モデルのトレーニング」というタイトルの動作において、観測値のセットに基づいてモデルをトレーニングするステップ640を含み得る。このモデルをトレーニングするステップは、時系列予測を行うためにモデルを使用することを含み得、その一部として、「SDE変数の予測」というタイトルの動作において、先行時点におけるSDE変数のセットの値に基づいて、現時点におけるSDE変数のセットの値を予測するステップ650のためにSDEが使用されるものとしてもよい。本動作650は、「事前定義されたドリフトの評価」というタイトルの動作において、第1のドリフトを得るためにドリフト成分の事前定義された部分を評価するステップ651を含み得る。本動作650は、「トレーニング可能なドリフトとの組合せ」というタイトルの動作において、第1のドリフトを、ドリフト成分のトレーニング可能な部分を評価することによって取得されたと第2のドリフトと組み合わせるステップ652をさらに含み得る。トレーニング動作640は、「観測値との比較」というタイトルの動作において、時系列予測を観測値のセットの観測値と比較することによってトレーニング信号を導出するステップ660をさらに含み得る。トレーニング動作640は、「トレーニング可能なパラメータの調整」というタイトルの動作において、トレーニング信号に基づいて少なくともドリフト成分のトレーニング可能な部分のパラメータのセットを調整するステップ670をさらに含み得る。
図7は、コンピュータ制御システムの時系列予測を行うためにトレーニングされたモデルを使用するコンピュータ実装方法700のブロック図を示している。任意選択的に、この予測は、コンピュータ制御システムを制御及び/又は監視するために行われる。モデルは、SDE変数のセットの確率微分方程式(SDE)を使用することができる。SDEは、ドリフト成分及び拡散成分を含み得る。本方法700は、図2のシステム200の動作に対応することができるが、しかしながら、このことは、本方法700が他のシステム、装置又はデバイスを使用して実行され得るということを制限するものではない。
本方法700は、「トレーニングされたドリフトパラメータへのアクセス」というタイトルの動作において、モデルを定義するモデルデータにアクセスするステップ710を含み得、このモデルデータは、少なくともSDEのドリフト成分のトレーニングされた部分のパラメータのセットを含む。このモデルデータは、さらに、SDEのドリフト成分の事前定義された部分を定義することができる。
本方法700は、「センサデータの取得」というタイトルの動作において、コンピュータ制御システム及び/又はその環境の測定値を表すセンサデータを取得するステップ720を含み得る。
本方法700は、「時系列予測の決定」というタイトルの動作において、測定値に基づいてコンピュータ制御システムの時系列予測を決定するステップ730を含み得る。本動作730は、「SDE変数の予測」というタイトルの動作において、先行時点におけるSDE変数のセットの値に基づいて、現時点におけるSDE変数のセットの値を予測するステップ750のためにSDEを使用することを含み得る。動作750は、「事前定義されたドリフトの評価」というタイトルの動作において、第1のドリフトを得るためにドリフト成分の事前定義された部分を評価するステップ751を含み得る。本動作750は、「トレーニング可能なドリフトとの組合せ」というタイトルの動作において、第1のドリフトを、ドリフト成分のトレーニング可能な部分を評価することによって取得された第2のドリフトと組み合わせるステップ752をさらに含み得る。
本方法700は、「制御/監視データの生成」というタイトルの動作において、コンピュータ制御システムを制御及び/又は監視する際に使用するための出力データを、決定された時系列予測に基づいて生成するステップ760をさらに含み得る。
一般に、図6の方法600及び図7の方法700の動作は、任意の適した順序により、例えば、連続して、同時に、又は、それらの組合せにより、また、場合によっては、例えば、入出力の関係によって特定の順序が必要とされる場合には、それに従って実行されるものとしてよいことが理解される。いくつかの方法又は総ての方法は、組み合わせることも可能であり、例えば、トレーニングされたモデルを適用する方法700は、このトレーニングされたモデルが方法600に従ってトレーニングされたことに続いて適用されるものとしてよい。
本方法は、コンピュータ実装方法として、専用のハードウェアとして、又は、その両方の組合せとして、コンピュータ上に実装されるものとしてよい。図8にも示されているように、コンピュータのための命令、例えば、実行可能コードは、コンピュータ可読媒体800上に、例えば一連の物理的な機械可読マーク810の形態において、及び/又は、異なる電気的な、例えば磁気的又は光学的な特性又は値を有する一連の要素の形態において格納されるものとしてよい。実行可能なコードは、一時的又は非一時的な方式により格納されるものとしてよい。コンピュータ可読媒体の例には、メモリデバイス、光記憶デバイス、集積回路、サーバ、オンラインソフトウェアなどが含まれる。図8は、光ディスク800を示している。代替的に、コンピュータ可読媒体800は、本明細書に記載されるようにトレーニングされた、コンピュータ制御システムの時系列予測を行うためのモデルを表す一時的又は非一時的データ810を含み得る。
複数の例、実施形態又は任意の特徴は、非限定的なものとして示されているかどうかにかかわらず、特許請求の範囲に記載の本発明を限定するものとして理解されるべきではない。
上記の実施形態は、本発明を限定するものではない例示に過ぎず、当業者は、添付の特許請求の範囲から逸脱することなく、多くの代替的実施形態を設計することができることに留意されたい。特許請求の範囲においては、括弧の間に配置された参照符号は、請求項を限定するものと解釈されるべきでない。動詞「含まれる」及びその活用形の使用は、特許請求の範囲に示されている以外の要素又はステップの存在を排除するものではない。要素に先行する冠詞「1つの」は、そのような要素の複数の存在を排除するものではない。複数の要素のリスト又はグループに先行するときの「少なくとも1つの」などの表現は、当該リスト又はグループからの要素の総て若しくは任意のサブセットの選択を表す。例えば、「A、B及びCの少なくとも1つの」という表現は、Aのみ、Bのみ、Cのみ、A及びBの両方、A及びCの両方、B及びCの両方、又は、A及びB及びCの総てを含むものと理解すべきである。本発明は、いくつかの別個の要素を含むハードウェアによって実装されるものとしてよく、適当にプログラミングされたコンピュータによって実装されるものとしてもよい。いくつかの手段を列挙する装置クレームにおいては、これらの手段のいくつかは、同一のハードウェアアイテムによって実施されるものとしてよい。特定の手段が相互に異なる従属請求項に列挙されているという単なる事実は、これらの手段の組合せを有利に使用することができないことを示すものではない。

Claims (14)

  1. コンピュータ制御システムの観測値のセットに基づいてコンピュータ制御システムの時系列予測を行うためのモデルをトレーニングするコンピュータ実装方法(600)であって、
    前記モデルは、SDE変数のセットの確率微分方程式(SDE)を使用し、
    前記SDEは、ドリフト成分及び拡散成分を含み、
    前記方法は、
    -モデルを定義するモデルデータにアクセスするステップ(610)であって、前記モデルデータは、前記SDEの前記ドリフト成分のトレーニング可能な部分のパラメータのセットを少なくとも含む、ステップと、
    -コンピュータ制御システムの観測値のセットを取得するステップ(630)であって、前記観測値は、コンピュータ制御システム及び/又はその環境の時系列の測定値を含む、ステップと、
    -観測値のセットに基づいてモデルをトレーニングするステップ(640)と、
    を含み、
    前記トレーニングするステップ(640)は、
    -先行時点におけるSDE変数のセットの値に基づいて現時点におけるSDE変数のセットの値を予測するステップ(650)のために、時系列予測を行うためにモデルを使用するステップであって、前記SDEを使用することを含む、ステップと、
    -前記時系列予測を観測値のセットの観測値と比較することによってトレーニング信号を導出するステップ(660)と、
    -前記トレーニング信号に基づいて前記ドリフト成分のトレーニング可能な部分のパラメータのセットを少なくとも調整するステップ(670)と、
    を含み、
    さらに、前記方法は、トレーニングのための入力として、前記SDEの前記ドリフト成分の事前定義された部分を受信するステップ(620)を含み、
    前記予測するステップ(650)は、
    第1のドリフトを得るために前記ドリフト成分の事前定義された部分を評価するステップ(651)と、
    前記第1のドリフトを、前記ドリフト成分の前記トレーニング可能な部分を評価することによって取得された第2のドリフトと組み合わせるステップ(652)と、
    を含み、
    前記第1のドリフトと前記第2のドリフトとを組み合わせるステップは、前記第1のドリフトの値と前記第2のドリフトの対応する値とを重み値に従って組み合わせることを含み、前記重み値は、前記組合せにおける前記ドリフト成分の前記事前定義された部分の重みを示し、前記トレーニングするステップは、前記トレーニング信号に基づいて前記重み値を調整することをさらに含む、方法(600)。
  2. 前記ドリフト成分の前記トレーニング可能な部分及び前記拡散成分は、ベイズモデルである、請求項1に記載の方法(600)。
  3. 前記トレーニング信号を導出するステップは、選択された観測値の測定値が、決定された時系列予測に従って観測される尤度を決定するためのノイズモデルを使用すること、及び、前記尤度を最尤推定に使用することを含む、請求項2に記載の方法(600)。
  4. 前記ドリフト成分の前記トレーニング可能な部分を評価することは、パラメータフリー確率変数の値をサンプリングすること、前記トレーニング可能な部分のノードの線形活性化の統計パラメータを決定すること、及び、前記統計パラメータと前記確率変数のサンプリングされた値とに基づいて前記線形活性化を決定論的に計算することを含む、請求項3に記載の方法(600)。
  5. 前記トレーニング信号を導出するステップは、トレーニング可能なドリフト成分を含むモデルと、トレーニング可能なドリフト成分を含まないモデルとの間の差分を最小化するための正則化項を評価することを含む、請求項3又は4に記載の方法(600)。
  6. 前記方法は、前記モデルの前記トレーニング前に、パラメータ化された微分方程式を観測値のセットに適合させることによって前記ドリフト成分の前記事前定義された部分を決定するステップを含む、請求項1乃至のいずれか一項に記載の方法(600)。
  7. コンピュータ制御システムを制御及び/又は監視するためのコンピュータ制御システムの時系列予測を行うためにトレーニングされたモデルを使用するコンピュータ実装方法(700)であって、前記モデルは、SDE変数のセットの確率微分方程式(SDE)を使用し、前記SDEは、ドリフト成分及び拡散成分を含み、
    前記方法は、
    -前記モデルを定義するモデルデータにアクセスするステップ(710)であって、前記モデルデータは、少なくとも前記SDEの前記ドリフト成分のトレーニングされた部分のパラメータのセットを含むステップと、
    -前記コンピュータ制御システム及び/又はその環境の測定値を表すセンサデータを取得するステップ(720)と、
    -前記測定値に基づいて前記コンピュータ制御システムの時系列予測を決定するステップ(730)であって、先行時点におけるSDE変数のセットの値に基づいて現時点におけるSDE変数のセットの値を予測するステップ(750)のために前記SDEを使用することを含む、ステップと、
    -決定された時系列予測に基づいて、前記コンピュータ制御システムを制御及び/又は監視する際に使用するための出力データを生成するステップ(760)と、
    を含み、
    前記モデルデータは、前記SDEの前記ドリフト成分の事前定義された部分をさらに定義し、
    前記現時点におけるSDE変数のセットの値を予測するステップ(750)は、
    第1のドリフトを得るために前記ドリフト成分の前記事前定義された部分を評価するステップ(751)と、
    前記第1のドリフトを、前記ドリフト成分の前記トレーニング可能な部分を評価することによって取得された第2のドリフトと組み合わせるステップ(752)と、
    を含み、
    前記第1のドリフトと前記第2のドリフトとを組み合わせるステップは、前記第1のドリフトの値と前記第2のドリフトの対応する値とを重み値に従って組み合わせることを含み、前記重み値は、前記組合せにおける前記ドリフト成分の前記事前定義された部分の重みを示す、方法(700)。
  8. 前記方法は、前記コンピュータ制御システムの制御又は監視に使用される出力デバイスへの出力インタフェースを使用し、決定された時系列予測に基づいて前記コンピュータ制御システムの制御又は監視を可能にするために前記出力データを前記出力デバイスに提供することをさらに含む、請求項に記載の方法(700)。
  9. 前記時系列予測は、車両の機械的部品、例えば、排気ガス処理部品及び/又は水素燃料電池のスタック及び/又はパティキュレートフィルタの時系列予測である、請求項又はに記載の方法(700)。
  10. 前記トレーニングされたモデルは、前記コンピュータ制御システムの環境の時系列予測を提供する環境モデルであり、前記方法は、出力データとして、前記環境モデルに従って前記環境とのシミュレートされた相互作用を実行するための制御データを生成することに基づいて前記コンピュータ制御システムをトレーニングすることを含む、請求項に記載の方法(700)。
  11. 前記ドリフト成分の前記トレーニング可能な部分及び前記拡散成分は、ベイズモデルであり、前記方法は、時系列予測の不確実性を決定することをさらに含む、請求項乃至10のいずれか一項に記載の方法(700)。
  12. コンピュータ制御システムの観測値のセットに基づいてコンピュータ制御システムの時系列予測を行うためのモデルをトレーニングするためのシステム(100)であって、前記モデルは、SDE変数のセットの確率微分方程式(SDE)を使用し、前記SDEは、ドリフト成分及び拡散成分を含み、
    前記システムは、
    -前記モデルを定義し、少なくとも前記SDEのドリフト成分のトレーニング可能な部分のパラメータのセットを含むモデルデータ(040)にアクセスするためのデータインタフェース(120)と、
    -プロセッササブシステム(140)と、
    を含み、
    前記プロセッササブシステム(140)は、
    -前記コンピュータ制御システムの前記観測値のセットを取得し、前記観測値は、前記コンピュータ制御システム及び/又はその環境の時系列の測定値を含み、
    -前記観測値のセットに基づいて前記モデルをトレーニングするように構成され、
    前記トレーニングすることは、
    -時系列予測を行うために前記モデルを使用することであって、先行時点におけるSDE変数のセットの値に基づいて現時点におけるSDE変数のセットの値を予測するために、前記SDEを使用することを含む、ことと、
    -前記時系列予測を観測値のセットの観測値と比較することによってトレーニング信号を導出することと、
    -前記トレーニング信号に基づいて少なくとも前記ドリフト成分のトレーニング可能な部分のパラメータのセットを少なくとも調整することと、
    を含み、
    前記プロセッササブシステム(140)は、トレーニングのための入力として、前記SDEの前記ドリフト成分の事前定義された部分を受信するようにさらに構成され、
    前記現時点におけるSDE変数のセットの値を予測することは、
    第1のドリフトを得るために前記ドリフト成分の事前定義された部分を評価することと、
    前記第1のドリフトを、前記ドリフト成分の前記トレーニング可能な部分を評価することによって取得された第2のドリフトと組み合わせることと、
    を含み、
    前記第1のドリフトと前記第2のドリフトとを組み合わせることは、前記第1のドリフトの値と前記第2のドリフトの対応する値とを重み値に従って組み合わせることを含み、前記重み値は、前記組合せにおける前記ドリフト成分の前記事前定義された部分の重みを示し、前記トレーニングすることは、前記トレーニング信号に基づいて前記重み値を調整することをさらに含む、システム(100)。
  13. コンピュータ制御システムを制御及び/又は監視するためにコンピュータ制御システムの時系列予測を行うためのトレーニングされたモデルを使用するためのシステム(200)であって、前記モデルは、SDE変数のセットの確率微分方程式(SDE)を使用し、前記SDEは、ドリフト成分及び拡散成分を含み、
    前記システムは、
    -前記モデルを定義し、少なくとも前記SDEのドリフト成分のトレーニングされた部分のパラメータのセットを含むモデルデータ(040)にアクセスするためのデータインタフェース(220)と、
    -プロセッササブシステム(240)と、
    を含み、
    前記プロセッササブシステム(240)は、
    -前記コンピュータ制御システム及び/又はその環境の測定値を表すセンサデータを取得し、
    -前記測定値に基づいて前記コンピュータ制御システムの時系列予測を決定し、先行時点におけるSDE変数のセットの値に基づいて現時点におけるSDE変数のセットの値を予測するために、前記SDEを使用することを含み、
    -決定された時系列予測に基づいて、前記コンピュータ制御システムの制御及び/又は監視する際に使用するための出力データを生成する
    ように構成され、
    前記モデルデータは、前記SDEの前記ドリフト成分の事前定義された部分をさらに定義し、
    前記現時点におけるSDE変数のセットの値を予測することは、
    第1のドリフトを得るために前記ドリフト成分の事前定義された部分を評価することと、
    前記第1のドリフトを、前記ドリフト成分の前記トレーニング可能な部分を評価することによって取得された第2のドリフトと組み合わせることと、
    を含み、
    前記第1のドリフトと前記第2のドリフトとを組み合わせることは、前記第1のドリフトの値と前記第2のドリフトの対応する値とを重み値に従って組み合わせることを含み、前記重み値は、前記組合せにおける前記ドリフト成分の前記事前定義された部分の重みを示す、システム(200)。
  14. 一時的又は非一時的データを含むコンピュータ可読媒体(700)であって、
    前記データは、
    -プロセッサシステムによって実行されるときに、前記プロセッサシステムに、請求項1乃至のいずれか一項に記載のコンピュータ実装方法を実行させる命令と、
    -プロセッサシステムによって実行されるときに、前記プロセッサシステムに、請求項乃至11のいずれか一項に記載のコンピュータ実装方法を実行させる命令と、
    -コンピュータ制御システムの時系列予測を行うためのトレーニングされたモデルと、のうちの1つ以上を表し、
    前記モデルは、SDE変数のセットの確率微分方程式(SDE)を使用し、前記SDEは、ドリフト成分及び拡散成分を含み、前記モデルは、先行時点におけるSDE変数のセットの値に基づいて現時点におけるSDE変数のセットの値を予測するために前記SDEを使用することにより、測定値に基づいて前記コンピュータ制御システムの時系列予測を行うように構成され、第1のドリフトを得るために前記ドリフト成分の事前定義された部分を評価し、前記第1のドリフトを、前記ドリフト成分の前記トレーニング可能な部分を評価することによって取得された第2のドリフトと組み合わせることを含む、
    コンピュータ可読媒体(700)。
JP2021099178A 2020-06-16 2021-06-15 コンピュータ制御システムの時系列予測の実行 Active JP7728107B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP20180249 2020-06-16
EP20180249.3A EP3926420B1 (en) 2020-06-16 2020-06-16 Making time-series predictions of a computer-controlled system

Publications (2)

Publication Number Publication Date
JP2021197189A JP2021197189A (ja) 2021-12-27
JP7728107B2 true JP7728107B2 (ja) 2025-08-22

Family

ID=71105218

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021099178A Active JP7728107B2 (ja) 2020-06-16 2021-06-15 コンピュータ制御システムの時系列予測の実行

Country Status (3)

Country Link
US (1) US11868887B2 (ja)
EP (1) EP3926420B1 (ja)
JP (1) JP7728107B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12001949B2 (en) 2018-09-05 2024-06-04 Sartorius Stedim Data Analytics Ab Computer-implemented method, computer program product and system for data analysis
EP4290412A3 (en) 2018-09-05 2024-01-03 Sartorius Stedim Data Analytics AB Computer-implemented method, computer program product and system for data analysis
EP4016202B1 (de) * 2020-12-15 2023-11-22 Siemens Aktiengesellschaft Verfahren zum nachbilden von rauschanteilen von verlustbehaftet aufgezeichneten betriebssignalen sowie steuereinrichtung
JP7444186B2 (ja) * 2022-03-22 2024-03-06 横河電機株式会社 モデル検証装置、モデル検証方法、および、モデル検証プログラム
EP4627417A1 (en) * 2022-12-02 2025-10-08 Normal Computing Corporation Thermodynamic artificial intelligence for generative diffusion models and bayesian deep learning
WO2024180613A1 (ja) * 2023-02-27 2024-09-06 日本電気株式会社 拡散係数推定装置、制御装置、拡散係数推定方法及びプログラム
WO2024212160A1 (en) * 2023-04-13 2024-10-17 Robert Bosch Gmbh Method and apparatus for diffusion model
US20240391095A1 (en) * 2023-05-25 2024-11-28 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling a mechanical system with multiple degrees of freedom
US20250111552A1 (en) * 2023-09-28 2025-04-03 Nvidia Corporation System and method for efficient text-guided generation of high-resolution videos
DE102023211083A1 (de) * 2023-11-08 2025-05-08 Robert Bosch Gesellschaft mit beschränkter Haftung Computerimplementiertes verfahren zur bestimmung eines surrogatmodells eines zustandsraummodells
CN118035926B (zh) * 2024-04-11 2024-06-18 合肥工业大学 基于多元数据扩散的模型训练、水检测方法及系统
CN118230559B (zh) * 2024-05-27 2024-08-13 山东金宇信息科技集团有限公司 一种用于隧道的交通事件感知管控方法、设备及介质
CN120431956A (zh) * 2024-12-31 2025-08-05 荣耀终端股份有限公司 一种音频分离方法及相关设备
CN119692257B (zh) * 2025-02-25 2025-06-13 安世亚太科技股份有限公司 一种流体系统动态行为的高精度预测方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016135514A1 (en) 2015-02-27 2016-09-01 Energy Technologies Institute Llp Method and apparatus for controlling an environment management system within a building

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6532454B1 (en) * 1998-09-24 2003-03-11 Paul J. Werbos Stable adaptive control using critic designs
US20130325774A1 (en) * 2012-06-04 2013-12-05 Brain Corporation Learning stochastic apparatus and methods
US10565329B2 (en) * 2014-06-30 2020-02-18 Evolving Machine Intelligence Pty Ltd System and method for modelling system behaviour
EP3933713B1 (en) * 2017-04-14 2025-06-04 DeepMind Technologies Limited Distributional reinforcement learning
US20190259095A1 (en) * 2018-02-20 2019-08-22 Southwest Business Corporation Determining present and future virtual balances for a client computing device
US10600005B2 (en) * 2018-06-01 2020-03-24 Sas Institute Inc. System for automatic, simultaneous feature selection and hyperparameter tuning for a machine learning model
CN109299429A (zh) * 2018-07-11 2019-02-01 重庆邮电大学 一种基于维纳过程的动态社会关系建模方法
GB201908532D0 (en) * 2019-06-13 2019-07-31 Microsoft Technology Licensing Llc Collecting observations for machine learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016135514A1 (en) 2015-02-27 2016-09-01 Energy Technologies Institute Llp Method and apparatus for controlling an environment management system within a building
JP2018506807A (ja) 2015-02-27 2018-03-08 エナジー テクノロジーズ インスティテュート エルエルピー 建物内の環境管理システムを制御するための方法および装置

Also Published As

Publication number Publication date
US11868887B2 (en) 2024-01-09
JP2021197189A (ja) 2021-12-27
US20210397955A1 (en) 2021-12-23
EP3926420A1 (en) 2021-12-22
EP3926420B1 (en) 2023-11-01

Similar Documents

Publication Publication Date Title
JP7728107B2 (ja) コンピュータ制御システムの時系列予測の実行
CN111796514B (zh) 基于所训练的贝叶斯神经网络来控制和监视物理系统
CN115668072B (zh) 随机预测控制的非线性优化方法
US20240220774A1 (en) Deep reinforcement learning with fast updating recurrent neural networks and slow updating recurrent neural networks
CN113627602B (zh) 预测计算机控制实体的状态
CN111665747B (zh) 基于推断状态对物理系统的控制
US10860927B2 (en) Stacked convolutional long short-term memory for model-free reinforcement learning
EP3772707A1 (en) Dynamics model for globally stable modeling of system dynamics
US12536351B2 (en) Motion planning
JP2026500447A (ja) ニューラルネットワークモデルを用いた高次元物理システムの次数低減モデル化および制御
KR20230119023A (ko) 단기 기억 장치가 있는 어텐션 신경망
CN114722995A (zh) 训练神经随机微分方程的神经漂移网络和神经扩散网络的设备和方法
Park et al. Gaussian process online learning with a sparse data stream
Mitra et al. Formal verification techniques for vision-based autonomous systems–a survey
Pozzi et al. Imitation learning-driven approximation of stochastic control models
Maddu et al. STENCIL-NET: data-driven solution-adaptive discretization of partial differential equations
US20250371223A1 (en) Simulating physical environments with discontinuous dynamics using graph neural networks
Li et al. A customizable neural network based framework for autonomous vehicle control with human-guided learning
Farahmand et al. Truncated approximate dynamic programming with task-dependent terminal value
Deshpande et al. An algorithm to create model file for Partially Observable Markov Decision Process for mobile robot path planning
Zhou et al. Autonomous Vehicle Path Tracking Using Event‐Triggered MPC With Switching Model: Methodology and Real‐World Validation
Berger et al. RAnGE: Reachability analysis for guaranteed ergodicity
MONTE Department of Electrical Engineering and Computer Science
Dyro Optimization-Driven Autonomous Driving: Control, Intent, and Testing
JP2025517212A (ja) エージェントの連続時間相互作用モデリングのためのデバイス及びコンピュータ実装された方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240530

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250422

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250807

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250812

R150 Certificate of patent or registration of utility model

Ref document number: 7728107

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150