(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023180242
(43)【公開日】2023-12-20
(54)【発明の名称】ニューラルネットワークをトレーニングするための方法及び装置
(51)【国際特許分類】
G06N 3/098 20230101AFI20231213BHJP
G06N 3/045 20230101ALI20231213BHJP
【FI】
G06N3/098
G06N3/045
【審査請求】未請求
【請求項の数】12
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023093762
(22)【出願日】2023-06-07
(31)【優先権主張番号】10 2022 205 824.0
(32)【優先日】2022-06-08
(33)【優先権主張国・地域又は機関】DE
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】トーマス ブランツ
(72)【発明者】
【氏名】マルクス ハンゼルマン
(72)【発明者】
【氏名】アンドレアス ゲンスレ
(57)【要約】 (修正有)
【課題】技術システムのセンサ信号に基づいてセンサ信号に関する分類及び/又は回帰結果を特徴付ける出力信号を算定する第1のニューラルネットワークをトレーニングする方法、装置、プログラム及び記憶媒体を提供する。
【解決手段】方法は、技術システム(自律型のロボット等)の動作中に、制御システム40が、環境20のセンサ信号Sを受信するステップと、第1のニューラルネットワーク61により、センサ信号に基づいて第1の出力信号y
1を算定するステップと、第1のニューラルネットワークとは別のアーキテクチャを有する第2のニューラルネットワーク62により、センサ信号に基づいて第2の出力信号y
2を算定するステップと、第1のニューラルネットワークのパラメータΦ1を適応化することによって、第2の出力信号に依存して第1のニューラルネットワークをトレーニングするステップと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
技術システム(100,200)のセンサ信号(S)に基づいて前記センサ信号(S)に関する分類及び/又は回帰結果を特徴付ける出力信号を算定するように構成されている第1のニューラルネットワーク(61)をトレーニングするための方法であって、
a.前記技術システム(100,200)の動作中に前記技術システム(100,200)のセンサ信号(S)を受信するステップと、
b.前記第1のニューラルネットワーク(61)により、前記センサ信号(S)に基づいて第1の出力信号(y1)を算定するステップと、
c.前記第1のニューラルネットワーク(61)とは別のアーキテクチャを有する第2のニューラルネットワーク(62)により、前記センサ信号(S)に基づいて第2の出力信号(y2)を算定するステップと、
d.前記第1のニューラルネットワーク(61)のパラメータ(Φ1)を適応化することによって前記第1のニューラルネットワーク(61)をトレーニングするステップであって、前記第1のニューラルネットワーク(61)は、前記第2の出力信号(y2)に依存してトレーニングされる、ステップと、
を含む方法。
【請求項2】
前記第1の出力信号(y1)と前記第2の出力信号(y2)との差に基づいて前記適応化が算定される、請求項1に記載の方法。
【請求項3】
前記第1のニューラルネットワーク(61)のアーキテクチャと前記第2のニューラルネットワーク(62)のアーキテクチャとの相違により、前記第1のニューラルネットワーク(61)の方が前記第1の出力信号(y1)の算定により少ない計算容量及び/又はより少ないメモリ量しか必要としないこととなる、請求項1又は2に記載の方法。
【請求項4】
前記第1のニューラルネットワーク(61)の少なくとも1つの層は、そのパラメータ化において前記第2のニューラルネットワーク(62)の層に相当し、前記第1のニューラルネットワーク(61)の当該層のパラメータは、前記トレーニング中に適応化されない、請求項1乃至3のいずれか一項に記載の方法。
【請求項5】
前記ステップb.及び前記ステップc.は、前記技術システム(100,200)の埋め込み型計算ユニット(45)によって実行される、請求項1乃至4のいずれか一項に記載の方法。
【請求項6】
前記ステップd.は、前記技術システム(100,200)の外部にあるコンピュータによって実行される、請求項5に記載の方法。
【請求項7】
前記第2の出力信号(y2)に基づいて、前記技術システム(100,200)の駆動制御信号(A)が算定される、請求項1乃至6のいずれか一項に記載の方法。
【請求項8】
前記センサ信号(S)は、カメラセンサ(30)によって供給され、画像を特徴付けている、請求項1乃至7のいずれか一項に記載の方法。
【請求項9】
前記技術システム(100)は、少なくとも部分的に自動化された車両(100)又はロボット(200)である、請求項1乃至8のいずれか一項に記載の方法。
【請求項10】
請求項1乃至9のいずれか一項に記載の方法を実施するように構成されているトレーニング装置(140)。
【請求項11】
コンピュータプログラムであって、当該コンピュータプログラムがプロセッサ(45,145)によって実行されるときに、請求項1乃至9のいずれか一項に記載の方法が実施されるように構成されているコンピュータプログラム。
【請求項12】
請求項11に記載のコンピュータプログラムが記憶されている機械可読記憶媒体(46,146)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ニューラルネットワークをトレーニングするための方法、トレーニング装置、コンピュータプログラム、及び、機械可読記憶媒体に関する。
【背景技術】
【0002】
発明の利点
特にセーフティクリティカルな(安全上重要な)技術システムにおける機械学習システムの開発、特にニューラルネットワークの開発は、動作中に機械学習システムによって下された決定が不所望の及び/又は危険な結果をもたらさないことを保証するための厳格なテストストラテジを生じさせる。
【0003】
機械学習システムは、データに基づいて自身の決定を算定するので、公知の方法は、先ず、対応する技術システムの煩雑な複数回のテスト測定(英語:test runs又はvalidation runs)によってデータを収集し、続いて、これらのデータを、例えば、技術システムから外部の計算センタへ伝送しなければならず、その後、この外部の計算センタ内において機械学習システムの挙動を分析及び/又は適応化することができるようになることを示している。
【0004】
こうした手法は、上述したニューラルネットワークの緩慢な開発サイクル、さらに、膨大な量のデータの伝送の必要を生じさせる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
2つの制限を少なくとも改善すること、即ち、機械学習システムのより迅速な開発サイクルを可能にし、その際に伝送されるデータの量を低減することが望ましい。
【課題を解決するための手段】
【0006】
独立請求項1の特徴を備えた方法の利点は、より迅速な開発サイクルが可能となり、かつ、伝送されるデータの量の低減が可能となるように、ニューラルネットワークをトレーニングすることができることにある。
【0007】
発明の開示
第1の態様においては、本発明は、技術システムのセンサ信号に基づいて当該センサ信号に関する分類及び/又は回帰結果を特徴付ける出力信号を算定するように構成されている第1のニューラルネットワークをトレーニングするための方法であって、
a.技術システムの動作中に当該技術システムのセンサ信号を受信するステップと、
b.第1のニューラルネットワークにより、センサ信号に基づいて第1の出力信号を算定するステップと、
c.第1のニューラルネットワークとは別のアーキテクチャを有する第2のニューラルネットワークにより、センサ信号に基づいて第2の出力信号を算定するステップと、
d.第1のニューラルネットワークのパラメータを適応化することによって第1のニューラルネットワークをトレーニングするステップであって、第1のニューラルネットワークは、第2の出力信号に依存してトレーニングされる、ステップと、
を含む方法に関する。
【0008】
本方法の各ステップは、特にコンピュータによって実行することができ、即ち、本方法は、特に、コンピュータ実装された方法とすることができる。
【0009】
本方法は、例えば、技術システムの動作中に第2のニューラルネットワークを使用して、第2のニューラルネットワークが技術システムにより測定されたセンサ信号に基づきこの技術システムによって実行されるべきアクションを特徴付ける出力信号を算定することによって技術システムの挙動を制御することとして理解することができる。第2のニューラルネットワークと並行して、第1のニューラルネットワークも同様に出力信号を算定することができ、この出力信号と第2のニューラルネットワークの出力信号とを比較することができる。
【0010】
センサ信号は、第1のニューラルネットワークの入力又は第2のニューラルネットワークの入力として理解することができる。ニューラルネットワークによる、センサ信号に基づく出力信号の算定は、特に、ニューラルネットワークがセンサ信号を入力として受け取り、このセンサ信号を処理し、この処理によってニューラルネットワークから出力される出力信号を算定することとして理解することができる。
【0011】
センサ信号は、特に、例えば、カメラのような光学センサ、LiDARセンサ又はサーマルカメラ、及び、レーダセンサ、超音波センサ又は圧電センサであるセンサの信号として理解することができる。一般的に、本方法は、センサ信号を方法に供給することができるあらゆるセンサに対して使用することができる。
【0012】
第1のニューラルネットワークの出力信号及び/又は第2のニューラルネットワークの出力信号は、特にセンサ信号の分類を特徴付けることができる。代替的に又は付加的に、第1のニューラルネットワークの出力信号及び/又は第2のニューラルネットワークの出力信号は、センサ信号に関する回帰結果(即ち、実数値又は実数値ベクトル)を特徴付けることもできる。出力信号は、例えば、対象物検出及び/又はセマンティックセグメンテーションを特徴付けることもできる。
【0013】
第2のニューラルネットワークは、特に、例えば、上述した方法とは別の開発ストラテジ及び/又はテストストラテジによって、セーフティクリティカルな技術システムにおいて使用されるように、既にリリースされているニューラルネットワークとして理解することができる。ここで、上述したことがらにより、第1のニューラルネットワークは、第2のニューラルネットワークの挙動に対応する又は少なくとも類似しているという観点において、検査可能かつ適応化可能である。ここでは、挙動とは、特に、入力として特定のセンサ信号を受け取った場合に、ニューラルネットワークがどのような出力信号を算定するかということであると理解することができる。
【0014】
本方法の目的は、技術システムの動作に介入することなく第1のニューラルネットワークを適応化することとして理解することができる。有利には、このようにして、セーフティクリティカルな技術システムにおいて、潜在的にセーフティクリティカルな技術システムへの介入を行うことなく第1のニューラルネットワークを開発及び/又はテストすることができる。
【0015】
例えば、第1の出力信号に対する第2の出力信号の距離が予め定められた閾値に達している又は予め定められた閾値を上回る場合、第1のニューラルネットワークのパラメータを適応化することができる。当該適応化は、必ずしも技術システムの計算ユニットによって実行する必要はなく、むしろ、技術システムの外部の計算ユニットにおいて実行可能である。
【0016】
こうした背景から、本方法の好ましい実施形態においては、特に、第1のニューラルネットワークのアーキテクチャと第2のニューラルネットワークのアーキテクチャとの相違により、第1のニューラルネットワークの方が第1の出力信号の算定のためにより少ない計算容量及び/又はより少ないメモリ量しか必要としないこととなる。
【0017】
発明者らは、第1のニューラルネットワークが、計算容量及びメモリ消費に関して最適化可能であり、ここで、第2のニューラルネットワークを基準として第1のニューラルネットワークのパフォーマンスを保持し得ることが当該実施形態の利点であることを確認することができた。ここで、パフォーマンスとは、ニューラルネットワークがセンサ信号に基づいて所望の出力信号を算定することができるニューラルネットワークの能力であると理解することができる。これは、ニューラルネットワークの標準化能力としても理解することができる。
【0018】
本方法は、少なくとも方法ステップa.乃至方法ステップc.が、埋め込み型計算アーキテクチャにおいて実行される場合に、特に好ましい。埋め込み型計算アーキテクチャの典型的な特徴は、通常のコンピュータと比較して大幅に低減された計算容量及び/又は大幅に低減されたメモリ量である。例えば、技術システムが、第2のニューラルネットワークにより制御される少なくとも部分的に自動化された車両又はロボットであることが想定される。これらのケースにおいては、技術システムの計算ユニットにおいて、第1のニューラルネットワークを、第2のニューラルネットワークと並行して動作させることができる。
【0019】
ニューラルネットワークのアーキテクチャとは、特に、ニューラルネットワークのモデル選択であると理解することができる。モデル選択は、特に、ニューラルネットワークの入力がどのような形式を有すべきであるか、どの層が(特にどのタイプの層が)どのような順序によりどのような層接続状態において(例えば、フィードフォワードで又はリカレントで)ニューラルネットワークの入力信号を通過させるか、及び、どのようにニューラルネットワークの出力信号を合成するかを特徴付けるものである。ニューラルネットワークのアーキテクチャは、出力信号の計算に必要な計算容量及び/又は必要メモリ量に大きい影響を及ぼすものとして理解することができる。
【0020】
本方法の好ましい実施形態においては、第1のニューラルネットワークの少なくとも1つの層が、そのパラメータ化において第2のニューラルネットワークの1つの層に相当し、第1のニューラルネットワークの層のパラメータは、トレーニング中に適応化されないことも可能である。
【0021】
パラメータ化とは、層のハイパーパラメータと層の重みとの双方を意味するものと理解されたい。したがって、当該特徴は、第2のニューラルネットワークの少なくとも1つの層が第1のニューラルネットワークの層と同一であることとして理解することができる。この場合、これらの層は、それぞれのハイパーパラメータについてもそれぞれの重みについても同一である。このことは、少なくとも1つの層が第1のニューラルネットワークと第2のニューラルネットワークとの間で共有されることとして理解することもできる。例えば、複数の層の部分区間(ニューラルネットワークの下位ネットワーク又はニューラルネットワークのサブネットワークとしても知られる)の全体が第1のニューラルネットワークと第2のニューラルネットワークとの間で共有されることも想定される。例えば、第1のニューラルネットワークは、ニューラルネットワークの最後の複数の層、例えば、最後の3つの層を変更することによる、第2のニューラルネットワークの補正を特徴付けることができる。
【0022】
本方法のこうした特徴の利点は、トレーニング中に適応化すべき層の数が少ないため、必要な計算容量及び/又は必要なメモリ量が大幅に低減されることにある。そのうえ、これにより、本方法のステップd.を埋め込み型計算アーキテクチャにおいて実行することができる。なぜなら、必要な計算容量及び/又は必要なメモリ量をこのように大幅に低減して最小化することができるからである。
【0023】
一般的に、本方法のステップd.は、ステップa.乃至ステップc.を実行するコンピュータ、即ち、好適には、技術システムの一部であるコンピュータによっても実行することができる。
【0024】
本方法の他の特徴においては、ステップd.は、技術システムの外部にあるコンピュータによって実行されるものとしてもよい。
【0025】
これは、技術システムが、例えば、第1の出力信号と第2の出力信号との差を例えば移動無線のような無線伝送媒体を用いて外部のコンピュータへ転送し、この外部のコンピュータにおいて出力信号が分析され、第1のニューラルネットワークが場合により適応化可能となることとして理解することができる。
【0026】
特に、第1の出力信号及び/又は第2の出力信号の基準が満たされている場合、第1の出力信号及び/又は第2の出力信号を技術システムの外部にあるコンピュータへ転送するように構成可能である。ここでの基準は、例えば、第1の出力信号及び/又は第2の出力信号が予め定められた閾値を超えて相互に偏差している場合にのみ、技術システムの外部にあるコンピュータへ伝達されるように構成可能である。
【0027】
特に、本方法はさらに、第2の出力信号に基づいて技術システムの駆動制御信号が算定されるように構成可能である。
【0028】
換言すれば、第2の出力信号を、技術システムのアクションを決定するための尺度として使用することができる。駆動制御信号は、例えば、技術システムのアクションを引き起こす技術システムのアクチュエータの制御に使用することができる。
【0029】
以下に、本発明の実施形態を、添付の図面を参照しながら、より詳細に説明する。
【図面の簡単な説明】
【0030】
【
図1】アクチュエータを駆動制御する制御システムの構造を示す概略図である。
【
図3】少なくとも部分的に自律型のロボットを制御する実施例を示す概略図である。
【
図4】製造システムを制御する実施例を示す概略図である。
【発明を実施するための形態】
【0031】
実施例の説明
図1は、制御システム(40)と相互作用する、環境(20)内のアクチュエータ(10)を示している。環境(20)は、好適には規則的な時間間隔で、センサ(30)、例えばカメラセンサのような光学センサにおいて検出されるが、このセンサは、例えばステレオカメラのように複数のセンサによって構成されたものであってもよい。センサ(30)のセンサ信号(S)(又は、複数のセンサの場合には、それぞれ1つのセンサ信号(S))が制御システム(40)へ伝達される。これにより、制御システム(40)は、センサ信号(S)のシーケンスを受信する。制御システム(40)は、センサ信号(S)のシーケンスから駆動制御信号(A)を算定し、この駆動制御信号(A)がアクチュエータ(10)へ伝送される。
【0032】
制御システム(40)は、任意選択手段としての受信ユニット(50)においてセンサ(30)のセンサ信号(S)のシーケンスを受信し、この受信ユニット(50)がセンサ信号(S)のシーケンスを入力信号(x)のシーケンスへと変換する(代替的に、各センサ信号(S)がそれぞれ直接に入力信号(x)として受け取られるものとしてもよい)。入力信号(x)は、例えば、センサ信号(S)の一部分又はさらに処理されたものであってよい。換言すれば、入力信号(x)は、センサ信号(S)に依存して算定される。入力信号(x)のシーケンスは、第1のニューラルネットワーク(61)に供給される。さらに、入力信号(x)のシーケンスは、第2のニューラルネットワーク(62)にも供給される。
【0033】
第1のニューラルネットワーク(61)及び第2のニューラルネットワーク(62)は、好適には、パラメータメモリ(P)に格納されており、かつ、このパラメータメモリ(P)から供給されるパラメータ(Φ1,Φ2)によってパラメータ化される。ニューラルネットワーク(61,62)は、それぞれのアーキテクチャにおいて、好適には、ニューロン数及び/又は層数及び/又は層若しくはニューロンの接続状態において異なっている。好適には、当該相違により、第1のニューラルネットワーク(61)の方が、第2のニューラルネットワーク(62)と比較して、入力信号(x)に基づいた出力の算定により少ない計算容量及び/又はより少ないメモリ量しか必要としないことになる。
【0034】
第2のニューラルネットワーク(62)は、入力信号(x)から第2の出力信号(y2)を算定する。第2の出力信号(y2)は、任意選択手段としての変換ユニット(80)に供給され、この変換ユニット(80)が、第2の出力信号(y2)から駆動制御信号(A)を算定し、アクチュエータ(10)を対応して駆動制御するために、この駆動制御信号(A)をアクチュエータ(10)に供給する。
【0035】
アクチュエータ(10)は、駆動制御信号(A)を受信し、対応して駆動制御されて対応するアクションを実行する。アクチュエータ(10)は、この場合、(必ずしも構造的に統合されていなくてよい)制御論理回路を含み得るものであり、この制御論理回路が、制御信号(A)から第2の制御信号を算定し、次いで、この第2の制御信号によってアクチュエータ(10)を駆動制御する。
【0036】
さらに、第1のニューラルネットワーク(61)は、入力信号(x)から第1の出力信号(y1)を算定する。第1の出力信号(y1)及び第2の出力信号(y2)は、好適には入力信号(x)と共に比較ユニット(70)に供給される。比較ユニット(70)は、好適には、第1の出力信号(y1)と第2の出力信号(y2)との差を算定するように構成可能である。当該差は、例えば、メトリック、例えば、ユークリッド距離によって、又は、コサイン距離のような類似性尺度によって、算定することができる。任意選択手段としての伝送(o)を用いて、例えば、5G又は6Gに基づく無線伝送(o)を用いて、算定された差を別のコンピュータへ伝送することができ、この場合、当該別のコンピュータにおいて差を検査することができる。例えば、制御システムの動作時間にわたる典型的な差値を検査することができ、これにより、第1のニューラルネットワーク(61)が第2のニューラルネットワーク(62)と比較して同一の出力信号又は少なくとも類似した出力信号を算定したかどうかに関する情報が得られる。なお、好ましくは、2つの出力信号(y1,y2)に加えて、入力信号(x)が伝送(o)の一部として共に伝送される。次いで、当該別のコンピュータが、例えば、第1のニューラルネットワーク(61)をトレーニングすることができ、又は、第1のニューラルネットワーク(61)が既にトレーニングされている場合には、さらにトレーニングすることができる。トレーニングに際して、第2の出力信号(y2)を所望の出力信号として選択することができ、入力信号(x)に関して第2の出力信号(y2)に相当する又は可能な限り類似した出力信号が算定されるように、第1のニューラルネットワーク(61)をトレーニングすることができる。好ましくは、差が予め規定された閾値を上回る場合にのみ、伝送(o)を実行することができる。
【0037】
ただし、伝送(o)を行わず、例えば勾配降下法を用いて、差と入力信号(x)とに基づいて、比較ユニット(70)が第1のニューラルネットワーク(61)を適応化することもできる。
【0038】
当該差は、好ましくは、損失関数(英語:loss function)の損失値(英語:loss value)を特徴付けることができ、ここで、損失関数は、第1の出力信号(y1)と第2の出力信号(y2)とに基づいて損失値を算定する。損失関数は、例えば、2乗ユークリッド損失関数(英語:squared Euclidean loss又はmean squared error loss)であるものとしてよい。
【0039】
他の実施形態においては、制御システム(40)は、センサ(30)を含む。さらに他の実施形態においては、制御システム(40)は、代替的に又は付加的に、アクチュエータ(10)も含む。
【0040】
さらなる好ましい実施形態においては、制御システム(40)は、少なくとも1つのプロセッサ(45)と少なくとも1つの機械可読記憶媒体(46)とを含み、この機械可読記憶媒体(46)には、少なくとも1つのプロセッサ(45)上において実行される際に、制御システム(40)に本発明に係る方法を実行させるためのコマンドが記憶されている。
【0041】
代替的な実施形態においては、アクチュエータ(10)に代えて又はこれに加えて、ディスプレイユニット(10a)が設けられている。
【0042】
図2は、第1のニューラルネットワーク(61)及び第2のニューラルネットワーク(62)に関する制御システムの一部を示している。それぞれのネットワークは、ニューロン(N)を含み、このニューロンに基づいて、それぞれのネットワークが入力信号(x)に関してそれぞれの出力信号(y
1,y
2)を算定する。ニューラルネットワーク(61,62)のニューロン(N)は、好適にはそれぞれ層(61
1,61
2,61
3,61
4,62
1,62
2,62
3,62
4,62
5)内に配置されている。第2のニューラルネットワーク(62)は、第2の出力信号(y
2)を算定するために、より多くのニューラル及びより多くのニューロン(N)間の接続を含むため、より少ないニューロン(N)及びより少ないニューロン間の接続を有する第1のニューラルネットワーク(61)と比較して、必要メモリ量及び計算容量が増大する。
【0043】
好ましくは、この実施例においては、第1のニューラルネットワーク(61)が、第2のニューラルネットワーク(62)の層(622)の出力に基づいて第1の出力信号(y1)を算定することも可能である。このことは、特に、第1のニューラルネットワーク(61)及び第2のニューラルネットワーク(62)のアーキテクチャの一部が同等である場合に、例えば、同等のパラメータ化の層及び同一のパラメータ値を含む場合に、実行可能となる。この実施例においては、このことは、第1のニューラルネットワーク(61)の最初の2つの層(611,612)について、又は、第2のニューラルネットワークの最初の2つの層(621,622)について、当てはまる。したがって、好適には、第2のニューラルネットワーク(62)の第2の層(622)の出力を直接に第1のニューラルネットワーク(61)の第3の層(613)のための入力として使用することができる。このことは、図中においては、略記号(SC)によって示されている。この場合、第1のニューラルネットワーク(61)が入力信号(x)を最初の2つの層(611,612)を通して導く必要はない。なぜなら、この実施例においては、最初の2つの層(611,612,621,622)が同一であるため、第2の層(612)において算定される出力が第2のニューラルネットワーク(62)の第2の層(622)の出力に相当するからである。このようにすれば、同様の結果をもたらすはずの計算演算を省略することができる。
【0044】
第1のニューラルネットワーク(61)におけるいわゆる「飛び越された」層(61
1,61
2)は、特に第1のニューラルネットワーク(61)のトレーニング中に考慮されず、従って、そのパラメータが適応化されない可能性がある。代替的に、第1のニューラルネットワーク(61)の最初の2つの層(61
1,61
2)のトレーニングのために、第2のニューラルネットワーク(62)の最初の2つの層(62
1,62
2)からの勾配をコピーすることができる。トレーニングのこのような特徴は、他のアーキテクチャにも適用することができ、
図2に示した具体的な実施例に限定されるものではない。
【0045】
図3は、少なくとも部分的に自律型のロボット、ここでは少なくとも部分的に自律型の自動車(100)を制御するために、制御システム(40)をどのように使用することができるかを示している。
【0046】
センサ(30)は、例えば、好適には自動車(100)内に配置されたビデオセンサであり得る。
【0047】
第2のニューラルネットワーク(62)は、入力画像(x)において検出可能な対象物を識別するように、即ち、対象物検出を実行するように構成されている。
【0048】
好適には自動車(100)に配置されているアクチュエータ(10)は、例えば、自動車(100)のブレーキ、駆動機構又はステアリング部であるものとしてよい。このとき、特に対象物が所定のクラスの対象物、例えば歩行者である場合、自動車(100)と、例えば第2のニューラルネットワーク(62)によって識別された対象物との衝突が阻止されるように、1つ又は複数のアクチュエータ(10)を駆動制御すべく、駆動制御信号(A)を算定することができる。
【0049】
代替的に又は付加的に、駆動制御信号(A)によってディスプレイユニット(10a)を駆動制御することができ、例えば識別された対象物を表示することができる。また、自動車(100)と、識別された複数の対象物のうちのいずれかとの衝突が切迫していると判定された場合には、ディスプレイユニット(10a)を駆動制御信号(A)により駆動制御して、光学的又は音響的な警告信号を出力させることも想定される。警告信号を用いた警告は、触覚的な警告信号を用いて、例えば自動車(100)のステアリングホイールのバイブレーションによっても行うこともできる。
【0050】
代替的に、少なくとも部分的に自律型のロボットは、他の移動ロボット(図示せず)、例えば、飛行、泳行、潜行又は歩行により移動するロボットであるものとしてもよい。移動ロボットは、例えば、少なくとも部分的に自律型の芝刈り機又は少なくとも部分的に自律型の掃除ロボットであるものとしてよい。こうした場合においても、少なくとも部分的に自律型のロボットと、例えば第2のニューラルネットワーク(62)によって識別された対象物との衝突が阻止されるように、移動ロボットの駆動機構及び/又はステアリング部を駆動制御すべく、駆動制御信号(A)を算定することができる。
【0051】
図4は、製造システム(200)の製造機械(11)を操作するアクチュエータ(10)が駆動制御されることにより、制御システム(40)が製造機械(11)の駆動制御のために使用される実施例が示されている。製造機械(11)は、例えば、打ち抜き、鋸断、穿孔、及び/又は、切断を行う機械であるものとしてよい。また、製造機械(11)がグリッパを用いて製造製品(12a,12b)を把持するように構成されていることも想定される。
【0052】
この場合、センサ(30)は、例えば、製造製品(12a,12b)を載置することができるコンベヤベルト(13)の搬送面を検出するビデオセンサであるものとしてよい。第2のニューラルネットワーク(62)は、例えばコンベヤベルト上の製造製品(12a,12b)の位置を算定するように構成可能である。この場合、製造機械(11)を操作するアクチュエータ(10)を、製造製品(12a,12b)の算定された位置に依存して駆動制御することができる。例えば、アクチュエータ(10)は、製造製品(12a,12b)の予め定められた個所において製造製品(12a,12b)の打ち抜き、鋸断、穿孔、及び/又は、切断が行われるように駆動制御可能である。
【0053】
さらに、第2のニューラルネットワーク(62)を、製造製品(12a,12b)の位置に代えた又はこれに加えた他の特性を算定するように構成することも想定される。特に、製造製品(12a,12b)が欠陥を有するかどうか及び/又は損傷しているかどうかを第2のニューラルネットワーク(62)が判定することが想定される。この場合、製造機械(11)が、欠陥を有する及び/又は損傷した製造製品(12a,12b)を選別除去するように、アクチュエータ(10)を駆動制御することができる。
【0054】
図5は、トレーニングデータセット(T)を用いて第1のニューラルネットワーク(61)をトレーニングするためのトレーニングシステム(140)の一実施例を示している。トレーニングデータセット(T)は、第1のニューラルネットワーク(61)のトレーニングに使用される複数の入力信号(x
i)を含み、ここで、トレーニングデータセット(T)はさらに、それぞれの入力信号(x
i)に対して、この入力信号(x
i)に対応する所望の出力信号(t
i)を含む。
【0055】
トレーニングに際して、トレーニングデータユニット(150)は、コンピュータに実装されたデータベース(St2)にアクセスする。データベース(St2)は、それぞれ、制御システム(40)から伝達された伝送(o)を含む。当該伝送(o)に基づいて、トレーニングデータユニット(150)はトレーニングデータセット(T)を呼び出し、入力信号(xi)に対して所望の出力信号(ti)としての第2の出力信号を供給する。好適には、トレーニングデータセット(T)は、制御システム(40)によって伝送されたすべての伝送(o)を含む。
【0056】
トレーニングデータユニット(150)は、トレーニングデータセット(T)から、少なくとも1つの入力信号(xi)とこの入力信号(xi)に対応する所望の出力信号(ti)とを好適にはランダムに算定し、入力信号(xi)を第1のニューラルネットワーク(61)に伝達する。第1のニューラルネットワーク(61)は、入力信号(xi)に基づいて出力信号(yi)を算定する。
【0057】
所望の出力信号(ti)及び算定された出力信号(yi)は、補正ユニット(180)へ伝達される。
【0058】
次いで、所望の出力信号(ti)と算定された出力信号(yi)とに基づいて、補正ユニット(180)により、第1のニューラルネットワーク(61)のための新たなパラメータ(Φ’)が決定される。このために、補正ユニット(180)は、所望の出力信号(ti)と算定された出力信号(yi)とを損失関数(英語:Loss Function)を用いて比較する。損失関数は、算定された出力信号(yi)が所望の出力信号(ti)からどれだけ偏差しているかを特徴付ける第1の損失値を算定する。損失関数として、この実施例においては、負の対数尤度関数(英語:negative log-likehood function)が選択される。代替的な実施例においては、他の損失関数を想定することもできる。
【0059】
算定された出力信号(yi)及び所望の出力信号(ti)がそれぞれ、例えばテンソルの形態の複数の下位信号を含み、ここで、所望の出力信号(ti)のそれぞれ1つの下位信号が、算定された出力信号(yi)の下位信号に対応することが想定される。例えば、第1のニューラルネットワーク(61)が対象物検出のために構成されており、第1の下位信号が入力信号(xi)の一部に関する対象物の出現確率をそれぞれ特徴付け、第2の下位信号が対象物の正確な位置を特徴付けることが想定される。算定された出力信号(yi)及び所望の出力信号(ti)が複数の対応する下方信号を含む場合、好適には、それぞれ対応する下方信号に対して適当な損失関数を用いて第2の損失値が算定され、算定された第2の損失値が、例えば重み付け和によって第1の損失値に適宜に結合される。
【0060】
補正ユニット(180)は、第1の損失値に基づいて新たなパラメータ(Φ’)を算定する。この実施例においては、このことは、勾配降下法、好適には、確率的勾配降下法、Adam法、又は、AdamW法によって行われる。他の実施例においては、トレーニングは、進化アルゴリズム又は2次最適化(英語:second-order Optimization)に基づくものであってよい。
【0061】
算定された新しいパラメータ(Φ’)は、モデルパラメータメモリ(St1)に記憶される。好適には、算定された新しいパラメータ(Φ’)は、パラメータ(Φ1)として第1のニューラルネットワーク(61)に供給される。
【0062】
他の好ましい実施例においては、説明しているトレーニングを予め定められた回数の反復ステップにわたって反復し、又は、第1の損失値が予め定められた閾値を下回るまで反復する。代替的に又は付加的に、テストデータセット又は検証データセットに関する平均的な第1の損失値が予め定められた閾値を下回った場合、トレーニングが終了されることも想定される。複数回の反復のうちの少なくとも1回において、以前の反復において決定された新しいパラメータ(Φ’)が、第1のニューラルネットワーク(61)のパラメータ(Φ1)として使用される。
【0063】
さらに、トレーニングシステム(140)は、少なくとも1つのプロセッサ(145)と少なくとも1つの機械可読記憶媒体(146)とを含み得るものであり、この機械可読記憶媒体(146)は、プロセッサ(145)によって実行される際にトレーニングシステム(140)に本発明の態様のうちの1つによるトレーニング方法を実行させるための命令を含む。
【0064】
トレーニングシステム(140)は、好ましくは、制御システム(40)から物理的に分離されている。2つのシステムは、例えばそれぞれのステップシーケンスを実行するための別個のコンピュータを含む。トレーニングシステム(140)と制御システム(40)とは、例えば、LAN又はインターネットのようなネットワーク接続を介して相互に通信することができる。当該方法においては、移動無線及び/又はワイヤレスの伝送路も同様に可能である。
【0065】
「コンピュータ」なる用語には、設定可能な計算規則を処理する任意の装置が含まれる。この計算規則は、ソフトウェアの形態で又はハードウェアの形態で又はソフトウェアとハードウェアとの混合形態で存在し得る。
【0066】
一般的に、複数形は、インデクスと理解することができ、即ち、複数の要素のうちのそれぞれの要素に、一義的なインデクス、好適には複数形に含まれる要素に対する連続する整数が割り当てられる。好適には、複数形がN個の要素を含み、ここでNが複数の要素の個数である場合、各要素に1乃至Nの整数が割り当てられる。
【外国語明細書】