(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-09-14
(54)【発明の名称】人工ニューラルネットワークのよりロバストなトレーニング
(51)【国際特許分類】
G06N 3/08 20060101AFI20220907BHJP
G06N 20/00 20190101ALI20220907BHJP
G06N 99/00 20190101ALI20220907BHJP
【FI】
G06N3/08
G06N20/00
G06N99/00 180
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022501013
(86)(22)【出願日】2020-06-17
(85)【翻訳文提出日】2022-02-07
(86)【国際出願番号】 EP2020066772
(87)【国際公開番号】W WO2021004741
(87)【国際公開日】2021-01-14
(31)【優先権主張番号】102019210167.4
(32)【優先日】2019-07-10
(33)【優先権主張国・地域又は機関】DE
(81)【指定国・地域】
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】フランク シュミット
(72)【発明者】
【氏名】トルステン ザクセ
(57)【要約】
複数の処理ユニット(2)を含む人工ニューラルネットワークKNN(1)を訓練するための方法(100)であって、KNN(1)が学習入力量値(11a)をコスト関数(16)に従って可能な限り良好に対応する学習出力量値(13a)へマッピングする目的で、KNN(1)の挙動を特徴付けるパラメータ(12)を最適化し(110)、少なくとも1つの処理ユニット(2)の出力(2b)にランダム値xを乗算し(112)、続いて少なくとも1つの他の処理ユニット(2’)に入力(2a)として供給し(113)、ランダム値xは、|x-q|の増加につれて減少する、|x-q|の指数関数を含む確率密度関数(4a)によって確率変数(4)から取り出され(111)、ここで、qは、任意に選択可能な位置パラメータであり、指数関数の引数における|x-q|は、k≦1として、冪乗|x-q|kに含まれる、方法に関する。人工ニューラルネットワークKNN(1)を訓練して動作させる方法(200)にも関する。
【特許請求の範囲】
【請求項1】
複数の処理ユニット(2)を含む人工ニューラルネットワークKNN(1)を訓練するための方法(100)であって、
前記KNN(1)が学習入力量値(11a)をコスト関数(16)に従って可能な限り良好に対応する学習出力量値(13a)へマッピングする目的で、前記KNN(1)の挙動を特徴付けるパラメータ(12)を最適化し(110)、
少なくとも1つの処理ユニット(2)の出力(2b)にランダム値xを乗算し(112)、続いて少なくとも1つの他の処理ユニット(2’)に入力(2a)として供給し(113)、
前記ランダム値xは、予め定められた確率密度関数(4a)によって確率変数(4)から取り出され(111)、
前記確率密度関数(4a)は、|x-q|の増加につれて減少する、|x-q|の指数関数に比例し、ここで、qは、任意に選択可能な位置パラメータであり、指数関数の引数における|x-q|は、k≦1として、冪乗|x-q|
kに含まれる、
方法(100)。
【請求項2】
前記確率密度関数(4a)は、ラプラス分布関数である、
請求項1に記載の方法(100)。
【請求項3】
前記ラプラス分布関数の前記確率密度L
b(x)は、
【数1】
かつ0≦p<1として、
【数2】
によって与えられる、
請求項2に記載の方法。
【請求項4】
前記KNNは、複数のレイヤ(3a~3c)から構築されており、少なくとも1つのレイヤ(3a~3c)における前記処理ユニット(2)に対して、前記ランダム値xは、同一の確率変数(4)から取り出される(111a)、
請求項1乃至3のいずれか一項に記載の方法(100)。
【請求項5】
・トレーニング後、訓練されたKNN(1
*)が検証入力量値(11b)を対応する検証出力量値(13b)へマッピングする際の精度(14)を算定し(120)、
・前記パラメータ(12)のそれぞれランダムな初期化(12a)によってトレーニングを複数回反復し(130)、
・個々のトレーニング後にそれぞれ算定された精度(14)にわたる分散度を当該トレーニングのロバストネス(15)の尺度として算定する(140)、
請求項1乃至4のいずれか一項に記載の方法(100)。
【請求項6】
前記指数関数における|x-q|の最大冪k又は前記ラプラス確率密度L
b(x)の値pは、トレーニングのロバストネス(15)を改善する目的で最適化される(150)、
請求項5に記載の方法(100)。
【請求項7】
前記KNN(1)のアーキテクチャを特徴付ける少なくとも1つのハイパーパラメータが、トレーニングのロバストネス(15)を改善する目的で最適化される(160)、
請求項5又は6に記載の方法(100)。
【請求項8】
前記ランダム値xは、前記KNN(1)のトレーニングステップ中はそれぞれ一定に維持され(111b)、各トレーニングステップ間に新たに前記確率変数(4)から取り出される(111c)、
請求項1乃至7のいずれか一項に記載の方法(100)。
【請求項9】
前記KNN(1)は、分類器及び/又は回帰分析器として構成されている、
請求項1乃至8のいずれか一項に記載の方法(100)。
【請求項10】
人工ニューラルネットワークKNN(1)を訓練して動作させる方法(200)であって、
・前記KNN(1)を、請求項1乃至9のいずれか一項に記載の方法(100)によって訓練し(210)、
・物理的な測定プロセスによって及び/又は前記測定プロセスの部分的な若しくは完全なシミュレーションによって及び/又は前記測定プロセスによって監視可能な技術システムの部分的な若しくは完全なシミュレーションによって得られた測定データを、訓練されたKNN(1
*)に入力量値(11)として供給し(220)、
・前記訓練されたKNN(1
*)から送出された出力量値(13)に依存して、駆動制御信号(5)を形成し、
・車両(50)及び/又は分類システム(60)及び/又は大量生産される製品の品質管理システム(70)及び/又は医用撮像システム(80)を、駆動制御信号(5)によって駆動制御する(230)、
方法(200)。
【請求項11】
KNN(1)の挙動を特徴付けるパラメータ(12)を含むパラメータセットであって、請求項1乃至9のいずれか一項に記載の方法(100)によって得られるパラメータセット。
【請求項12】
1つ又は複数のコンピュータによって実行されるときに、前記1つ又は複数のコンピュータに、請求項1乃至10のいずれか一項に記載の方法(100,200)を実施させるための機械可読命令を含むコンピュータプログラム。
【請求項13】
請求項11に記載のパラメータセット及び/又は請求項12に記載のコンピュータプログラムを含む機械可読データ担体及び/又はダウンロード製品。
【請求項14】
請求項11に記載のパラメータセット、請求項12に記載のコンピュータプログラム、及び/又は、請求項13に記載の機械可読データ担体及び/又はダウンロード製品を含むコンピュータ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、例えば分類器及び/又は回帰分析器として使用される人工ニューラルネットワークのトレーニングに関する。
【背景技術】
【0002】
従来技術
人工ニューラルネットワークKNN(英略号:ANN)は、パラメータセットによって設定された挙動プロトコルに従って入力量値を出力量値へマッピングするように構成されている。挙動プロトコルは、言語規則の形態ではなく、パラメータセット内のパラメータの数値によって定められている。パラメータは、KNNのトレーニングの際に、KNNが学習入力量値を可能な限り良好に対応する学習出力量値へマッピングするように最適化される。以降、KNNにおいては、トレーニングの際に獲得された知識が適当に一般化されることが期待される。よって、入力量値は、その後トレーニングにおいて発生しなかった未知の状況に関連する場合にも、それぞれの用途に必要な出力量値へマッピングされなければならない。
【0003】
KNNのこうしたトレーニングの際には、基本的に、オーバーフィッティングの危険が存在する。これは、KNNが学習入力量値から学習出力量値への正しいマッピングをより大きい完全性により「暗記学習する」ことと引き換えに、新たな状況への一般化が損なわれることを意味する。
【0004】
(G.E.Hinton, N.Srivastava, A.Krizevsky, I.Sutskever, R. S. Salakhutdinov,“Improving neural networks by preventing co-adaptation of feature detectors”, arXiv:1207.0580 (2012))には、オーバーフィッティングを抑制し、トレーニングの際に獲得された知識のより良好な一般化を達成するために、トレーニングの際にそれぞれランダム方式に従って利用可能な処理ユニットの1/2が不活性化(「ドロップアウト」)されることが開示されている。
【0005】
(S.I.Wang, C.D.Manning,“Fast dropout training”, Proceedings of the 30th International Conference on Machine Learning (2013))には、処理ユニットが完全には不活性化されず、ガウス分布から得られたランダム値と乗算されることが開示されている。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】G.E.Hinton, N.Srivastava, A.Krizevsky, I.Sutskever, R. S. Salakhutdinov,“Improving neural networks by preventing co-adaptation of feature detectors”, arXiv:1207.0580 (2012)
【非特許文献2】S.I.Wang, C.D.Manning,“Fast dropout training”, Proceedings of the 30th International Conference on Machine Learning (2013)
【発明の概要】
【課題を解決するための手段】
【0007】
発明の開示
本発明の範囲において、人工ニューラルネットワークKNN(英略号:ANN)を訓練するための方法が開発されている。当該KNNは、例えば、KNNのニューロンに対応し得る複数の処理ユニットを含む。当該KNNは、入力量値をそれぞれの用途の意味において有意な出力量値へマッピングするために用いられる。
【0008】
ここで、「値」なる概念は、それぞれ次元に関して限定的なものではないと理解されたい。従って、画像は、例えば、個々のピクセルの強度値のそれぞれ1つずつの2次元アレイを有する3つの色平面から成るテンソルとして存在し得る。KNNは、当該画像の全体を入力量値として取り出し、これに例えば出力量値として分類のベクトルを割り当てることができる。当該ベクトルは、例えば分類の各クラスに対して示すことができ、その確率又は信頼度で対応するクラスのオブジェクトが画像内に存在する。ここでの画像は、例えば、少なくとも8×8ピクセル、16×16ピクセル、32×32ピクセル、64×64ピクセル、128×128ピクセル、256×256ピクセル又は512×512ピクセルのサイズを有し得るものであり、撮像センサ、例えば、ビデオセンサ、超音波センサ、レーダセンサ又はLidarセンサ又はサーモカメラによって撮影されたものであってよい。KNNは、特に、ディープニューラルネットワークであるものとしてよく、従って、少なくとも2つの隠れレイヤを含む。処理ユニットの数は、好適には大きく、例えば、1000個超、好ましくは10000個超である。
【0009】
KNNは、特に、算定された出力量値に依存して車両及び/又はロボット及び/又は生産機械及び/又はワークツール及び/又は監視カメラ及び/又は医用撮像システムを相応に駆動制御するための駆動制御信号を形成する制御システムに埋め込み可能である。
【0010】
トレーニングの際には、KNNの挙動を特徴付けるパラメータが最適化される。こうした最適化の目的は、KNNが学習入力量値をコスト関数に従って可能な限り良好に対応する学習出力量値へマッピングすることである。
【0011】
少なくとも1つの処理ユニットの出力にはランダム値xが乗算され、これが、続いて少なくとも1つの他の処理ユニットに入力として供給される。ここで、ランダム値xは、予め定められた確率密度関数によって確率変数から取り出される。このことは、確率変数からの取り出しの際にそれぞれ1つずつの新たなランダム値xが生じることを意味する。充分に大きい数のランダム値xが取り出されると、観察されている当該ランダム値xの頻度が近似的に予め定められた確率密度関数をマッピングする。
【0012】
確率密度関数は、絶対値が|x-q|の増加につれて減少する、|x-q|の指数関数に比例する。当該指数関数の引数における|x-q|は、k≦1として、冪乗|x-q|kに含まれる。ここで、qは、確率変数の中央値の位置を定める、任意に選択可能な位置パラメータである。
【0013】
驚くべきことに、オーバーフィッティングの傾向が上述した従来技術の方法に比較してさらに良好に抑制されることが認識された。これは、このようにして訓練されたKNNが、それまで未知であった状況に関する入力量値が当該KNNに到来した場合にも、それぞれの用途の目的により設けられる出力量値を算定することができる状態にあることを意味する。
【0014】
KNNが特段の尺度でその一般化のための能力を確保しなければならない用途には、公共道路交通における車両の少なくとも部分的な自動運転がある。試験までに大抵の場合50時間弱の操縦を行って1000km未満を走破する人間の運転者の修練と同様に、KNNも制限された状況セットにおけるトレーニングを受けることになる。ここで、制限の要因は、学習入力量値、例えば車両環境からのカメラ画像を学習出力量値、例えば画像内の可視のオブジェクトの分類によって「ラベリング」することが、多くの場合に人間の作業を必要とし、相応に高価となることである。同様に、確実性にとって必須なのは、後から交通に参入してくる特異な設計の自動車も自動車として認識されること、及び、気付かれにくいデザインの衣服を身に着けている歩行者が自由に走行可能な平面として分類されないようにすることである。
【0015】
従って、オーバーフィッティングの良好な抑制により、このようなまた別の安全性に関連する用途において、KNNから出力される出力量値が高度に信頼し得るものとなり、同等の安全性レベルを達成するのにわずかな量の学習データしか必要でなくなる。
【0016】
さらに、オーバーフィッティングの良好な抑制により、トレーニングのロバストネスも改善される効果が得られる。技術的に重要なロバストネスの基準は、トレーニング結果の品質がトレーニングに由来する出力状態にどの程度依存しているかということである。よって、KNNの挙動を特徴付けるパラメータは、通常、ランダムに初期化され、その後連続的に最適化される。多くの用途、例えば「敵対的生成ネットワーク」を用いた、例えばそれぞれ異なる画像スタイルを表現したドメイン間の画像の転送においては、ランダムな初期化から開始されるトレーニングが最終的に必要な結果を送出するかどうかの予測が困難となり得る。ここで、出願人の試験では、それぞれの用途のトレーニング結果が必要となるまで、しばしば複数回の試行が必要となることが判明している。
【0017】
オーバーフィッティングの良好な抑制により、この状況における成果のない試行にかかる計算時間、ひいてはエネルギ及び費用も節約される。
【0018】
オーバーフィッティングの良好な抑制の要因は、学習入力量値に含まれる、KNNの一般化のための能力に依存する分散度が処理ユニットのランダムな影響によって増加させられることである。上述した特性を有する確率密度関数は、ここでは、学習出力量値による学習入力量値の「ラベリング」において具現化されてトレーニングに使用された「グラウンドトゥルース」についての異論の少ない処理ユニットの影響を生成するという有利な作用を有する。
【0019】
|x-q|の冪乗|x-q|kを指数k≦1に限定することにより、特段の尺度でトレーニング時の特異点の発生に対抗する作用が生じる。トレーニングはしばしばコスト関数に関する勾配降下法によって行われる。このことは、KNNの挙動を特徴付けるパラメータがコスト関数の良好な値において予測される方向において最適化される。ただし、勾配の形成には、指数k>1で行われる微分が必要であり、このため、0の周囲の絶対値関数は、微分することができない。
【0020】
特に有利な一構成においては、確率密度関数は、ラプラス分布関数である。当該関数は、その中心に先鋭のピーク最大値を有しているが、確率密度は、当該最大値においても一定である。最大値は、例えば、ランダム値xが1であることを表すことができ、即ち、或る処理ユニットの出力を入力として他の処理ユニットへ変化なしに転送することができる。この場合、最大値の周囲には、1に近い多数のランダム値xが集中している。このことは、多数の処理ユニットの出力がわずかしか修正されないことを意味する。このように、学習出力量値による学習入力量値の「ラベリング」において得られる知識に対する言及した異論は抑制される。
【0021】
特に、ラプラス分布関数の確率密度L
b(x)は、例えば、
【数1】
かつ0≦p<1として、
【数2】
によって与えられ得る。
【0022】
ここで、qは、上述したように、任意に選定可能なラプラス分布の位置パラメータである。当該位置パラメータが例えば1にセットされると、確率密度の最大値Lb(x)は、上述したようにx=1により仮定される。ラプラス分布のスケーリングパラメータbは、パラメータpによって表現され、これにより、設定された用途にとって有意な範囲が0≦p<1へ正規化される。
【0023】
特に有利な一構成においては、KNNは複数のレイヤから構築されている。少なくとも1つのレイヤ内の、上述したような出力とランダム値xとの乗算を行う処理ユニットにおいては、ランダム値xが同一の確率変数から取り出される。ランダム値xの確率密度がラプラス分散されている上述した実施例においては、このことは、総ての処理ユニットの値pが少なくとも1つのレイヤにおいて均等であることを意味する。このことは、KNNのレイヤが入力量値のそれぞれ異なる処理段を表し、各レイヤの複数の処理ユニットによって処理が集中的に並列化されるという事情を斟酌している。
【0024】
例えば、KNNの複数のレイヤは、画像内の特徴を識別するように構成されており、種々の複雑性を有する特徴の識別に用いられる。従って、例えば第1のレイヤにおいては、基本要素が識別可能であり、これに続く第2のレイヤにおいては、基本要素から成る特徴が識別可能である。
【0025】
このように、1つのレイヤの種々の処理ユニットが同様の種類のデータによって動作するので、1つのレイヤの内部におけるランダム値xによる出力の変化を同一の確率変数から引き出すと有利である。この場合、1つのレイヤの内部の異なる出力は、通常、異なるランダム値xによって変化している。ただし、1つのレイヤの内部で取り出される総てのランダム値xは、同一の確率密度関数に従って分布する。
【0026】
特に有利な他の一構成においては、トレーニング後、訓練されたKNNが検証入力量値を対応する検証出力量値へマッピングする際の精度が算定される。トレーニングは、パラメータのそれぞれランダムな初期化によって複数回反復される。
【0027】
ここで、特に有利には、検証入力量値のうちの多数又は最良には総てが学習入力量値のセットに含まれない。この場合、精度の算定は、条件に応じたKNNのオーバーフィッティングによる影響を受けない。
【0028】
個々のトレーニング後にそれぞれ算定された精度にわたる分散度は、当該トレーニングのロバストネスの尺度として算定される。精度の相互の差が小さくなるにつれて、ここでの尺度の意味におけるロバストネスがより良好となる。
【0029】
種々のランダムな初期化から開始されるトレーニングがKNNの挙動を特徴付ける同一又は類似のパラメータを終了時に生じさせることは保証されていない。連続して開始された2つのトレーニングがパラメータの完全に異なるセットを結果として送出することもある。ただし、2つのパラメータセットによって特徴付けられるKNNが検証データセットの適用の際に定性的に類似した挙動を呈することは保証される。
【0030】
説明している手法における精度の定性的測定から、KNN及び/又はそのトレーニングの最適化のためのさらなる起点が得られる。特に有利な他の一構成においては、指数関数における|x-q|の最大冪k又はラプラス確率密度Lb(x)の値pのいずれかが、トレーニングのロバストネスを改善する目的で最適化される。このように、トレーニングは、最大冪k又は値pと用途との間の具体的な相互作用を予め既知とする必要なく、KNNの意図された用途に合わせてさらに良好に調整可能となる。
【0031】
特に有利な他の一構成においては、KNNのアーキテクチャを特徴付ける少なくとも1つのハイパーパラメータが、トレーニングのロバストネスを改善する目的で最適化される。ハイパーパラメータは、例えば、KNNのレイヤの数及び/又はレイヤのタイプ及び/又は各レイヤ内の処理ユニットの数に関連するものとしてよい。これにより、KNNのアーキテクチャに関して、人間による開発作業を少なくとも部分的に自動の機械作業によって置き換える手段も得られる。
【0032】
有利には、ランダム値xは、KNNのトレーニングステップ中はそれぞれ一定に維持され、各トレーニングステップ間に新たに確率変数から取り出される。トレーニングステップは、特に、学習入力量値の少なくとも1つのサブセットを処理して出力量値とし、当該出力量値をコスト関数に従って学習出力量値と比較して、そこから得られた知識を、KNNの挙動を特徴付けるパラメータへフィードバックすることを含み得る。この場合、当該フィードバックは、例えば、KNNを通した連続的なバックプロパゲーションによって行うことができる。特に、こうしたバックプロパゲーションにおいては、各処理ユニットにおけるランダム値xが入力量値の処理の途中で使用されたものに等しい場合に有意である。この場合、処理ユニットによって表現される関数のうちバックプロパゲーションにおいて利用される導関数は、途中で使用される関数に対応する。
【0033】
特に有利な一構成においては、KNNは、分類器又は回帰分析器として構成されている。分類器は、KNNがトレーニングにおいて遭遇しなかった新たな状況においてより高い確率で具体的な用途の意味における正しい分類を送出する、改善されたトレーニングをもたらす。これと同様に、回帰分析器は、回帰分析により探索された少なくとも1つの量の具体的な用途の意味における正しい値に近似する(1次元又は多次元の)回帰値を送出する。
【0034】
こうした手法により改善された結果は、あらためて技術システムにおいて有利に作用させることができる。従って、本発明は、KNNを訓練して動作させるための組合せ方法にも関する。
【0035】
当該方法においては、KNNが、上述した方法によって訓練される。訓練されたKNNには、続いて測定データが供給される。当該測定データは、物理的な測定プロセスによって及び/又は当該測定プロセスの部分的な若しくは完全なシミュレーションによって及び/又は当該測定プロセスによって監視可能な技術システムの部分的な若しくは完全なシミュレーションによって得られたものである。
【0036】
まさにこうした測定データにつき、KNNのトレーニングに使用された学習データには含まれていなかった配置構成が頻繁に生じることが判明している。例えば、カメラによって観察されたシーンが撮影された画像の強度値へどのように変換されるかについては、きわめて多数の要因が影響している。従って、同一のシーンが種々の時点において観察される場合、確実に近い確率で、同一でない画像が撮影される。よって、訓練されたKNNの利用時に生じる各画像は、少なくとも所定の程度、KNNのトレーニング時に使用された画像とは異なっていることが予測される。
【0037】
訓練されたKNNは、例えば分類及び/又は回帰分析においてと同様に、入力量値として得られた測定データを出力量値へマッピングする。当該出力量値に依存して駆動制御信号が形成され、車両及び/又は分類システム及び/又は大量生産される製品の品質管理システム及び/又は医用撮像システムが当該駆動制御信号によって駆動制御される。
【0038】
このことに関連して、改善されたトレーニングは、各用途の事情において、及び、測定データを表すその時点におけるシステム状態の事情において選定されたそれぞれの技術システムの駆動制御がより高い確率により起動されるという作用を有する。
【0039】
トレーニングの結果は、KNNの挙動を特徴付けるパラメータとして具現化される。こうしたパラメータを含む、上述した方法によって得られたパラメータセットは、KNNを訓練された状態へ移行させるために直接的に使用可能である。特に、上述したトレーニングによって改善された挙動を有するKNNは、パラメータセットを一旦生じさせると、任意の多様化が可能となる。従って、パラメータセットは、固有に購買可能な製品となる。
【0040】
説明している方法は、完全に又は部分的にコンピュータ実装可能である。従って、本発明は、1つ又は複数のコンピュータによって実行されるときに、説明している方法を1つ又は複数のコンピュータに実行させるための機械可読命令を含むコンピュータプログラムにも関する。この意味において、同様に機械可読命令を実行させることが可能な車両用制御装置及び技術装置用エンベデッドシステムも、コンピュータとみなすことができる。
【0041】
同様に、本発明は、コンピュータプログラムを含む機械可読データ担体及び/又はダウンロード製品に関する。ダウンロード製品は、データネットワークを介して伝送可能なデジタル製品、即ち、データネットワークのユーザがダウンロード可能なデジタル製品であり、例えば、直接のダウンロードのためにオンラインショップに提供可能なものであってよい。
【0042】
さらに、コンピュータは、パラメータセット、コンピュータプログラム、及び/又は、機械可読データ担体及び/又はダウンロード製品を含み得る。
【0043】
本発明を改善するさらなる措置を、以下に、本発明の好ましい実施例の説明と共に、図面に即して詳細に示す。
【図面の簡単な説明】
【0044】
【
図1】KNN1を訓練するための方法100の実施例を示す図である。
【
図2】複数のレイヤ3a~3cを有するKNN1内の処理ユニット2の出力2bの変化を例示する図である。
【
図3】KNN1を訓練し、このように訓練されたKNN1
*を動作させるための組合せ方法200の実施例を示す図である。
【発明を実施するための形態】
【0045】
実施例
図1は、KNN1を訓練するための方法100の一実施例のフローチャートである。ステップ110において、アーキテクチャにおいて定められたKNN1のパラメータ12が、学習入力量値11aをコスト関数16に従って可能な限り良好に学習出力量値13aにマッピングする目的で最適化される。結果として、KNN1は、最適化されたパラメータ12
*によって特徴付けられる訓練された状態1
*へ移行する。
【0046】
従来技術に属するコスト関数16に従った最適化は、簡明性のために、
図1においては詳細には説明されていない。その代わりに、ボックス110内に、トレーニングの結果を改善するために、こうした公知のプロセスにどのように介入が行われるかのみが示されている。
【0047】
ステップ111においては、ランダム値xが確率変数4から取り出される。当該確率変数4は、統計的に、その確率密度関数4aによって特徴付けられている。多数のランダム値xが同一の確率変数4から取り出される場合、個々の値xが生じる確率は、平均して密度関数4aによって記述される。
【0048】
KNN1の処理ユニット2の出力2bは、ステップ112において、ランダム値xと乗算される。ステップ113においては、このようにして形成された積が、入力2aとしてKNN1の他の処理ユニット2’へ供給される。
【0049】
ここで、ブロック111aでは、KNN1のレイヤ3a~3c内において、総ての処理ユニット2に対してそれぞれ同一の確率変数4が利用可能となる。ブロック111bにおいては、学習入力量値11aから学習出力量値13へのマッピングのほか、KNN1を通した、コスト関数16によって算定される誤差の連続的バックプロパゲーションも含まれ得るKNN1のトレーニングステップ中は、ランダム値xが一定に維持可能である。この場合、ランダム値xは、ブロック111cにより、トレーニングステップ間に新たに確率変数4から取り出すことができる。
【0050】
ステップ110におけるKNN1の1回のトレーニングにより既に、技術用途におけるその挙動が改善される。こうした改善は、このようなトレーニングが複数回行われる場合に、より向上させることができる。このことは、
図1に詳細に示されている。
【0051】
ステップ120においては、トレーニング後に、訓練されたKNN1*が検証入力量値11bを対応する検証出力量値13bへマッピングする際の精度14が算定される。ステップ130においては、パラメータ12のそれぞれランダムな初期化12aによってトレーニングが複数回反復される。個々のトレーニング後にそれぞれ算定された精度14にわたる分散度が、ステップ140において、トレーニングのロバストネス15の尺度として算定される。
【0052】
こうしたロバストネス15は、それ自体が任意の方式により、KNN1の挙動に関する記述の導出のために評価可能である。ただし、ロバストネス15は、KNN1のトレーニングにフィードバックすることもできる。これについて、
図1には、2つの例示的手段が示されている。
【0053】
ステップ150においては、指数関数における|x-q|の最大冪k又はラプラス確率密度Lb(x)の値pが、ロバストネス15を改善する目的で最適化可能となる。ステップ160においては、KNNのアーキテクチャを特徴付ける少なくとも1つのハイパーパラメータが、ロバストネス15を改善する目的で最適化可能となる。
【0054】
図2には、複数のレイヤ3a~3cを有するKNN1の処理ユニット2の出力2bが確率変数4,4’から取り出されたランダム値xによってどのような作用を受け得るかが例示されている。KNN1は、
図2に示されている実施例においては、それぞれ4つの処理ユニット2を有する3つのレイヤ3a~3cから成っている。
【0055】
入力量値11aは、KNN1の第1のレイヤ3aの処理ユニット2に入力2aとして供給される。パラメータ12によってその挙動が特徴付けられる処理ユニット2は、それぞれ次のレイヤ3a~3cの処理ユニット2のために決定される出力2aを生成する。最後のレイヤ3cの処理ユニット2の出力2bは、全体としてKNN1から送出される出力量値13を同時に形成する。読み取り易さのために、各処理ユニット2に対して、他の処理ユニットへの1回のみの転送しか示していない。現実のKNN1においては、レイヤ3a~3cの各処理ユニット2の出力2bは、典型的には後続のレイヤ3a~3cの複数の処理ユニット2への入力2aとして遷移していく。
【0056】
処理ユニット2の出力2bは、それぞれランダム値xと乗算され、それぞれ得られた積が、次の処理ユニット2へ入力2aとして供給される。ここで、第1のレイヤ3aの処理ユニット2の出力2bに対して、それぞれ第1の確率変数4からのランダム値xが取り出される。第2のレイヤ3bの処理ユニット2の出力2bに対しては、それぞれ第2の確率変数4’からのランダム値xが取り出される。例えば、2つの確率変数4,4’を特徴付ける確率密度関数4aは、異なってスケーリングされたラプラス分布であるものとしてよい。
【0057】
KNNが学習入力量値11aをマッピングする出力量値13は、コスト関数16の評価の枠組みにおいて、学習出力量値13aと比較される。ここから、学習入力量値11aのさらなる処理の際にコスト関数16によるより良好な重み付けを予め得ることができるパラメータ12の変化が算定される。
【0058】
図3は、KNN1を訓練し、続いてこのように訓練されたKNN1
*を動作させるための組合せ方法200の一実施例のフローチャートである。
【0059】
ステップ210においては、KNN1が方法100により訓練される。KNN1は、この場合、訓練された状態1*となり、その挙動は、最適化されたパラメータ12*によって特徴付けられる。
【0060】
ステップ220においては、トレーニングが完了したKNN1*が駆動され、測定データを含む入力量値11が出力量値13へマッピングされる。ステップ230において、出力量値13から駆動制御信号5が形成される。ステップ240において、車両50及び/又は分類システム60及び/又は大量生産される製品の品質管理システム70及び/又は医用撮像システム80が駆動制御信号5によって駆動制御される。
【手続補正書】
【提出日】2022-03-04
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
複数の処理ユニット(2)を含む人工ニューラルネットワークKNN(1)を訓練するための方法(100)であって、
前記
人工ニューラルネットワークKNN(1)が学習入力量値(11a)をコスト関数(16)に従って可能な限り良好に対応する学習出力量値(13a)へマッピングする目的で、前記
人工ニューラルネットワークKNN(1)の挙動を特徴付けるパラメータ(12)を最適化し(110)、
少なくとも1つの処理ユニット(2)の出力(2b)にランダム値xを乗算し(112)、続いて少なくとも1つの他の処理ユニット(2’)に入力(2a)として供給し(113)、
前記ランダム値xは、予め定められた確率密度関数(4a)によって確率変数(4)から取り出され(111)、
前記確率密度関数(4a)は、|x-q|の増加につれて減少する、|x-q|の指数関数に比例し、ここで、qは、任意に選択可能な位置パラメータであり、指数関数の引数における|x-q|は、k≦1として、冪乗|x-q|
kに含まれる、
方法(100)。
【請求項2】
前記確率密度関数(4a)は、ラプラス分布関数である、
請求項1に記載の方法(100)。
【請求項3】
前記ラプラス分布関数の前記確率密度L
b(x)は、
【数1】
かつ0≦p<1として、
【数2】
によって与えられる、
請求項2に記載の方法。
【請求項4】
前記
人工ニューラルネットワークKNNは、複数のレイヤ(3a~3c)から構築されており、少なくとも1つのレイヤ(3a~3c)における前記処理ユニット(2)に対して、前記ランダム値xは、同一の確率変数(4)から取り出される(111a)、
請求項1乃至3のいずれか一項に記載の方法(100)。
【請求項5】
・トレーニング後、訓練された
人工ニューラルネットワークKNN(1
*)が検証入力量値(11b)を対応する検証出力量値(13b)へマッピングする際の精度(14)を算定し(120)、
・前記パラメータ(12)のそれぞれランダムな初期化(12a)によってトレーニングを複数回反復し(130)、
・個々のトレーニング後にそれぞれ算定された精度(14)にわたる分散度を当該トレーニングのロバストネス(15)の尺度として算定する(140)、
請求項1乃至4のいずれか一項に記載の方法(100)。
【請求項6】
前記指数関数における|x-q|の最大冪k又は前記ラプラス確率密度L
b(x)の値pは、トレーニングのロバストネス(15)を改善する目的で最適化される(150)、
請求項5に記載の方法(100)。
【請求項7】
前記
人工ニューラルネットワークKNN(1)のアーキテクチャを特徴付ける少なくとも1つのハイパーパラメータが、トレーニングのロバストネス(15)を改善する目的で最適化される(160)、
請求項5又は6に記載の方法(100)。
【請求項8】
前記ランダム値xは、前記
人工ニューラルネットワークKNN(1)のトレーニングステップ中はそれぞれ一定に維持され(111b)、各トレーニングステップ間に新たに前記確率変数(4)から取り出される(111c)、
請求項1乃至7のいずれか一項に記載の方法(100)。
【請求項9】
前記
人工ニューラルネットワークKNN(1)は、分類器及び/又は回帰分析器として構成されている、
請求項1乃至8のいずれか一項に記載の方法(100)。
【請求項10】
人工ニューラルネットワークKNN(1)を訓練して動作させる方法(200)であって、
・前記
人工ニューラルネットワークKNN(1)を、請求項1乃至9のいずれか一項に記載の方法(100)によって訓練し(210)、
・物理的な測定プロセスによって及び/又は前記測定プロセスの部分的な若しくは完全なシミュレーションによって及び/又は前記測定プロセスによって監視可能な技術システムの部分的な若しくは完全なシミュレーションによって得られた測定データを、訓練された
人工ニューラルネットワークKNN(1
*)に入力量値(11)として供給し(220)、
・前記訓練された
人工ニューラルネットワークKNN(1
*)から送出された出力量値(13)に依存して、駆動制御信号(5)を形成し、
・車両(50)及び/又は分類システム(60)及び/又は大量生産される製品の品質管理システム(70)及び/又は医用撮像システム(80)を、駆動制御信号(5)によって駆動制御する(230)、
方法(200)。
【請求項11】
人工ニューラルネットワークKNN(1)の挙動を特徴付けるパラメータ(12)を含むパラメータセットであって、請求項1乃至9のいずれか一項に記載の方法(100)によって得られるパラメータセット。
【請求項12】
1つ又は複数のコンピュータによって実行されるときに、前記1つ又は複数のコンピュータに、請求項1乃至10のいずれか一項に記載の方法(100,200)を実施させるための機械可読命令を含むコンピュータプログラム。
【請求項13】
請求項11に記載のパラメータセット及び/又は請求項12に記載のコンピュータプログラムを含む機械可読データ担体
。
【請求項14】
請求項11に記載のパラメータセット、請求項12に記載のコンピュータプログラム、及び/又は、請求項13に記載の機械可読データ担体
を含むコンピュータ。
【国際調査報告】