(57)【要約】  光学処理システムは、第１の入力データパターン（ａ）、および、第２の入力データパターン（ｂ）のフーリエ領域表現（Ｂ）である少なくとも１つのデータ集束パターンを同時に表示するように構成されている少なくとも１つの空間光変調器ＳＬＭを備え、光学処理システムは、上記入力データパターンおよび集束データパターンによって連続的に光学処理されている光を検出するための検出器をさらに備え、結果、第１の入力データパターンと第２の入力データパターンとの光学畳み込み、すなわち、ニューラルネットワークにおいて使用するための光学畳み込みが生成される。
2021528721.tif 000002
【特許請求の範囲】
【請求項１】
光学処理システムであって、第１の入力データパターン（ａ）、および、第２の入力データパターン（ｂ）のフーリエ領域表現（Ｂ）である少なくとも１つのデータ集束パターンを同時に表示するように構成されている少なくとも１つの空間光変調器ＳＬＭを備え、前記光学処理システムが、入力データパターンおよび集束データパターンによって連続的に光学処理されている光を検出するための検出器をさらに備え、結果、前記第１の入力データパターンと前記第２の入力データパターンとの光学畳み込み、すなわち、ニューラルネットワークにおいて使用するための前記光学畳み込みが生成される光学処理システム。
【請求項２】
前記検出器および前記少なくとも１つのＳＬＭが異なる速度において動作し、前記検出器が、前記少なくとも１つのＳＬＭよりも低速で動作する請求項１に記載の光学処理システム。
【請求項３】
複数の異なるフレームにわたって積分される出力を有する請求項１または２に記載の光学処理システム。
【請求項４】
前記ニューラルネットワークが畳み込みニューラルネットワークであり、前記光学畳み込みが、前記ニューラルネットワークの畳み込み層のためのものである請求項１から３のいずれか一項に記載の光学処理システム。
【請求項５】
前記第１の入力データパターン（ａ）が、複数（Ｎ）のタイル入力データパターンを含み、該複数のタイル入力データパターンの各々が、前記第１の入力データパターンの個別の区画に対応し、複数の畳み込みが、前記複数のタイル入力データパターンの各々について並列に生成される請求項１から４のいずれか一項に記載の光学処理システム。
【請求項６】
前記第２の入力データパターンが、複数（Ｍ）のタイルカーネルデータパターンを含み、該複数のタイルカーネルデータパターンの各々が、前記第２の入力データパターン（ｂ）の個別の区画に対応し、複数の畳み込みが、タイル入力データパターンおよびタイルカーネルデータパターンから形成される各対（ＮｘＭ）について並列に生成される請求項１から５のいずれか一項に記載の光学処理システム。
【請求項７】
前記第２の入力データパターンから前記データ集束パターンをデジタルに取得するためのプロセッサをさらに備える請求項１から６のいずれか一項に記載の光学処理システム。
【請求項８】
前記プロセッサが、最小ユークリッド距離（ＭＥＤ）を使用して前記データ集束パターンを取得するようにさらに構成されている請求項７に記載の光学処理システム。
【請求項９】
前記第２の入力データパターン（ｂ）は適切なパディングによってタイル分割された複数のカーネルから構成され、結果、複数のカーネルに対する１つの入力の畳み込みが並列に実施され、前記入力データパターンが、フィルタＳＬＭ上に表示するために対応するデータ集束パターン（Ｂ）に変換される請求項７または８に記載の光学処理システム。
【請求項１０】
前記データ集束パターン（Ｂ）が、制限された最大周波数までしかない空間周波数成分を含み、結果、前記第２の入力データパターン（ｂ）に対応するカーネルの有効幅が制限される請求項１から９のいずれか一項に記載の光学処理システム。
【請求項１１】
前記第２の入力データパターン（ｂ）が、正の成分および負の成分を有する双極性カーネルであり、前記光学畳み込みが、第１のデータ入力およびカーネルの正の表現の第１の畳み込みと、前記第１のデータ入力および適用されているカーネルバイアスの第２の畳み込みとの間の差である請求項１から１０のいずれか一項に記載の光学処理システム。
【請求項１２】
前記ＳＬＭがバイナリＳＬＭである請求項１から１１のいずれか一項に記載の光学処理システム。
【請求項１３】
倍率を制御し、前記ニューラルネットワークを光学的にプーリングするためのレンズをさらに備える請求項１から１２のいずれか一項に記載の光学処理システム。
【請求項１４】
異なる速度において動作する入力、フィルタ、およびカメラを備え、前記カメラが、前記入力と前記フィルタの両方よりも低速であり、複数のフレームを集積化するために使用され、既存のＣＮＮフレームワークによって使用されるよりも高いレベルの畳み込み演算を合成する請求項１から１３のいずれか一項に記載の光学処理システム。
【請求項１５】
少なくとも１つの入力ＳＬＭと、少なくとも１つのフィルタＳＬＭとを備え、前記入力ＳＬＭおよび前記フィルタＳＬＭが、同じ速度において動作し、カメラの前記速度が、両方の前記ＳＬＭよりも低速である請求項１から１４のいずれか一項に記載の光学処理システム。
【請求項１６】
前記検出器が複数の入力ＳＬＭフレームに及ぶ露出を有する請求項１から１５のいずれか一項に記載の光学処理システム。
【請求項１７】
前記検出器が、光集積化されている複数の畳み込みを捕捉するように構成されている請求項１から１６のいずれか一項に記載の光学処理システム。
【請求項１８】
前記光学畳み込みが、入力が所与のカーネルと畳み込まれる複数の異なる層を含む請求項１から１７のいずれか一項に記載の光学処理システム。
【請求項１９】
前記光学畳み込みが、プーリング層であって、該層が空間的にダウンサンプリングされる、プーリング層を含む請求項１から１８のいずれか一項に記載の光学処理システム。
【請求項２０】
前記光学畳み込みが、非線形活性化関数が適用される活性化層を含む請求項１から１９のいずれか一項に記載の光学処理システム。
【請求項２１】
前記光学畳み込みが、ノードの各々の間に完全に指定された重みを有する全結合層を含む請求項１から２０のいずれか一項に記載の光学処理システム。
【請求項２２】
請求項１から２１のいずれか一項に記載の光学処理システムを使用して、光学畳み込みを生成する方法。
【請求項２３】
ニューラルネットワークの層を畳み込みまたはプーリングするための請求項２２に記載の方法。
【請求項２４】
ニューラルネットワークの畳み込み層を訓練または推論するための請求項２２に記載の方法。
【請求項２５】
画像解析のための深層学習または機械学習における請求項１から２１のいずれか一項に記載のシステムの使用。
【請求項２６】
４ｆ光学相関器を使用してニューラルネットワークを構成する方法であって、
第１の入力データパターン（ａ）を表示するステップと、
少なくとも１つのデータ集束パターン（Ｂ）を第２の入力データパターン（ｂ）のフーリエ領域表現（Ｂ）として決定するステップと、
少なくとも１つのデータ集束パターン（Ｂ）を表示するステップと、
前記入力データパターンおよび集束データパターンによって連続的に光学処理されている光を検出するステップであって、結果、前記第１の入力データパターンと前記第２の入力データパターンとの光学畳み込みが生成される、検出するステップと、
前記光学畳み込みをニューラルネットワークを含むように使用するステップと
を含む方法。
【請求項２７】
パターンを表示するための少なくとも１つのＳＬＭおよび検出器を提供するステップと、前記少なくとも１つのＳＬＭおよび前記検出器を異なる速度において動作させるステップとをさらに含み、前記検出器が、前記少なくとも１つのＳＬＭよりも低速で動作する請求項２６に記載の方法。
【請求項２８】
複数の異なるフレームにわたって出力を集積化するステップをさらに含む請求項２７に記載の光学処理システム。
【請求項２９】
第１の入力データパターンおよび第２の入力データパターンのうちの少なくとも１つをタイル分割するステップと、複数の光学畳み込みを並列に生成するステップとをさらに含む請求項２６から２８のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、機械学習畳み込みニューラルネットワークに関する。特に、本発明は、光学相関ベースの処理システムを使用して、畳み込みニューラルネットワークを加速させることに関する。
【背景技術】
【０００２】
畳み込みニューラルネットワーク（ＣＮＮまたはＣｏｎｖＮｅｔ）が周知であり、画像分析における卓越した機械学習技法になっている。畳み込みニューラルネットワークは、画像認識および分類について現行技術水準の性能を達成する、深層順伝播型人工ニューラルネットワークである。ＣｏｎｖＮｅｔの根幹は、典型的には、訓練および推論である。しかしながら、大規模な畳み込みネットワークを訓練することは非常に時間がかかり、たとえ最新のグラフィック処理ユニット（ＧＰＵ）を使用したとしても、数週間かかる可能性がある。より複雑なＣｏｎｖＮｅｔの一部は、訓練と推論の両方の段階において、実行するのにより長い時間がかかる可能性がある。
【０００３】
ＣｏｎｖＮｅｔにおいて、畳み込み層は計算負荷の非常に多大な、多くの場合はほとんどの部分を表す。さらに、畳み込みの解像度が増大する（入力サイズまたはカーネルサイズのいずれかが増大する）ことによって、さらなる計算の負担が課される。これによって、ネットワーク構成は、多数の高解像度畳み込み層を構成するものからかけ離れてしまい、または、計算の負担を低減するために畳み込み層を修正することを余儀なくされる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１４／０８７１２６号
【特許文献２】欧州特許出願公開第１５４６８３８号明細書（国際公開第２００４／０２９７４６号）
【非特許文献】
【０００５】
【非特許文献１】ｈｔｔｐ：／／ｄｅｅｐｌｅａｒｎｉｎｇ．ｎｅｔ／ｔｕｔｏｒｉａｌ／ｌｅｎｅｔ．ｈｔｍｌ
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えばＧＰＵまたはＦＰＧＡアーキテクチャ上で実施される様々なアルゴリズムを使用して、ＣｏｎｖＮｅｔの訓練および推論を加速させることが、デジタルに模索されている。しかしながら、さらなる加速が大いに望まれる。
【０００７】
とりわけ、この問題に対して、本発明の実施形態が解決策を提供することを模索する。
【課題を解決するための手段】
【０００８】
第１の独立した態様において、光学処理システムが提供され、光学処理システムは、第１の入力データパターン（ａ）、および、第２の入力データパターン（ｂ）のフーリエ領域表現（Ｂ）である少なくとも１つのデータ集束パターンを同時に表示するように構成されている少なくとも１つの空間光変調器ＳＬＭを備え、光学処理システムは、上記入力データパターンおよび集束データパターンによって連続的に光学処理されている光を検出するための検出器をさらに備え、結果、第１の入力データパターンと第２の入力データパターンとの光学畳み込み、すなわち、ニューラルネットワークにおいて使用するための光学畳み込みが生成される。
【０００９】
光学処理システムは、４ｆ光学相関器を備え、入力データパターン（Ａ）が、相関器の入力平面内にあり、データ集束パターンが、フーリエ平面内にある。データ集束パターンは、畳み込みカーネルまたはフィルタを含むことができる。ＳＬＭは、衝突する光に対して動的な変調効果を有する。例えば、ＳＬＭは、特許文献１に記載されているように、平行な層であり得、または、同じ平面内にあり得る。そのような４ｆ光学相関器において、光学入力からの光が上記表示パターンに入射し、連続的に光学処理され、結果、入力データパターンおよび集束パターンの各々が、連続的な光路を形成し、その後、光が検出器において捕捉される。
【００１０】
データ集束パターンは、第２の入力データパターン（ｂ）のフーリエ領域表現（Ｂ）であるように選択される。すなわち、ＣｏｎｖＮｅｔの必要な畳み込みを生成するために、第２の入力データパターンからフィルタが計算される。例えば、データ集束パターンは、デジタルに計算されてもよい。
【００１１】
ニューラルネットワークは畳み込みニューラルネットワーク（ＣｏｎｖＮｅｔ）であってもよく、光学畳み込みは、ニューラルネットワークの畳み込み層に適している。典型的には、第２の入力データパターンは、第１の入力データパターンがそれと畳み込まれる「カーネル」として参照される。
【００１２】
重要なことには、光学相関器は、既知のデジタル実施態様よりも、（２Ｄ）畳み込みの評価に適したプラットフォームである。この光学的手法は、そのような方法よりも改善された性能を提供する。
【００１３】
いくつかの実施形態において、第１の入力データパターン（ａ）は、複数（Ｎ）のタイル状入力データパターン、または「特徴マップ」を含み、複数のタイル入力データパターンの各々は、処理されている画像の「バッチ」の成員に対応し、複数の畳み込みが、複数のタイル入力データパターンの各々について並列に生成される。いくつかの実施形態において、第２の入力データパターンは、複数（Ｍ）のタイル状カーネルデータパターンを含み、複数のタイル状カーネルデータパターンの各々は、フィルタカーネル（ｂ）の集合の個別の成員に対応し、複数の畳み込みが、上記タイル状入力データパターンとタイル状カーネルデータパターンとから形成される各対（ＮｘＭ）の各々について並列に生成される。
【００１４】
したがって、入力２Ｄ画像および／または２Ｄカーネルをタイル分割することができる。タイル分割とは、本発明においては、タイルが互いに重なり合わず、検出器領域の範囲内にあることを意味する。したがって、各「タイル」は、検出器解像度よりも小さい解像度のものである。この結果として、所与のハードウェア解像度を使用して、複数のより解像度の低い畳み込みを実施する、種々の方法が得られる。したがって、有利には、タイル状入力およびカーネルを適切に選択することによって、検出器（例えば、カメラ）の全解像度を利用することができる。畳み込み解像度を完全に利用するために入力とカーネルの両方をタイル分割することによって、検出器（カメラ）平面にわたって結果が生成される。有利には、各入力およびカーネルデータ対（各々が「タイル」であり得る）について、複数の畳み込みが並列に達成される。並列畳み込みは「バッチ」にされ得る。バッチは、複数のより小さいフーリエ変換を表す。
【００１５】
カーネルをタイル分割する場合、それらは、適切なパディングによって直接表現（ｂ）にタイル分割されることに留意されたい。それらはその後、フーリエ領域フィルタ表現（Ｂ）に変換される。フィルタ生成の詳細に起因して、この畳み込みは完璧ではなく、異なる動作間のクロストークをもたらす可能性がある。
【００１６】
好ましくは、光学処理システムは、第２の入力データパターン（ｂ）からデータ集束パターン（Ｂ）をデジタルに取得するためのプロセッサをさらに備える。したがって、４ｆ光学相関器のフィルタは、カーネルからデジタルに計算される。これは、低フィルタ解像度（光検出器解像度と比較して）に起因して相対的に高速なプロセスである。さらに、ネットワークが訓練されると、これらのパターンを再使用することができ、それらのパターンを再計算する必要はない。
【００１７】
プロセッサは、最小ユークリッド距離（ＭＥＤ）法を使用してデータ集束パターンを取得するように構成することができる。この方法は、所与の複素値を表すために使用するために利用可能な適切なＳＬＭ変調値が、複素平面上で測定される距離が最も近い値であると仮定する。
【００１８】
有利には、４ｆ光学相関器は、ＣｏｎｖＮｅｔの推論プロセスを高速化するために利用することができ、ネットワークは、光学システムの特異性の知識を用いて、従来のデジタルプラットフォーム上で訓練されている。
【００１９】
代替的に、４ｆ光学相関器は、ネットワークに組み込まれてもよく、訓練プロセスにおいて直接的に使用されてもよい。光学相関器は、ネットワークを通じた順伝播中に使用され、一方、逆伝播中は、従来のデジタル畳み込みが使用される。
【００２０】
空間光変調器の特性に起因するフィルタ画像に対する制約が、表示することができるデータ集束パターン（Ｂ）、したがって、実施することができる対応する畳み込みカーネル（ｂ）を制限することは諒解されたい。しかしながら、特定の実施形態において、データ集束パターン（Ｂ）最大空間周波数成分が、対応するカーネル（ｂ）の有効サイズを決定するため、制限されることが重要である。データ集束パターン（Ｂ）およびカーネル（ｂ）は、離散フーリエ変換（ＤＦＴ）によってリンクされることを想起されたい。この事実は、データ集束パターン設計中に考慮されなければならない。したがって、システムは、有効カーネル幅を制限するために、フィルタの最大空間周波数成分を制御する、すなわち、カーネルのサイズ、および、入力内のその点を超える距離は、出力内の対応する点に影響を及ぼし得ない。これによって、異なる畳み込み動作間の望ましくない接続が防止される。
【００２１】
首尾よい動作の秘訣は、この接続を制御することである。
【００２２】
いくつかの実施形態において、第２の入力データパターン（ｂ）は、正および負の成分を有する符号付きカーネルである。
【００２３】
いくつかの実施形態において、カーネルは、ｆ＊ｋ＝ｆ＊（ｐ−ｂｌ）が２つの正の値の畳み込みから再構成されるような、１）正の値のカーネルｐおよび２）均一なバイアスカーネルｂｌに分解される。これは、検出器（カメラ）が負の振幅を測定することができないという事実を克服する。
【００２４】
いくつかの実施形態において、ＳＬＭは、マルチレベルＳＬＭではなく、バイナリＳＬＭである。バイナリＳＬＭは、高い帯域幅を有し高い性能を提供するが、その適用が、デバイスの制限に適合されることを必要とする。
【００２５】
いくつかの実施形態において、システムは、倍率を調整し、ニューラルネットワークを光学的にプールするためのレンズまたはレンズ選択をさらに備える。
【００２６】
さらなる態様において、上述したような光学処理システムを使用して、光学畳み込みを生成する方法が提供される。そのような方法は、ニューラルネットワークの層を畳み込むか、または、畳み込んでプールするために使用することができる。例えば、本方法は、畳み込みニューラルネットワークを訓練または推論するために使用することができる。
【００２７】
さらなる態様において、画像分析のための深層機械学習における上述したようなシステムの使用が提供される。
【００２８】
第２の独立した態様において、４ｆ光学相関器を使用してニューラルネットワークを構成する方法が提供され、方法は、
第１の入力データパターン（ａ）を表示するステップと、
少なくとも１つのデータ集束パターン（Ｂ）を第２の入力データパターン（ｂ）のフーリエ領域表現（Ｂ）として決定するステップと、
少なくとも１つのデータ集束パターン（Ｂ）を表示するステップと、
上記入力データパターンおよび集束データパターンによって連続的に光学処理されている光を検出するステップであって、結果、第１の入力データパターンと第２の入力データパターンとの光学畳み込みが生成される、検出するステップと、
光学畳み込みをニューラルネットワークの一部として使用するステップと
を含む。
【００２９】
いくつかの実施形態において、本方法は、第１の入力データパターンおよび第２の入力データパターンのうちの少なくとも１つをタイル分割するステップと、複数の光学畳み込みを並列に生成するステップとをさらに含む。
【００３０】
いくつかの実施形態において、異なるシステム構成要素は異なる速度において動作する。入力ＳＬＭよりも低速で動作するカメラが、複数の光学畳み込みの合計である結果を生成するために、複数のフレームにわたって露出される。
【００３１】
システム態様を参照して説明されている任意選択の実施形態のすべてが、本方法に適用されることが諒解されよう。
【図面の簡単な説明】
【００３２】
【図１】本出願人自身の従来技術から導出される光路図である。
【図２】既知の「４ｆ」光学システムを示す別の光路図である。
【図３（ａ）】２つの関数の光学的相関の例を示す図である。
【図３（ｂ）】２つの関数の光学的相関の例を示す図である。
【図３（ｃ）】２つの関数の光学的相関の例を示す図である。
【図４】複素平面のアルガン図である。
【図５】さらなる例を非特許文献１から取得することができる、従来技術に基づく２Ｄ畳み込み（ＣｏｎｖＮｅｔ）の概略図である。
【図６】フーリエ領域変換の一例の図である。
【図７（ａ）】固定入力ハードウェアを使用して複数の低解像度畳み込みを実施する複数の異なる方法のうちの１つを示す図である。
【図７（ｂ）】固定入力ハードウェアを使用して複数の低解像度畳み込みを実施する複数の異なる方法のうちの１つを示す図である。
【図７（ｃ）】固定入力ハードウェアを使用して複数の低解像度畳み込みを実施する複数の異なる方法のうちの１つを示す図である。
【図７（ｄ）】固定入力ハードウェアを使用して複数の低解像度畳み込みを実施する複数の異なる方法のうちの１つを示す図である。
【図８】デジタルフーリエ変換と比較したときの、１０ＭＰｘ入力がＰ個のバッチに分割されるときのルーフライン性能に対する「減速係数」Ｓのプロット図である。
【図９】光学システムが畳み込みを実施するために使用される例を示す図である。
【図１０】デジタルに計算される符号付き畳み込み、および、本発明の実施形態に従って取得される対応する光学畳み込みの２つの例を示す図である。
【発明を実施するための形態】
【００３３】
本発明者らは、光学相関器を特定の方法で利用して、畳み込みニューラルネットワーク（ＣＮＮ）またはＣｏｎｖＮｅｔの中核にある畳み込みを評価することができることを認識するに至った。言い換えれば、光学処理は、特にＣｏｎｖＮｅｔによって必要とされる畳み込みを評価するために、深層学習プロセスに適用されている。しかしながら、光学畳み込みは考慮する必要がある特定の特異性を有するため、この適用は自明ではない。特に、問題は、下記に詳細に説明するように、利用可能な電気光学および光電気ハードウェアの制限に関する。
【００３４】
光学フーリエ変換および光学相関器
コヒーレントな光学処理システムが知られている。光学相関器などのコヒーレントな処理システムにおいて、レーザまたは他のコヒーレント光源が、典型的には、１つまたは複数の空間光変調器（ＳＬＭ）デバイスによって、位相または振幅のいずれか、または２つの組み合わせにおいて変調されるために利用される。ＳＬＭは、衝突する光に対して動的な変調効果を有するデバイスである。これらは典型的には、液晶デバイスを組み込むが、またμミラー微小電気機械（ＭＥＭｓ）デバイスであってもよい。光学相関器デバイスが、典型的には光学パターン認識システムとして使用される。４ｆ整合フィルタまたは結合変換相関器（ＪＴＣ）システムにおいて、ＳＬＭデバイスは、入力もしくは基準パターン（画像であり得る）、および／または、入力関数に「整合」されることになる基準関数／パターンのフーリエ変換表現に通常基づくフィルタパターンを表す関数をあてがわれる。
【００３５】
相補型金属酸化膜半導体（ＣＭＯＳ）または電荷結合素子（ＣＣＤ）センサ等のカメラが、典型的には、光学相関器システムの場合は入力および基準関数の類似性および相対整合を示す局所相関強度を含み得る、結果もたらされる光学強度分布を捕捉するために、光学システムの出力平面内に位置決めされる。
【００３６】
コヒーレント光学情報処理は、単純なレンズがフーリエ変換をレンダリングし、従来技術と本発明の両方に関してこのタイプのコヒーレント光学システムにおいて使用される最も一般的な関数が、光学フーリエ変換（ＯＦＴ）、すなわち、時間的、または、この場合は空間的な分布の、その周波数成分への分解であるという事実を利用する。これは、以下の式によって示される、純粋な形態の二次元フーリエ変換と類似している。
【数１】
2021528721.tif 000003
【００３７】
式中、（ｘ，ｙ）は空間／時間変数を表し、（ｕ，ｖ）は周波数変数である。
【００３８】
ＯＦＴは、波長λのコリメートされたコヒーレント光（典型的にはレーザ光）１が、空間光変調器２（ＳＬＭ、典型的には液晶または電気機械ＭＥＭｓアレイ）によって位相または振幅において変調される、図１に示す光学システムによって達成することができる。変調ビームはその後、焦点距離ｆの凸レンズ３に通され、当該レンズの後焦点面内で集束され、後焦点面には、ＣＭＯＳアレイ４などの検出器が、結果もたらされるフーリエ変換の強度を捕捉するために位置決めされている。
【００３９】
前焦点面（明確にするために下流焦点面として参照される場合がある）は正確に、後焦点面（明確にするために上流焦点面として参照される場合がある）に見出される複素場の、振幅と位相の両方のフーリエ変換を含む。これは、無限空間範囲の完璧に平坦なビームについて、単一の焦点が得られる（フーリエ理論の「ＤＣ」項）という事実と一致する。
【００４０】
光学処理システムにおいて、ＯＦＴは、電子機器／ソフトウェアベースの高速フーリエ変換（ＦＦＴ）ファミリのアルゴリズムに対する直接的な置換として利用することができ、プロセス時間および解像度に関して相当の利点をもたらす。このプロセスは、様々な関数の基礎として使用することができる。
【００４１】
２つ以上の関数の間の相関は、２つの主な方法において、光学システム内で達成することができる。第１の方法は、以下の式によって示される、整合フィルタプロセスである。
【００４２】
【数２】
2021528721.tif 000004
【００４３】
式中、大文字の関数は、それらの小文字の均等物のフーリエ変換を表し、「＊」は隣接する関数の複素共役を示し、「＊」は相関関数を示す。
【００４４】
相関を達成するための第２の方法は、特許文献２に記載されている１／ｆ  ＪＴＣなどの、結合変換相関プロセスを使用することである。
【００４５】
各事例において、相関は、それら自体がフーリエ変換されている、２つの関数の積の逆フーリエ変換として形成される。整合フィルタの場合、１つがレンズによって光学的に、１つがフィルタ設計プロセス中に電子的に変換されている。ＪＴＣの場合、両方が光学的に変換されている。
【００４６】
図２は、整合フィルタまたは他の畳み込みベースのシステムを実現するために使用することができる「４ｆ」光学システムを示す。図２は、ＳＬＭピクセルアレイ６によって変調され（「入力データ」ａ）、その後、レンズ７（「レンズ１」）を通じて伝送され、第２のＳＬＭピクセルアレイ８上に集束される、第２のＳＬＭ８（フィルタＢ）において、第１のＳＬＭ状上に表示される関数のＯＦＴ（Ｆ）を形成する、波長λのコリメートコヒーレント光源５を示す。結果もたらされる光学各点行列乗算が、その後、レンズ９（「レンズ２」）によって逆フーリエ変換され、その結果が、検出器アレイ１０（カメラｃを含んでもよく、または含まなくてもよい）において捕捉される。
【００４７】
整合フィルタプロセスについて、第１のＳＬＭ６のピクセルによって表示されるパターンは、「入力シーンａ」ｇ（ｘ，ｙ）になり、第２のＳＬＭ８上に表示されるパターンは、基準関数ｒ（ｘ，ｙ）のフーリエ変換のバージョンを表す。
【００４８】
図２に示すように、データは、ＳＬＭ６、８を使用して平面ａおよびＢにおいて光学相関器システムに入力される。例えば、複素振幅Ａ（ｘ，ｙ）のビームが、空間的に変動する透過関数ｔ（ｘ，ｙ）を有するＳＬＭを通過する場合、結果もたらされるビームは、以下の式の振幅を有する。
【００４９】
【数３】
2021528721.tif 000005
【００５０】
入力データａは、システムの前面に位置される。フィルタ８（Ｂ）は、実効的に、光場を２Ｄ関数Ｂで乗算する。カメラセンサ１０は、出力ビームｃ２をイメージングする。システムは、以下の数学演算を実施する。
【００５１】
【数４】
2021528721.tif 000006
【００５２】
式中、ｃは複素振幅関数である。（第２のレンズは実際には、逆ではなく順方向のフーリエ変換を実施するが、正味の効果は、カメラセンサの向きによって補償される座標反転である。）カメラセンサは、この場の強度Ｉ＝｜ｃ｜２を測定する。
【００５３】
この畳み込み原理は、フーリエ変換を使用して、単純な乗算によって２つの関数ｆおよびｇの畳み込み（＊）を実行する。
【００５４】
【数５】
2021528721.tif 000007
【００５５】
本発明者らは、光学システムの効果が、以下の畳み込みを評価することであることを認識するに至った。
【００５６】
【数６】
2021528721.tif 000008
【００５７】
相関に対する１つの入力ａは、光学システムに直接的に入力される。相関に対する第２の入力ｂはデジタルに処理される。これは、オフラインで実施され、デジタル離散フーリエ変換、および、その後、利用可能なフィルタレベルへのマッピングのための後処理を使用してＢが生成される（光学相関器を適切に使用することによって、標的ｂからのフィルタＢの生成において生じるオーバーヘッドが小さくなる）。
【００５８】
したがって、本発明者らは、相関が畳み込みプロセスに密接に関係付けられ、畳み込みされている関数の反転している座標に対応すると認識する。２Ｄ画像において、各座標における反転は、画像の回転であることに留意されたい。明確にするために、これらの関数は明確にするための１Ｄにおいて定義されているが、それらは当然ながら２Ｄに及ぶ。
【００５９】
２つの関数ｆ（ｘ）およびｇ（ｘ）の畳み込み（＊）は、離散的表現と連続的表現の両方において、以下のように定義される。
【００６０】
【数７】
2021528721.tif 000009
【００６１】
同じ２つの関数ｆ（ｘ）およびｇ（ｘ）の畳み込み（ｏ）は、以下のように定義される。
【００６２】
【数８】
2021528721.tif 000010
【００６３】
これらの定義から、上記関数のうちの１つの座標が反転した状態で、動作が相互交換可能であることが分かる。この反転は、フィルタを回転させることによって、光学相関器において実施される。したがって、対称関数について、相関および畳み込みは等価である。重要なことに、本発明者らは、光学相関器を、光学畳み込み器として考えることもできると認識するに至った。
【００６４】
相関は、とりわけ、パターンマッチング用途に非常に有用である。このプロセスは、１つの関数を別の関数へと引き込み、すべての変位の集合においてそれらの間のドット積（投影）をとることと捉えることができる。２つの関数は、大きいドット積を有することになり、光学的に、それらの変位されたバージョンが合致する位置に対応する「相関スポット」を生成することになる。
【００６５】
図３（ａ）〜図３（ｃ）は、２つの関数の相関の例を示す。試験画像（ａ）が標的（ｂ）と相関される。出力（ｃ）のピークは、合致が存在する場所を示し、図３（ｃ）においてはこれが円で囲まれている。
【００６６】
情報は、ＳＬＭを使用することによって光ビームに符号化される。ＳＬＭは、本質的に、非常に小さいディスプレイである（光学プロセッサシステムにおいて使用されるデバイスの一部は、ディスプレイプロジェクタに由来する）。これらのデバイスは、液晶技術を光学ポラライザと併せて使用して、光ビームを変調する。一般に、光ビームの振幅および相対位相を変調することができる。異なるデバイスは異なる機能を提供する。一般に、デバイスは、マルチレベルＳＬＭとバイナリＳＬＭとの２つのカテゴリに分けることができる。
【００６７】
マルチレベルＳＬＭの場合、デバイス上の各ピクセルは、複数の異なるレベルのうちの１つに設定することができる（通常は８ビット、または２５６レベル）。可視偏光に応じて、デバイスは、異なる仕方で光場の振幅または位相を変調することができる。ＳＬＭは、光場の振幅および位相を独立して変調することが可能でない。一般に、何らかの結合変調が存在する。この変調は、「動作曲線」、すなわち、アクセス可能な変調を記述する複素平面上の経路によって表現することができる。図４は、ＳＬＭの２５６個の変調レベルが存在する曲線の例を示す、複素平面のアルガン図である。マルチレベルＳＬＭデバイスは、典型的には、約１００Ｈｚにおいて動作する。
【００６８】
バイナリＳＬＭは、典型的には、約１０ＫＨｚにおいて、マルチレベルＳＬＭよりもはるかに高速に動作する。しかしながら、バイナリＳＬＭは、振幅変調、位相変調または両方であり得る、２つの異なる変調レベルしか提供しない。２つのレベルしか提供しないにもかかわらず、速度がはるかに高いということは、バイナリＳＬＭが最高帯域幅のデバイスであることを意味する。
【００６９】
フィルタＳＬＭとして使用される場合、バイナリ関数のフーリエ変換は必ずしもバイナリではないため、バイナリＳＬＭはバイナリ畳み込みカーネルを表すことに制約されないことに留意されたい。しかしながら、バイナリフィルタは、フィルタの空間周波数内容を制御する能力を制約する。
【００７０】
畳み込みニューラルネットワーク（ＣｏｎｖＮｅｔ）
２Ｄ  ＣｏｎｖＮｅｔの例示的な概略が、図５に要約されている。特に、入力画像１１は、複数のタイルに分割され、２Ｄ畳み込みが、これらのタイルに対して実施される。その後、種々の層の処理が行われる。これらは、解像度をダウンサンプリングする「プーリング」層、さらなる畳み込み層、非線形アプリケーション関数の適用、および古典的な「全結合」ニューラルネット層を含む。
【００７１】
ＣｏｎｖＮｅｔは、典型的には、ともに連結された複数の異なる層を含み、これらの層は、
入力が所与のカーネルと畳み込まれる畳み込み層、
層が空間的にダウンサンプリングされるプーリング層、
（非線形）活性化関数が適用される活性化層、
ノードの各々の間に完全に指定された重みを有する古典的な全結合層
を含む。これらは最終的な分類ノード値を生成するために使用される。
【００７２】
ＣｏｎｖＮｅｔには多くの意味合いが存在することが諒解されるだろうが、ここでは、標準的なアーキテクチャの高レベルの概要のみを要約する。これらの層は、無数の異なる方法で組み合わせることができる。良好な性能で、かつ過剰な計算を必要とすることなくニューラルネットワークを正確に構成することは、当該技術分野における主要な課題の１つである。
【００７３】
各層（全結合層を除く）において、順方向に通過されているネットワークの状態が、異なる畳み込みカーネルの適用に起因するｘ，ｙ「特徴マップ」の集合から成る３Ｄオブジェクト（またはバッチ次元を含むときは４Ｄ）である。
【００７４】
これらの層内に、さらなる構成選択肢が存在する。例えば、畳み込み層が先行する層からの異なる特徴マップを結合することができる多くの方法が存在し、様々な非線形活性化関数が存在する。
【００７５】
ＣｏｎｖＮｅｔの根幹は、訓練および推論に分けることができる。
【００７６】
ネットワークの構成が定義された後、ネットワークは訓練されなければならない。ネットワーク内には、畳み込みカーネルおよび全結合層の重みを含む、経験的に決定されなければならない多数のパラメータが存在する。
【００７７】
最初、これらのパラメータはランダムに設定される。それらを訓練するには、大規模な予め分類されたデータセットが必要である。この訓練データセットはネットワークを通じて供給され、その後、正しい分類と報告されている分類との間の誤差が、ネットワークを通じてフィードバックされる（誤差逆伝搬）。ネットワーク内の各点に関する誤差は、勾配降下法を用いて、その点における変数（すなわち、カーネル内の重み）を最適化するために使用される。畳み込みは、誤差逆伝搬中に実施される。制度要件がより高いことに起因して、これらが光学的に実施される可能性は低い。
【００７８】
訓練が完了すると、ネットワークを推論のために展開することができ、データは単純にネットワークに提示され、最後の分類層へと伝搬される。
【００７９】
ＣｏｎｖＮｅｔへの光学処理の適用／光学畳み込みの実施
光学４ｆ相関器を使用して、畳み込みを評価し、特に、ＣｏｎｖＮｅｔ推論適用を加速させることができる。有利には、推論は、相対的により低い（数値的勾配降下法が特に誤差逆伝搬中にロバストに作用することを必要とする訓練と比較して）精度において作用するようにすることができる。
【００８０】
畳み込みの光学的実施は、対称操作ではない。上記の「光学フーリエ変換および光学相関器」の節に戻って参照すると、１つの引数ａは、光学システムに直接的に入力されており、一方で、第２の引数ｂについては、そのフーリエ領域表現Ｂが計算されており、光学相関器の用語において「フィルタ」として表示されている。これは、ａおよびｂが相互交換可能である純粋な畳み込みとは対照的である。
【００８１】
したがって、フィルタおよび入力を作成するプロセスは、非対称な性能をもたらす。概略的に、このフーリエ領域畳み込みは、図６に要約されている。図６は、４ｆ相関器を参照して、畳み込みが光学的に評価される原理を示す。入力は、光学的にフーリエ変換され、光学的にフィルタと乗算され、その後、光学的に逆フーリエ変換されて、畳み込みが生成される。フィルタは、カーネルからデジタルに計算される。（フィルタ解像度が低いことに起因して、これは高速なプロセスであり得る）。
【００８２】
このアーキテクチャは、カーネルに基づくフィルタのデジタル計算を必要とする。これは多大なオーバーヘッドではない。訓練が完了すると、予め計算されたフィルタを記憶することができ、推論中二個のオーバーヘッドが除去される。第２に、カーネルの解像度が相対的に低いことによって、フィルタ計算が単純になる。カーネル計算の技術的態様は、下記に論じる。
【００８３】
ハードウェアを考慮に入れると、光学畳み込みはＯ（１）プロセスである。ＳＬＭおよびカメラの解像度における畳み込みは、システムの「サイクル時間」、すなわち、システムがそれ自体を更新するのにかかる期間において実施される。システムの異なる態様（入力ＳＬＭ、フィルタＳＬＭ、およびカメラ）は、異なるサイクル時間を有し得る。システムの実効スループットは、最も高速の構成要素の速度によって決定され、より低速の構成要素は、システムが実施することができる実際の動作を制約する。
【００８４】
これらのハードウェア考慮事項は、ニューラルネットワークにおいて使用するための畳み込みを評価するために光学プロセッサを使用することによって、少なくとも４つの異なる技術的問題をもたらす。
１．Ｏ（１）演算は、固定解像度畳み込みである。他方、畳み込み解像度の柔軟性を必要とする用途も対応されるべきである。
２．ＳＬＭの動作範囲が制限されるということは、任意のデータをシステムに入力することができないことを意味する。これは入力とフィルタの両方に関係する。
３．カメラセンサを使用して結果を測定することによって、複素振幅ではなく強度が測定される。これは、たとえ出力が実数であっても、出力の位相の測定を不可能にするだけでなく、正および負の数（符号付き結果）を決定することもできない。
４．ハードウェア制限は、システムの異なる構成要素（入力、フィルタ、カメラ）が異なる速度で動作し得ることを意味する。具体的には、カメラは入力および／またはフィルタＳＬＭよりも低速で動作し得る。したがって、システムの出力は、複数の異なるフレームにわたって集積化される。
【００８５】
ここで、これらの問題およびそれらの解決策を扱う。
【００８６】
１．固定解像度畳み込み
論じられているように、実施される畳み込みは、システムハードウェアの解像度にある。ＣｏｎｖＮｅｔは、相対的に高い解像度の入力を有し得るが、プーリング段階は、ネットワークが進展するにつれて、畳み込みの解像度が低減することを意味する。第１の畳み込み層でさえ、相関器の解像度を利用する可能性は低い。この問題は、畳み込みを光学的に並列化することによって対処することができる。入力ＳＬＭ上に複数の入力を配置することによって、同じカーネルに対する並列な畳み込みが見出され得る。
【００８７】
図２に戻って参照すると、入力のセットがタイル分割されて、関数ａが形成される。所望の畳み込みカーネルが適切なフィルタＢに変換される。結果もたらされる光学畳み込みは、出力平面ｃにわたって配置される。
【００８８】
入力は適切に分離されなければならない。離散的な畳み込みを評価するとき、「全」畳み込みは、入力フットプリントを超えてカーネル幅に及ぶ。したがって、複数の異なる入力は、複数の異なる結果の間にクロストークがないように、このデータが抽出されることを可能にするのに十分に分離してタイル分割されなければならない。「有効」な畳み込みのみを取得するために、結果の境界を無視することによって、より緊密にタイル分割することができる。好ましくは、より緊密にタイル分割するために、システムは、隣接する画像の同じパディング領域と重なり合う全畳み込み領域を回避するように構成することができる。
【００８９】
これは、技術的には、「同パディング（ｓａｍｅ−ｐａｄｄｉｎｇ）」畳み込みとして参照される場合がある。ＣＮＮ用語において、「有効」な畳み込みとは、ゼロパディングが適用されず（すなわち、カーネルは全体が画像寸法によって画定される「有効」な領域内に留まらなければならない）、この結果として、入力画像よりも小さいカーネル幅である出力画像がもたらされる事例を指す。小さいカーネルについて、これはわずかな相違であるが、ほとんどのＣＮＮ事例においては、「同パディング」畳み込みが、全または有効よりも選好される。
【００９０】
しかしながら、入力タイル分割は、使用可能な唯一のタイル分割形態ではない。カーネルは、それらを光学フィルタに変換する前にタイル分割することもできる。その後、対応する畳み込みがタイル分割される。結果もたらされる畳み込みが互いに混ざり合わないように、タイル分割されたカーネルの間には十分な空間が許容されるべきである。この形態のタイル分割は、光学フィルタ関数の要求がより厳しく、より多くのカーネルがともにタイル分割されるときに性能が劣化する可能性があるため、実施するのがより困難である。
【００９１】
図７（ａ）〜図７（ｄ）は、固定入力ハードウェア畳み込みを使用して複数の低解像度畳み込みを実施する複数の異なる方法を示す。入力とカーネルとを適切に組み合わせることによって、ハードウェア畳み込み解像度が効率的に使用されることを保証することが可能であり、目標は、出力（カメラ）解像度が完全に利用されることを保証することである。
【００９２】
低解像度フーリエ変換のバッチの評価は、単一の高解像度フーリエ変換の評価ほど、システムの効率的な使用ではない。この様式の並列化は、デジタル手法に対する光学的手法の競争力に影響を及ぼす。有利には、光学的手法は、デジタルフーリエ変換によって提供されるようなＯ（Ｎ  ｌｏｇ  Ｎ）と比較して、Ｏ（１）プロセスとしてのフーリエ変換を提供する。フーリエ変換のサイズは、システムの解像度によって決定される。これを全解像度において利用するとき、最も大きい性能利得を達成することができる。
【００９３】
全解像度フーリエ変換を利用しないときは、全システム性能を利用しないが、タイル分割はこれを再結合するのにいくらかの助けとなる。システムの全解像度を依然として利用しているが、対応するフーリエ変換の高解像度を活用してはいない。代わりに、「バッチ」畳み込みプロセスを実施するために、これを使用している。このバッチ手法は、代わりに、複数のより小さいフーリエ変換と等価である。
【００９４】
固有のフーリエ変換の全解像度が直接的に使用されていないとき、潜在的な性能の一部は「失われる」が、代わりに、低解像度変換のバッチを実施するために使用される。これらの２つの適用の間のこの以下の比較は、単純な計算スケーリング引数を使用して行われる。
【００９５】
比較計算スケーリングは、フーリエ変換のスケーリングによって占められるものとして考えられる（要素ごとの乗算は、比較すると「安価」である）。したがって、本発明の性能をそれぞれ以下のように比較することができる。
【００９６】
【数９】
2021528721.tif 000011
【００９７】
合計でＮ個のピクセルが存在する。１つのサイズＮの変換を評価する代わりに、ここではＰ個のサイズＭの変換のバッチが評価され、Ｎ＝Ｍ・Ｐである。同じＯ（１）スケーリングがＯＦＴに適用されるが、ここで、ＦＦＴは以下のスケーリングを有する。
【００９８】
【数１０】
2021528721.tif 000012
【００９９】
これらの単純なスケーリング引数を受けて、本発明において達成することができるルーフライン性能の係数を記述する「減速係数」Ｓが定義される。
【０１００】
【数１１】
2021528721.tif 000013
【０１０１】
この式における対数の底は問題にならない。この式は、バッチ動作を実施するときに実現すると期待される、コンピュータに対する光学システムのルーフライン性能の利益の一部である。
【０１０２】
図８は、デジタルフーリエ変換と比較したときの、１０ＭＰｘ（１０Ｅ６）入力がＰ個のバッチに分割されるときのルーフライン性能に対する「減速係数」Ｓのプロットである。この挙動は相対的に好ましく、たとえ入力が百万の１０ピクセルバッチに分割されるときであっても、性能は１０分の１しか失われないことが分かる。
【０１０３】
２．適応的ＳＬＭ動作範囲
論じられているように、入力とフィルタＳＬＭの両方が動作範囲を制限している。これは、任意の畳み込みを実施することができないことを意味する。これは必ずしも、単純に畳み込みカーネルを光学的に実施する単純な事例ではない。
【０１０４】
これは、フィルタＳＬＭを考慮することによって説明することができる。標的カーネルがあり、対応するフィルタを決定することが所望されると考える。ＳＬＭの既知の動作範囲を所与として、このフィルタの最適な表現を見出すことができる。しかしながら、これは、正確に標的カーネルを表すのではなく、異なるカーネルを表す。ＣＮＮ適用において、この実際のカーネルは「隠れカーネル」と呼ばれる場合がある。このプロセスは図９に示されている。
【０１０５】
図９に示すように、カーネル２０および入力２１は、ニューラルネットワーク内でともにデジタルに畳み込まれて、光学畳み込み２２が生成される。ＳＬＭ動作範囲を所与として、所与のカーネルに対応する最適なフィルタ２３が生成される。このフィルタ、および、真の「隠れ」カーネルの逆計算を所与として、２４において示されているように、異なる畳み込みが見られると期待される。測定される光学畳み込みは２５において示されており、理論的な光学畳み込み２４との良好な一致を観察することができる。
【０１０６】
この新たなカーネルは、元のカーネルと同じ特徴を依然として選択するという特性を有するが、同一ではない。しかしながら、図９に示すように、光学システムは期待通りに機能している。誤解を避けるために、システムは、高い忠実度で光学畳み込みを実施するが、ただ、図９に示す任意の例を含むすべての畳み込みを実施することはできない。しかしながら、実際の実施される隠れカーネルは明確に定義されており、よく知られている。標的カーネルからフィルタを得、したがって対応する隠れカーネルを得る複数の異なる方法が存在する。
【０１０７】
対処される広範なワークフローは、ネットワークが従来のデジタルコンピュータ上で訓練され、その後、加速された推論用途のために光学プラットフォーム上で展開されるというものである。訓練は、その光学装置の性能に精通していなければならない。活用されている基本原理は、ＣｏｎｖＮｅｔを訓練するときに探索される最小化ランドスケープが特に劇的ではないということである。光学畳み込みにとってアクセス可能な領域において適切なソリューションが存在すべきである。フィルタをカーネルから導出することができる複数の異なる方法の形態の、制限されたＳＬＭ範囲に対処することができる２つの基本的な方法が存在する。
【０１０８】
１．第１に、何らかの測定基準によって決定されるような、所与の標的カーネルの最適な光学フィルタ実施態様を使用する戦略を使用することができる。ネットワークを訓練するとき、最適な実施態様は従来のデジタル畳み込みに十分に近いと仮定することができ、または、この光学畳み込みの特性を、ネットワークの訓練に組み込むことができる。
【０１０９】
２．第２に、光学畳み込みの特性にとって不可知論的であるネットワークを訓練することができ、いかなる洗練されたフィルタ設計戦略も無視することができる。これは、例えば、カーネルを直接的にパラメータ化することによって行うことができる。カーネルを直接的に指定するために５×５カーネルの２５個のパラメータを使用する代わりに、それらを使用して、何らかの適切な基底関数セットを介してフィルタをパラメータ化することができる。適切な基底関数セットはフーリエ基底であり、カーネルはフーリエ変換され、結果は、ＳＬＭの駆動値に直接的にマッピングするように適切にスケーリングされる。この結果として、駆動畳み込みカーネル値に任意に関係付けられる隠れカーネルが得られる。誤差逆伝搬が依然として訓練に成功するために、ネットワークの結合は従来の畳み込みのものと同じでなければならず（カーネルの同じ要素が、入力および出力特徴マップ内でこの同じピクセルをともにリンクさせる）、誤差逆伝搬中に正確な畳み込みが使用されなければならない。
【０１１０】
１つの実施態様において、訓練は、従来の畳み込み演算または相関器の高忠実度シミュレーションのいずれかを使用して、完全にデジタルに行われる。訓練されたニューラルネットワークはその後、場合によって中間量子化または較正ステップの後に、推論のための光学装置上で展開される。第２の実施態様において、光学畳み込みは訓練中に直接的に使用される。光学収差、デバイス欠陥などを念頭に置くと、後者が最も有効に作用すると期待される。
【０１１１】
カーネル表現に対する制約は訓練ステップ中に影響があることに留意されたい。誤差逆伝搬は、畳み込みカーネルをエラーに設定することを含み、適切な忠実度で実施される必要がある。モデルがコンピュータ内で訓練され、その後、光学的に展開される（展開における重要な第１のステップ）場合、これは問題ではない。例えば、改善されたＳＬＭ特性化および最適化、フィルタ空間および時間ディザリング、ならびに、ＳＬＭ変調範囲を拡張するために複数のＳＬＭをともに使用することなど、複数の技法を使用して、エラーカーネルがフィルタ性能を改善することによって光学的に実施されることを可能にすることができる。
【０１１２】
所与のカーネルを実施することを試行しているとき、使用すべき適切な方法は、相関器の光学フィルタの生成似共通の最小ユークリッド距離（ＭＥＤ）法である。その原理は、複素平面上で、フィルタのフーリエ変換によって必要とされる所与の複素値に最も近いアクセス可能な点を見出すことである。
【０１１３】
この方法は、ＳＬＭにとって利用可能な複素値（「動作曲線」）が、それらが振幅と位相の両方を変調するという点において混合モードである場合に、最も上首尾である。
【０１１４】
カーネルを、予期されるよりも実質的に大きくする空間周波数成分をフィルタが含まないことが重要である。ほとんどの実施形態において、同じ入力に対する後続の層は同時に計算することができず、そのため、ネットワークの異なる層ではなく、画像バッチ内の異なる訓練例の間でフィルタブリードクロストークが発生する。
【０１１５】
これを回避するための技法は、カーネル設計プロセスが高空間周波数成分を一切導入しないことを保証することである。例えば、より高いカーネル解像度がＳＬＭ上に表示するために必要とされる場合、ゼロによってパディングし、その後フーリエ変換すること、または、フーリエ変換後に正弦補間を実施することの両方が、有効な手法である（準最適ではあるが、他の補間方式が十分な性能を提供し得る）。
【０１１６】
３．双極性の結果
光学強度を測定するためにカメラを使用するということは、出力関数の符号を直接的に決定することができないことを意味する。一部のネットワーク構成はこれを許容することができるが、それにもかかわらず、例えば、一般的に適用される非線形性（例えば、ＲｅＬｕ）は、測定される関数の符号に依存するため、これは重要な問題である可能性がある。しかしながら、本発明者らは、バイアス関数を利用することによって、結果として生じる畳み込みの符号を単純に決定する方法を開発した。
【０１１７】
目的は、畳み込みｆ＊ｋを光学的に評価することであり、ｆは正であり、ｋは双極性カーネルである。（太字フォントは、ここでは２Ｄマトリックスを示すために使用される）。この畳み込みを走査して、２つの別個の畳み込みの間の差にすることができる。
【０１１８】
【数１２】
2021528721.tif 000014
【０１１９】
式中、Ｉはカーネルと同じサイズの恒等行列である。正バイアスカーネルｐを生成するために、バイアスｂがカーネルに適用されている。このとき、単純に複数の１から成る行列である第２のカーネルが得られ、このカーネルの適用は、ボックスカーアベレージングと同じである。ここで、これら２つの畳み込みの両方は排他的に正の入力を有し、そのため、正の出力を有する。カメラは、振幅情報が事前に分かっているため、これを失うことなく測定することができる。このとき、これら２つの関数との間の差が、所望の畳み込みをもたらす。
【０１２０】
図１０は、デジタルに計算される双極性畳み込み、および、記載されている方法を使用して取得される対応する光学畳み込みの２つの例を示す。この方法は、図１０に示すように、双極性畳み込みを得るにあたって効果的である。提示されている畳み込みは、カメラから直接的にイメージングされるのではなく、この差分手順の結果である。
【０１２１】
この方法は、性能オーバーヘッドを最小限にする。カーネルＩに対応するフィルタは自明であり、２つの関数の差分を取るオーバーヘッドは自明である。これら２つの動作は、並列に行われ得る。
【０１２２】
その上、入力ｆも双極性である場合、これは、正および負の成分に分割することができ、これらは別個に処理され、結果は、結果もたらされる畳み込みを組み合わせることによって再構成される。
【０１２３】
４．ＳＬＭよりも低速のカメラ
ハードウェア制限に起因して、カメラがＳＬＭよりも低速に動作することがしばしばある。したがって、システムは、ＳＬＭのスループットによって決定されるレートにおいてデータを処理することが可能であるが、結果としてのフレームは独立して捕捉することができない。特定の実施態様は、高速の入力ＳＬＭ、より低速のフィルタＳＬＭ、および中間速度のカメラを含み得る。
【０１２４】
しかしながら、システムは、依然として有用に使用することができる。カメラ露出は、複数の入力ＳＬＭフレームに及ぶことができる。カメラはその後、複数の畳み込みを捕捉し、畳み込みは光集積化され、フレームはともに加算される。
【０１２５】
これは、この加算を能動的に実施する、ニューラルネットワーク内に見出される典型的な畳み込み演算に通じる。例えば、Ｔｈｅａｎｏニューラルネットワーク内の畳み込み層が４Ｄテンソルに対して動作することを考える。演算入力（Ａ、Ｂ）および出力（Ｃ）は、以下のように定義される。
【０１２６】
【数１３】
2021528721.tif 000015
【０１２７】
原始的演算は２Ｄ畳み込みであるが、これは直ちに他の２Ｄ畳み込みとの総和に組み込まれることが分かる。これは、複数の入力フレームを通じてカメラを露出させることによって、光学的に直接的にエミュレートすることができる（ただし、真の畳み込み結果を表す振幅ではなく、強度の大きさを合計していることに留意されたい）。
【０１２８】
他の態様
いくつかの実施形態において、プーリング方式が光学的に実施される。プーリングの目的は、何らかのダウンサンプリング方式を使用して所与の特徴マップの解像度を低減することである。システムの光学スケーリングを設計することによって、所与の入力解像度を所与の（より小さい）出力解像度にレンダリングすることができる。この効果は、当然ながら、ｌ２プーリング（強度の総和）を実施することである。
【０１２９】
最高帯域幅ＳＬＭはバイナリであり、フィルタを表すために使用することができる。はるかにより一般的なカーネルｂに対応するバイナリフィルタＢを作成することができる。対称性など、バイナリフィルタに起因するカーネルに対するいくつかの制約が存在するが、これを回避する複数の方法（例えば、フィルタＳＬＭとともに固定ランダム位相マスクを使用すること）が存在する。フィルタがバイナリであるという制限は、カーネルがバイナリであるという制限には対応しない。しかしながら、これは、フィルタのスペクトル内容の制限に大きく関係し、カーネル幅をバイナリフィルタによって制御することは困難である。この理由から、バイナリＳＬＭをフィルタＳＬＭとしては使用しないことが好ましい。
【０１３０】
高帯域幅バイナリＳＬＭを使用することができる別のより有用な方法は、入力の代わりに時間的もしくは空間的ディザリングを通じてマルチレベル入力を表すことであり、または、バイナリのみの入力を使用するように設計されているネットワーク構成を実施することができる。
【０１３１】
駆動側集積化の重要な要件は、最小の待ち時間で光学領域内へと、および、光学領域から外方に迅速に転送することである。ＣｏｎｖＮｅｔは、種々の原始的演算の高い計算負荷を表し、この計算帯域幅に対処するには、高性能のシステムが必要である。さらに、高いシステム利用を達成するには、複数のジョブをともにバッチしなければならない。しかしながら、これは待ち時間に影響を及ぼす。
【０１３２】
ＦＰＧＡベースの駆動システムを使用することによって、多大なパワーおよび柔軟性が得られる。単純にＩ／Ｏを駆動することを超えて、これを使用して、光学システムのパワーを活用することができる。バッチプロセスの編成、フィルタ生成、および双極性畳み込みの決定などの機能は、ハードウェア内で実施することができる。
【０１３３】
さらに、ＦＰＧＡは、特定の実施形態において、畳み込み層を超えて統合されたソリューションを展開することを可能にする。非線形活性化関数は、ハードウェア内で実施することができる。さらに、プーリング方式はまた、ＦＰＧＡ内のハードウェアにおいて光学的に、またはソフトウェアにおいて実施することもできる。
【０１３４】
さらなる実施態様において、駆動電子装置がニューラルネットワークの他の層も実施する統合ソリューションを提供することができる。これは、最小の待ち時間で、データを迅速に消化することができ、その後、畳み込み層の間の光学領域に転送し戻すことができることを意味する。
【図１】
2021528721.tif 000016
【図２】
2021528721.tif 000017
【図３（ａ）】
2021528721.tif 000018
【図３（ｂ）】
2021528721.tif 000019
【図３（ｃ）】
2021528721.tif 000020
【図４】
2021528721.tif 000021
【図５】
2021528721.tif 000022
【図６】
2021528721.tif 000023
【図７】
2021528721.tif 000024
【図８】
2021528721.tif 000025
【図９】
2021528721.tif 000026
【図１０】
2021528721.tif 000027
【国際調査報告】
2021528721.tif 000028
2021528721.tif 000029
2021528721.tif 000030