(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-27
(54)【発明の名称】ニューラルネットワークのエンコーダアーキテクチャを決定する方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20231220BHJP
G06V 10/82 20220101ALI20231220BHJP
G06N 3/0464 20230101ALI20231220BHJP
【FI】
G06T7/00 350C
G06V10/82
G06N3/0464
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023537026
(86)(22)【出願日】2022-01-24
(85)【翻訳文提出日】2023-06-16
(86)【国際出願番号】 EP2022051427
(87)【国際公開番号】W WO2022161891
(87)【国際公開日】2022-08-04
(32)【優先日】2021-01-26
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
(71)【出願人】
【識別番号】322007626
【氏名又は名称】コンチネンタル・オートナマス・モビリティ・ジャーマニー・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング
(74)【代理人】
【識別番号】100069556
【氏名又は名称】江崎 光史
(74)【代理人】
【識別番号】100111486
【氏名又は名称】鍛冶澤 實
(74)【代理人】
【識別番号】100191835
【氏名又は名称】中村 真介
(74)【代理人】
【識別番号】100221981
【氏名又は名称】石田 大成
(72)【発明者】
【氏名】イヴァーン・ダヴィド
(72)【発明者】
【氏名】デアーク-メセレーニィ・レジーナ
(72)【発明者】
【氏名】ネメシュ・チャバ
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096FA64
5L096HA11
5L096JA03
(57)【要約】
本発明は、畳み込みニューラルネットワーク(1)のエンコーダ(2)のアーキテクチャを決定する方法であって、ニューラルネットワーク(1)が、複数の異なる画像処理タスク(t1,t2,t3)を処理するように構成されている方法において、
-各画像処理タスク(t1,t2,t3)に関して、訓練データに基づく特性尺度分布を計算するステップ(S10)と;
-複数のエンコーダアーキテクチャ候補を生成するステップであって、エンコーダアーキテクチャ候補の各エンコーダアーキテクチャが、複数の画像処理タスクに関する計算演算を供給する少なくとも1つの共有エンコーダ層(SL)と、画像処理タスクに関する少なくとも部分的に相異なる計算演算を供給する複数の分岐(b1,b2,b3)とを備え、複数の分岐(b1,b2,b3)が1つまたは複数のエンコーダ層にわたってスパンし、各分岐(b1,b2,b3)が特定の画像処理タスク(t1,t2,t3)と相関する、ステップ(S11)と;
-複数のエンコーダアーキテクチャのエンコーダ層の受信フィールドサイズを計算するステップ(S12)と;
-複数の評価測度を計算するステップであって、各評価測度が、複数のエンコーダアーキテクチャの特定のエンコーダアーキテクチャと特定の画像処理タスク(t1,t2,t3)との組み合わせに適用し、各評価測度が、評価測度と相関する画像処理タスク(t1,t2,t3)の特性尺度分布と、評価測度と相関するエンコーダアーキテクチャのエンコーダ層の受信フィールドサイズとのマッチング品質に関する情報を含む、ステップ(S13)と;
-計算された評価測度を比較し、比較結果を確立するステップ(S14)と;
-比較結果に基づいてエンコーダアーキテクチャを選択するステップ(S15)とを備える方法。
【特許請求の範囲】
【請求項1】
畳み込みニューラルネットワーク(1)のエンコーダ(2)のアーキテクチャを決定する方法であって、前記ニューラルネットワーク(1)が、複数の異なる画像処理タスク(t1,t2,t3)を処理するように構成されている方法において、
-前記各画像処理タスク(t1,t2,t3)に関して、訓練データに基づく特性尺度分布を計算するステップであって、前記特性尺度分布が、前記各々の画像処理タスクによる検出対象である物体のサイズ分布を示す、ステップ(S10)と;
-複数のエンコーダアーキテクチャ候補を生成するステップであって、前記エンコーダアーキテクチャ候補の各エンコーダアーキテクチャが、複数の画像処理タスクに関する計算演算を供給する少なくとも1つの共有エンコーダ層(SL)と、前記画像処理タスクに関する少なくとも部分的に相異なる計算演算を供給する複数の分岐(b1,b2,b3)とを備え、前記複数の分岐(b1,b2,b3)が1つまたは複数のエンコーダ層にわたってスパンし、前記各分岐(b1,b2,b3)が特定の画像処理タスク(t1,t2,t3)と相関する、ステップ(S11)と;
-前記複数のエンコーダアーキテクチャの前記エンコーダ層の受信フィールドサイズを計算するステップ(S12)と;
-複数の評価測度を計算するステップであって、前記各評価測度が、前記複数のエンコーダアーキテクチャの特定のエンコーダアーキテクチャと特定の画像処理タスク(t1,t2,t3)との組み合わせに適用し、前記各評価測度が、前記評価測度と相関する前記画像処理タスク(t1,t2,t3)の特性尺度分布と、前記評価測度と相関する前記エンコーダアーキテクチャの前記エンコーダ層の前記受信フィールドサイズとのマッチング品質に関する情報を含む、ステップ(S13)と;
-前記計算された評価測度を比較し、比較結果を確立するステップ(S14)と;
-前記比較結果に基づいてエンコーダアーキテクチャを選択するステップ(S15)とを備える方法。
【請求項2】
前記各前記画像処理タスク(t1,t2,t3)の前記特性尺度分布に関して、1つまたは複数のパーセンタイルが決定され、前記1つまたは複数のパーセンタイルの値がタスク固有のデコーダ(3.1,3.2,3.3)のインタフェースに依存する、請求項1に記載の方法。
【請求項3】
前記決定されたパーセンタイルの数が、前記タスク固有のデコーダ(3.1,3.2,3.3)が必要とする入力接続の数に応じて選択される、請求項2に記載の方法。
【請求項4】
前記パーセンタイルの値が、最小パーセンタイル値および最大パーセンタイル値により定義されるパーセンタイル範囲にわたって分布する、請求項2または3に記載の方法。
【請求項5】
前記パーセンタイルの値が、前記パーセンタイル範囲にわたって均等に分布する、請求項4に記載の方法。
【請求項6】
前記エンコーダ(2)のタスク固有の分岐(b1,b2,b3)の前記エンコーダ層の少なくともいくつかが、タスク固有のデコーダ(3.1,3.2,3.3)の入力接続の特徴解像度とマッチする解像度を有する特徴マップを備える、請求項1~5の何れか1項に記載の方法。
【請求項7】
複数のエンコーダアーキテクチャ候補を生成するステップが、ビルディングブロックのセットからニューラルネットワーク(1)のエンコーダ(2)用に構成される特定のビルディングブロックを選択することと、エンコーダアーキテクチャを得るために、前記選択されたビルティングブロックを接続することとを備える、請求項1~6の何れか1項に記載の方法。
【請求項8】
前記エンコーダアーキテクチャ候補の前記エンコーダアーキテクチャが、ランタイム限界値を定義することにより決定され、前記エンコーダアーキテクチャが、所定のハードウェアにおいて、前記エンコーダアーキテクチャが前記ランタイム限界値の90%~100%のランタイム範囲内で計算結果を供給するように作成される、請求項1~7の何れか1項に記載の方法。
【請求項9】
複数の評価測度を計算するステップが、タスク固有のデコーダ(3.1,3.2,3.3)の解像度とマッチするエンコーダ層の受信フィールドサイズを決定されたパーセンタイル値と比較することと、前記受信フィールドサイズと前記パーセンタイル値との間の距離を決定することとを備える、請求項1~8の何れか1項に記載の方法。
【請求項10】
複数の評価測度を計算するステップが、タスク固有のデコーダ(3.1,3.2,3.3)の解像度とマッチするエンコーダ層の複数の受信フィールドサイズを複数の決定されたパーセンタイル値と比較することと、前記受信フィールドサイズと前記パーセンタイル値との間の距離の総和を決定することとを備える、請求項1~8の何れか1項に記載の方法。
【請求項11】
複数の評価測度を計算するステップが、最小絶対偏差距離測度、つまりL1距離測度またはコサイン距離測度を用いる損失関数を用いる、請求項1~10の何れか1項に記載の方法。
【請求項12】
複数の評価測度を計算するステップが、ペナルティ項を有する損失関数を用い、前記ペナルティ項が、エンコーダアーキテクチャの複数の画像処理タスク(t1,t2,t3)の間で共有される層の数が減少すると前記評価測度を増加させるように構成される、請求項1~11の何れか1項に記載の方法。
【請求項13】
前記計算された評価測度を比較し、比較結果を確立するステップが、最も小さい評価測度を有する、各画像処理タスク(t1,t2,t3)に関するエンコーダアーキテクチャを決定することを備える、請求項1~12の何れか1項に記載の方法。
【請求項14】
前記比較結果に基づいてエンコーダアーキテクチャを選択するステップが、各画像処理タスク(t1,t2,t3)に関する、最も小さい評価測度を有する前記エンコーダアーキテクチャを選択することを備える、請求項1~13の何れか1項に記載の方法。
【請求項15】
畳み込みニューラルネットワークのエンコーダのアーキテクチャを決定するためのコンピュータプログラム製品であって、これを用いて実施されるプログラム命令を有するコンピュータ可読記憶媒体を備え、前記プログラム命令が、プロセッサに請求項1~14の何れか1項に記載の方法を実行させることにより、前記プロセッサにより実行可能である、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、畳み込みニューラルネットワークの分野に関する。本発明は、特に、複数の異なる画像処理タスクを処理するように構成される、畳み込みニューラルネットワークの共有エンコーダのアーキテクチャを決定する方法に関する。
【背景技術】
【0002】
畳み込みニューラルネットワークは、パターン認識(例えば、歩行者検出、車線検出、標識認識等)に基づくタスクを解決する際に非常に強力である。各タスクについて別々のネットワークを実装する代わりに、複数のタスクについて共有ネットワーク、特に、共有エンコーダを用いることは、性能、計算および/またはメモリに関していくつかの有利な点を有する。
【0003】
しかし、複数のタスクを効率的に処理できる共有エンコーダのエンコーダアーキテクチャを決定することは自明な課題ではない。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の実施形態の課題は、複数の異なる画像処理タスクを処理するように構成される、畳み込みニューラルネットワークの共有エンコーダのアーキテクチャまたは構造を決定する方法であり、これにより低減された計算量でエンコーダ構造が得られ、また、このエンコーダアーキテクチャは資源効率が高く、高い計算効率を提供する、方法を提供することである。
【課題を解決するための手段】
【0005】
本課題は独立請求項の特徴により解決される。好ましい実施形態は従属請求項において与えられる。明示的に別段の指示がない限り、本発明の実施形態は互いに自由に組み合わせることができる。
【0006】
1つの態様によると、本発明は畳み込みニューラルネットワークのエンコーダ、特に、共有エンコーダのアーキテクチャを決定する方法であって、ニューラルネットワークが、複数の異なる画像処理タスクを処理するように構成されている、方法に適用する。より詳細には、ニューラルネットワークは、共有エンコーダを備える人工ニューラルネットワークであってよく、エンコーダアーキテクチャは、複数の画像処理タスクを処理するように構成される。エンコーダアーキテクチャを決定した後、ニューラルネットワークが画像処理タスクを処理することを可能にするために、ニューラルネットワークは訓練される。本方法は、少なくとも部分的にコンピュータにより実行される方法であってよい。本方法は、以下のステップを備える。
【0007】
最初に、各画像処理タスクに関して、訓練データに基づく特性尺度分布を計算する。特性尺度分布は、タスク固有のデコーダがタスク固有の情報を供給することを可能にするために、タスク固有のデコーダに供給されるべき部分画像のサイズを示す。
【0008】
また、複数のエンコーダアーキテクチャ候補を生成する。これらエンコーダアーキテクチャ候補の各エンコーダアーキテクチャ(エンコーダ構造とも称される)は、複数の画像処理タスクに関する計算演算を供給する少なくとも1つの共有エンコーダ層を備える。また、各エンコーダアーキテクチャは、1つまたは複数のエンコーダ層にわたってスパンする複数の分岐を備える。各分岐は特定の画像処理タスクと相関し、この画像処理タスクに関する少なくとも部分的にタスク固有である計算演算を供給する。より詳細には、各々の画像処理タスク用に構成される計算を供給するタスク固有のデコーダは、各々の画像処理タスクと相関する分岐の1つまたは複数のエンコーダ層の特徴マップを受信する。
【0009】
また、これら複数のエンコーダアーキテクチャのエンコーダ層の受信フィールドサイズを計算する。特定のエンコーダ層と相関する受信フィールドサイズは、このエンコーダ層の出力に影響を及ぼす部分画像を示す。受信フィールドサイズは、特徴マップの特徴、従って、特定のエンコーダ層の出力に影響を及ぼす、入力画像の部分画像のサイズを調べることにより計算されてよい。エンコーダ層の受信フィールドサイズは、例えば、畳み込みのプロパティ、例えば、カーネルサイズ、ストライド幅等に基づいて計算されてよい。
【0010】
その後、複数の評価測度を計算する。評価測度は、エンコーダアーキテクチャ候補と特定の画像処理タスクとのマッチング品質を示してよい。より詳細には、評価測度は、エンコーダアーキテクチャ候補のエンコーダ層の受信フィールドサイズと特定の画像処理タスクの特性尺度分布とのマッチングを示してよい。各評価測度は、これら複数のエンコーダアーキテクチャの特定のエンコーダアーキテクチャと特定の画像処理タスクとの組み合わせに適用する。各評価測度は、評価測度と相関する画像処理タスクの特性尺度分布と、評価測度と相関するエンコーダアーキテクチャのエンコーダ層の受信フィールドサイズとのマッチング品質に関する情報を含む。従って、言い換えれば、評価測度は、画像処理タスクと相関する分岐のエンコーダ層の受信フィールドサイズが、この画像処理タスクの決定された特性尺度分布にどの程度良く適合するかに関する情報を供給する。
【0011】
一例として、エンコーダアーキテクチャおよび画像処理タスクの組み合わせと相関する評価測度は、エンコーダ層の受信フィールドサイズと、タスク固有のデコーダが必要とする特性尺度分布のパーセンタイルとの差の二乗の総和を求めることにより計算されてよい。
【0012】
評価測度を決定した後、計算された評価測度を比較し、比較結果を確立する。特に、比較結果から、特定の画像処理タスクの特性尺度曲線に最も良く適合するエンコーダ層の受信フィールドサイズを有するエンコーダアーキテクチャが得られることになる。
【0013】
最後に、比較結果に基づいてエンコーダアーキテクチャを選択する。
【0014】
本方法が有利であるのは、複数の画像処理タスクに関するエンコーディング演算を供給する共有エンコーダを、計算量を低減しつつ、資源効率高く、特に、限定されたハードウェア環境下で展開することができるからである。
【0015】
本開示は、タスク固有のプロパティに基づく最適な受信フィールドを考慮することにより、画像処理タスク、タスク固有のデコーダの各々の所定のセットについて、改善されたマルチタスクニューラルアーキテクチャを提案する際に有用である。可能性のあるアーキテクチャのセット全部をメモリに保持して並列訓練する必要があるか、全てのアーキテクチャをある程度訓練する必要があるかの何れかである、他のアーキテクチャ探索方法とは対照的に、提案される本方法は、静的プロパティに基づき、ニューラルネットワーク訓練を用いずに計算可能なアーキテクチャを提供する。可能性のあるアーキテクチャの数は、マルチタスクネットワークにより解決される必要があるタスクの数と共に指数関数的に増加するため、提案される本アーキテクチャ探索方法は、膨大な量の時間を節約することになり、これにより、組み込みハードウェアに基づくアーキテクチャ設計が実現可能になる。
【0016】
提案される本方法は、好ましくは、車両のフロントカメラにより供給される画像の画像処理タスク用のエンコーダアーキテクチャを決定するために用いられてよい。自動車での応用においては複数のタスクを同時に解決する必要がある。従って、本開示は2次元畳み込みニューラルネットワークに適用されてよい。
【0017】
最も一般的な深層学習タスク、例えば、物体検出、車線検出、セマンティックセグメンテーション等に加えて、提案される本方法は、他の2次元画像処理タスク、例えば、単眼カメラを用いた深度推定、面法線推定、例えば、人物姿勢推定等のためのキーポイント検出等に拡張することができる。
【0018】
さらなる2次元画像処理タスクに加えて、本発明は、1次元、3次元の両方に、またはそれより高次元の畳み込みニューラルネットワークに拡張することができる:
-3次元畳み込みネットワークは、レーダまたはライダ点群処理における応用を有し、またはカメラからの動画フィードに適用できる;
-1次元畳み込みネットワークは、例えば、他のセンサ測定、例えば、温度、加速度等を処理する時系列処理に有用である。
-4次元畳み込みネットワークは、レーダまたはライダセンサからの点群シーケンスの処理に適用できる。
【0019】
例示的な実施形態によると、画像処理タスクは、物体検出、車線検出、セマンティックセグメンテーションというタスクのリストのうちの1つまたは複数を含む。
【0020】
例示的な実施形態によると、畳み込みニューラルネットワーク、特に、エンコーダは、組み込みハードウェア、特に、組み込みコンピュータモジュールまたは車両に搭載されるシステムオンチップ(SoC)上で処理されるように構成および/または特に構成される。そのような組み込みハードウェアは、一般に、限定された計算資源を有する。このように、畳み込みニューラルネットワーク、特に、エンコーダは、リアルタイムまたは擬似リアルタイムの各々で所定のランタイム限界値内に画像処理結果を供給するために、そのような限定された計算資源に備えて設計される必要がある。ランタイム限界値は、10~50msの範囲であってよく、特に、10ms、15ms、20ms、25ms、30ms、35ms、40ms、45msまたは50msであってよい。
【0021】
実施形態によると、各画像処理タスクに関して、1つまたは複数のパーセンタイルが決定され、この1つまたは複数のパーセンタイルの値がタスク固有のデコーダのインタフェースに依存する。例えば、タスク固有のデコーダのインタフェースは1つまたは複数の入力接続を備えてよい。タスク固有のデコーダのインタフェースに応じて、この1つまたは複数のパーセンタイルの値は、デコーダがタスク固有のデコーディング演算に必要な情報(例えば、特定の部分画像サイズの情報)を受信できるように選択される。
【0022】
実施形態によると、決定されたパーセンタイルの数が、タスク固有のデコーダが必要とする入力接続の数に応じて選択される。例えば、タスク固有のデコーダが入力接続を1つのみ有している場合、最大パーセンタイル値は、例えば、99パーセンタイルとして選択されてよい。タスク固有のデコーダが複数の入力接続(例えば、2つ、3つまたは4つ以上)を有している場合、異なる部分画像サイズの情報をデコーダに供給するために、複数の異なるパーセンタイル値(例えば、2つ、3つまたは4つ以上)を選択してよい。
【0023】
実施形態によると、これらパーセンタイルの値が、最小パーセンタイル値および最大パーセンタイル値により定義されるパーセンタイル範囲にわたって分布する。例えば、最大パーセンタイル値は99パーセンタイルであってよく、最小値は50パーセンタイル以下であってよい。デコーダが入力接続を2つのみ有している場合、最小パーセンタイル値(例えば、50パーセンタイル)および最大パーセンタイル値(例えば、99パーセンタイル)が選択されてよい。デコーダが3つの入力接続を有している場合、最小パーセンタイル値(例えば、50パーセンタイル)、平均パーセンタイル値(例えば、75パーセンタイル)および最大パーセンタイル値(例えば、99パーセンタイル)が選択されてよい。デコーダが4つの入力接続を有している場合、最小パーセンタイル値(例えば、50パーセンタイル)、2つの平均パーセンタイル値(例えば、66および82パーセンタイル)および最大パーセンタイル値(例えば、99パーセンタイル)が選択されてよい。これにより、デコーダ入力インタフェースに応じて、異なる部分画像サイズをタスク固有のデコーダに供給することができる。
【0024】
実施形態によると、これらパーセンタイルの値が、最小パーセンタイル値および最大パーセンタイル値により定義されるパーセンタイル範囲にわたって均等に分布する。これにより、異なる部分画像サイズのスタガ情報をタスク固有のデコーダに供給することができる。
【0025】
実施形態によると、エンコーダのタスク固有の分岐のエンコーダ層の少なくともいくつかが、タスク固有のデコーダの入力接続の特徴解像度とマッチする解像度を有する特徴マップを備える。これにより、特定のエンコーダ層により供給される出力を、タスク固有のデコーダの解像度が適切な入力接続と連結させることができる。
【0026】
実施形態によると、複数のエンコーダアーキテクチャ候補を決定するステップが、ビルディングブロックのセットからニューラルネットワークのエンコーダ用に構成される特定のビルディングブロックを選択することと、エンコーダアーキテクチャを得るために、選択されたビルティングブロックを接続することとを備える。ビルティングブロックのセットは、ニューラルネットワークが実行すべき具体的な計算ハードウェアに応じて予め定められてよい。特に、ビルディングブロックのセットは、組み込み計算ハードウェアにより供給される計算資源を考慮して予め定められてよい。ある組み込みハードウェアに関して、これらビルディングブロックは極めて単純であり、単純な畳み込み層、プーリング演算およびアクティブ化のみを含む。他の組み込みハードウェアに関して、これらビルディングブロックはResNetもしくはDarkNetのブロックまたはアーキテクチャ探索方法、例えば、DARTS等のセルでさえもよい。これらブロックを積み重ねることにより、より深いエンコーダを作成することができ、各ブロックは特定のブロック幅(またはチャネル数)を有し、ブロック幅に基づいて、ネットワークの幅をチューニングすることができる。
【0027】
実施形態によると、これらエンコーダアーキテクチャ候補のエンコーダアーキテクチャが、ランタイム限界値を定義することにより(例えば、自動的または半自動的に)生成され、エンコーダアーキテクチャが、所定のハードウェアにおいて、エンコーダアーキテクチャがこのランタイム限界値の90%~100%のランタイム範囲内で計算結果を供給するように作成される。例えば、エンコーダ層(つまり、畳み込み層)の数に応じて、層の幅(つまり、チャネル数)は、所定のランタイム限界値が使い尽くされるように選択されてよい。
【0028】
実施形態によると、複数の評価測度を計算するステップが、タスク固有のデコーダの解像度とマッチするエンコーダ層の受信フィールドサイズを決定されたパーセンタイル値と比較することと、受信フィールドサイズとパーセンタイル値との間の距離を決定することとを備える。従って、受信フィールドサイズがXという値を有し、パーセンタイル値がYである場合、評価測度の計算は、XとYとの間の差を計算することを含む。
【0029】
実施形態によると、特に、タスク固有のデコーダが複数の入力接続を備える場合、複数の評価測度を計算するステップが、タスク固有のデコーダの解像度とマッチするエンコーダ層の複数の受信フィールドサイズを複数の決定されたパーセンタイル値と比較することと、これら受信フィールドサイズとこれらパーセンタイル値との間の距離の総和を決定することとを備える。これにより、複数の受信フィールドサイズ/パーセンタイル値ペアの間の全般的距離を、エンコーダアーキテクチャを評価するために考慮することができる。
【0030】
実施形態によると、複数の評価測度を計算するステップが、最小絶対偏差距離測度、つまりL1距離測度またはコサイン距離測度を用いる損失関数を用いる。
【0031】
実施形態によると、複数の評価測度を計算するステップが、ペナルティ項を有する損失関数を用い、ペナルティ項が、エンコーダアーキテクチャの複数の画像処理タスクの間で共有される層の数が減少すると評価測度を増加させるように構成される。これにより、共有層の数が多いエンコーダアーキテクチャは、共有層の数が少ないエンコーダアーキテクチャに対して優位にあるのは、共有層の数が大きいと計算効率が上昇するからである。
【0032】
実施形態によると、計算された評価測度を比較し、比較結果を確立するステップが、最も小さい評価測度を有する、各画像処理タスクに関するエンコーダアーキテクチャを決定することを備える。これにより、複数の画像処理タスクを処理する改善されたエンコーダアーキテクチャを、ニューラルネットワークアーキテクチャを訓練することなく利用可能な、画像処理タスクプロパティおよびニューラルネットワークアーキテクチャのエンコーダ/デコーダプロパティに基づいて決定することができる。これにより、改善されたエンコーダアーキテクチャを低減された計算量で見い出すことができる。
【0033】
実施形態によると、比較結果に基づいてエンコーダアーキテクチャを選択するステップが、各画像処理タスクに関する、最も小さい評価測度を有するエンコーダアーキテクチャを選択することを備える。例えば、選択されたエンコーダアーキテクチャは、同じプロパティ、例えば、同じエンコーダ層の幅を有するエンコーダ層を共有することにより、そしてエンコーダ層が相異なるエンコーダ層プロパティを有する場合には相異なるエンコーダ分岐へとエンコーダを分岐させることにより組み合わされる。
【0034】
さらなる態様によると、本発明は、エンコーダのアーキテクチャを決定するためのコンピュータプログラム製品に関する。コンピュータプログラム製品は、これを用いて実施されるプログラム命令を有するコンピュータ可読記憶媒体を備え、プログラム命令が、プロセッサに請求項1~14の何れか1項に記載の方法を実行させることにより、プロセッサにより実行可能である。
【0035】
本開示において用いられる「車両」という用語は、乗用車、トラック、バス、列車または任意の他の船舶航空機を示してよい。
【0036】
本開示において用いられる「特性尺度」という用語は、画像においてタスク固有の詳細を認識するために、タスク固有のデコーダによる受信対象である画素の数または部分画像を示してよい。このように、「特性尺度」は具体的な画像処理タスクに大きく依存する。
【0037】
本開示において用いられる「受信フィールド」という用語は、エンコーダの入力に供給される画像の画素の集合であって、このエンコーダ層の特徴マップにおける特定のニューロン(特徴とも称される)に影響を及ぼす画素の集合を示してよい。従って、言い換えれば、受信フィールドは、特徴マップの特徴、従って、特定のエンコーダ層の出力に影響を及ぼす部分画像を示す。
【0038】
本開示において用いられる「受信フィールドサイズ」という用語は、特定のエンコーダ層により受信される画素の数または部分画像のサイズを示してよい。受信フィールドは矩形であってよく、この矩形の長さおよび高さが受信フィールドサイズである。エンコーダ層のカスケーディングに起因して、第1エンコーダ層の受信フィールドサイズは、隠れエンコーダ層の受信フィールドサイズよりも小さい。
【0039】
本開示において用いられる「タスク固有のデコーダ」という用語は、単一の画像処理タスクに関するデコーディング演算を供給するように構成されるデコーダを示してよく、つまり、各画像処理タスクはそれ自体のタスク固有のデコーダを備えている。
【0040】
本開示において用いられる「特徴マップ」という用語は、タスク固有のデコーダに伝達されてよい、特定のエンコーダ層により供給される特徴のセットを示してよい。特徴マップは特定の解像度を備えてよい。特徴マップの解像度は、タスク固有のデコーダが特徴マップを処理することを可能にするために、タスク固有のデコーダが必要とする解像度に適合される必要がある。
【0041】
本開示において用いられる「パーセンタイル」という用語は、スコアの所定のパーセントがその周波数分布において等しいかまたは下回るスコアを示してよい。
【0042】
「画像処理タスク」という用語は、カメラにより供給される画像または動画に適用される任意のタスクを示してよい。また、「画像処理タスク」という用語は、他のセンサ、例えば、レーダ、ライダ等により供給される情報に適用されるタスクを示してもよい。
【0043】
本発明において用いられる「略」または「約」という用語は、厳密な値からの+/-10%の偏差、好ましくは、+/-5%の偏差ならびに/または機能および/もしくは交通法にとって重要ではない変化の形態の偏差を意味する。
【0044】
具体的な特徴および有利な点を含む本発明の様々な態様は、以下の詳細な説明と添付の図面から容易に理解されよう。
【図面の簡単な説明】
【0045】
【
図1】
図1は、共有エンコーダと複数のタスク固有のデコーダとを備えるニューラルネットワークの概略図を示す。
【
図2】
図2は、タスク固有の計算演算を行うための共有層および複数の分岐を備える、共有エンコーダの例示的な構造を概略的に示す。
【
図3】
図3は、第1および第2タスクの特性尺度分布とその各々の50パーセンタイルおよび90パーセンタイルを概略的に示す。
【
図4】
図4は、第1および第3タスクの特性尺度分布とその各々の50パーセンタイルおよび90パーセンタイルを概略的に示す。
【
図5】
図5は、第1および第2タスクの特性尺度分布の50、60、80および99パーセンタイルの値の表を示す。
【
図6】
図6は、異なる長さ、エンコーダ層の幅およびエンコーダ層の受信フィールドを有する複数のエンコーダアーキテクチャを示す。
【
図7】
図7は、
図5の画像処理タスクt1に対する
図6のアーキテクチャAのマッチング品質を示す評価測度の計算を示す。
【
図8】
図8は、
図5の画像処理タスクt2に対する
図6のアーキテクチャAのマッチング品質を示す評価測度の計算を示す。
【
図9】
図9は、
図5の画像処理タスクt1に対する
図6のアーキテクチャCのマッチング品質を示す評価測度の計算を示す。
【
図10】
図10は、
図5の画像処理タスクt2に対する
図6のアーキテクチャCのマッチング品質を示す評価測度の計算を示す。
【
図12】
図12は、畳み込みニューラルネットワークの共有エンコーダのアーキテクチャを決定する方法のステップを示す概略ブロック図を示す。
【発明を実施するための形態】
【0046】
以下、本発明について、例示的な実施形態が示されている添付の図面を参照してより十分に説明する。図中の実施形態は、好ましい実施形態に関するものであってよい一方、実施形態に関連して説明される全ての要素および特徴は、本開示において説明され、特に、上述の任意の他の実施形態および特徴に関連する、任意の他の実施形態および特徴と、必要に応じて、組み合わせて用いられてよい。その一方、本発明を、本開示に記載されている実施形態に限定されると解釈すべきでない。以下の説明を通して、該当する場合、同様の符号は、同様の要素、部材、項目または特徴を示すために用いられている。
【0047】
明細書、特許請求の範囲、実施形態例および/または図中に開示される本発明の特徴は、個別およびその任意の組み合わせの両方において、その様々な形態において本発明を実装するための素材であってよい。
【0048】
図1は、ニューラルネットワーク1の概略的なブロック図を示す。ニューラルネットワーク1は、エンコーダ2を備える。エンコーダ2は、複数の画像処理タスク、図示の実施形態においては、画像処理タスクt1,t2,t3を処理するように構成される。エンコーダ2は、情報を複数のタスク固有のデコーダ3.1,3.2,3.3に供給する。各タスク固有のデコーダ3.1,3.2,3.3は、特定の画像処理タスクt1,t2,t3と相関する出力情報を供給する。
【0049】
図2は、エンコーダ2の例示的なエンコーダアーキテクチャの概略的なブロック図を示す。エンコーダ2は、複数の層L1~L5を備える。図示の実施形態において、層L1は、全ての画像処理タスクt1,t2,t3に関する計算演算を供給する共有層である。共有層L1から出発して、エンコーダ2は複数の分岐b1,b2,b3を備える。各分岐b1,b2,b3は、特定の画像処理タスクt1,t2,t3と相関する。より詳細には、エンコーダアーキテクチャは、各分岐において、各々の画像処理タスクt1,t2,t3用に特に構成される機能ブロックを供給する。従って、さらなる層L2~L5は、タスク固有の計算結果を得るために、画像処理タスクt1,t2,t3に関する少なくとも部分的に相異なる計算演算を供給する。
【0050】
図2に示されているように、1つの層の機能ブロックは、タスクのサブグループ間で共有されてよい。例えば、層L2では、分岐b1,b2は同じ機能ブロックを使用する一方、分岐b3は、層L2では異なる機能ブロックを使用する。
【0051】
また、分岐は互いに異なる長さを備えてよく、つまり、分岐は互いに異なる数の層にわたってスパンしてよい。
【0052】
以下、複数の画像処理タスクt1,t2,t3を処理するための改善された計算資源を供給するために、最適化された分岐を備えるエンコーダアーキテクチャを決定する方法の例示的な実施形態を提示する。
【0053】
図3は、2つの異なるタスクt1,t2の特性尺度分布を示す。特性尺度分布は、特定の画像処理タスクt1,t2における検出対象である物体のサイズ分布を示す。このように、同じ入力画像情報を考慮する場合でさえも、タスクの特性尺度分布は顕著に異なることがある。
【0054】
タスクt1,t2の特性尺度分布はオーバーラップが顕著であり、つまり、画像処理タスクt1,t2により必要とされる、従って、タスク固有のデコーダにより必要とされる物体サイズは同様であり、つまり、タスクt1,t2のエンコーダは複数の層を共有することができる。
【0055】
これとは対照的に、
図4に示されるタスクt1,t3の特性尺度分布はオーバーラップが小さく、つまり、画像処理タスクt1,t3により必要とされる、従って、タスク固有のデコーダにより必要とされる物体サイズは大きく異なる。よって、タスクt1,t3のエンコーダは、
図3の例と比較すると、共有することができる層の数が少なく、つまり、より早期の分岐が必要である。
【0056】
改善されたエンコーダアーキテクチャを決定するために、各画像処理タスクは別々に分析され、各画像処理タスクの特性尺度分布が決定される。
【0057】
以下、運転支援システムにおいて一般的な、いくつかの画像処理タスクの特性尺度分布を決定するための様々なアルゴリズムについて説明する。
【0058】
第1画像処理タスクは物体検出であってよい。物体検出は、支援機能、例えば、緊急ブレーキ支援(交通参加者検出)、標識認識、信号機認識等にとって非常に重要な深層学習タスクである。物体検出デコーダは、通常の場合、複数の異なるエンコーダ層から入力を受信する。これら異なるエンコーダ層は、受信フィールドサイズが増大する。
【0059】
所定の物体検出タスクの特性尺度分布を決定するために、各々の物体をカバーする訓練データにおけるボックスサイズの分布を決定する。好ましくは、エンコーダの受信フィールドは、受信フィールドサイズが特性尺度分布の中央値および合理的な最大サイズ、例えば、特性尺度分布の99パーセンタイル等をカバーするように、ボックスサイズ分布に適合されるべきである。物体検出目的の訓練データは、現実的な自動車検出シナリオが刺激されるように物体検出と関連するアイテムが様々なサイズの中におよび/または様々な観点から含まれるように、選択されてよい。
【0060】
異なる運転機能に関してボックスサイズの分布は顕著に異なることは言及に値する。例えば、特定のカメラに関して車両および歩行者のボックスサイズは、一般に、交通標識または信号機のボックスよりも大きく、従って、それらの分布の中央値および99パーセンタイルは顕著に異なる。
【0061】
第2画像処理タスクは車線検出であってよい。車線および道路エッジの検出は、車線逸脱警報システムと車線維持支援システムにとって非常に重要である。車線検出タスクを処理するように構成されるタスク固有のデコーダは、2つの大きなカテゴリ、つまり、点に基づく解および線/アンカに基づく解を有する。これら2つのカテゴリの特性尺度分布は大幅に異なる。
【0062】
点に基づく方法に関して、特性尺度は2つのキーポイント間の距離により決定されてよく、この距離の分布は訓練データセットに基づいて計算されてよい。線またはアンカに基づく解に関して、特性尺度は車線長さ全体に基づいて決定されるべきであり、分布は、この場合においても、訓練データセットに基づいて決定されてよい。1つのエンコーダ層のみに接続されているタスク固有のデコーダに関して、受信フィールドサイズは特性尺度分布の99パーセンタイルとマッチすべきである。複数のエンコーダ層に接続するタスク固有のデコーダに関して、エンコーダ層の受信フィールドサイズは、特性尺度分布の中央値および合理的な最大サイズ、例えば、特性尺度分布の99パーセンタイル等とマッチすべきである。
【0063】
車線検出目的の訓練データは、現実的な自動車検出シナリオが刺激されるように車線および/または道路の境界線(車線区分線、縁石、道路エッジ等)が様々なサイズの中におよび/または様々な観点から含まれるように、選択されてよい。
【0064】
第3画像処理タスクはセマンティックセグメンテーションタスクであってよい。セマンティックセグメンテーションは、例えば、フリースペース推定と低速動作機能、例えば、駐車支援機能等に用いられる。セマンティックセグメンテーションにおいて、画像の各画素は、クラス、例えば、道路、車両、歩行者、植物等に分類される。セマンティックセグメンテーションの特性尺度を決定するために、物体または背景マスクのサイズの分布を訓練データに基づいて決定してよい。セマンティックセグメンテーションは大きいクラス、例えば、「道路」、「建物」、「空」等を含むため、最大受信フィールドサイズは画像全体をカバーしてよい。
セマンティックセグメンテーション目的の訓練データは、現実的な自動車検出シナリオが刺激されるようにセマンティックセグメンテーションと関連するアイテムが、上述のように、様々なサイズの中におよび/または様々な観点から含まれるように、選択されてよい。
【0065】
画像処理タスクの特性尺度分布を決定した後、関連するパーセンタイルをタスク固有のデコーダ3.1,3.2,3.3のインタフェースに基づいて決定する必要がある。例えば、タスク固有のデコーダが、エンコーダ2と、特定の特徴マップ解像度を有する1つの層において接続している場合、最大物体サイズは、例えば、99パーセンタイルと考慮されるべきである。タスク固有のデコーダが2つ、3つまたは4つの層からの入力を受信している場合、関連するパーセンタイルは、例えば、中央値(50パーセンタイル)と99パーセンタイルとの間で選択されてよい。例えば、タスク固有のデコーダがエンコーダ2と2つの異なる層において接続している場合、50および99パーセンタイルが選択されてよい。タスク固有のデコーダがエンコーダ2と3つの異なる層において接続している場合、50、75および99パーセンタイルが選択されてよい。タスク固有のデコーダがエンコーダ2と4つの異なる層において接続している場合、50、66、82および99パーセンタイルが選択されてよい、等である。
【0066】
5つ以上の入力層が定義されているか、より小さい物体を検出する必要がある場合、50パーセンタイル未満のパーセンタイルも考慮されてよい。
【0067】
特性尺度分布および関連するパーセンタイルを全てのタスクに関して計算した後、次のステップは、可能性のあるエンコーダアーキテクチャおよびそれに対応するエンコーダ層の受信フィールドサイズを決定することである。
【0068】
特に、自動車での応用において、計算資源は非常に限定される。従って、技術的に実現可能なエンコーダアーキテクチャは、具体的な計算ハードウェアおよびその制約に大きく依存する。
【0069】
最も一般的な制約は、どの実現可能なエンコーダアーキテクチャも特定のランタイムバジェットに適合する必要があること、つまり、ランタイムに非常に厳格な上限値が存在することである。一般に、ニューラルネットワークの複雑度および/またはランタイムが低下すると、その性能も低下する。従って、可能性のあるエンコーダアーキテクチャのセットを決定する際、所定のランタイム限界値の90%~100%を使用する複数または全ての実現可能なエンコーダ構造を見い出すことが目的である。言い換えれば、実現可能なエンコーダアーキテクチャ候補は、ニューラルネットワークの高い性能を得るために、所定のランタイム限界値を最大限使い尽くすべきである。
【0070】
実現可能なエンコーダアーキテクチャ候補は、複数のビルディングブロックを用いて所定のランタイム限界値を考慮することにより自動的または半自動的に構築される。計算ハードウェア、特に、組み込みハードウェアのさらなる制約は、特定のニューラルネットワーク層の可用性である。多くのシステムオンチップ(SoC:system on a chip)は、層の小さなサブセットしかサポートせず、使用可能な層のリストは、具体的なハードウェアに応じて大きく変化する。従って、具体的なハードウェアに応じて、エンコーダのビルディングブロックのセットは予め定められる。ハードウェアに応じて、これらビルディングブロックは極めて単純であってよく(例えば、単純な畳み込み層、プーリング演算およびアクティブ化のみを含む)、またはこれらビルディングブロックはより複雑であってよく、例えば、ResNetもしくはDarkNetのブロックまたはアーキテクチャ探索方法、例えば、DARTS等のセルでさえもよい。
【0071】
所与のハードウェアに応じてビルディングブロックを決定した後、これらビルティングブロックは、より深いエンコーダを作成するために積み重ねられてよい。各ブロックは特定のブロック幅(チャネル数とも称される)を有する。ブロック幅に基づいて、ネットワークの幅をチューニングすることができる。各ビルディングブロックのランタイムは、その幅およびその入力サイズに依存する。このようにして、ターゲットハードウェア上のブロック固有のランタイムを計算することができる。これにより、エンコーダのビルディングブロックを定義した後、許容可能なランタイム限界値の狭い範囲内に適合するアーキテクチャのセットを自動的または半自動的に決定することができる。
【0072】
受信フィールドサイズをファインチューニングするために、解像度を維持する畳み込み層の数を適合させることができることは言及に値する。エンコーダが、限定された計算ハードウェア、特に、組み込みハードウェア上で実行するように構成されているため、畳み込み層の数が増加する場合、上記ランタイムバジェットを満たすために、エンコーダ層の幅とも称される、チャネルの数を、減少させるべきである。また、マルチタスクエンコーダの分岐は、2つのタスクに関する分岐点が最新の層に設定されるように選択されるのは、最も資源効率の高いエンコーダの解は可能な限り多くの層の共有を保つからである。
【0073】
各々のエンコーダ層において特定の受信フィールド、各々のエンコーダ層において分岐固有の受信フィールドを各々有する、複数の実現可能なエンコーダアーキテクチャを決定した後、各々のタスク固有のデコーダの決定されたパーセンタイルに対する各々のエンコーダアーキテクチャのエンコーダ層の受信フィールドのマッチング品質が評価される。
【0074】
特性尺度分布と可能性のある受信フィールドとのマッチングの評価は、タスク固有の特性尺度分布の決定されたパーセンタイルとエンコーダ層の受信フィールドサイズとの間での最も小さい偏差を供給するエンコーダアーキテクチャを探索することにより行うことができる。最も小さい偏差を有するエンコーダアーキテクチャは、損失関数の最小値を有するエンコーダアーキテクチャを探索することにより決定することができる。そのような損失関数の1つの例は、タスク固有の特性尺度分布により決定された関連するパーセンタイルと各アーキテクチャ候補の受信フィールドサイズとの間の単純な平均二乗誤差である。
【0075】
損失関数は様々な距離測度を用いて実装することができる。例えば、L1(最小絶対偏差)またはコサイン距離を距離測度として用いることができる。
【0076】
損失関数は、任意で、エンコーダアーキテクチャの共有層の数が減少すると損失値を増加させるペナルティ項を含んでよい。これにより、損失関数は、複数の画像処理タスク間でエンコーダ層を共有することにより資源節約を強化する。
【0077】
以下、開示の畳み込みニューラルネットワークのエンコーダのアーキテクチャを決定する方法について、一例に基づいて
図5~11を参照して説明する。
【0078】
図5は、2つの異なる画像処理タスク、つまり、タスクt1およびタスクt2と相関する複数の特性尺度値を示す。これらタスクは、異なる特性尺度分布を示す。このように、各々の特性尺度分布の50、60、80および99パーセンタイルと相関する画素サイズは、これらタスクt1,t2によって異なる。
【0079】
タスクt1、タスクt2を各々処理するように構成されるタスク固有のデコーダは4つの入力接続を必要としてよく、つまり、各タスク固有のデコーダはエンコーダの4つの異なるエンコーダ層と接続する。各タスク固有のデコーダのこれら4つの入力接続は異なる解像度を有する。これら解像度は表のセル、列の各々異なるシェーディングにより示されている。このように、各タスク固有のデコーダは、必要な解像度を供給するエンコーダ層と接続される必要がある。
【0080】
図6は、エンコーダアーキテクチャ探索の結果例を示す。上述のように、アーキテクチャ探索は、ニューラルネットワークの高性能を得るために、どの実現可能なエンコーダアーキテクチャ候補もランタイム限界値要件を満たすという重要課題、例えば、所与のハードウェアのランタイム上限値の90%以上を満たすという重要課題に基づいて行われる。
【0081】
各エンコーダアーキテクチャの各円はエンコーダ層を示し、第1の最も左側の円は1つまたは複数の層を示してよい。しかし、
図5の表のセルと
図6の円のシェーディングを比較すると、第1の最も左側の1つまたは複数のエンコーダ層は必要ではないのは、エンコーダ層の解像度はタスク固有のデコーダの必要な解像度とマッチしていないからである。
【0082】
エンコーダ層を示す円内の数はエンコーダ層の幅を示す。エンコーダの長さが増加すると(つまり、エンコーダ層の数が増加すると)、ランタイム限界値要件を満たすために、エンコーダ層の幅は減少する必要があることは言及するに値する。
【0083】
各エンコーダ層は、特定の受信フィールドを備える。各エンコーダ層の受信フィールドは、各々のエンコーダ層を示す円の下に記載されている数により示される。エンコーダ層の受信フィールドはエンコーダの深さと共に増大し、つまり、より大きい深さに配置されるエンコーダ層は、より小さい深さに配置されるエンコーダ層よりも大きい受信フィールドを備える。
【0084】
図7~10の表に基づいて、特定のタスクを処理するエンコーダアーキテクチャのマッチング品質を評価するための評価測度を計算する方法ステップについて説明する。特に、
図6に示されるエンコーダアーキテクチャAまたはCのどちらが、
図5のタスクt1,タスクt2に各々良く適合するかが調べられる。各タスクに関して、特性尺度分布の比較、特に、特性尺度分布の決定されたパーセンタイルと、必要なデコーダの解像度とマッチするエンコーダ層の受信フィールド値との比較が行われる。
【0085】
例えば、
図5において、タスク固有のデコーダの第1入力接続は、110という特性尺度の画素サイズを有する。タスク固有のデコーダの第1入力接続の解像度とマッチするエンコーダ層の受信フィールドの画素サイズは122という値を有する。このように、差は12である。
【0086】
エンコーダアーキテクチャAと画像処理タスクt1とのマッチングを決定するために、本例においては、タスク固有のデコーダの各々の入力接続の特性尺度の画素サイズと、それに対応するエンコーダ層の受信フィールドの画素サイズとの間の平均二乗誤差が計算される。
【0087】
図7に示されるように、タスク固有のデコーダの各々の入力接続の特性尺度の画素サイズと、それに対応するエンコーダ層の受信フィールドの画素サイズとの間の差の総和は182である。この値は評価測度(本実施形態においては損失総和と称される)を示し、この評価測度は、どのエンコーダアーキテクチャが各々のタスクに最も良く適合するかを評価するために用いることができ、従って、少なくとも、エンコーダにおけるタスク固有の分岐として用いられるべきである。
【0088】
図9は、
図6のエンコーダアーキテクチャCと
図5の画像処理タスクt1とのマッチングの評価を示す。評価測度、損失総和を各々比較すると、エンコーダアーキテクチャAの方がエンコーダアーキテクチャCよりも画像処理タスクt1と良くマッチすると結論付けることができるのは、評価測度、損失総和が、各々、より小さいからである。
【0089】
図8および10は、
図6のエンコーダアーキテクチャAおよびCと
図5の画像処理タスクt2とのマッチングの同様の評価を示す。評価測度、損失総和を各々比較すると、エンコーダアーキテクチャCの方がエンコーダアーキテクチャAよりも画像処理タスクt2と良くマッチすると結論付けることができるのは、評価測度、損失総和が、各々、より小さいからである。
【0090】
図9および10に示されるように、タスク固有のデコーダが必要とする同一の解像度を供給する複数のエンコーダ層が存在する場合、各エンコーダ層の受信フィールドと各々のタスクの特性尺度の決定されたパーセンタイルとを比較することにより、どのエンコーダ層をタスク固有のデコーダに接続させるべきかを決定することができ、決定されたパーセンタイルに最も近くなる受信フィールドを供給するエンコーダ層を選択することができる。
【0091】
図11は、マッチング評価の結果に従って得られた、画像処理タスクt1,t2を処理するように構成される共有エンコーダのアーキテクチャ、およびタスク固有のデコーダとの共有エンコーダの結合を示す。エンコーダは、画像処理タスクt1,t2の両方に関する計算演算を供給する1つまたは複数の共有エンコーダ層と、2つの分岐とを備え、各分岐は特定のタスクに関するタスク固有の計算演算を供給する。
図11において、左側の分岐はタスクt1と相関し、つまり、この左側の分岐の1つまたは複数のエンコーダ層は、画像処理タスクt1に関して構成されるタスク固有のデコーダに情報を供給する。同様に、右側の分岐はタスクt2と相関し、つまり、この右側の分岐の1つまたは複数のエンコーダ層は、画像処理タスクt2に関して構成されるタスク固有のデコーダに情報を供給する。
【0092】
図12は、畳み込みニューラルネットワークのエンコーダのアーキテクチャを決定する方法のステップを示すフロー図を示す。
【0093】
最初に、各画像処理タスクに関して、訓練データに基づく特性尺度分布を計算する(S10)。
【0094】
また、複数のエンコーダアーキテクチャ候補を決定する(S11)。これらエンコーダアーキテクチャ候補の各エンコーダアーキテクチャは、複数の画像処理タスクに関する計算演算を供給する少なくとも1つの共有エンコーダ層と、1つまたは複数のエンコーダ層にわたってスパンする複数の分岐とを備える。これら分岐は、これら画像処理タスクに関する少なくとも部分的に相異なる計算演算を供給する。各分岐は特定の画像処理タスクと相関する。
【0095】
実現可能なエンコーダアーキテクチャ候補を決定した後、これらエンコーダアーキテクチャのエンコーダ層の受信フィールドサイズを計算する(S12)。
【0096】
また、複数の評価測度を計算する(S13)。各評価測度は、これら複数のエンコーダアーキテクチャの特定のエンコーダアーキテクチャと特定の画像処理タスクとの組み合わせに適用する。各評価測度は、評価測度と相関する画像処理タスクの特性尺度分布と、評価測度と相関するエンコーダアーキテクチャのエンコーダ層の受信フィールドサイズとのマッチング品質に関する情報を含む。
【0097】
次のステップにおいて、計算された評価測度を比較し、比較結果を確立する(S14)。
【0098】
最後に、比較結果に基づいてエンコーダアーキテクチャを選択する(S15)。
【0099】
明細書および図面は提案される本発明の原理を例示するに過ぎないことが指摘されるべきである。当業者であれば、本開示において明示的に記載または図示されてなくとも、本発明の原理を具現化する様々な構成を実装することができるだろう。
【符号の説明】
【0100】
1 ニューラルネットワーク
2 エンコーダ
3.1,3.2,3.3 タスク固有のデコーダ
b1,b2,b3 分岐
L1~L5 エンコーダ層
t1,t2,t3 画像処理タスク
SL 共有エンコーダ層
【国際調査報告】